From c40a6b0873ded3733c1c6f1cf653285a0a7aed84 Mon Sep 17 00:00:00 2001 From: loongson Date: Wed, 26 Jun 2024 19:55:34 +0800 Subject: [PATCH] add miss file ,and sync kernel to 1e2e6bbbc --- Makefile | 6 +- board/loongson/ls2k300/readme.txt | 31 + .../ls2k300/rootfs_overlay/boot/.gitignore | 0 .../rootfs_overlay/etc/ssh/sshd_config | 117 + configs/loongson2k300_defconfig | 2 +- configs/loongson2k300_mini_dp_defconfig | 2 +- fs/ext2/Config.in | 5 + fs/ext2/ext2.mk | 9 + package/Config.in | 2 + package/loongson_kernel/loongson_kernel.mk | 3 +- .../loongson_kernel/loongson_kernel.tar.gz | Bin 446 -> 8816491 bytes package/loongson_resize/S01resizerootfs | 15 + package/loongson_resize/resizerootfs.sh | 56 + .../ls_default_eth_config/gen-keep-nmcli.sh | 63 + .../ls_default_eth_config/gen_interfaces.sh | 59 + .../ls_default_eth_config/keep-nmcli.service | 12 + package/python-pyftdi/Config.in | 6 + package/python-pyftdi/python-pyftdi.mk | 12 + package/python-smbus2/Config.in | 6 + package/python-smbus2/python-smbus2.mk | 12 + package/sourcehanserif/sourcehanserif.tar.gz | Bin 8699904 -> 9421941 bytes package/sox/0001-uclibc.patch | 26 + ....ac-put-back-disable-stack-protector.patch | 45 + ...re.ac-fix-static-linking-with-id3tag.patch | 47 + ...ure.ac-fix-static-linking-with-magic.patch | 48 + package/sox/Config.in | 12 + package/sox/sox.hash | 4 + package/sox/sox.mk | 140 + ...akefile-more-cross-compiler-friendly.patch | 22 + .../sp-oops-extract/0002-stdint-cleanup.patch | 33 + package/sp-oops-extract/Config.in | 6 + package/sp-oops-extract/sp-oops-extract.hash | 3 + package/sp-oops-extract/sp-oops-extract.mk | 22 + ...igure.ac-fix-AVX-SSE-and-MMX-options.patch | 60 + package/spandsp/Config.in | 10 + package/spandsp/spandsp.hash | 3 + package/spandsp/spandsp.mk | 29 + package/spawn-fcgi/Config.in | 8 + package/spawn-fcgi/spawn-fcgi.hash | 4 + package/spawn-fcgi/spawn-fcgi.mk | 14 + package/spdlog/Config.in | 14 + package/spdlog/spdlog.hash | 3 + package/spdlog/spdlog.mk | 25 + package/speex/0001-thumb2-support.patch | 222 + package/speex/Config.in | 23 + package/speex/speex.hash | 6 + package/speex/speex.mk | 35 + package/speexdsp/Config.in | 6 + package/speexdsp/speexdsp.hash | 3 + package/speexdsp/speexdsp.mk | 16 + package/sphinxbase/Config.in | 13 + package/sphinxbase/sphinxbase.hash | 3 + package/sphinxbase/sphinxbase.mk | 19 + package/spi-tools/Config.in | 7 + package/spi-tools/spi-tools.hash | 3 + package/spi-tools/spi-tools.mk | 14 + package/spice-protocol/Config.in | 12 + package/spice-protocol/spice-protocol.hash | 5 + package/spice-protocol/spice-protocol.mk | 14 + package/spice/Config.in | 24 + package/spice/spice.hash | 3 + package/spice/spice.mk | 72 + .../0001-allow-newer-autoconf-versions.patch | 61 + .../0002-allow-building-in-tree.patch | 47 + ...-allow-unknown-configuration-options.patch | 35 + .../0004-fix-building-with-musl.patch | 133 + .../spidermonkey/0005-add-riscv-support.patch | 121 + ...ers-on-install-instead-of-symlinking.patch | 34 + ...ng-on-64-bit-and-32-bit-be-platforms.patch | 144 + ...-on-ARM64-for-generated-unboxed-obje.patch | 66 + ...-clobbering-it-in-the-regex-compiler.patch | 100 + ...lent-year-to-determine-the-time-zone.patch | 103 + ....in-install-shell-only-if-it-s-built.patch | 28 + package/spidermonkey/Config.in | 60 + package/spidermonkey/spidermonkey.hash | 3 + package/spidermonkey/spidermonkey.mk | 64 + package/spidev_test/Config.in | 17 + package/spidev_test/spidev_test.hash | 3 + package/spidev_test/spidev_test.mk | 48 + package/sqlcipher/Config.in | 37 + package/sqlcipher/sqlcipher.hash | 3 + package/sqlcipher/sqlcipher.mk | 43 + package/sqlite/Config.in | 73 + package/sqlite/sqlite.hash | 3 + package/sqlite/sqlite.mk | 79 + ...ols-fix-build-failure-against-gcc-10.patch | 49 + package/squashfs/Config.in | 60 + package/squashfs/Config.in.host | 6 + package/squashfs/squashfs.hash | 5 + package/squashfs/squashfs.mk | 96 + package/squeezelite/Config.in | 49 + package/squeezelite/squeezelite.hash | 3 + package/squeezelite/squeezelite.mk | 53 + package/squid/Config.in | 22 + package/squid/S97squid | 39 + package/squid/squid.hash | 6 + package/squid/squid.mk | 98 + package/sredird/0001-termio.patch | 20 + package/sredird/Config.in | 8 + package/sredird/sredird.hash | 3 + package/sredird/sredird.mk | 20 + package/ssdp-responder/Config.in | 20 + package/ssdp-responder/S50ssdpd | 42 + package/ssdp-responder/ssdp-responder.hash | 3 + package/ssdp-responder/ssdp-responder.mk | 33 + package/sshfs/Config.in | 19 + package/sshfs/sshfs.hash | 3 + package/sshfs/sshfs.mk | 17 + package/sshguard/Config.in | 14 + package/sshguard/S49sshguard | 49 + package/sshguard/sshguard.hash | 4 + package/sshguard/sshguard.mk | 30 + package/sshpass/Config.in | 9 + package/sshpass/sshpass.hash | 3 + package/sshpass/sshpass.mk | 12 + ...akefile-fix-static-linking-with-pcre.patch | 41 + package/sslh/Config.in | 8 + package/sslh/S35sslh | 48 + package/sslh/sslh.hash | 3 + package/sslh/sslh.mk | 63 + .../0001-add-uclibc-alias-and-musl.patch | 30 + .../0002-just-warn-on-missing-arch.patch | 19 + package/start-stop-daemon/Config.in | 9 + .../start-stop-daemon/start-stop-daemon.hash | 4 + .../start-stop-daemon/start-stop-daemon.mk | 38 + package/startup-notification/Config.in | 10 + .../startup-notification.hash | 3 + .../startup-notification.mk | 18 + package/statserial/0001-ncurses-link.patch | 16 + package/statserial/Config.in | 11 + package/statserial/statserial.hash | 3 + package/statserial/statserial.mk | 21 + package/stella/Config.in | 22 + package/stella/stella.hash | 4 + package/stella/stella.mk | 38 + package/stellarium/Config.in | 23 + package/stellarium/stellarium.hash | 5 + package/stellarium/stellarium.mk | 42 + package/stm32flash/Config.in | 8 + package/stm32flash/stm32flash.hash | 3 + package/stm32flash/stm32flash.mk | 21 + package/strace/Config.in | 24 + package/strace/strace.hash | 6 + package/strace/strace.mk | 38 + package/stress-ng/Config.in | 20 + package/stress-ng/stress-ng.hash | 3 + package/stress-ng/stress-ng.mk | 32 + package/stress/Config.in | 9 + package/stress/stress.hash | 4 + package/stress/stress.mk | 25 + package/stressapptest/Config.in | 9 + package/stressapptest/stressapptest.hash | 2 + package/stressapptest/stressapptest.mk | 16 + package/strongswan/Config.in | 137 + package/strongswan/strongswan.hash | 7 + package/strongswan/strongswan.mk | 92 + package/stunnel/Config.in | 9 + package/stunnel/S50stunnel | 35 + package/stunnel/stunnel.hash | 5 + package/stunnel/stunnel.mk | 38 + .../0001-workaround-ac-run-ifelse.patch | 23 + package/subversion/Config.in | 20 + package/subversion/subversion.hash | 5 + package/subversion/subversion.mk | 39 + package/sudo/Config.in | 11 + package/sudo/sudo.hash | 4 + package/sudo/sudo.mk | 86 + package/sudo/sudo.pam | 12 + package/sunwait/Config.in | 11 + package/sunwait/sunwait.hash | 3 + package/sunwait/sunwait.mk | 26 + package/sunxi-boards/Config.in | 30 + package/sunxi-boards/sunxi-boards.hash | 2 + package/sunxi-boards/sunxi-boards.mk | 26 + package/sunxi-cedarx/Config.in | 16 + package/sunxi-cedarx/sunxi-cedarx.hash | 2 + package/sunxi-cedarx/sunxi-cedarx.mk | 60 + package/sunxi-mali-mainline-driver/Config.in | 29 + .../sunxi-mali-mainline-driver.hash | 3 + .../sunxi-mali-mainline-driver.mk | 41 + package/sunxi-mali-mainline/Config.in | 42 + package/sunxi-mali-mainline/egl.pc | 12 + package/sunxi-mali-mainline/glesv2.pc | 12 + .../sunxi-mali-mainline.hash | 3 + .../sunxi-mali-mainline.mk | 49 + ...nfo-Access-to-io-memory-via-pointers.patch | 59 + package/sunxi-tools/Config.in | 71 + package/sunxi-tools/Config.in.host | 17 + package/sunxi-tools/sunxi-tools.hash | 3 + package/sunxi-tools/sunxi-tools.mk | 63 + ...Lists.txt-compile-squirrel-with-fPIC.patch | 35 + .../supertux/0001-Fix-build-on-PowerPC.patch | 81 + .../0002-Fix-build-with-boost-1-73.patch | 25 + package/supertux/Config.in | 41 + package/supertux/supertux.hash | 4 + package/supertux/supertux.mk | 73 + package/supertuxkart/Config.in | 46 + package/supertuxkart/supertuxkart.hash | 8 + package/supertuxkart/supertuxkart.mk | 68 + package/supervisor/Config.in | 14 + package/supervisor/S99supervisord | 29 + package/supervisor/supervisor.hash | 4 + package/supervisor/supervisor.mk | 32 + package/supervisor/supervisord.conf | 18 + package/supervisor/supervisord.service | 10 + ...ure-proper-shabang-on-python-scripts.patch | 47 + ...low-the-user-to-override-RUST_TARGET.patch | 35 + package/suricata/Config.in | 26 + package/suricata/S99suricata | 64 + package/suricata/suricata.hash | 6 + package/suricata/suricata.mk | 135 + package/suricata/suricata.service | 14 + package/swconfig/.swconfig.mk | 25 + package/swconfig/Config.in | 6 + package/swconfig/swconfig | Bin 0 -> 88600 bytes package/swconfig/swconfig.hash | 1 + package/swconfig/swconfig.mk | 25 + package/swconfig/swconfig.tar.gz | Bin 0 -> 29793 bytes package/swig/Config.in.host | 8 + package/swig/swig.hash | 5 + package/swig/swig.mk | 37 + ...rce-kernel-to-reread-partition-table.patch | 32 + ...-Shellscript-stops-before-completing.patch | 52 + package/swupdate/Config.in | 75 + package/swupdate/S80swupdate | 47 + package/swupdate/swupdate.config | 135 + package/swupdate/swupdate.hash | 6 + package/swupdate/swupdate.mk | 208 + package/swupdate/swupdate.service | 11 + package/swupdate/swupdate.sh | 33 + package/sylpheed/Config.in | 7 + package/sylpheed/sylpheed.hash | 4 + package/sylpheed/sylpheed.mk | 33 + package/synergy/Config.in | 22 + package/synergy/synergy.hash | 3 + package/synergy/synergy.mk | 39 + package/sysdig/Config.in | 33 + package/sysdig/sysdig.hash | 3 + package/sysdig/sysdig.mk | 47 + package/sysklogd/Config.in | 48 + package/sysklogd/S01syslogd | 62 + package/sysklogd/sysklogd.hash | 6 + package/sysklogd/sysklogd.mk | 44 + package/sysklogd/syslogd.service | 13 + .../syslog-ng/0001-fix-build-on-uclibc.patch | 51 + package/syslog-ng/Config.in | 20 + package/syslog-ng/S01syslog-ng | 62 + package/syslog-ng/syslog-ng.conf | 16 + package/syslog-ng/syslog-ng.hash | 5 + package/syslog-ng/syslog-ng.mk | 135 + .../sysprof/0001-define-NT_GNU_BUILD_ID.patch | 22 + package/sysprof/Config.in | 31 + package/sysprof/sysprof.hash | 3 + package/sysprof/sysprof.mk | 17 + package/sysrepo/Config.in | 29 + package/sysrepo/S51sysrepo-plugind | 53 + package/sysrepo/sysrepo.hash | 3 + package/sysrepo/sysrepo.mk | 34 + package/sysstat/Config.in | 39 + package/sysstat/sysstat.hash | 5 + package/sysstat/sysstat.mk | 23 + package/systemd-bootchart/Config.in | 40 + .../systemd-bootchart/systemd-bootchart.hash | 3 + .../systemd-bootchart/systemd-bootchart.mk | 19 + .../0001-loongarch64-architecture.patch | 43 + package/systemd/80-buildroot.preset | 2 + package/systemd/Config.in | 491 ++ package/systemd/Config.in.host | 4 + package/systemd/boot-files/buildroot.conf | 3 + package/systemd/boot-files/loader.conf | 2 + package/systemd/dhcp.network | 4 + package/systemd/systemd.hash | 6 + package/systemd/systemd.mk | 755 +++ ...efile-disable-stack-protector-strong.patch | 33 + package/sysvinit/Config.in | 10 + package/sysvinit/inittab | 31 + package/sysvinit/sysvinit.hash | 5 + package/sysvinit/sysvinit.mk | 50 + package/szip/Config.in | 16 + package/szip/szip.hash | 3 + package/szip/szip.mk | 13 + ...-config-file-for-cross-compiling-906.patch | 66 + ...-instance-of-TextIdentificationFrame.patch | 33 + ...d-when-loading-invalid-ogg-flac-file.patch | 45 + package/taglib/Config.in | 15 + package/taglib/taglib.hash | 4 + package/taglib/taglib.mk | 30 + .../0001-Fix-memory-leak-in-read_header.patch | 129 + package/tar/Config.in | 16 + package/tar/tar.hash | 4 + package/tar/tar.mk | 57 + package/targetcli-fb/Config.in | 15 + package/targetcli-fb/S50target | 46 + package/targetcli-fb/target.service | 14 + package/targetcli-fb/targetcli-fb.hash | 3 + package/targetcli-fb/targetcli-fb.mk | 34 + ...makedefine-HAVE_GET_CURRENT_DIR_NAME.patch | 28 + ...rrect-variables-for-GnuTLS-detection.patch | 32 + ...eLists-use-pkg-config-uuid-detection.patch | 40 + package/taskd/Config.in | 18 + package/taskd/taskd.hash | 5 + package/taskd/taskd.mk | 13 + package/tcf-agent/Config.in | 41 + package/tcf-agent/S55tcf-agent | 40 + package/tcf-agent/tcf-agent.hash | 5 + package/tcf-agent/tcf-agent.mk | 34 + package/tcf-agent/tcf-agent.service | 9 + package/tcl/0001-dont-build-compat.patch | 25 + package/tcl/Config.in | 39 + package/tcl/tcl.hash | 3 + package/tcl/tcl.mk | 81 + package/tclap/Config.in | 18 + package/tclap/tclap.hash | 3 + package/tclap/tclap.mk | 17 + package/tcllib/Config.in | 11 + package/tcllib/tcllib.hash | 3 + package/tcllib/tcllib.mk | 15 + package/tcpdump/Config.in | 16 + package/tcpdump/tcpdump.hash | 5 + package/tcpdump/tcpdump.mk | 30 + package/tcping/Config.in | 14 + package/tcping/tcping.hash | 3 + package/tcping/tcping.mk | 21 + ...001-configure-ac-fix-without-libdnet.patch | 76 + package/tcpreplay/Config.in | 9 + package/tcpreplay/tcpreplay.hash | 5 + package/tcpreplay/tcpreplay.mk | 39 + package/tegrarcm/Config.in.host | 13 + package/tegrarcm/tegrarcm.hash | 3 + package/tegrarcm/tegrarcm.mk | 14 + package/tekui/Config.in | 22 + package/tekui/tekui.hash | 3 + package/tekui/tekui.mk | 69 + package/terminology/Config.in | 8 + package/terminology/terminology.hash | 3 + package/terminology/terminology.mk | 23 + ...-Fix-timeval-structure-build-failure.patch | 27 + package/tesseract-ocr/Config.in | 44 + package/tesseract-ocr/tesseract-ocr.hash | 9 + package/tesseract-ocr/tesseract-ocr.mk | 66 + ...tern-qualifier-to-fix-gcc-10.x-build.patch | 29 + package/tftpd/Config.in | 10 + package/tftpd/S80tftpd-hpa | 81 + package/tftpd/tftpd.hash | 5 + package/tftpd/tftpd.mk | 26 + ...ix-32-bit-build-error-with-musl-v1.2.patch | 53 + package/thermald/Config.in | 23 + package/thermald/thermald.hash | 3 + package/thermald/thermald.mk | 23 + package/thrift/Config.in | 22 + package/thrift/thrift.hash | 4 + package/thrift/thrift.mk | 71 + package/thttpd/Config.in | 8 + package/thttpd/S90thttpd | 54 + package/thttpd/thttpd.hash | 3 + package/thttpd/thttpd.mk | 42 + package/thttpd/thttpd.service | 10 + package/ti-cgt-pru/Config.in.host | 18 + package/ti-cgt-pru/ti-cgt-pru.hash | 4 + package/ti-cgt-pru/ti-cgt-pru.mk | 33 + package/ti-gfx/0001-newclkapi.patch | 118 + .../ti-gfx/0002-fix-build-omaplfb-linux.patch | 21 + package/ti-gfx/0003-km_install_modules.patch | 19 + package/ti-gfx/Config.in | 84 + package/ti-gfx/S80ti-gfx | 53 + package/ti-gfx/egl.pc | 11 + package/ti-gfx/esrev.sh | 60 + package/ti-gfx/glesv2.pc | 11 + package/ti-gfx/powervr.ini | 2 + package/ti-gfx/ti-gfx.hash | 4 + package/ti-gfx/ti-gfx.mk | 209 + package/ti-gfx/ti-gfx.service | 11 + package/ti-sgx-demos/Config.in | 9 + package/ti-sgx-demos/ti-sgx-demos.hash | 3 + package/ti-sgx-demos/ti-sgx-demos.mk | 19 + package/ti-sgx-km/Config.in | 17 + package/ti-sgx-km/ti-sgx-km.hash | 3 + package/ti-sgx-km/ti-sgx-km.mk | 36 + ...-Makefile-do-not-install-init-script.patch | 39 + package/ti-sgx-um/Config.in | 40 + package/ti-sgx-um/S80ti-sgx | 56 + package/ti-sgx-um/ti-sgx-um.hash | 3 + package/ti-sgx-um/ti-sgx-um.mk | 36 + package/ti-uim/Config.in | 8 + package/ti-uim/ti-uim.hash | 3 + package/ti-uim/ti-uim.mk | 21 + .../0001-plt.h-fix-build-with-gcc-10.patch | 35 + package/ti-utils/Config.in | 12 + package/ti-utils/ti-utils.hash | 3 + package/ti-utils/ti-utils.mk | 31 + package/tiff/Config.in | 70 + package/tiff/tiff.hash | 3 + package/tiff/tiff.mk | 94 + package/time/Config.in | 14 + package/time/time.hash | 5 + package/time/time.mk | 13 + ...1-Allow-building-against-PG13-source.patch | 85 + ...-wrapper-functions-for-base64-encodi.patch | 73 + ...003-Add-missing-utils-acl.h-includes.patch | 149 + ...support-for-PG13-List-implementation.patch | 473 ++ ...djust-code-to-PG13-list-sort-changes.patch | 59 + ...y-code-to-PG13-addRTEtoQuery-changes.patch | 37 + ...G13-convert_tuples_by_name-signature.patch | 65 + ...ode-to-PG13-tuple-conversion-changes.patch | 259 + ...hypertable-expansion-to-PG13-changes.patch | 88 + ...decompress-code-to-Var-field-renames.patch | 41 + ...1-Adjust-jsonb_utils-to-PG13-changes.patch | 39 + ...AT_DropExpression-in-process_utility.patch | 48 + ...013-Adjust-copy-code-to-PG13-changes.patch | 34 + ...-PG13-command-completion-tag-changes.patch | 186 + ...-to-PG13-HEAP_INSERT_SKIP_WAL-change.patch | 51 + ...ode-to-PG13-planner_hook-signature-c.patch | 58 + ...just-code-to-deparse_context-changes.patch | 34 + .../timescaledb/0018-Update-compat.h.patch | 27 + ...just-code-to-PG13-tuptoaster-changes.patch | 70 + package/timescaledb/Config.in | 12 + package/timescaledb/timescaledb.hash | 3 + package/timescaledb/timescaledb.mk | 37 + package/tinc/Config.in | 16 + package/tinc/tinc.hash | 4 + package/tinc/tinc.mk | 26 + package/tini/Config.in | 17 + package/tini/tini.hash | 3 + package/tini/tini.mk | 38 + .../tinyalsa/0001-disable-doxygen-usage.patch | 35 + .../0002-interval.h-add-missing-header.patch | 36 + package/tinyalsa/Config.in | 17 + package/tinyalsa/tinyalsa.hash | 3 + package/tinyalsa/tinyalsa.mk | 33 + ...able-build-for-different-c-libraries.patch | 39 + package/tinycbor/Config.in | 6 + package/tinycbor/tinycbor.hash | 3 + package/tinycbor/tinycbor.mk | 45 + ...-sha2-sha2.c-fix-build-on-big-endian.patch | 119 + package/tinydtls/Config.in | 13 + package/tinydtls/tinydtls.hash | 3 + package/tinydtls/tinydtls.mk | 19 + ...ix-build-on-Thumb-only-architectures.patch | 47 + package/tinymembench/Config.in | 12 + package/tinymembench/tinymembench.hash | 3 + package/tinymembench/tinymembench.mk | 21 + package/tinyproxy/Config.in | 16 + package/tinyproxy/tinyproxy.hash | 3 + package/tinyproxy/tinyproxy.mk | 15 + package/tinyssh/Config.in | 8 + package/tinyssh/tinyssh.hash | 3 + package/tinyssh/tinyssh.mk | 20 + package/tinyxml/Config.in | 11 + package/tinyxml/tinyxml.hash | 3 + package/tinyxml/tinyxml.mk | 16 + package/tinyxml2/Config.in | 11 + package/tinyxml2/tinyxml2.hash | 3 + package/tinyxml2/tinyxml2.mk | 18 + package/tio/Config.in | 15 + package/tio/tio.hash | 5 + package/tio/tio.mk | 13 + package/tk/Config.in | 18 + package/tk/tk.hash | 3 + package/tk/tk.mk | 31 + package/tmux/Config.in | 19 + package/tmux/tmux.hash | 3 + package/tmux/tmux.mk | 22 + ...0001-Fix-static-linking-with-OpenSSL.patch | 94 + package/tor/Config.in | 19 + package/tor/tor.hash | 3 + package/tor/tor.mk | 77 + package/tovid/0001-manpage.patch | 25 + package/tovid/Config.in | 50 + package/tovid/tovid.hash | 3 + package/tovid/tovid.mk | 13 + package/tpm-tools/Config.in | 13 + package/tpm-tools/tpm-tools.hash | 7 + package/tpm-tools/tpm-tools.mk | 23 + package/tpm2-abrmd/Config.in | 28 + package/tpm2-abrmd/S80tpm2-abrmd | 74 + package/tpm2-abrmd/tpm2-abrmd.hash | 3 + package/tpm2-abrmd/tpm2-abrmd.mk | 35 + package/tpm2-pkcs11/Config.in | 17 + package/tpm2-pkcs11/tpm2-pkcs11.hash | 3 + package/tpm2-pkcs11/tpm2-pkcs11.mk | 46 + ...port-fix-fixed-AES-key-CVE-2021-3565.patch | 47 + package/tpm2-tools/Config.in | 24 + package/tpm2-tools/tpm2-tools.hash | 3 + package/tpm2-tools/tpm2-tools.mk | 22 + package/tpm2-totp/Config.in | 25 + package/tpm2-totp/tpm2-totp.hash | 3 + package/tpm2-totp/tpm2-totp.mk | 25 + ...01-Temporary-fix-for-build-without-C.patch | 44 + package/tpm2-tss/Config.in | 60 + package/tpm2-tss/tpm2-tss.hash | 3 + package/tpm2-tss/tpm2-tss.mk | 29 + ...01-trace-cmd-libtracecmd-API-cleanup.patch | 1486 ++++++ ...make-it-build-against-musl-C-library.patch | 140 + ...dd_event_pid-out-of-ifndef-NO_PTRACE.patch | 51 + package/trace-cmd/Config.in | 18 + package/trace-cmd/trace-cmd.hash | 6 + package/trace-cmd/trace-cmd.mk | 54 + package/traceroute/Config.in | 8 + package/traceroute/traceroute.hash | 6 + package/traceroute/traceroute.mk | 24 + package/transmission/0001-fix-utypes.patch | 30 + .../transmission/0002-fix-utp-include.patch | 46 + package/transmission/Config.in | 47 + package/transmission/S92transmission | 156 + package/transmission/transmission.hash | 3 + package/transmission/transmission.mk | 83 + package/tree/Config.in | 13 + package/tree/tree.hash | 3 + package/tree/tree.mk | 21 + package/tremor/Config.in | 10 + package/tremor/tremor.hash | 3 + package/tremor/tremor.mk | 32 + package/triggerhappy/Config.in | 11 + package/triggerhappy/S10triggerhappy | 36 + package/triggerhappy/triggerhappy.hash | 3 + package/triggerhappy/triggerhappy.mk | 46 + package/triggerhappy/triggerhappy.service | 9 + .../trinity/0001-Fix-build-with-GCC-10.patch | 38 + package/trinity/Config.in | 21 + package/trinity/trinity.hash | 3 + package/trinity/trinity.mk | 33 + ...er-understands-pie-and-relro-options.patch | 214 + ...pwent_r-is-available-before-using-it.patch | 82 + package/trousers/Config.in | 18 + package/trousers/trousers.hash | 6 + package/trousers/trousers.mk | 36 + package/ts4900-fpga/Config.in | 11 + package/ts4900-fpga/ts4900-fpga.hash | 5 + package/ts4900-fpga/ts4900-fpga.mk | 21 + package/tslib/Config.in | 6 + package/tslib/tslib.hash | 5 + package/tslib/tslib.mk | 35 + .../0001-build-get-along-with-buildroot.patch | 40 + package/tstools/Config.in | 22 + package/tstools/tstools.hash | 2 + package/tstools/tstools.mk | 25 + package/ttyd/Config.in | 21 + package/ttyd/ttyd.hash | 3 + package/ttyd/ttyd.mk | 13 + package/tunctl/Config.in | 6 + package/tunctl/tunctl.hash | 3 + package/tunctl/tunctl.mk | 21 + package/turbolua/Config.in | 18 + package/turbolua/turbolua.hash | 3 + package/turbolua/turbolua.mk | 33 + package/tvheadend/0001-no-check_config.patch | 23 + package/tvheadend/Config.in | 43 + package/tvheadend/S99tvheadend | 56 + package/tvheadend/etc.default.tvheadend | 6 + package/tvheadend/tvheadend.hash | 3 + package/tvheadend/tvheadend.mk | 174 + package/twolame/Config.in | 8 + package/twolame/twolame.hash | 3 + package/twolame/twolame.mk | 20 + package/tz/Config.in | 4 + package/tz/tz.mk | 41 + package/tzdata/Config.in | 9 + package/tzdata/tzdata.hash | 4 + package/tzdata/tzdata.mk | 66 + package/tzdump/tzdump.hash | 2 + package/tzdump/tzdump.mk | 21 + package/uacme/Config.in | 34 + package/uacme/uacme.hash | 3 + package/uacme/uacme.mk | 36 + .../0001-drop-configh-from-tools.patch | 49 + ...-tools-only-in-no-dot-config-targets.patch | 42 + .../0003-drop-autoconf.h-from-tools.patch | 36 + ...0004-tools-env-fw_env.h-remove-env.h.patch | 52 + package/uboot-tools/Config.in | 96 + package/uboot-tools/Config.in.host | 111 + package/uboot-tools/uboot-tools.hash | 3 + package/uboot-tools/uboot-tools.mk | 216 + ...1-Install-server-and-client-examples.patch | 28 + package/ubus/Config.in | 31 + package/ubus/ubus.hash | 3 + package/ubus/ubus.mk | 40 + package/uccp420wlan/Config.in | 16 + package/uccp420wlan/uccp420wlan.hash | 4 + package/uccp420wlan/uccp420wlan.mk | 18 + package/ucl/ucl.hash | 3 + package/ucl/ucl.mk | 15 + package/uclibc-ng-test/Config.in | 22 + package/uclibc-ng-test/uclibc-ng-test.hash | 3 + package/uclibc-ng-test/uclibc-ng-test.mk | 63 + ...PIC-builds-with-newer-gcc-binutils-w.patch | 91 + package/uclibc/Config.in | 154 + package/uclibc/uClibc-ng.config | 42 + package/uclibc/uclibc.hash | 4 + package/uclibc/uclibc.mk | 465 ++ package/udev-gentoo-scripts/Config.in | 6 + .../udev-gentoo-scripts.hash | 3 + .../udev-gentoo-scripts.mk | 22 + package/udev/Config.in | 6 + package/udev/udev.mk | 14 + package/udftools/Config.in | 12 + package/udftools/udftools.hash | 3 + package/udftools/udftools.mk | 13 + ...-fix-build-with-newer-glibc-versions.patch | 29 + .../0002-Fix-systemd-service-file.patch | 33 + ...issue-with-missing-sys-sysmacros.h-i.patch | 81 + package/udisks/Config.in | 62 + package/udisks/udisks.hash | 3 + package/udisks/udisks.mk | 33 + package/udpcast/Config.in | 27 + package/udpcast/udpcast.hash | 3 + package/udpcast/udpcast.mk | 31 + package/udpxy/Config.in | 9 + package/udpxy/udpxy.hash | 3 + package/udpxy/udpxy.mk | 22 + .../uemacs/01-clear-ixon-termios-flag.patch | 29 + package/uemacs/Config.in | 7 + package/uemacs/uemacs.hash | 3 + package/uemacs/uemacs.mk | 24 + package/uftp/Config.in | 13 + package/uftp/uftp.hash | 3 + package/uftp/uftp.mk | 28 + ...add-boost-unit_test_framework-requir.patch | 40 + .../uhd/0002-host-fix-build-boost-173.patch | 577 +++ .../0003-add-RISC-V-endian-detection.patch | 113 + package/uhd/Config.in | 160 + package/uhd/uhd.hash | 4 + package/uhd/uhd.mk | 153 + package/uhttpd/0001-Remove-Werror.patch | 33 + ...x-TCP_FASTOPEN-related-compile-error.patch | 30 + package/uhttpd/Config.in | 18 + package/uhttpd/uhttpd.hash | 3 + package/uhttpd/uhttpd.mk | 35 + package/uhubctl/Config.in | 13 + package/uhubctl/uhubctl.hash | 3 + package/uhubctl/uhubctl.mk | 22 + .../0001-ulogd-fix-build-with-musl-libc.patch | 32 + package/ulogd/Config.in | 18 + package/ulogd/ulogd.hash | 7 + package/ulogd/ulogd.mk | 55 + package/umtprd/Config.in | 11 + package/umtprd/umtprd.hash | 3 + package/umtprd/umtprd.mk | 20 + package/unbound/Config.in | 38 + package/unbound/S70unbound | 52 + package/unbound/unbound.hash | 5 + package/unbound/unbound.mk | 55 + package/unclutter-xfixes/Config.in | 13 + .../unclutter-xfixes/unclutter-xfixes.hash | 3 + package/unclutter-xfixes/unclutter-xfixes.mk | 22 + package/unionfs/Config.in | 14 + package/unionfs/unionfs.hash | 3 + package/unionfs/unionfs.mk | 13 + package/unixodbc/Config.in | 12 + package/unixodbc/unixodbc.hash | 6 + package/unixodbc/unixodbc.mk | 50 + package/unrar/Config.in | 13 + package/unrar/unrar.hash | 3 + package/unrar/unrar.mk | 23 + package/unscd/Config.in | 27 + package/unscd/S46unscd | 25 + package/unscd/nscd.conf | 33 + package/unscd/unscd.hash | 2 + package/unscd/unscd.mk | 36 + ...keFile.txt-to-ease-cross-compilation.patch | 53 + package/unzip/Config.in | 12 + package/unzip/unzip.hash | 6 + package/unzip/unzip.mk | 29 + package/upmpdcli/Config.in | 22 + package/upmpdcli/S99upmpdcli | 36 + package/upmpdcli/upmpdcli.hash | 5 + package/upmpdcli/upmpdcli.mk | 38 + package/upower/Config.in | 29 + package/upower/upower.hash | 3 + package/upower/upower.mk | 25 + ...ck-DT_REL-DT_RELA-DT_RELSZ-DT_RELASZ.patch | 80 + package/upx/upx.hash | 3 + package/upx/upx.mk | 31 + package/urandom-scripts/Config.in | 10 + package/urandom-scripts/S20urandom | 74 + package/urandom-scripts/urandom-scripts.mk | 12 + package/uredir/Config.in | 9 + package/uredir/uredir.hash | 4 + package/uredir/uredir.mk | 13 + package/urg/0001-select-h.patch | 39 + ...02-urg-gcc6-fix-narrowing-conversion.patch | 99 + package/urg/Config.in | 10 + package/urg/urg.hash | 6 + package/urg/urg.mk | 31 + package/usb_modeswitch/Config.in | 26 + package/usb_modeswitch/usb_modeswitch.hash | 5 + package/usb_modeswitch/usb_modeswitch.mk | 39 + package/usb_modeswitch_data/Config.in | 15 + .../usb_modeswitch_data.hash | 5 + .../usb_modeswitch_data.mk | 20 + package/usbmount/0001-rules-fix.patch | 19 + ...se-udev-environment-instead-of-blkid.patch | 71 + package/usbmount/Config.in | 13 + package/usbmount/usbmount.hash | 4 + package/usbmount/usbmount.mk | 28 + package/usbredir/Config.in | 32 + package/usbredir/usbredir.hash | 4 + package/usbredir/usbredir.mk | 29 + package/usbutils/Config.in | 15 + package/usbutils/usbutils.hash | 5 + package/usbutils/usbutils.mk | 25 + package/ushare/Config.in | 17 + package/ushare/ushare.hash | 3 + package/ushare/ushare.mk | 43 + .../0001-fix-build-against-bluez-4.patch | 15 + .../0002-fix-build-again-obex-bluez.patch | 28 + .../0003-add-OBEX_CharToUnicode.patch | 47 + package/ussp-push/Config.in | 21 + package/ussp-push/ussp-push.hash | 4 + package/ussp-push/ussp-push.mk | 14 + package/ustream-ssl/Config.in | 12 + package/ustream-ssl/ustream-ssl.hash | 3 + package/ustream-ssl/ustream-ssl.mk | 21 + package/utf8proc/Config.in | 6 + package/utf8proc/utf8proc.hash | 3 + package/utf8proc/utf8proc.mk | 14 + package/util-linux/Config.in | 443 ++ package/util-linux/Config.in.host | 8 + package/util-linux/su.pam | 15 + .../util-linux-libs/util-linux-libs.hash | 1 + .../util-linux-libs/util-linux-libs.mk | 89 + package/util-linux/util-linux.hash | 9 + package/util-linux/util-linux.mk | 298 ++ package/utp_com/Config.in.host | 7 + package/utp_com/utp_com.hash | 3 + package/utp_com/utp_com.mk | 21 + package/uvw/Config.in | 20 + package/uvw/uvw.hash | 3 + package/uvw/uvw.mk | 16 + package/ux500-firmware/Config.in | 8 + package/ux500-firmware/ux500-firmware.hash | 3 + package/ux500-firmware/ux500-firmware.mk | 23 + package/v4l2grab/Config.in | 20 + package/v4l2grab/v4l2grab.hash | 3 + package/v4l2grab/v4l2grab.mk | 15 + package/v4l2loopback/Config.in | 30 + package/v4l2loopback/v4l2loopback.hash | 3 + package/v4l2loopback/v4l2loopback.mk | 19 + ...0001-dont-add-dirty-to-valac-version.patch | 25 + package/vala/vala-wrapper | 2 + package/vala/vala.hash | 4 + package/vala/vala.mk | 37 + .../0001-workaround-SIGSEGV-on-PPC.patch | 32 + ...TSIGINFO-on-PowerPC-when-not-availab.patch | 37 + package/valgrind/Config.in | 87 + package/valgrind/uclibc.supp | 212 + package/valgrind/valgrind.hash | 6 + package/valgrind/valgrind.mk | 160 + package/valijson/Config.in | 18 + package/valijson/valijson.hash | 3 + package/valijson/valijson.mk | 17 + ...missing-definition-of-MTD_CHAR_MAJOR.patch | 30 + ...d-missing-header-include-for-ssize_t.patch | 27 + .../0003-Avoid-RSA-type-redefinition.patch | 44 + .../0004-Disable-static-futility.patch | 30 + ...05-include-sys-sysmacros.h-for-major.patch | 51 + .../0006-Update-for-openssl-1.1.patch | 268 + ...-Make-vboot_version-extern-in-header.patch | 50 + package/vboot-utils/Config.in.host | 7 + package/vboot-utils/vboot-utils.hash | 3 + package/vboot-utils/vboot-utils.mk | 43 + package/vde2/0001-no-cxx.patch | 22 + ...-fstp-Add-static-to-inline-functions.patch | 44 + package/vde2/Config.in | 14 + package/vde2/vde2.hash | 5 + package/vde2/vde2.mk | 54 + package/vdr-plugin-vnsiserver/Config.in | 9 + .../vdr-plugin-vnsiserver.hash | 3 + .../vdr-plugin-vnsiserver.mk | 31 + package/vdr/Config.in | 26 + package/vdr/vdr.hash | 5 + package/vdr/vdr.mk | 62 + package/vim/Config.in | 26 + package/vim/vim.hash | 3 + package/vim/vim.mk | 93 + ...ding-of-statically-linked-vlc-binary.patch | 40 + ...2-automake-add-subdir-objects-option.patch | 32 + ...ld-use-pkg-config-to-get-tremor-libs.patch | 50 + ...r-using-uClibc-by-adding-sys-types.h.patch | 44 + ...Don-t-assume-strerror_l-is-available.patch | 58 + ...ient-run-time-fallback-to-real-time-.patch | 187 + .../vlc/0007-Add-support-for-freerdp2.patch | 150 + ...o-use-AC_PATH_PROG-to-check-for-wayl.patch | 50 + ...lter-opencv_example.cpp-fix-build-wi.patch | 42 + ...ive555.cpp-fix-build-with-live555-20.patch | 36 + package/vlc/Config.in | 32 + package/vlc/vlc.hash | 7 + package/vlc/vlc.mk | 585 +++ package/vmtouch/Config.in | 11 + package/vmtouch/vmtouch.hash | 5 + package/vmtouch/vmtouch.mk | 21 + package/vnstat/Config.in | 18 + package/vnstat/vnstat.hash | 3 + package/vnstat/vnstat.mk | 21 + package/vo-aacenc/Config.in | 9 + package/vo-aacenc/vo-aacenc.hash | 3 + package/vo-aacenc/vo-aacenc.mk | 46 + package/vorbis-tools/Config.in | 12 + package/vorbis-tools/vorbis-tools.hash | 4 + package/vorbis-tools/vorbis-tools.mk | 30 + ...llow-to-override-the-PREFIX-variable.patch | 31 + ...kefile-allow-to-override-the-version.patch | 41 + ...allow-passing-custom-CFLAGS-CPPFLAGS.patch | 45 + ...vide-an-option-to-not-build-manpages.patch | 57 + ...assing-a-custom-path-to-libgcrypt-co.patch | 40 + ...-deprecated-SUSv3-functions-with-POS.patch | 36 + ...ssume-error.h-is-available-on-all-Li.patch | 52 + ...on-t-include-linux-if_tun.h-on-Linux.patch | 54 + ...dd-missing-sys-ttydefaults.h-include.patch | 36 + package/vpnc/Config.in | 21 + package/vpnc/vpnc.hash | 3 + package/vpnc/vpnc.mk | 27 + package/vsftpd/0001-utmpx-builddef.patch | 49 + package/vsftpd/0002-fix-CVE-2015-1419.patch | 102 + ...0003-Prevent-hang-in-SIGCHLD-handler.patch | 87 + package/vsftpd/Config.in | 18 + package/vsftpd/S70vsftpd | 33 + package/vsftpd/vsftpd.hash | 4 + package/vsftpd/vsftpd.mk | 73 + package/vsftpd/vsftpd.service | 12 + package/vte/Config.in | 38 + package/vte/vte.hash | 3 + package/vte/vte.mk | 29 + package/vtun/0001-fix-installation.patch | 44 + .../vtun/0002-fix-ssl-headers-checks.patch | 47 + package/vtun/0003-openssl11.patch | 294 ++ package/vtun/Config.in | 13 + package/vtun/vtun.hash | 6 + package/vtun/vtun.mk | 26 + package/vuejs/Config.in | 6 + package/vuejs/vuejs.hash | 2 + package/vuejs/vuejs.mk | 18 + package/w_scan/0001-musl.patch | 26 + ...002-si_types-h-fix-build-with-gcc-10.patch | 37 + package/w_scan/Config.in | 14 + package/w_scan/w_scan.hash | 3 + package/w_scan/w_scan.mk | 18 + package/waf/waf.hash | 7 + package/waf/waf.mk | 21 + ...lags-from-.pc-files-to-waffle-cflags.patch | 40 + package/waffle/Config.in | 47 + package/waffle/waffle.hash | 3 + package/waffle/waffle.mk | 61 + .../0001-Add-RISC-V-endian-detection.patch | 46 + ...platform.h-fix-build-with-musl-1.2.0.patch | 38 + .../wampcc/0003-Broken-build-on-Windows.patch | 27 + package/wampcc/Config.in | 30 + package/wampcc/wampcc.hash | 3 + package/wampcc/wampcc.mk | 19 + package/watchdog/Config.in | 10 + package/watchdog/watchdog.hash | 3 + package/watchdog/watchdog.mk | 15 + package/wavemon/Config.in | 19 + package/wavemon/wavemon.hash | 3 + package/wavemon/wavemon.mk | 16 + package/wavpack/Config.in | 9 + package/wavpack/wavpack.hash | 3 + package/wavpack/wavpack.mk | 38 + package/wayland-protocols/Config.in | 9 + .../wayland-protocols/wayland-protocols.hash | 5 + .../wayland-protocols/wayland-protocols.mk | 15 + package/wayland-utils/Config.in | 8 + package/wayland-utils/wayland-utils.hash | 6 + package/wayland-utils/wayland-utils.mk | 14 + ...01-build-add-option-to-disable-tests.patch | 104 + .../0002-meson-do-not-check-for-c.patch | 29 + package/wayland/Config.in | 16 + package/wayland/wayland.hash | 8 + package/wayland/wayland.mk | 27 + package/waylandpp/Config.in | 18 + package/waylandpp/waylandpp.hash | 4 + package/waylandpp/waylandpp.mk | 28 + package/webkitgtk/Config.in | 131 + package/webkitgtk/webkitgtk.hash | 8 + package/webkitgtk/webkitgtk.mk | 130 + package/webp/Config.in | 25 + package/webp/webp.hash | 3 + package/webp/webp.mk | 58 + ...detection-of-cxxabi.h-and-execinfo.h.patch | 63 + package/webrtc-audio-processing/Config.in | 21 + .../webrtc-audio-processing.hash | 3 + .../webrtc-audio-processing.mk | 21 + package/websocketpp/Config.in | 15 + package/websocketpp/websocketpp.hash | 3 + package/websocketpp/websocketpp.mk | 16 + ...ntl.h-for-open-O_RDWR-O_CLOEXEC-and-.patch | 48 + ...libweston-backend-drm-might-need-EGL.patch | 47 + package/weston/Config.in | 142 + package/weston/weston.hash | 6 + package/weston/weston.mk | 143 + package/wf111/Config.in | 25 + package/wf111/wf111.hash | 4 + package/wf111/wf111.mk | 33 + package/wget/Config.in | 15 + package/wget/wget.hash | 6 + package/wget/wget.mk | 57 + package/whetstone/Config.in | 6 + package/whetstone/whetstone.hash | 2 + package/whetstone/whetstone.mk | 23 + package/which/Config.in | 7 + package/which/which.hash | 4 + package/which/which.mk | 12 + package/whois/Config.in | 7 + package/whois/whois.hash | 5 + package/whois/whois.mk | 45 + package/wilc1000-firmware/Config.in | 6 + .../wilc1000-firmware/wilc1000-firmware.hash | 2 + .../wilc1000-firmware/wilc1000-firmware.mk | 24 + package/wilink-bt-firmware/Config.in | 7 + .../wilink-bt-firmware.hash | 3 + .../wilink-bt-firmware/wilink-bt-firmware.mk | 18 + package/wine/Config.in | 28 + package/wine/wine.hash | 5 + package/wine/wine.mk | 417 ++ package/wipe/0001-musl.patch | 28 + package/wipe/Config.in | 7 + package/wipe/wipe.hash | 3 + package/wipe/wipe.mk | 17 + package/wireguard-linux-compat/Config.in | 26 + .../wireguard-linux-compat.hash | 4 + .../wireguard-linux-compat.mk | 23 + package/wireguard-tools/Config.in | 21 + package/wireguard-tools/wireguard-tools.hash | 4 + package/wireguard-tools/wireguard-tools.mk | 36 + package/wireless-regdb/Config.in | 14 + package/wireless-regdb/wireless-regdb.hash | 4 + package/wireless-regdb/wireless-regdb.mk | 31 + .../wireless_tools/0001-remove-bzero.patch | 95 + package/wireless_tools/Config.in | 16 + package/wireless_tools/wireless_tools.hash | 3 + package/wireless_tools/wireless_tools.mk | 42 + package/wireshark/Config.in | 52 + package/wireshark/wireshark.hash | 6 + package/wireshark/wireshark.mk | 207 + package/wlroots/Config.in | 41 + package/wlroots/wlroots.hash | 5 + package/wlroots/wlroots.mk | 62 + package/wmctrl/Config.in | 24 + package/wmctrl/wmctrl.hash | 3 + package/wmctrl/wmctrl.mk | 18 + ...tiple-libraries-being-returned-for-B.patch | 80 + package/woff2/Config.in | 12 + package/woff2/woff2.hash | 5 + package/woff2/woff2.mk | 24 + package/wolfssl/Config.in | 27 + package/wolfssl/wolfssl.hash | 6 + package/wolfssl/wolfssl.mk | 48 + ...re-management-frame-from-unexpected-.patch | 77 + ...DigestAlgorithmIdentifier-parameters.patch | 116 + ...dbool.h-to-allow-C99-bool-to-be-used.patch | 32 + ...-functions-for-recognizing-tag-value.patch | 37 + .../wpa_supplicant/50-wpa_supplicant.preset | 4 + package/wpa_supplicant/Config.in | 128 + package/wpa_supplicant/wpa_supplicant.conf | 6 + package/wpa_supplicant/wpa_supplicant.hash | 5 + package/wpa_supplicant/wpa_supplicant.mk | 248 + package/wpan-tools/Config.in | 11 + package/wpan-tools/wpan-tools.hash | 3 + package/wpan-tools/wpan-tools.mk | 15 + package/wpebackend-fdo/Config.in | 20 + package/wpebackend-fdo/wpebackend-fdo.hash | 7 + package/wpebackend-fdo/wpebackend-fdo.mk | 15 + .../wpewebkit/0001-Fix-build-with-musl.patch | 79 + package/wpewebkit/Config.in | 128 + package/wpewebkit/wpewebkit.hash | 8 + package/wpewebkit/wpewebkit.mk | 89 + package/wqy-zenhei/Config.in | 16 + package/wqy-zenhei/wqy-zenhei.hash | 6 + package/wqy-zenhei/wqy-zenhei.mk | 27 + package/wsapi-fcgi/Config.in | 11 + package/wsapi-fcgi/wsapi-fcgi.hash | 4 + package/wsapi-fcgi/wsapi-fcgi.mk | 15 + package/wsapi-xavante/Config.in | 10 + package/wsapi-xavante/wsapi-xavante.hash | 4 + package/wsapi-xavante/wsapi-xavante.mk | 14 + package/wsapi/Config.in | 9 + package/wsapi/wsapi.hash | 4 + package/wsapi/wsapi.mk | 14 + package/x11r7/Config.in | 245 + package/x11r7/libxcb/Config.in | 12 + package/x11r7/libxcb/libxcb.hash | 5 + package/x11r7/libxcb/libxcb.mk | 31 + package/x11r7/mcookie/Config.in | 6 + package/x11r7/mcookie/mcookie.c | 425 ++ package/x11r7/mcookie/mcookie.mk | 21 + package/x11r7/x11r7.mk | 1 + package/x11r7/xapp_appres/Config.in | 6 + package/x11r7/xapp_appres/xapp_appres.hash | 7 + package/x11r7/xapp_appres/xapp_appres.mk | 14 + package/x11r7/xapp_bdftopcf/Config.in | 5 + .../x11r7/xapp_bdftopcf/xapp_bdftopcf.hash | 8 + package/x11r7/xapp_bdftopcf/xapp_bdftopcf.mk | 19 + package/x11r7/xapp_beforelight/Config.in | 8 + .../xapp_beforelight/xapp_beforelight.hash | 4 + .../xapp_beforelight/xapp_beforelight.mk | 15 + package/x11r7/xapp_bitmap/Config.in | 8 + package/x11r7/xapp_bitmap/xapp_bitmap.hash | 7 + package/x11r7/xapp_bitmap/xapp_bitmap.mk | 15 + package/x11r7/xapp_editres/Config.in | 8 + package/x11r7/xapp_editres/xapp_editres.hash | 7 + package/x11r7/xapp_editres/xapp_editres.mk | 15 + package/x11r7/xapp_fonttosfnt/Config.in | 7 + .../xapp_fonttosfnt/xapp_fonttosfnt.hash | 5 + .../x11r7/xapp_fonttosfnt/xapp_fonttosfnt.mk | 14 + package/x11r7/xapp_fslsfonts/Config.in | 6 + .../x11r7/xapp_fslsfonts/xapp_fslsfonts.hash | 4 + .../x11r7/xapp_fslsfonts/xapp_fslsfonts.mk | 14 + package/x11r7/xapp_fstobdf/Config.in | 6 + package/x11r7/xapp_fstobdf/xapp_fstobdf.hash | 4 + package/x11r7/xapp_fstobdf/xapp_fstobdf.mk | 14 + package/x11r7/xapp_iceauth/Config.in | 6 + package/x11r7/xapp_iceauth/xapp_iceauth.hash | 7 + package/x11r7/xapp_iceauth/xapp_iceauth.mk | 14 + package/x11r7/xapp_ico/Config.in | 5 + package/x11r7/xapp_ico/xapp_ico.hash | 7 + package/x11r7/xapp_ico/xapp_ico.mk | 14 + package/x11r7/xapp_listres/Config.in | 8 + package/x11r7/xapp_listres/xapp_listres.hash | 7 + package/x11r7/xapp_listres/xapp_listres.mk | 14 + .../x11r7/xapp_luit/0001-posix-openpt.patch | 19 + package/x11r7/xapp_luit/Config.in | 7 + package/x11r7/xapp_luit/xapp_luit.hash | 4 + package/x11r7/xapp_luit/xapp_luit.mk | 14 + package/x11r7/xapp_mkfontscale/Config.in | 9 + .../xapp_mkfontscale/xapp_mkfontscale.hash | 7 + .../xapp_mkfontscale/xapp_mkfontscale.mk | 17 + package/x11r7/xapp_oclock/Config.in | 7 + package/x11r7/xapp_oclock/xapp_oclock.hash | 7 + package/x11r7/xapp_oclock/xapp_oclock.mk | 22 + package/x11r7/xapp_rgb/Config.in | 5 + package/x11r7/xapp_rgb/xapp_rgb.hash | 4 + package/x11r7/xapp_rgb/xapp_rgb.mk | 14 + package/x11r7/xapp_rstart/Config.in | 6 + package/x11r7/xapp_rstart/xapp_rstart.hash | 4 + package/x11r7/xapp_rstart/xapp_rstart.mk | 14 + package/x11r7/xapp_scripts/Config.in | 5 + package/x11r7/xapp_scripts/xapp_scripts.hash | 3 + package/x11r7/xapp_scripts/xapp_scripts.mk | 14 + package/x11r7/xapp_sessreg/Config.in | 6 + package/x11r7/xapp_sessreg/xapp_sessreg.hash | 7 + package/x11r7/xapp_sessreg/xapp_sessreg.mk | 14 + package/x11r7/xapp_setxkbmap/Config.in | 6 + .../x11r7/xapp_setxkbmap/xapp_setxkbmap.hash | 7 + .../x11r7/xapp_setxkbmap/xapp_setxkbmap.mk | 14 + package/x11r7/xapp_showfont/Config.in | 5 + .../x11r7/xapp_showfont/xapp_showfont.hash | 4 + package/x11r7/xapp_showfont/xapp_showfont.mk | 14 + package/x11r7/xapp_smproxy/Config.in | 6 + package/x11r7/xapp_smproxy/xapp_smproxy.hash | 4 + package/x11r7/xapp_smproxy/xapp_smproxy.mk | 14 + package/x11r7/xapp_twm/Config.in | 8 + package/x11r7/xapp_twm/xapp_twm.hash | 5 + package/x11r7/xapp_twm/xapp_twm.mk | 15 + package/x11r7/xapp_viewres/Config.in | 5 + package/x11r7/xapp_viewres/xapp_viewres.hash | 7 + package/x11r7/xapp_viewres/xapp_viewres.mk | 15 + package/x11r7/xapp_x11perf/Config.in | 7 + package/x11r7/xapp_x11perf/xapp_x11perf.hash | 7 + package/x11r7/xapp_x11perf/xapp_x11perf.mk | 14 + package/x11r7/xapp_xauth/Config.in | 8 + package/x11r7/xapp_xauth/xapp_xauth.hash | 7 + package/x11r7/xapp_xauth/xapp_xauth.mk | 14 + package/x11r7/xapp_xbacklight/Config.in | 8 + .../xapp_xbacklight/xapp_xbacklight.hash | 7 + .../x11r7/xapp_xbacklight/xapp_xbacklight.mk | 14 + package/x11r7/xapp_xbiff/Config.in | 6 + package/x11r7/xapp_xbiff/xapp_xbiff.hash | 7 + package/x11r7/xapp_xbiff/xapp_xbiff.mk | 14 + package/x11r7/xapp_xcalc/Config.in | 5 + package/x11r7/xapp_xcalc/xapp_xcalc.hash | 7 + package/x11r7/xapp_xcalc/xapp_xcalc.mk | 16 + package/x11r7/xapp_xclipboard/Config.in | 5 + .../xapp_xclipboard/xapp_xclipboard.hash | 4 + .../x11r7/xapp_xclipboard/xapp_xclipboard.mk | 15 + package/x11r7/xapp_xclock/Config.in | 9 + package/x11r7/xapp_xclock/xapp_xclock.hash | 7 + package/x11r7/xapp_xclock/xapp_xclock.mk | 15 + package/x11r7/xapp_xcmsdb/Config.in | 6 + package/x11r7/xapp_xcmsdb/xapp_xcmsdb.hash | 4 + package/x11r7/xapp_xcmsdb/xapp_xcmsdb.mk | 14 + package/x11r7/xapp_xcompmgr/Config.in | 10 + .../x11r7/xapp_xcompmgr/xapp_xcompmgr.hash | 7 + package/x11r7/xapp_xcompmgr/xapp_xcompmgr.mk | 19 + package/x11r7/xapp_xconsole/Config.in | 10 + .../x11r7/xapp_xconsole/xapp_xconsole.hash | 4 + package/x11r7/xapp_xconsole/xapp_xconsole.mk | 17 + package/x11r7/xapp_xcursorgen/Config.in | 7 + .../xapp_xcursorgen/xapp_xcursorgen.hash | 7 + .../x11r7/xapp_xcursorgen/xapp_xcursorgen.mk | 17 + package/x11r7/xapp_xdbedizzy/Config.in | 5 + .../x11r7/xapp_xdbedizzy/xapp_xdbedizzy.hash | 4 + .../x11r7/xapp_xdbedizzy/xapp_xdbedizzy.mk | 14 + package/x11r7/xapp_xditview/Config.in | 5 + .../x11r7/xapp_xditview/xapp_xditview.hash | 7 + package/x11r7/xapp_xditview/xapp_xditview.mk | 15 + package/x11r7/xapp_xdm/Config.in | 15 + package/x11r7/xapp_xdm/S99xdm | 25 + package/x11r7/xapp_xdm/xapp_xdm.hash | 7 + package/x11r7/xapp_xdm/xapp_xdm.mk | 32 + package/x11r7/xapp_xdpyinfo/Config.in | 8 + .../x11r7/xapp_xdpyinfo/xapp_xdpyinfo.hash | 4 + package/x11r7/xapp_xdpyinfo/xapp_xdpyinfo.mk | 37 + package/x11r7/xapp_xdriinfo/Config.in | 10 + .../x11r7/xapp_xdriinfo/xapp_xdriinfo.hash | 7 + package/x11r7/xapp_xdriinfo/xapp_xdriinfo.mk | 14 + package/x11r7/xapp_xedit/Config.in | 6 + package/x11r7/xapp_xedit/xapp_xedit.hash | 5 + package/x11r7/xapp_xedit/xapp_xedit.mk | 18 + package/x11r7/xapp_xev/Config.in | 6 + package/x11r7/xapp_xev/xapp_xev.hash | 5 + package/x11r7/xapp_xev/xapp_xev.mk | 14 + package/x11r7/xapp_xeyes/Config.in | 9 + package/x11r7/xapp_xeyes/xapp_xeyes.hash | 7 + package/x11r7/xapp_xeyes/xapp_xeyes.mk | 14 + package/x11r7/xapp_xf86dga/Config.in | 7 + package/x11r7/xapp_xf86dga/xapp_xf86dga.hash | 4 + package/x11r7/xapp_xf86dga/xapp_xf86dga.mk | 17 + package/x11r7/xapp_xfd/Config.in | 8 + package/x11r7/xapp_xfd/xapp_xfd.hash | 7 + package/x11r7/xapp_xfd/xapp_xfd.mk | 28 + package/x11r7/xapp_xfindproxy/Config.in | 9 + .../xapp_xfindproxy/xapp_xfindproxy.hash | 4 + .../x11r7/xapp_xfindproxy/xapp_xfindproxy.mk | 17 + package/x11r7/xapp_xfontsel/Config.in | 5 + .../x11r7/xapp_xfontsel/xapp_xfontsel.hash | 7 + package/x11r7/xapp_xfontsel/xapp_xfontsel.mk | 14 + package/x11r7/xapp_xfs/Config.in | 8 + package/x11r7/xapp_xfs/xapp_xfs.hash | 7 + package/x11r7/xapp_xfs/xapp_xfs.mk | 14 + package/x11r7/xapp_xfsinfo/Config.in | 6 + package/x11r7/xapp_xfsinfo/xapp_xfsinfo.hash | 7 + package/x11r7/xapp_xfsinfo/xapp_xfsinfo.mk | 14 + package/x11r7/xapp_xgamma/Config.in | 5 + package/x11r7/xapp_xgamma/xapp_xgamma.hash | 4 + package/x11r7/xapp_xgamma/xapp_xgamma.mk | 14 + package/x11r7/xapp_xgc/Config.in | 5 + package/x11r7/xapp_xgc/xapp_xgc.hash | 4 + package/x11r7/xapp_xgc/xapp_xgc.mk | 14 + package/x11r7/xapp_xhost/Config.in | 6 + package/x11r7/xapp_xhost/xapp_xhost.hash | 7 + package/x11r7/xapp_xhost/xapp_xhost.mk | 14 + package/x11r7/xapp_xinit/Config.in | 11 + package/x11r7/xapp_xinit/xapp_xinit.hash | 7 + package/x11r7/xapp_xinit/xapp_xinit.mk | 15 + .../x11r7/xapp_xinput-calibrator/Config.in | 12 + .../xapp_xinput-calibrator.hash | 3 + .../xapp_xinput-calibrator.mk | 14 + package/x11r7/xapp_xinput/Config.in | 8 + package/x11r7/xapp_xinput/xapp_xinput.hash | 7 + package/x11r7/xapp_xinput/xapp_xinput.mk | 14 + package/x11r7/xapp_xkbcomp/Config.in | 6 + package/x11r7/xapp_xkbcomp/xapp_xkbcomp.hash | 5 + package/x11r7/xapp_xkbcomp/xapp_xkbcomp.mk | 17 + package/x11r7/xapp_xkbevd/Config.in | 6 + package/x11r7/xapp_xkbevd/xapp_xkbevd.hash | 4 + package/x11r7/xapp_xkbevd/xapp_xkbevd.mk | 14 + package/x11r7/xapp_xkbprint/Config.in | 5 + .../x11r7/xapp_xkbprint/xapp_xkbprint.hash | 7 + package/x11r7/xapp_xkbprint/xapp_xkbprint.mk | 14 + package/x11r7/xapp_xkbutils/Config.in | 6 + .../x11r7/xapp_xkbutils/xapp_xkbutils.hash | 4 + package/x11r7/xapp_xkbutils/xapp_xkbutils.mk | 14 + package/x11r7/xapp_xkill/Config.in | 6 + package/x11r7/xapp_xkill/xapp_xkill.hash | 7 + package/x11r7/xapp_xkill/xapp_xkill.mk | 14 + package/x11r7/xapp_xload/Config.in | 5 + package/x11r7/xapp_xload/xapp_xload.hash | 7 + package/x11r7/xapp_xload/xapp_xload.mk | 25 + package/x11r7/xapp_xlogo/Config.in | 7 + package/x11r7/xapp_xlogo/xapp_xlogo.hash | 7 + package/x11r7/xapp_xlogo/xapp_xlogo.mk | 16 + package/x11r7/xapp_xlsatoms/Config.in | 6 + .../x11r7/xapp_xlsatoms/xapp_xlsatoms.hash | 7 + package/x11r7/xapp_xlsatoms/xapp_xlsatoms.mk | 14 + package/x11r7/xapp_xlsclients/Config.in | 8 + .../xapp_xlsclients/xapp_xlsclients.hash | 7 + .../x11r7/xapp_xlsclients/xapp_xlsclients.mk | 14 + package/x11r7/xapp_xlsfonts/Config.in | 5 + .../x11r7/xapp_xlsfonts/xapp_xlsfonts.hash | 7 + package/x11r7/xapp_xlsfonts/xapp_xlsfonts.mk | 14 + package/x11r7/xapp_xmag/Config.in | 5 + package/x11r7/xapp_xmag/xapp_xmag.hash | 4 + package/x11r7/xapp_xmag/xapp_xmag.mk | 15 + package/x11r7/xapp_xman/Config.in | 5 + package/x11r7/xapp_xman/xapp_xman.hash | 7 + package/x11r7/xapp_xman/xapp_xman.mk | 21 + package/x11r7/xapp_xmessage/Config.in | 5 + .../x11r7/xapp_xmessage/xapp_xmessage.hash | 7 + package/x11r7/xapp_xmessage/xapp_xmessage.mk | 15 + package/x11r7/xapp_xmh/Config.in | 7 + package/x11r7/xapp_xmh/xapp_xmh.hash | 4 + package/x11r7/xapp_xmh/xapp_xmh.mk | 14 + package/x11r7/xapp_xmodmap/Config.in | 5 + package/x11r7/xapp_xmodmap/xapp_xmodmap.hash | 7 + package/x11r7/xapp_xmodmap/xapp_xmodmap.mk | 14 + package/x11r7/xapp_xmore/Config.in | 5 + package/x11r7/xapp_xmore/xapp_xmore.hash | 7 + package/x11r7/xapp_xmore/xapp_xmore.mk | 14 + package/x11r7/xapp_xpr/Config.in | 6 + package/x11r7/xapp_xpr/xapp_xpr.hash | 7 + package/x11r7/xapp_xpr/xapp_xpr.mk | 14 + package/x11r7/xapp_xprop/Config.in | 6 + package/x11r7/xapp_xprop/xapp_xprop.hash | 5 + package/x11r7/xapp_xprop/xapp_xprop.mk | 14 + package/x11r7/xapp_xrandr/Config.in | 6 + package/x11r7/xapp_xrandr/xapp_xrandr.hash | 7 + package/x11r7/xapp_xrandr/xapp_xrandr.mk | 15 + package/x11r7/xapp_xrdb/Config.in | 6 + package/x11r7/xapp_xrdb/xapp_xrdb.hash | 7 + package/x11r7/xapp_xrdb/xapp_xrdb.mk | 14 + package/x11r7/xapp_xrefresh/Config.in | 5 + .../x11r7/xapp_xrefresh/xapp_xrefresh.hash | 7 + package/x11r7/xapp_xrefresh/xapp_xrefresh.mk | 14 + package/x11r7/xapp_xset/Config.in | 5 + package/x11r7/xapp_xset/xapp_xset.hash | 7 + package/x11r7/xapp_xset/xapp_xset.mk | 14 + package/x11r7/xapp_xsetmode/Config.in | 6 + .../x11r7/xapp_xsetmode/xapp_xsetmode.hash | 3 + package/x11r7/xapp_xsetmode/xapp_xsetmode.mk | 14 + package/x11r7/xapp_xsetpointer/Config.in | 7 + .../xapp_xsetpointer/xapp_xsetpointer.hash | 6 + .../xapp_xsetpointer/xapp_xsetpointer.mk | 14 + package/x11r7/xapp_xsetroot/Config.in | 8 + .../x11r7/xapp_xsetroot/xapp_xsetroot.hash | 7 + package/x11r7/xapp_xsetroot/xapp_xsetroot.mk | 14 + package/x11r7/xapp_xsm/Config.in | 6 + package/x11r7/xapp_xsm/xapp_xsm.hash | 7 + package/x11r7/xapp_xsm/xapp_xsm.mk | 14 + package/x11r7/xapp_xstdcmap/Config.in | 6 + .../x11r7/xapp_xstdcmap/xapp_xstdcmap.hash | 7 + package/x11r7/xapp_xstdcmap/xapp_xstdcmap.mk | 14 + package/x11r7/xapp_xvidtune/Config.in | 6 + .../x11r7/xapp_xvidtune/xapp_xvidtune.hash | 4 + package/x11r7/xapp_xvidtune/xapp_xvidtune.mk | 14 + package/x11r7/xapp_xvinfo/Config.in | 6 + package/x11r7/xapp_xvinfo/xapp_xvinfo.hash | 7 + package/x11r7/xapp_xvinfo/xapp_xvinfo.mk | 14 + package/x11r7/xapp_xwd/Config.in | 7 + package/x11r7/xapp_xwd/xapp_xwd.hash | 7 + package/x11r7/xapp_xwd/xapp_xwd.mk | 14 + package/x11r7/xapp_xwininfo/Config.in | 6 + .../x11r7/xapp_xwininfo/xapp_xwininfo.hash | 7 + package/x11r7/xapp_xwininfo/xapp_xwininfo.mk | 14 + package/x11r7/xapp_xwud/Config.in | 5 + package/x11r7/xapp_xwud/xapp_xwud.hash | 7 + package/x11r7/xapp_xwud/xapp_xwud.mk | 14 + package/x11r7/xcb-proto/Config.in | 6 + package/x11r7/xcb-proto/xcb-proto.hash | 5 + package/x11r7/xcb-proto/xcb-proto.mk | 23 + package/x11r7/xcb-util-cursor/Config.in | 19 + .../xcb-util-cursor/xcb-util-cursor.hash | 4 + .../x11r7/xcb-util-cursor/xcb-util-cursor.mk | 15 + package/x11r7/xcb-util-image/Config.in | 17 + .../x11r7/xcb-util-image/xcb-util-image.hash | 4 + .../x11r7/xcb-util-image/xcb-util-image.mk | 15 + package/x11r7/xcb-util-keysyms/Config.in | 17 + .../xcb-util-keysyms/xcb-util-keysyms.hash | 2 + .../xcb-util-keysyms/xcb-util-keysyms.mk | 18 + package/x11r7/xcb-util-renderutil/Config.in | 18 + .../xcb-util-renderutil.hash | 4 + .../xcb-util-renderutil.mk | 15 + package/x11r7/xcb-util-wm/Config.in | 17 + package/x11r7/xcb-util-wm/xcb-util-wm.hash | 4 + package/x11r7/xcb-util-wm/xcb-util-wm.mk | 15 + package/x11r7/xcb-util/Config.in | 8 + package/x11r7/xcb-util/xcb-util.hash | 3 + package/x11r7/xcb-util/xcb-util.mk | 15 + .../0001-fix-symlink.patch | 37 + .../x11r7/xcursor-transparent-theme/Config.in | 7 + .../xcursor-transparent-theme/index.theme | 2 + .../xcursor-transparent-theme.hash | 3 + .../xcursor-transparent-theme.mk | 20 + package/x11r7/xdata_xbitmaps/Config.in | 4 + .../x11r7/xdata_xbitmaps/xdata_xbitmaps.hash | 7 + .../x11r7/xdata_xbitmaps/xdata_xbitmaps.mk | 15 + package/x11r7/xdata_xcursor-themes/Config.in | 5 + .../xdata_xcursor-themes.hash | 7 + .../xdata_xcursor-themes.mk | 16 + .../0001-build-get-rid-of-sdkdir.patch | 87 + .../x11r7/xdriver_xf86-input-evdev/Config.in | 11 + .../xdriver_xf86-input-evdev.hash | 7 + .../xdriver_xf86-input-evdev.mk | 22 + .../0001-build-get-rid-of-sdkdir.patch | 78 + .../50-joystick.conf | 6 + .../xdriver_xf86-input-joystick/Config.in | 5 + .../xdriver_xf86-input-joystick.hash | 4 + .../xdriver_xf86-input-joystick.mk | 22 + .../xdriver_xf86-input-keyboard/Config.in | 5 + .../xdriver_xf86-input-keyboard.hash | 4 + .../xdriver_xf86-input-keyboard.mk | 15 + .../0001-build-get-rid-of-sdkdir.patch | 78 + .../xdriver_xf86-input-libinput/Config.in | 12 + .../xdriver_xf86-input-libinput.hash | 7 + .../xdriver_xf86-input-libinput.mk | 15 + .../0001-build-get-rid-of-sdkdir.patch | 81 + .../x11r7/xdriver_xf86-input-mouse/Config.in | 5 + .../xdriver_xf86-input-mouse.hash | 7 + .../xdriver_xf86-input-mouse.mk | 15 + .../0001-build-get-rid-of-sdkdir.patch | 88 + .../xdriver_xf86-input-synaptics/Config.in | 7 + .../xdriver_xf86-input-synaptics.hash | 7 + .../xdriver_xf86-input-synaptics.mk | 15 + .../x11r7/xdriver_xf86-input-tslib/Config.in | 8 + .../xdriver_xf86-input-tslib.hash | 5 + .../xdriver_xf86-input-tslib.mk | 17 + .../xdriver_xf86-input-vmmouse/Config.in | 6 + .../xdriver_xf86-input-vmmouse.hash | 4 + .../xdriver_xf86-input-vmmouse.mk | 21 + .../x11r7/xdriver_xf86-video-amdgpu/Config.in | 17 + .../xdriver_xf86-video-amdgpu.hash | 7 + .../xdriver_xf86-video-amdgpu.mk | 21 + .../0001-mibstore.patch | 40 + .../x11r7/xdriver_xf86-video-ark/Config.in | 5 + .../xdriver_xf86-video-ark.hash | 4 + .../xdriver_xf86-video-ark.mk | 14 + .../x11r7/xdriver_xf86-video-ast/Config.in | 5 + .../xdriver_xf86-video-ast.hash | 4 + .../xdriver_xf86-video-ast.mk | 14 + .../0001-Fix-link-failure-with-gcc-10.patch | 35 + .../x11r7/xdriver_xf86-video-ati/Config.in | 15 + .../xdriver_xf86-video-ati.hash | 7 + .../xdriver_xf86-video-ati.mk | 27 + .../x11r7/xdriver_xf86-video-cirrus/Config.in | 5 + .../xdriver_xf86-video-cirrus.hash | 4 + .../xdriver_xf86-video-cirrus.mk | 14 + .../x11r7/xdriver_xf86-video-dummy/Config.in | 5 + .../xdriver_xf86-video-dummy.hash | 4 + .../xdriver_xf86-video-dummy.mk | 14 + .../x11r7/xdriver_xf86-video-fbdev/Config.in | 5 + .../xdriver_xf86-video-fbdev.hash | 4 + .../xdriver_xf86-video-fbdev.mk | 14 + ...sunxi_x_g2d-drop-unused-dri2-include.patch | 28 + .../xdriver_xf86-video-fbturbo/Config.in | 11 + .../xdriver_xf86-video-fbturbo.hash | 3 + .../xdriver_xf86-video-fbturbo.mk | 30 + .../x11r7/xdriver_xf86-video-geode/Config.in | 6 + .../xdriver_xf86-video-geode.hash | 3 + .../xdriver_xf86-video-geode.mk | 14 + .../x11r7/xdriver_xf86-video-glint/Config.in | 10 + .../xdriver_xf86-video-glint.hash | 4 + .../xdriver_xf86-video-glint.mk | 14 + .../x11r7/xdriver_xf86-video-i128/Config.in | 5 + .../xdriver_xf86-video-i128.hash | 7 + .../xdriver_xf86-video-i128.mk | 14 + .../xdriver_xf86-video-imx-viv/Config.in | 40 + .../xdriver_xf86-video-imx-viv.hash | 3 + .../xdriver_xf86-video-imx-viv.mk | 35 + .../0001-Update-to-newer-swap-macros.patch | 65 + ...002-Fix-error-unknown-type-name-uint.patch | 33 + .../0003-support-glibc-2.20.patch | 57 + ...-API-forward-and-backward-compatible.patch | 787 +++ ...-video-imxfb-fix-m4-hardcodded-paths.patch | 53 + .../0006-xserver-1.14-compat.patch | 34 + .../x11r7/xdriver_xf86-video-imx/Config.in | 27 + .../xdriver_xf86-video-imx.hash | 2 + .../xdriver_xf86-video-imx.mk | 14 + .../x11r7/xdriver_xf86-video-intel/Config.in | 10 + .../xdriver_xf86-video-intel.hash | 3 + .../xdriver_xf86-video-intel.mk | 41 + .../0001-cross-compile.patch | 27 + .../x11r7/xdriver_xf86-video-mach64/Config.in | 5 + .../xdriver_xf86-video-mach64.hash | 7 + .../xdriver_xf86-video-mach64.mk | 19 + .../0001-misc-fixes.patch | 21 + .../x11r7/xdriver_xf86-video-mga/Config.in | 10 + .../xdriver_xf86-video-mga.hash | 7 + .../xdriver_xf86-video-mga.mk | 19 + .../xdriver_xf86-video-neomagic/Config.in | 5 + .../xdriver_xf86-video-neomagic.hash | 7 + .../xdriver_xf86-video-neomagic.mk | 14 + .../xdriver_xf86-video-nouveau/Config.in | 14 + .../xdriver_xf86-video-nouveau.hash | 7 + .../xdriver_xf86-video-nouveau.mk | 21 + package/x11r7/xdriver_xf86-video-nv/Config.in | 5 + .../xdriver_xf86-video-nv.hash | 4 + .../xdriver_xf86-video-nv.mk | 14 + .../xdriver_xf86-video-openchrome/Config.in | 16 + .../xdriver_xf86-video-openchrome.hash | 6 + .../xdriver_xf86-video-openchrome.mk | 21 + .../x11r7/xdriver_xf86-video-qxl/Config.in | 12 + .../xdriver_xf86-video-qxl.hash | 4 + .../xdriver_xf86-video-qxl.mk | 37 + .../x11r7/xdriver_xf86-video-r128/Config.in | 5 + .../xdriver_xf86-video-r128.hash | 7 + .../xdriver_xf86-video-r128.mk | 18 + .../0001-cross-compile.patch | 27 + .../0002-xorg-xserver120.patch | 23 + .../x11r7/xdriver_xf86-video-savage/Config.in | 10 + .../xdriver_xf86-video-savage.hash | 4 + .../xdriver_xf86-video-savage.mk | 19 + .../Config.in | 5 + .../xdriver_xf86-video-siliconmotion.hash | 4 + .../xdriver_xf86-video-siliconmotion.mk | 16 + .../x11r7/xdriver_xf86-video-sis/Config.in | 10 + .../xdriver_xf86-video-sis.hash | 7 + .../xdriver_xf86-video-sis.mk | 18 + .../xdriver_xf86-video-tdfx/0001-cross.patch | 24 + .../x11r7/xdriver_xf86-video-tdfx/Config.in | 10 + .../xdriver_xf86-video-tdfx.hash | 7 + .../xdriver_xf86-video-tdfx.mk | 22 + .../0001-mibstore.patch | 47 + .../x11r7/xdriver_xf86-video-tga/Config.in | 5 + .../xdriver_xf86-video-tga.hash | 4 + .../xdriver_xf86-video-tga.mk | 14 + .../xdriver_xf86-video-trident/Config.in | 5 + .../xdriver_xf86-video-trident.hash | 4 + .../xdriver_xf86-video-trident.mk | 14 + .../x11r7/xdriver_xf86-video-vesa/Config.in | 5 + .../xdriver_xf86-video-vesa.hash | 5 + .../xdriver_xf86-video-vesa.mk | 14 + .../x11r7/xdriver_xf86-video-vmware/Config.in | 11 + .../xdriver_xf86-video-vmware.hash | 7 + .../xdriver_xf86-video-vmware.mk | 21 + .../x11r7/xdriver_xf86-video-voodoo/Config.in | 5 + .../xdriver_xf86-video-voodoo.mk | 14 + package/x11r7/xfont_encodings/Config.in | 5 + .../xfont_encodings/xfont_encodings.hash | 7 + .../x11r7/xfont_encodings/xfont_encodings.mk | 18 + .../x11r7/xfont_font-adobe-100dpi/Config.in | 5 + .../xfont_font-adobe-100dpi.hash | 3 + .../xfont_font-adobe-100dpi.mk | 22 + .../x11r7/xfont_font-adobe-75dpi/Config.in | 5 + .../xfont_font-adobe-75dpi.hash | 3 + .../xfont_font-adobe-75dpi.mk | 22 + .../xfont_font-adobe-utopia-100dpi/Config.in | 5 + .../xfont_font-adobe-utopia-100dpi.hash | 3 + .../xfont_font-adobe-utopia-100dpi.mk | 22 + .../xfont_font-adobe-utopia-75dpi/Config.in | 5 + .../xfont_font-adobe-utopia-75dpi.hash | 3 + .../xfont_font-adobe-utopia-75dpi.mk | 22 + .../xfont_font-adobe-utopia-type1/Config.in | 5 + .../xfont_font-adobe-utopia-type1.hash | 3 + .../xfont_font-adobe-utopia-type1.mk | 17 + package/x11r7/xfont_font-alias/Config.in | 5 + .../xfont_font-alias/xfont_font-alias.hash | 5 + .../xfont_font-alias/xfont_font-alias.mk | 17 + .../x11r7/xfont_font-arabic-misc/Config.in | 5 + .../xfont_font-arabic-misc.hash | 3 + .../xfont_font-arabic-misc.mk | 22 + package/x11r7/xfont_font-bh-100dpi/Config.in | 5 + .../xfont_font-bh-100dpi.hash | 3 + .../xfont_font-bh-100dpi.mk | 22 + package/x11r7/xfont_font-bh-75dpi/Config.in | 5 + .../xfont_font-bh-75dpi.hash | 3 + .../xfont_font-bh-75dpi.mk | 22 + .../Config.in | 5 + ...xfont_font-bh-lucidatypewriter-100dpi.hash | 3 + .../xfont_font-bh-lucidatypewriter-100dpi.mk | 22 + .../Config.in | 5 + .../xfont_font-bh-lucidatypewriter-75dpi.hash | 3 + .../xfont_font-bh-lucidatypewriter-75dpi.mk | 22 + package/x11r7/xfont_font-bh-ttf/Config.in | 5 + .../xfont_font-bh-ttf/xfont_font-bh-ttf.hash | 4 + .../xfont_font-bh-ttf/xfont_font-bh-ttf.mk | 17 + package/x11r7/xfont_font-bh-type1/Config.in | 5 + .../xfont_font-bh-type1.hash | 3 + .../xfont_font-bh-type1.mk | 17 + .../xfont_font-bitstream-100dpi/Config.in | 5 + .../xfont_font-bitstream-100dpi.hash | 3 + .../xfont_font-bitstream-100dpi.mk | 22 + .../xfont_font-bitstream-75dpi/Config.in | 5 + .../xfont_font-bitstream-75dpi.hash | 3 + .../xfont_font-bitstream-75dpi.mk | 22 + .../xfont_font-bitstream-type1/Config.in | 5 + .../xfont_font-bitstream-type1.hash | 3 + .../xfont_font-bitstream-type1.mk | 17 + .../xfont_font-cronyx-cyrillic/Config.in | 5 + .../xfont_font-cronyx-cyrillic.hash | 3 + .../xfont_font-cronyx-cyrillic.mk | 22 + .../x11r7/xfont_font-cursor-misc/Config.in | 5 + .../xfont_font-cursor-misc.hash | 3 + .../xfont_font-cursor-misc.mk | 22 + .../x11r7/xfont_font-daewoo-misc/Config.in | 5 + .../xfont_font-daewoo-misc.hash | 2 + .../xfont_font-daewoo-misc.mk | 21 + package/x11r7/xfont_font-dec-misc/Config.in | 5 + .../xfont_font-dec-misc.hash | 3 + .../xfont_font-dec-misc.mk | 22 + package/x11r7/xfont_font-ibm-type1/Config.in | 5 + .../xfont_font-ibm-type1.hash | 3 + .../xfont_font-ibm-type1.mk | 17 + package/x11r7/xfont_font-isas-misc/Config.in | 5 + .../xfont_font-isas-misc.hash | 3 + .../xfont_font-isas-misc.mk | 22 + package/x11r7/xfont_font-jis-misc/Config.in | 5 + .../xfont_font-jis-misc.hash | 2 + .../xfont_font-jis-misc.mk | 21 + package/x11r7/xfont_font-micro-misc/Config.in | 5 + .../xfont_font-micro-misc.hash | 3 + .../xfont_font-micro-misc.mk | 22 + .../x11r7/xfont_font-misc-cyrillic/Config.in | 5 + .../xfont_font-misc-cyrillic.hash | 3 + .../xfont_font-misc-cyrillic.mk | 22 + .../x11r7/xfont_font-misc-ethiopic/Config.in | 5 + .../xfont_font-misc-ethiopic.hash | 5 + .../xfont_font-misc-ethiopic.mk | 17 + .../x11r7/xfont_font-misc-meltho/Config.in | 5 + .../xfont_font-misc-meltho.hash | 3 + .../xfont_font-misc-meltho.mk | 17 + package/x11r7/xfont_font-misc-misc/Config.in | 5 + .../xfont_font-misc-misc.hash | 3 + .../xfont_font-misc-misc.mk | 22 + package/x11r7/xfont_font-mutt-misc/Config.in | 5 + .../xfont_font-mutt-misc.hash | 3 + .../xfont_font-mutt-misc.mk | 22 + .../xfont_font-schumacher-misc/Config.in | 5 + .../xfont_font-schumacher-misc.hash | 3 + .../xfont_font-schumacher-misc.mk | 22 + .../xfont_font-screen-cyrillic/Config.in | 5 + .../xfont_font-screen-cyrillic.hash | 4 + .../xfont_font-screen-cyrillic.mk | 22 + package/x11r7/xfont_font-sony-misc/Config.in | 5 + .../xfont_font-sony-misc.hash | 4 + .../xfont_font-sony-misc.mk | 22 + package/x11r7/xfont_font-sun-misc/Config.in | 5 + .../xfont_font-sun-misc.hash | 4 + .../xfont_font-sun-misc.mk | 22 + package/x11r7/xfont_font-util/Config.in | 4 + .../xfont_font-util/xfont_font-util.hash | 8 + .../x11r7/xfont_font-util/xfont_font-util.mk | 19 + .../xfont_font-winitzki-cyrillic/Config.in | 5 + .../xfont_font-winitzki-cyrillic.hash | 4 + .../xfont_font-winitzki-cyrillic.mk | 22 + .../x11r7/xfont_font-xfree86-type1/Config.in | 5 + .../xfont_font-xfree86-type1.hash | 4 + .../xfont_font-xfree86-type1.mk | 17 + package/x11r7/xkeyboard-config/Config.in | 10 + .../xkeyboard-config/xkeyboard-config.hash | 3 + .../xkeyboard-config/xkeyboard-config.mk | 23 + package/x11r7/xlib_libFS/Config.in | 6 + package/x11r7/xlib_libFS/xlib_libFS.hash | 7 + package/x11r7/xlib_libFS/xlib_libFS.mk | 18 + package/x11r7/xlib_libICE/Config.in | 6 + package/x11r7/xlib_libICE/xlib_libICE.hash | 7 + package/x11r7/xlib_libICE/xlib_libICE.mk | 17 + package/x11r7/xlib_libSM/Config.in | 7 + package/x11r7/xlib_libSM/xlib_libSM.hash | 7 + package/x11r7/xlib_libSM/xlib_libSM.mk | 16 + package/x11r7/xlib_libX11/Config.in | 10 + package/x11r7/xlib_libX11/xlib_libX11.hash | 6 + package/x11r7/xlib_libX11/xlib_libX11.mk | 42 + package/x11r7/xlib_libXScrnSaver/Config.in | 7 + .../xlib_libXScrnSaver.hash | 7 + .../xlib_libXScrnSaver/xlib_libXScrnSaver.mk | 16 + package/x11r7/xlib_libXau/Config.in | 6 + package/x11r7/xlib_libXau/xlib_libXau.hash | 7 + package/x11r7/xlib_libXau/xlib_libXau.mk | 18 + package/x11r7/xlib_libXaw/Config.in | 9 + package/x11r7/xlib_libXaw/xlib_libXaw.hash | 6 + package/x11r7/xlib_libXaw/xlib_libXaw.mk | 15 + package/x11r7/xlib_libXcomposite/Config.in | 8 + .../xlib_libXcomposite.hash | 7 + .../xlib_libXcomposite/xlib_libXcomposite.mk | 15 + package/x11r7/xlib_libXcursor/Config.in | 8 + .../xlib_libXcursor/xlib_libXcursor.hash | 7 + .../x11r7/xlib_libXcursor/xlib_libXcursor.mk | 21 + package/x11r7/xlib_libXdamage/Config.in | 7 + .../xlib_libXdamage/xlib_libXdamage.hash | 7 + .../x11r7/xlib_libXdamage/xlib_libXdamage.mk | 15 + package/x11r7/xlib_libXdmcp/Config.in | 6 + .../x11r7/xlib_libXdmcp/xlib_libXdmcp.hash | 7 + package/x11r7/xlib_libXdmcp/xlib_libXdmcp.mk | 19 + package/x11r7/xlib_libXext/Config.in | 6 + package/x11r7/xlib_libXext/xlib_libXext.hash | 7 + package/x11r7/xlib_libXext/xlib_libXext.mk | 18 + package/x11r7/xlib_libXfixes/Config.in | 6 + .../x11r7/xlib_libXfixes/xlib_libXfixes.hash | 5 + .../x11r7/xlib_libXfixes/xlib_libXfixes.mk | 20 + package/x11r7/xlib_libXfont/Config.in | 9 + .../x11r7/xlib_libXfont/xlib_libXfont.hash | 8 + package/x11r7/xlib_libXfont/xlib_libXfont.mk | 42 + ...ne-HAVE_LIBBSD-when-libbsd-was-found.patch | 30 + package/x11r7/xlib_libXfont2/Config.in | 9 + .../x11r7/xlib_libXfont2/xlib_libXfont2.hash | 8 + .../x11r7/xlib_libXfont2/xlib_libXfont2.mk | 47 + package/x11r7/xlib_libXft/Config.in | 10 + package/x11r7/xlib_libXft/xlib_libXft.hash | 7 + package/x11r7/xlib_libXft/xlib_libXft.mk | 15 + package/x11r7/xlib_libXi/Config.in | 8 + package/x11r7/xlib_libXi/xlib_libXi.hash | 7 + package/x11r7/xlib_libXi/xlib_libXi.mk | 24 + package/x11r7/xlib_libXinerama/Config.in | 7 + .../xlib_libXinerama/xlib_libXinerama.hash | 7 + .../xlib_libXinerama/xlib_libXinerama.mk | 18 + package/x11r7/xlib_libXmu/Config.in | 8 + package/x11r7/xlib_libXmu/xlib_libXmu.hash | 7 + package/x11r7/xlib_libXmu/xlib_libXmu.mk | 15 + package/x11r7/xlib_libXpm/Config.in | 8 + package/x11r7/xlib_libXpm/xlib_libXpm.hash | 8 + package/x11r7/xlib_libXpm/xlib_libXpm.mk | 24 + package/x11r7/xlib_libXrandr/Config.in | 8 + .../x11r7/xlib_libXrandr/xlib_libXrandr.hash | 7 + .../x11r7/xlib_libXrandr/xlib_libXrandr.mk | 18 + package/x11r7/xlib_libXrender/Config.in | 6 + .../xlib_libXrender/xlib_libXrender.hash | 5 + .../x11r7/xlib_libXrender/xlib_libXrender.mk | 22 + package/x11r7/xlib_libXres/Config.in | 7 + package/x11r7/xlib_libXres/xlib_libXres.hash | 8 + package/x11r7/xlib_libXres/xlib_libXres.mk | 18 + package/x11r7/xlib_libXt/Config.in | 9 + package/x11r7/xlib_libXt/xlib_libXt.hash | 5 + package/x11r7/xlib_libXt/xlib_libXt.mk | 18 + package/x11r7/xlib_libXtst/Config.in | 8 + package/x11r7/xlib_libXtst/xlib_libXtst.hash | 4 + package/x11r7/xlib_libXtst/xlib_libXtst.mk | 22 + package/x11r7/xlib_libXv/Config.in | 7 + package/x11r7/xlib_libXv/xlib_libXv.hash | 5 + package/x11r7/xlib_libXv/xlib_libXv.mk | 18 + package/x11r7/xlib_libXvMC/Config.in | 8 + package/x11r7/xlib_libXvMC/xlib_libXvMC.hash | 8 + package/x11r7/xlib_libXvMC/xlib_libXvMC.mk | 18 + package/x11r7/xlib_libXxf86dga/Config.in | 8 + .../xlib_libXxf86dga/xlib_libXxf86dga.hash | 7 + .../xlib_libXxf86dga/xlib_libXxf86dga.mk | 18 + package/x11r7/xlib_libXxf86vm/Config.in | 7 + .../xlib_libXxf86vm/xlib_libXxf86vm.hash | 6 + .../x11r7/xlib_libXxf86vm/xlib_libXxf86vm.mk | 18 + package/x11r7/xlib_libdmx/Config.in | 7 + package/x11r7/xlib_libdmx/xlib_libdmx.hash | 7 + package/x11r7/xlib_libdmx/xlib_libdmx.mk | 18 + package/x11r7/xlib_libfontenc/Config.in | 6 + .../xlib_libfontenc/xlib_libfontenc.hash | 7 + .../x11r7/xlib_libfontenc/xlib_libfontenc.mk | 17 + package/x11r7/xlib_libxkbfile/Config.in | 6 + .../xlib_libxkbfile/xlib_libxkbfile.hash | 7 + .../x11r7/xlib_libxkbfile/xlib_libxkbfile.mk | 17 + package/x11r7/xlib_libxshmfence/Config.in | 9 + .../xlib_libxshmfence/xlib_libxshmfence.hash | 7 + .../xlib_libxshmfence/xlib_libxshmfence.mk | 15 + package/x11r7/xlib_xtrans/Config.in | 4 + package/x11r7/xlib_xtrans/xlib_xtrans.hash | 7 + package/x11r7/xlib_xtrans/xlib_xtrans.mk | 15 + package/x11r7/xorgproto/Config.in | 5 + package/x11r7/xorgproto/xorgproto.hash | 42 + package/x11r7/xorgproto/xorgproto.mk | 54 + .../0001-modesettings-needs-dri2.patch | 20 + ...0002-include-misc.h-fix-uClibc-build.patch | 31 + ...nd-Makefile.am-fix-build-without-glx.patch | 45 + ...mon-xf86Init.c-fix-build-without-glx.patch | 45 + ...probing-a-non-PCI-platform-device-on.patch | 33 + package/x11r7/xserver_xorg-server/Config.in | 85 + package/x11r7/xserver_xorg-server/S40xorg | 46 + .../x11r7/xserver_xorg-server/xorg.service | 11 + .../xserver_xorg-server.hash | 6 + .../xserver_xorg-server.mk | 198 + package/x11r7/xutil_makedepend/Config.in | 5 + .../xutil_makedepend/xutil_makedepend.hash | 7 + .../xutil_makedepend/xutil_makedepend.mk | 17 + ...ld-on-32bit-arches-with-64bit-time_t.patch | 109 + ...ared-memory-segments-to-current-user.patch | 25 + package/x11vnc/Config.in | 13 + package/x11vnc/x11vnc.hash | 3 + package/x11vnc/x11vnc.mk | 70 + package/x264/Config.in | 19 + package/x264/x264.hash | 4 + package/x264/x264.mk | 70 + package/x265/0001-fix-gcc-options.patch | 52 + package/x265/0002-arm-asm-primitives.patch | 354 ++ package/x265/Config.in | 29 + package/x265/x265.hash | 5 + package/x265/x265.mk | 39 + package/xapian/Config.in | 18 + package/xapian/xapian.hash | 5 + package/xapian/xapian.mk | 17 + package/xavante/Config.in | 13 + package/xavante/xavante.hash | 3 + package/xavante/xavante.mk | 11 + ...ilation-by-adding-TEMP_FAILURE_RETRY.patch | 36 + package/xdg-dbus-proxy/Config.in | 14 + package/xdg-dbus-proxy/xdg-dbus-proxy.hash | 5 + package/xdg-dbus-proxy/xdg-dbus-proxy.mk | 17 + package/xdotool/Config.in | 12 + package/xdotool/xdotool.hash | 3 + package/xdotool/xdotool.mk | 24 + ...de-linux-limits.h-for-XATTR_SIZE_MAX.patch | 43 + package/xen/Config.in | 43 + package/xen/xen.hash | 3 + package/xen/xen.mk | 65 + ...Allow-building-with-GCC-10-2-2020101.patch | 1721 +++++++ package/xenomai/Config.in | 219 + package/xenomai/xenomai.hash | 17 + package/xenomai/xenomai.mk | 161 + .../0001-fix-static-linking-with-curl.patch | 39 + package/xerces/Config.in | 21 + package/xerces/xerces.hash | 5 + package/xerces/xerces.mk | 48 + ...-do-dynamic-linking-of-libtool-libra.patch | 52 + ...-do-not-try-to-run-the-crc32selftest.patch | 44 + package/xfsprogs/Config.in | 16 + package/xfsprogs/xfsprogs.hash | 6 + package/xfsprogs/xfsprogs.mk | 32 + package/xinetd/0001-ar.patch | 74 + package/xinetd/0002-destdir.patch | 55 + package/xinetd/0003-rpc-fix.patch | 26 + package/xinetd/0004-configure-rlim_t.patch | 18 + ...netd-ignores-user-and-group-directiv.patch | 29 + package/xinetd/Config.in | 8 + package/xinetd/xinetd.hash | 3 + package/xinetd/xinetd.mk | 38 + package/xl2tp/Config.in | 12 + package/xl2tp/xl2tp.hash | 3 + package/xl2tp/xl2tp.mk | 26 + package/xl2tp/xl2tpd | 27 + package/xmlstarlet/Config.in | 9 + package/xmlstarlet/xmlstarlet.hash | 5 + package/xmlstarlet/xmlstarlet.mk | 34 + package/xorcurses/Config.in | 11 + package/xorcurses/xorcurses.hash | 3 + package/xorcurses/xorcurses.mk | 27 + package/xorriso/Config.in | 22 + package/xorriso/Config.in.host | 14 + package/xorriso/xorriso.hash | 4 + package/xorriso/xorriso.mk | 77 + package/xr819-xradio/Config.in | 10 + package/xr819-xradio/xr819-xradio.hash | 4 + package/xr819-xradio/xr819-xradio.mk | 13 + package/xscreensaver/Config.in | 34 + package/xscreensaver/xscreensaver.hash | 4 + package/xscreensaver/xscreensaver.mk | 89 + package/xtables-addons/Config.in | 19 + package/xtables-addons/xtables-addons.hash | 3 + package/xtables-addons/xtables-addons.mk | 40 + package/xterm/Config.in | 10 + package/xterm/xterm.hash | 4 + package/xterm/xterm.mk | 36 + package/xutil_util-macros/Config.in | 4 + .../xutil_util-macros/xutil_util-macros.hash | 5 + .../xutil_util-macros/xutil_util-macros.mk | 17 + .../xvisor/0001-fix-build-with-gcc-10.patch | 64 + package/xvisor/Config.in | 68 + package/xvisor/xvisor.hash | 3 + package/xvisor/xvisor.mk | 86 + package/xvkbd/Config.in | 16 + package/xvkbd/xvkbd.hash | 4 + package/xvkbd/xvkbd.mk | 23 + package/xxhash/Config.in | 7 + package/xxhash/xxhash.hash | 3 + package/xxhash/xxhash.mk | 20 + package/xz/Config.in | 15 + package/xz/xz.hash | 8 + package/xz/xz.mk | 28 + package/yad/Config.in | 13 + package/yad/yad.hash | 6 + package/yad/yad.mk | 24 + package/yaffs2utils/yaffs2utils.hash | 3 + package/yaffs2utils/yaffs2utils.mk | 22 + ...nd-the-static-library-have-the-same-.patch | 34 + ...ared-library-build-when-BUILD_SHARED.patch | 49 + ...ith-shared-libyajl-in-a-shared-build.patch | 127 + ...with-libm-when-isnan-is-not-brought-.patch | 64 + package/yajl/Config.in | 8 + package/yajl/yajl.hash | 3 + package/yajl/yajl.mk | 13 + package/yaml-cpp/Config.in | 12 + package/yaml-cpp/yaml-cpp.hash | 3 + package/yaml-cpp/yaml-cpp.mk | 25 + package/yasm/Config.in | 10 + package/yasm/yasm.hash | 7 + package/yasm/yasm.mk | 22 + package/yavta/Config.in | 6 + package/yavta/yavta.mk | 20 + package/ympd/0001-only-c-language.patch | 21 + .../0002-added-forward-declarations.patch | 43 + package/ympd/Config.in | 15 + package/ympd/ympd.hash | 3 + package/ympd/ympd.mk | 20 + package/ytree/0001-fix-musl.patch | 26 + package/ytree/Config.in | 8 + package/ytree/ytree.hash | 3 + package/ytree/ytree.mk | 31 + ...zbarcam-zbarimg-get-rid-of-gettext-h.patch | 45 + ...-zbar-cam-img-.c-fix-build-with-musl.patch | 55 + package/zbar/Config.in | 17 + package/zbar/zbar.hash | 3 + package/zbar/zbar.mk | 35 + package/zd1211-firmware/Config.in | 6 + package/zd1211-firmware/zd1211-firmware.hash | 3 + package/zd1211-firmware/zd1211-firmware.mk | 19 + package/zeromq/Config.in | 67 + package/zeromq/zeromq.hash | 7 + package/zeromq/zeromq.mk | 100 + ...ove-dependency-check-on-version-file.patch | 32 + package/zic/zic.hash | 4 + package/zic/zic.mk | 25 + ...-Check-C-compiler-type-optimization-.patch | 130 + .../0002-configure-Don-t-use-host-CPP.patch | 37 + ...akefile-Use-CFLAGS-from-command-line.patch | 30 + ...figure-use-LDFLAGS-from-command-line.patch | 35 + ...-configure-remove-GID-UID-size-check.patch | 85 + ...e-borrow-the-LFS-test-from-autotools.patch | 101 + ...ne.c-needs-time.h-fixes-musl-compile.patch | 38 + package/zip/Config.in | 10 + package/zip/Config.in.host | 10 + package/zip/zip.hash | 3 + package/zip/zip.mk | 62 + package/zisofs-tools/zisofs-tools.hash | 5 + package/zisofs-tools/zisofs-tools.mk | 15 + package/zlib-ng/zlib-ng.hash | 3 + package/zlib-ng/zlib-ng.mk | 26 + package/zlib/Config.in | 57 + package/zlib/zlib.mk | 8 + package/zlog/Config.in | 12 + package/zlog/zlog.hash | 3 + package/zlog/zlog.mk | 26 + ...ilding-shared-or-static-library-only.patch | 92 + package/zmqpp/Config.in | 41 + package/zmqpp/zmqpp.hash | 3 + package/zmqpp/zmqpp.mk | 59 + package/znc/Config.in | 16 + package/znc/znc.hash | 3 + package/znc/znc.mk | 49 + package/zsh/Config.in | 11 + package/zsh/zsh.hash | 7 + package/zsh/zsh.mk | 53 + package/zstd/Config.in | 12 + package/zstd/Config.in.host | 8 + package/zstd/zstd.hash | 6 + package/zstd/zstd.mk | 99 + ...bs-private-not-exported-to-the-users.patch | 43 + ...akeLists-txt-add-BUILD_OPENCV-option.patch | 39 + package/zxing-cpp/Config.in | 14 + package/zxing-cpp/zxing-cpp.hash | 5 + package/zxing-cpp/zxing-cpp.mk | 26 + package/zynq-boot-bin/zynq-boot-bin.hash | 2 + package/zynq-boot-bin/zynq-boot-bin.mk | 22 + package/zyre/Config.in | 16 + package/zyre/zyre.hash | 3 + package/zyre/zyre.mk | 22 + package/zziplib/Config.in | 11 + package/zziplib/zziplib.hash | 5 + package/zziplib/zziplib.mk | 30 + .../autobuild/andes-nds32.config | 3 + .../autobuild/arm-aarch64.config | 4 + .../autobuild/bootlin-aarch64-glibc.config | 4 + .../bootlin-arcle-hs38-uclibc.config | 5 + .../autobuild/bootlin-armv5-uclibc.config | 4 + .../autobuild/bootlin-armv7-glibc.config | 6 + .../autobuild/bootlin-armv7-musl.config | 6 + .../autobuild/bootlin-armv7m-uclibc.config | 4 + .../autobuild/bootlin-m68k-5208-uclibc.config | 4 + .../bootlin-m68k-68040-uclibc.config | 4 + .../bootlin-microblazeel-uclibc.config | 3 + .../autobuild/bootlin-mipsel-uclibc.config | 4 + .../autobuild/bootlin-mipsel32r6-glibc.config | 6 + .../autobuild/bootlin-nios2-glibc.config | 4 + .../autobuild/bootlin-openrisc-uclibc.config | 3 + .../bootlin-powerpc-e500mc-uclibc.config | 4 + .../bootlin-powerpc64le-power8-glibc.config | 4 + .../autobuild/bootlin-riscv32-glibc.config | 5 + .../autobuild/bootlin-riscv64-glibc.config | 5 + .../autobuild/bootlin-riscv64-musl.config | 4 + .../autobuild/bootlin-sh4-uclibc.config | 3 + .../autobuild/bootlin-sparc-uclibc.config | 3 + .../autobuild/bootlin-sparc64-glibc.config | 3 + .../autobuild/bootlin-x86-64-glibc.config | 5 + .../autobuild/bootlin-x86-64-musl.config | 4 + .../autobuild/bootlin-x86-64-uclibc.config | 4 + .../autobuild/bootlin-xtensa-uclibc.config | 5 + .../autobuild/br-arc-full-internal.config | 3 + .../autobuild/br-arc-internal-glibc.config | 4 + .../autobuild/br-arm-basic.config | 8 + .../autobuild/br-arm-full-nothread.config | 11 + .../autobuild/br-arm-full-static.config | 11 + .../autobuild/br-arm-internal-full.config | 5 + .../autobuild/br-arm-internal-glibc.config | 6 + .../autobuild/br-arm-internal-musl.config | 4 + .../autobuild/br-i386-pentium-mmx-musl.config | 10 + .../autobuild/br-i386-pentium4-full.config | 10 + .../br-microblazeel-full-internal.config | 1 + .../autobuild/br-mips64-n64-full.config | 10 + .../autobuild/br-mips64r6-el-hf-glibc.config | 12 + .../br-powerpc-603e-basic-cpp.config | 10 + .../autobuild/br-powerpc-internal-full.config | 4 + .../br-powerpc64-power7-glibc.config | 9 + .../autobuild/br-riscv64-full-internal.config | 4 + .../br-s390x-z13-internal-glibc.config | 4 + .../autobuild/br-xtensa-full-internal.config | 3 + .../autobuild/linaro-aarch64-be.config | 3 + .../autobuild/linaro-aarch64.config | 3 + .../autobuild/linaro-arm.config | 5 + .../autobuild/sourcery-arm-armv4t.config | 4 + .../autobuild/sourcery-arm-thumb2.config | 7 + .../autobuild/sourcery-arm.config | 3 + .../autobuild/sourcery-mips.config | 4 + .../autobuild/sourcery-mips64.config | 5 + .../autobuild/sourcery-nios2.config | 3 + .../autobuild/toolchain-configs.csv | 73 + support/config-fragments/minimal.config | 8 + support/dependencies/check-host-asciidoc.sh | 36 + support/dependencies/check-host-bison-flex.mk | 14 + support/dependencies/check-host-cmake.mk | 14 + support/dependencies/check-host-cmake.sh | 45 + support/dependencies/check-host-coreutils.mk | 6 + support/dependencies/check-host-coreutils.sh | 12 + support/dependencies/check-host-gzip.mk | 3 + support/dependencies/check-host-gzip.sh | 21 + support/dependencies/check-host-lzip.mk | 4 + support/dependencies/check-host-lzip.sh | 14 + support/dependencies/check-host-make.mk | 21 + support/dependencies/check-host-make.sh | 37 + support/dependencies/check-host-python3.mk | 8 + support/dependencies/check-host-python3.sh | 31 + support/dependencies/check-host-tar.mk | 6 + support/dependencies/check-host-tar.sh | 47 + support/dependencies/check-host-xzcat.mk | 7 + support/dependencies/check-host-xzcat.sh | 14 + support/dependencies/dependencies.mk | 35 + support/dependencies/dependencies.sh | 298 ++ support/docker/Dockerfile | 63 + support/docker/apt-sources.list | 4 + support/download/bzr | 58 + support/download/check-hash | 111 + support/download/cvs | 63 + support/download/dl-wrapper | 219 + support/download/file | 42 + support/download/git | 209 + support/download/helpers | 76 + support/download/hg | 43 + support/download/scp | 40 + support/download/svn | 60 + support/download/wget | 43 + support/gnuconfig/README.buildroot | 21 + support/gnuconfig/config.guess | 1483 ++++++ support/gnuconfig/config.sub | 1803 +++++++ support/gnuconfig/update | 14 + support/kconfig/.gitignore | 4 + support/kconfig/Makefile | 342 ++ support/kconfig/Makefile.br | 53 + support/kconfig/POTFILES.in | 12 + support/kconfig/README.buildroot | 25 + support/kconfig/check.sh | 14 + support/kconfig/conf.c | 716 +++ support/kconfig/confdata.c | 1282 +++++ support/kconfig/expr.c | 1305 +++++ support/kconfig/expr.h | 329 ++ support/kconfig/foo.h | 12 + support/kconfig/gconf.c | 1521 ++++++ support/kconfig/gconf.glade | 661 +++ support/kconfig/images.c | 326 ++ support/kconfig/kconf_id.c | 53 + support/kconfig/kxgettext.c | 235 + support/kconfig/list.h | 132 + support/kconfig/lkc.h | 188 + support/kconfig/lkc_proto.h | 53 + support/kconfig/lxdialog/.gitignore | 4 + support/kconfig/lxdialog/BIG.FAT.WARNING | 4 + support/kconfig/lxdialog/check-lxdialog.sh | 93 + support/kconfig/lxdialog/checklist.c | 332 ++ support/kconfig/lxdialog/dialog.h | 257 + support/kconfig/lxdialog/inputbox.c | 301 ++ support/kconfig/lxdialog/menubox.c | 437 ++ support/kconfig/lxdialog/textbox.c | 408 ++ support/kconfig/lxdialog/util.c | 713 +++ support/kconfig/lxdialog/yesno.c | 114 + support/kconfig/mconf.c | 1047 ++++ support/kconfig/menu.c | 873 ++++ support/kconfig/merge_config.sh | 182 + support/kconfig/nconf.c | 1563 ++++++ support/kconfig/nconf.gui.c | 664 +++ support/kconfig/nconf.h | 94 + .../01-kconfig-kernel-to-buildroot.patch | 107 + .../06-br-build-system-integration.patch | 74 + .../kconfig/patches/10-br-build-system.patch | 80 + .../patches/11-use-mktemp-for-lxdialog.patch | 17 + .../patches/12-fix-glade-file-path.patch | 17 + .../14-support-out-of-tree-config.patch | 207 + .../16-fix-space-to-de-select-options.patch | 41 + .../kconfig/patches/17-backport-kecho.patch | 26 + ...fig.sh-create-temporary-files-in-tmp.patch | 27 + ...e_config.sh-add-br2-external-support.patch | 47 + ...fig.sh-Allow-to-define-config-prefix.patch | 31 + ...-positive-matches-from-comment-lines.patch | 32 + support/kconfig/patches/series | 12 + support/kconfig/qconf.cc | 1879 +++++++ support/kconfig/qconf.h | 330 ++ support/kconfig/streamline_config.pl | 682 +++ support/kconfig/symbol.c | 1432 ++++++ support/kconfig/util.c | 179 + support/kconfig/zconf.l | 372 ++ support/kconfig/zconf.lex.c_shipped | 2500 ++++++++++ support/kconfig/zconf.tab.c_shipped | 2488 ++++++++++ support/kconfig/zconf.y | 782 +++ support/legal-info/README.header | 35 + support/legal-info/README.warnings-header | 4 + support/legal-info/buildroot.hash | 2 + support/libtool/buildroot-libtool-v1.5.patch | 91 + support/libtool/buildroot-libtool-v2.2.patch | 106 + .../libtool/buildroot-libtool-v2.4.4.patch | 95 + support/libtool/buildroot-libtool-v2.4.patch | 89 + support/misc/Buildroot.cmake | 8 + support/misc/Vagrantfile | 60 + support/misc/gitlab-ci.yml.in | 78 + support/misc/relocate-sdk.sh | 47 + support/misc/target-dir-warning.txt | 29 + support/misc/toolchainfile.cmake.in | 73 + support/misc/utils.mk | 137 + support/scripts/apply-patches.sh | 170 + support/scripts/boot-qemu-image.py | 84 + support/scripts/br2-external | 253 + support/scripts/brpkgutil.py | 50 + support/scripts/check-bin-arch | 96 + support/scripts/check-dotconfig.py | 42 + support/scripts/check-host-rpath | 111 + support/scripts/check-kernel-headers.sh | 69 + support/scripts/check-merged-usr.sh | 39 + support/scripts/cpedb.py | 174 + support/scripts/cve.py | 273 ++ support/scripts/eclipse-register-toolchain | 76 + support/scripts/expunge-gconv-modules | 59 + support/scripts/fix-configure-powerpc64.sh | 47 + support/scripts/fix-rpath | 162 + support/scripts/gen-bootlin-toolchains | 496 ++ support/scripts/generate-gitlab-ci-yml | 106 + support/scripts/genimage.sh | 48 + support/scripts/graph-build-time | 312 ++ support/scripts/graph-depends | 357 ++ support/scripts/hardlink-or-copy | 35 + support/scripts/mkmakefile | 52 + support/scripts/mkusers | 443 ++ support/scripts/pkg-stats | 1132 +++++ support/scripts/pycompile.py | 93 + support/scripts/setlocalversion | 93 + support/scripts/size-stats | 308 ++ .../conf/binfmt-misc-kernel-fragment.config | 2 + .../testing/conf/docker-compose-kernel.config | 77 + support/testing/conf/docker-compose.yml | 9 + .../testing/conf/f2fs-kernel-fragment.config | 5 + support/testing/conf/grub2.cfg | 7 + support/testing/conf/isolinux.cfg | 5 + .../conf/minimal-x86-qemu-kernel.config | 49 + support/testing/conf/unittest.cfg | 5 + support/testing/infra/__init__.py | 114 + support/testing/infra/basetest.py | 92 + support/testing/infra/builder.py | 107 + support/testing/infra/emulator.py | 125 + support/testing/run-tests | 123 + support/testing/tests/__init__.py | 0 support/testing/tests/boot/__init__.py | 0 support/testing/tests/boot/test_atf.py | 57 + support/testing/tests/boot/test_syslinux.py | 85 + support/testing/tests/core/__init__.py | 0 .../tests/core/cpeid-br2-external/Config.in | 0 .../core/cpeid-br2-external/external.desc | 1 + .../tests/core/cpeid-br2-external/external.mk | 1 + .../package/cpe-id-pkg1/cpe-id-pkg1.mk | 4 + .../package/cpe-id-pkg2/cpe-id-pkg2.mk | 3 + .../package/cpe-id-pkg3/cpe-id-pkg3.mk | 5 + .../package/cpe-id-pkg4/cpe-id-pkg4.mk | 9 + .../package/cpe-id-pkg5/cpe-id-pkg5.mk | 16 + support/testing/tests/core/device_table2.txt | 7 + support/testing/tests/core/post-build.sh | 12 + support/testing/tests/core/post-fakeroot.sh | 1 + support/testing/tests/core/post-image.sh | 1 + .../tests/core/rootfs-overlay1/test-file1 | 1 + .../tests/core/rootfs-overlay2/etc/test-file2 | 1 + .../tests/core/squashfs-xattr-kernel.config | 1 + support/testing/tests/core/test_cpeid.py | 110 + .../tests/core/test_file_capabilities.py | 47 + support/testing/tests/core/test_hardening.py | 114 + .../testing/tests/core/test_post_scripts.py | 48 + .../testing/tests/core/test_root_password.py | 36 + .../testing/tests/core/test_rootfs_overlay.py | 30 + support/testing/tests/core/test_selinux.py | 86 + .../core/test_selinux/br2_external/Config.in | 1 + .../test_selinux/br2_external/external.desc | 1 + .../test_selinux/br2_external/external.mk | 1 + .../package/selinux-test/Config.in | 4 + .../package/selinux-test/selinux-test.mk | 9 + .../package/selinux-test/selinux/buildroot.fc | 0 .../package/selinux-test/selinux/buildroot.if | 1 + .../package/selinux-test/selinux/buildroot.te | 3 + .../test_selinux/extra_modules/buildroot.fc | 0 .../test_selinux/extra_modules/buildroot.if | 1 + .../test_selinux/extra_modules/buildroot.te | 3 + support/testing/tests/core/test_timezone.py | 72 + support/testing/tests/download/__init__.py | 0 .../download/br2-external/git-hash/Config.in | 0 .../br2-external/git-hash/external.desc | 1 + .../br2-external/git-hash/external.mk | 4 + .../git-hash/package/bad/bad.hash | 1 + .../br2-external/git-hash/package/bad/bad.mk | 10 + .../git-hash/package/good/good.hash | 1 + .../git-hash/package/good/good.mk | 10 + .../git-hash/package/nohash/nohash.mk | 10 + .../download/br2-external/git-refs/Config.in | 0 .../br2-external/git-refs/external.desc | 1 + .../br2-external/git-refs/external.mk | 4 + .../git-partial-sha1-branch-head.hash | 2 + .../git-partial-sha1-branch-head.mk | 11 + .../git-partial-sha1-reachable-by-branch.hash | 2 + .../git-partial-sha1-reachable-by-branch.mk | 11 + .../git-partial-sha1-reachable-by-tag.hash | 2 + .../git-partial-sha1-reachable-by-tag.mk | 11 + .../git-partial-sha1-tag-itself.hash | 2 + .../git-partial-sha1-tag-itself.mk | 11 + .../git-partial-sha1-tag-points-to.hash | 2 + .../git-partial-sha1-tag-points-to.mk | 11 + .../git-sha1-branch-head.hash | 2 + .../git-sha1-branch-head.mk | 11 + .../git-sha1-reachable-by-branch.hash | 2 + .../git-sha1-reachable-by-branch.mk | 11 + .../git-sha1-reachable-by-tag.hash | 2 + .../git-sha1-reachable-by-tag.mk | 11 + .../git-sha1-tag-itself.hash | 2 + .../git-sha1-tag-itself.mk | 11 + .../git-sha1-tag-points-to.hash | 2 + .../git-sha1-tag-points-to.mk | 11 + .../git-submodule-disabled.hash | 2 + .../git-submodule-disabled.mk | 11 + .../git-submodule-enabled.hash | 1 + .../git-submodule-enabled.mk | 11 + .../git-refs/package/git-tag/git-tag.hash | 2 + .../git-refs/package/git-tag/git-tag.mk | 11 + .../git-wrong-content/git-wrong-content.hash | 2 + .../git-wrong-content/git-wrong-content.mk | 11 + .../package/git-wrong-sha1/git-wrong-sha1.mk | 11 + .../git-remote/refs-sub1.git/.gitattributes | 1 + .../download/git-remote/refs-sub1.git/HEAD | 1 + .../download/git-remote/refs-sub1.git/config | 4 + .../07/cabc655213bdf7087d8dd50fda95124e935570 | Bin 0 -> 22 bytes .../1d/f823cb8a6d1866148ae50a8009762a9c4c777f | Bin 0 -> 180 bytes .../7d/52f458bdb0f9f5a4beb46fa82824421b8b988e | Bin 0 -> 65 bytes .../99/f2e3e1cb15f9b52fa29f66d380dda061d917ab | Bin 0 -> 49 bytes .../a1/30af1626bbadd64841b2cbcb6ac4ed0638ba1a | Bin 0 -> 122 bytes .../bc/c81ba6e5bd8bf52c95688ae8d3e697e131fa23 | Bin 0 -> 22 bytes .../cb/545facf77bbc5f24f95b6d503c338d10b7b717 | 1 + .../dd/130f6f4629514adaf2e03407f3ed9344eb6cd6 | Bin 0 -> 122 bytes .../e7/9c5e8f964493290a409888d5413a737e8e5dd5 | Bin 0 -> 23 bytes .../f8/001e5780100962a5e30a25cbc4c9609cfc7bf3 | Bin 0 -> 184 bytes .../refs-sub1.git/refs/heads/submodule | 1 + .../git-remote/refs-sub2.git/.gitattributes | 1 + .../download/git-remote/refs-sub2.git/HEAD | 1 + .../download/git-remote/refs-sub2.git/config | 4 + .../0a/846af45c3e455789435f49f80d70e86b65b9d7 | Bin 0 -> 22 bytes .../0b/32ebd8fc52cec991f18c94be980e85a8341585 | Bin 0 -> 22 bytes .../32/d61bae693af7879da63b89a60d3ae67f851e56 | 1 + .../3e/9b0a5198c64cea9c00f820433411e3b4d50c1c | Bin 0 -> 48 bytes .../85/8f666af75b7c0dfba6b8be7eac5f196e7a1221 | Bin 0 -> 49 bytes .../99/f2e3e1cb15f9b52fa29f66d380dda061d917ab | Bin 0 -> 49 bytes .../cd/4d62ff218ab7b4a04f5bfdf800ace087af3ceb | 2 + .../e7/9c5e8f964493290a409888d5413a737e8e5dd5 | Bin 0 -> 23 bytes .../e8/3f6f805bd016b90acafc8702c52d778eb57310 | Bin 0 -> 182 bytes .../refs-sub2.git/refs/heads/submodule | 1 + .../git-remote/repo.git/.gitattributes | 1 + .../tests/download/git-remote/repo.git/HEAD | 1 + .../tests/download/git-remote/repo.git/config | 4 + .../0b/d8ceb961c3b2b210f64a67d57f4b5cd669d343 | Bin 0 -> 22 bytes .../11/93ff46343f4f6a0522e2b28b871e905178c1f0 | Bin 0 -> 23 bytes .../25/59d83bfe937fc0412d96ed664663c9e8a99055 | Bin 0 -> 22 bytes .../2b/0e0d98a49c97da6a618ab36337e2058eb733a2 | 1 + .../2f/a37f6885d7eb746df75eccaddbacf3ac82799d | Bin 0 -> 180 bytes .../31/7406308d9259e2231bd0d6ddad3de3832bce08 | 1 + .../34/d1da713bf7de1c535e1d7d3ca985afd84bc7e5 | Bin 0 -> 23 bytes .../46/bae5b639e5a18e2cc4dc508f080d566baeff59 | 1 + .../51/6c9c5f64ec66534d4d069c2e408d9ae4dce023 | 2 + .../68/c197d0879d485f4f6cee85544722b79e68e59f | 1 + .../8b/8a7e885a041da72b1ee9a47c5b9300b172a9e7 | Bin 0 -> 65 bytes .../92/ef85be57d627f280d8ce3724452ac21c9a6452 | Bin 0 -> 20 bytes .../99/f2e3e1cb15f9b52fa29f66d380dda061d917ab | Bin 0 -> 49 bytes .../a2/38b1dfcd825d47d834af3c5223417c8411d90d | 1 + .../a9/dbc1e23c45e8e1b88c0448763f54d714eb6f8f | Bin 0 -> 183 bytes .../b2/4b387624edc78d0292a127c43cad9ba97c6232 | Bin 0 -> 49 bytes .../cf/0f4f85d7a1237e377a2d25b996518a877ea001 | Bin 0 -> 49 bytes .../d4/e2941d18a63535400476324ddeb7f40164be41 | Bin 0 -> 121 bytes .../e2/2695cbf976fed1f543ad7486a531c0af473482 | Bin 0 -> 49 bytes .../e2/cfe068f7e5bf4de32ffe1241da53abce9fa89e | Bin 0 -> 49 bytes .../e7/9c5e8f964493290a409888d5413a737e8e5dd5 | Bin 0 -> 23 bytes .../f6/476b879f65e956d7dedd5b08736369e9a24acc | Bin 0 -> 20 bytes .../fe/74231105841041d5f441e70399d37f0e600aa5 | Bin 0 -> 121 bytes .../git-remote/repo.git/refs/heads/master | 1 + .../git-remote/repo.git/refs/heads/mybranch | 1 + .../git-remote/repo.git/refs/heads/submodule | 1 + .../git-remote/repo.git/refs/tags/mytag | 1 + support/testing/tests/download/gitremote.py | 47 + support/testing/tests/download/test_git.py | 81 + support/testing/tests/fs/__init__.py | 0 support/testing/tests/fs/test_ext.py | 121 + support/testing/tests/fs/test_f2fs.py | 48 + support/testing/tests/fs/test_iso9660.py | 169 + support/testing/tests/fs/test_jffs2.py | 45 + support/testing/tests/fs/test_squashfs.py | 36 + support/testing/tests/fs/test_ubi.py | 39 + support/testing/tests/fs/test_yaffs2.py | 15 + support/testing/tests/init/__init__.py | 0 support/testing/tests/init/base.py | 48 + .../tests/init/systemd-factory/var/foo/bar | 1 + support/testing/tests/init/test_busybox.py | 64 + support/testing/tests/init/test_none.py | 33 + support/testing/tests/init/test_openrc.py | 50 + support/testing/tests/init/test_systemd.py | 161 + .../tests/init/test_systemd_selinux.py | 76 + .../linux-squashfs.fragment | 1 + support/testing/tests/package/__init__.py | 0 .../package/br2-external/openjdk/Config.in | 2 + .../br2-external/openjdk/external.desc | 1 + .../package/br2-external/openjdk/external.mk | 1 + .../package/openjdk-hello-world/Config.in | 5 + .../openjdk-hello-world/HelloWorld.java | 7 + .../openjdk-hello-world.mk | 18 + .../package/openjdk-jni-test/Config.in | 5 + .../package/openjdk-jni-test/JniHelper.java | 9 + .../package/openjdk-jni-test/JniTest.java | 92 + .../package/openjdk-jni-test/JniWrapper.c | 50 + .../package/openjdk-jni-test/JniWrapper.java | 17 + .../package/openjdk-jni-test/jni_helper.c | 94 + .../package/openjdk-jni-test/jni_helper.h | 13 + .../openjdk/package/openjdk-jni-test/native.c | 39 + .../openjdk/package/openjdk-jni-test/native.h | 11 + .../openjdk-jni-test/openjdk-jni-test.mk | 34 + .../package/copy-sample-script-to-target.sh | 7 + .../tests/package/sample_gst1_python.py | 32 + .../testing/tests/package/sample_libftdi1.py | 1 + .../tests/package/sample_python_argh.py | 10 + .../tests/package/sample_python_attrs.py | 15 + .../tests/package/sample_python_autobahn.py | 1 + .../tests/package/sample_python_automat.py | 27 + .../tests/package/sample_python_avro.py | 23 + .../tests/package/sample_python_bitstring.py | 6 + .../tests/package/sample_python_can.py | 6 + .../tests/package/sample_python_cbor_dec.py | 10 + .../tests/package/sample_python_cbor_enc.py | 14 + .../tests/package/sample_python_click.py | 12 + .../tests/package/sample_python_colorzero.py | 8 + .../tests/package/sample_python_constantly.py | 19 + .../tests/package/sample_python_crossbar.py | 5 + .../package/sample_python_cryptography.py | 3 + .../tests/package/sample_python_django.py | 1 + .../tests/package/sample_python_gitdb2.py | 1 + .../tests/package/sample_python_gobject.py | 14 + .../tests/package/sample_python_gpiozero.py | 5 + .../package/sample_python_incremental.py | 3 + .../tests/package/sample_python_passlib.py | 5 + .../tests/package/sample_python_pexpect.py | 8 + .../tests/package/sample_python_pynacl.py | 3 + .../tests/package/sample_python_pytest.py | 25 + .../package/sample_python_pytest_asyncio.py | 31 + .../tests/package/sample_python_pyyaml_dec.py | 10 + .../tests/package/sample_python_pyyaml_enc.py | 14 + .../tests/package/sample_python_rpi_gpio.py | 6 + .../package/sample_python_service_identity.py | 2 + .../tests/package/sample_python_smmap2.py | 6 + .../package/sample_python_subprocess32.py | 6 + .../tests/package/sample_python_treq.py | 16 + .../tests/package/sample_python_twisted.py | 9 + .../package/sample_python_txaio_asyncio.py | 3 + .../package/sample_python_txaio_twisted.py | 3 + .../tests/package/sample_python_txtorcon.py | 1 + .../tests/package/sample_python_ubjson_dec.py | 10 + .../tests/package/sample_python_ubjson_enc.py | 14 + support/testing/tests/package/test_atop.py | 41 + support/testing/tests/package/test_crudini.py | 49 + .../tests/package/test_docker_compose.py | 66 + .../testing/tests/package/test_dropbear.py | 32 + support/testing/tests/package/test_glxinfo.py | 62 + .../testing/tests/package/test_gst1_python.py | 31 + support/testing/tests/package/test_ipython.py | 22 + .../testing/tests/package/test_libftdi1.py | 25 + support/testing/tests/package/test_lpeg.py | 27 + .../testing/tests/package/test_lsqlite3.py | 25 + support/testing/tests/package/test_lua.py | 59 + .../testing/tests/package/test_lua_cqueues.py | 59 + .../testing/tests/package/test_lua_curl.py | 27 + support/testing/tests/package/test_lua_gd.py | 31 + .../testing/tests/package/test_lua_http.py | 37 + .../testing/tests/package/test_lua_lyaml.py | 27 + .../testing/tests/package/test_lua_sdl2.py | 41 + .../testing/tests/package/test_lua_utf8.py | 25 + .../testing/tests/package/test_luaexpat.py | 25 + .../tests/package/test_luafilesystem.py | 25 + support/testing/tests/package/test_lualdap.py | 25 + support/testing/tests/package/test_luaossl.py | 27 + .../testing/tests/package/test_luaposix.py | 83 + support/testing/tests/package/test_luasec.py | 25 + .../testing/tests/package/test_luasocket.py | 29 + .../testing/tests/package/test_luasyslog.py | 27 + support/testing/tests/package/test_luvi.py | 36 + support/testing/tests/package/test_lxc.py | 58 + .../tests/package/test_lxc/lxc-kernel.config | 20 + .../test_lxc/rootfs-overlay/usr/bin/iperf3.sh | 2 + .../usr/share/lxc/config/minimal-iperf3.conf | 4 + .../usr/share/lxc/config/minimal.conf | 6 + support/testing/tests/package/test_lzlib.py | 14 + support/testing/tests/package/test_netdata.py | 23 + support/testing/tests/package/test_openjdk.py | 48 + support/testing/tests/package/test_openssh.py | 60 + .../tests/package/test_openssh/post-build.sh | 6 + support/testing/tests/package/test_opkg.py | 65 + .../tests/package/test_opkg/post-build.sh | 47 + support/testing/tests/package/test_perl.py | 66 + .../tests/package/test_perl_class_load.py | 29 + .../tests/package/test_perl_dbd_mysql.py | 21 + .../tests/package/test_perl_encode_detect.py | 20 + .../tests/package/test_perl_gdgraph.py | 22 + .../tests/package/test_perl_html_parser.py | 20 + .../package/test_perl_io_socket_multicast.py | 21 + .../tests/package/test_perl_io_socket_ssl.py | 21 + .../tests/package/test_perl_libwww_perl.py | 42 + .../package/test_perl_lwp_protocol_https.py | 42 + .../tests/package/test_perl_mail_dkim.py | 30 + .../testing/tests/package/test_perl_x10.py | 23 + .../tests/package/test_perl_xml_libxml.py | 22 + support/testing/tests/package/test_prosody.py | 48 + support/testing/tests/package/test_python.py | 125 + .../testing/tests/package/test_python_argh.py | 45 + .../tests/package/test_python_attrs.py | 21 + .../tests/package/test_python_autobahn.py | 11 + .../tests/package/test_python_automat.py | 23 + .../testing/tests/package/test_python_avro.py | 11 + .../tests/package/test_python_bitstring.py | 21 + .../testing/tests/package/test_python_can.py | 23 + .../testing/tests/package/test_python_cbor.py | 23 + .../tests/package/test_python_click.py | 44 + .../tests/package/test_python_colorzero.py | 23 + .../tests/package/test_python_constantly.py | 21 + .../tests/package/test_python_crossbar.py | 12 + .../tests/package/test_python_cryptography.py | 23 + .../tests/package/test_python_django.py | 35 + .../tests/package/test_python_gitdb2.py | 21 + .../tests/package/test_python_gobject.py | 27 + .../tests/package/test_python_gpiozero.py | 32 + .../tests/package/test_python_incremental.py | 23 + .../tests/package/test_python_passlib.py | 23 + .../tests/package/test_python_pexpect.py | 21 + .../tests/package/test_python_pynacl.py | 23 + .../tests/package/test_python_pytest.py | 19 + .../package/test_python_pytest_asyncio.py | 20 + .../tests/package/test_python_pyyaml.py | 23 + .../tests/package/test_python_rpi_gpio.py | 11 + .../package/test_python_service_identity.py | 23 + .../tests/package/test_python_smmap2.py | 21 + .../tests/package/test_python_subprocess32.py | 11 + .../testing/tests/package/test_python_treq.py | 30 + .../tests/package/test_python_twisted.py | 39 + .../tests/package/test_python_txaio.py | 11 + .../tests/package/test_python_txtorcon.py | 23 + .../tests/package/test_python_ubjson.py | 23 + support/testing/tests/package/test_redis.py | 24 + support/testing/tests/package/test_rings.py | 25 + support/testing/tests/package/test_rust.py | 112 + .../testing/tests/package/test_syslog_ng.py | 38 + support/testing/tests/package/test_tmux.py | 41 + .../testing/tests/package/test_turbolua.py | 13 + .../package/test_uboot_openssl_pkgconfig.py | 19 + support/testing/tests/toolchain/__init__.py | 0 .../testing/tests/toolchain/test_external.py | 256 + .../tests/toolchain/test_external_bootlin.py | 2596 ++++++++++ support/testing/tests/utils/__init__.py | 0 .../tests/utils/br2-external/Config.in | 1 + .../tests/utils/br2-external/external.desc | 1 + .../tests/utils/br2-external/external.mk | 2 + .../br2-external/package/external/external.mk | 1 + .../testing/tests/utils/test_check_package.py | 203 + system/Config.in | 701 +++ system/device_table.txt | 21 + system/device_table_dev.txt | 133 + system/skeleton/dev/.empty | 0 system/skeleton/dev/fd | 1 + system/skeleton/dev/stderr | 1 + system/skeleton/dev/stdin | 1 + system/skeleton/dev/stdout | 1 + system/skeleton/etc/group | 26 + system/skeleton/etc/hosts | 1 + system/skeleton/etc/mtab | 1 + system/skeleton/etc/passwd | 9 + system/skeleton/etc/profile | 19 + system/skeleton/etc/profile.d/umask.sh | 1 + system/skeleton/etc/protocols | 61 + system/skeleton/etc/resolv.conf | 1 + system/skeleton/etc/services | 302 ++ system/skeleton/etc/shadow | 9 + system/skeleton/media/.empty | 0 system/skeleton/mnt/.empty | 0 system/skeleton/opt/.empty | 0 system/skeleton/proc/.empty | 0 system/skeleton/root/.empty | 0 system/skeleton/run/.empty | 0 system/skeleton/sys/.empty | 0 system/skeleton/tmp/.empty | 0 system/skeleton/usr/bin/.empty | 0 system/skeleton/usr/lib/.empty | 0 system/skeleton/usr/sbin/.empty | 0 system/system.mk | 102 + toolchain/Config.in | 758 +++ toolchain/helpers.mk | 532 ++ toolchain/toolchain-buildroot/Config.in | 117 + .../toolchain-buildroot.mk | 17 + toolchain/toolchain-external/Config.in | 165 + .../pkg-toolchain-external.mk | 611 +++ .../toolchain-external-andes-nds32/Config.in | 15 + .../Config.in.options | 9 + .../toolchain-external-andes-nds32.hash | 2 + .../toolchain-external-andes-nds32.mk | 10 + .../Config.in | 20 + .../Config.in.options | 9 + .../toolchain-external-arm-aarch64-be.hash | 4 + .../toolchain-external-arm-aarch64-be.mk | 12 + .../toolchain-external-arm-aarch64/Config.in | 20 + .../Config.in.options | 9 + .../toolchain-external-arm-aarch64.hash | 4 + .../toolchain-external-arm-aarch64.mk | 12 + .../toolchain-external-arm-arm/Config.in | 32 + .../Config.in.options | 9 + .../toolchain-external-arm-arm.hash | 4 + .../toolchain-external-arm-arm.mk | 12 + .../toolchain-external-bootlin/Config.in | 9 + .../Config.in.options | 4303 +++++++++++++++++ .../toolchain-external-bootlin.hash | 340 ++ .../toolchain-external-bootlin.mk | 1023 ++++ .../Config.in | 65 + .../Config.in.options | 9 + ...toolchain-external-codescape-img-mips.hash | 4 + .../toolchain-external-codescape-img-mips.mk | 51 + .../Config.in | 76 + .../Config.in.options | 9 + ...toolchain-external-codescape-mti-mips.hash | 4 + .../toolchain-external-codescape-mti-mips.mk | 51 + .../Config.in | 20 + .../Config.in.options | 9 + ...olchain-external-codesourcery-aarch64.hash | 3 + ...toolchain-external-codesourcery-aarch64.mk | 12 + .../Config.in | 37 + .../Config.in.options | 9 + .../toolchain-external-codesourcery-arm.hash | 3 + .../toolchain-external-codesourcery-arm.mk | 13 + .../Config.in | 96 + .../Config.in.options | 9 + .../toolchain-external-codesourcery-mips.hash | 3 + .../toolchain-external-codesourcery-mips.mk | 13 + .../Config.in | 17 + .../Config.in.options | 9 + ...oolchain-external-codesourcery-niosII.hash | 6 + .../toolchain-external-codesourcery-niosII.mk | 13 + .../toolchain-external-custom/Config.in | 5 + .../Config.in.options | 494 ++ .../toolchain-external-custom.mk | 15 + .../Config.in | 16 + .../Config.in.options | 9 + .../toolchain-external-linaro-aarch64-be.hash | 3 + .../toolchain-external-linaro-aarch64-be.mk | 16 + .../Config.in | 16 + .../Config.in.options | 9 + .../toolchain-external-linaro-aarch64.hash | 3 + .../toolchain-external-linaro-aarch64.mk | 16 + .../toolchain-external-linaro-arm/Config.in | 28 + .../Config.in.options | 9 + .../toolchain-external-linaro-arm.hash | 3 + .../toolchain-external-linaro-arm.mk | 16 + .../toolchain-external-linaro-armeb/Config.in | 27 + .../Config.in.options | 9 + .../toolchain-external-linaro-armeb.hash | 3 + .../toolchain-external-linaro-armeb.mk | 17 + .../toolchain-external-synopsys-arc/Config.in | 17 + .../Config.in.options | 10 + .../toolchain-external-synopsys-arc.hash | 5 + .../toolchain-external-synopsys-arc.mk | 24 + .../toolchain-external/toolchain-external.mk | 28 + toolchain/toolchain-wrapper.c | 553 +++ toolchain/toolchain-wrapper.mk | 92 + toolchain/toolchain.mk | 50 + toolchain/toolchain/toolchain.mk | 50 + 2459 files changed, 110021 insertions(+), 7 deletions(-) create mode 100644 board/loongson/ls2k300/readme.txt create mode 100644 board/loongson/ls2k300/rootfs_overlay/boot/.gitignore create mode 100644 board/loongson/ls2k300/rootfs_overlay/etc/ssh/sshd_config create mode 100755 package/loongson_resize/S01resizerootfs create mode 100755 package/loongson_resize/resizerootfs.sh create mode 100755 package/ls_default_eth_config/gen-keep-nmcli.sh create mode 100755 package/ls_default_eth_config/gen_interfaces.sh create mode 100644 package/ls_default_eth_config/keep-nmcli.service create mode 100644 package/python-pyftdi/Config.in create mode 100644 package/python-pyftdi/python-pyftdi.mk create mode 100644 package/python-smbus2/Config.in create mode 100644 package/python-smbus2/python-smbus2.mk create mode 100644 package/sox/0001-uclibc.patch create mode 100644 package/sox/0002-configure.ac-put-back-disable-stack-protector.patch create mode 100644 package/sox/0003-configure.ac-fix-static-linking-with-id3tag.patch create mode 100644 package/sox/0004-configure.ac-fix-static-linking-with-magic.patch create mode 100644 package/sox/Config.in create mode 100644 package/sox/sox.hash create mode 100644 package/sox/sox.mk create mode 100644 package/sp-oops-extract/0001-Make-the-Makefile-more-cross-compiler-friendly.patch create mode 100644 package/sp-oops-extract/0002-stdint-cleanup.patch create mode 100644 package/sp-oops-extract/Config.in create mode 100644 package/sp-oops-extract/sp-oops-extract.hash create mode 100644 package/sp-oops-extract/sp-oops-extract.mk create mode 100644 package/spandsp/0001-configure.ac-fix-AVX-SSE-and-MMX-options.patch create mode 100644 package/spandsp/Config.in create mode 100644 package/spandsp/spandsp.hash create mode 100644 package/spandsp/spandsp.mk create mode 100644 package/spawn-fcgi/Config.in create mode 100644 package/spawn-fcgi/spawn-fcgi.hash create mode 100644 package/spawn-fcgi/spawn-fcgi.mk create mode 100644 package/spdlog/Config.in create mode 100644 package/spdlog/spdlog.hash create mode 100644 package/spdlog/spdlog.mk create mode 100644 package/speex/0001-thumb2-support.patch create mode 100644 package/speex/Config.in create mode 100644 package/speex/speex.hash create mode 100644 package/speex/speex.mk create mode 100644 package/speexdsp/Config.in create mode 100644 package/speexdsp/speexdsp.hash create mode 100644 package/speexdsp/speexdsp.mk create mode 100644 package/sphinxbase/Config.in create mode 100644 package/sphinxbase/sphinxbase.hash create mode 100644 package/sphinxbase/sphinxbase.mk create mode 100644 package/spi-tools/Config.in create mode 100644 package/spi-tools/spi-tools.hash create mode 100644 package/spi-tools/spi-tools.mk create mode 100644 package/spice-protocol/Config.in create mode 100644 package/spice-protocol/spice-protocol.hash create mode 100644 package/spice-protocol/spice-protocol.mk create mode 100644 package/spice/Config.in create mode 100644 package/spice/spice.hash create mode 100644 package/spice/spice.mk create mode 100644 package/spidermonkey/0001-allow-newer-autoconf-versions.patch create mode 100644 package/spidermonkey/0002-allow-building-in-tree.patch create mode 100644 package/spidermonkey/0003-allow-unknown-configuration-options.patch create mode 100644 package/spidermonkey/0004-fix-building-with-musl.patch create mode 100644 package/spidermonkey/0005-add-riscv-support.patch create mode 100644 package/spidermonkey/0006-copy-headers-on-install-instead-of-symlinking.patch create mode 100644 package/spidermonkey/0007-ensure-proper-running-on-64-bit-and-32-bit-be-platforms.patch create mode 100644 package/spidermonkey/0008-save-and-restore-non-volatile-x28-on-ARM64-for-generated-unboxed-obje.patch create mode 100644 package/spidermonkey/0009-save-x28-before-clobbering-it-in-the-regex-compiler.patch create mode 100644 package/spidermonkey/0010-always-use-the-equivalent-year-to-determine-the-time-zone.patch create mode 100644 package/spidermonkey/0011-js-src-Makefile.in-install-shell-only-if-it-s-built.patch create mode 100644 package/spidermonkey/Config.in create mode 100644 package/spidermonkey/spidermonkey.hash create mode 100644 package/spidermonkey/spidermonkey.mk create mode 100644 package/spidev_test/Config.in create mode 100644 package/spidev_test/spidev_test.hash create mode 100644 package/spidev_test/spidev_test.mk create mode 100644 package/sqlcipher/Config.in create mode 100644 package/sqlcipher/sqlcipher.hash create mode 100644 package/sqlcipher/sqlcipher.mk create mode 100644 package/sqlite/Config.in create mode 100644 package/sqlite/sqlite.hash create mode 100644 package/sqlite/sqlite.mk create mode 100644 package/squashfs/0001-squashfs-tools-fix-build-failure-against-gcc-10.patch create mode 100644 package/squashfs/Config.in create mode 100644 package/squashfs/Config.in.host create mode 100644 package/squashfs/squashfs.hash create mode 100644 package/squashfs/squashfs.mk create mode 100644 package/squeezelite/Config.in create mode 100644 package/squeezelite/squeezelite.hash create mode 100644 package/squeezelite/squeezelite.mk create mode 100644 package/squid/Config.in create mode 100644 package/squid/S97squid create mode 100644 package/squid/squid.hash create mode 100644 package/squid/squid.mk create mode 100644 package/sredird/0001-termio.patch create mode 100644 package/sredird/Config.in create mode 100644 package/sredird/sredird.hash create mode 100644 package/sredird/sredird.mk create mode 100644 package/ssdp-responder/Config.in create mode 100755 package/ssdp-responder/S50ssdpd create mode 100644 package/ssdp-responder/ssdp-responder.hash create mode 100644 package/ssdp-responder/ssdp-responder.mk create mode 100644 package/sshfs/Config.in create mode 100644 package/sshfs/sshfs.hash create mode 100644 package/sshfs/sshfs.mk create mode 100644 package/sshguard/Config.in create mode 100644 package/sshguard/S49sshguard create mode 100644 package/sshguard/sshguard.hash create mode 100644 package/sshguard/sshguard.mk create mode 100644 package/sshpass/Config.in create mode 100644 package/sshpass/sshpass.hash create mode 100644 package/sshpass/sshpass.mk create mode 100644 package/sslh/0001-Makefile-fix-static-linking-with-pcre.patch create mode 100644 package/sslh/Config.in create mode 100644 package/sslh/S35sslh create mode 100644 package/sslh/sslh.hash create mode 100644 package/sslh/sslh.mk create mode 100644 package/start-stop-daemon/0001-add-uclibc-alias-and-musl.patch create mode 100644 package/start-stop-daemon/0002-just-warn-on-missing-arch.patch create mode 100644 package/start-stop-daemon/Config.in create mode 100644 package/start-stop-daemon/start-stop-daemon.hash create mode 100644 package/start-stop-daemon/start-stop-daemon.mk create mode 100644 package/startup-notification/Config.in create mode 100644 package/startup-notification/startup-notification.hash create mode 100644 package/startup-notification/startup-notification.mk create mode 100644 package/statserial/0001-ncurses-link.patch create mode 100644 package/statserial/Config.in create mode 100644 package/statserial/statserial.hash create mode 100644 package/statserial/statserial.mk create mode 100644 package/stella/Config.in create mode 100644 package/stella/stella.hash create mode 100644 package/stella/stella.mk create mode 100644 package/stellarium/Config.in create mode 100644 package/stellarium/stellarium.hash create mode 100644 package/stellarium/stellarium.mk create mode 100644 package/stm32flash/Config.in create mode 100644 package/stm32flash/stm32flash.hash create mode 100644 package/stm32flash/stm32flash.mk create mode 100644 package/strace/Config.in create mode 100644 package/strace/strace.hash create mode 100644 package/strace/strace.mk create mode 100644 package/stress-ng/Config.in create mode 100644 package/stress-ng/stress-ng.hash create mode 100644 package/stress-ng/stress-ng.mk create mode 100644 package/stress/Config.in create mode 100644 package/stress/stress.hash create mode 100644 package/stress/stress.mk create mode 100644 package/stressapptest/Config.in create mode 100644 package/stressapptest/stressapptest.hash create mode 100644 package/stressapptest/stressapptest.mk create mode 100644 package/strongswan/Config.in create mode 100644 package/strongswan/strongswan.hash create mode 100644 package/strongswan/strongswan.mk create mode 100644 package/stunnel/Config.in create mode 100644 package/stunnel/S50stunnel create mode 100644 package/stunnel/stunnel.hash create mode 100644 package/stunnel/stunnel.mk create mode 100644 package/subversion/0001-workaround-ac-run-ifelse.patch create mode 100644 package/subversion/Config.in create mode 100644 package/subversion/subversion.hash create mode 100644 package/subversion/subversion.mk create mode 100644 package/sudo/Config.in create mode 100644 package/sudo/sudo.hash create mode 100644 package/sudo/sudo.mk create mode 100644 package/sudo/sudo.pam create mode 100644 package/sunwait/Config.in create mode 100644 package/sunwait/sunwait.hash create mode 100644 package/sunwait/sunwait.mk create mode 100644 package/sunxi-boards/Config.in create mode 100644 package/sunxi-boards/sunxi-boards.hash create mode 100644 package/sunxi-boards/sunxi-boards.mk create mode 100644 package/sunxi-cedarx/Config.in create mode 100644 package/sunxi-cedarx/sunxi-cedarx.hash create mode 100644 package/sunxi-cedarx/sunxi-cedarx.mk create mode 100644 package/sunxi-mali-mainline-driver/Config.in create mode 100644 package/sunxi-mali-mainline-driver/sunxi-mali-mainline-driver.hash create mode 100644 package/sunxi-mali-mainline-driver/sunxi-mali-mainline-driver.mk create mode 100644 package/sunxi-mali-mainline/Config.in create mode 100644 package/sunxi-mali-mainline/egl.pc create mode 100644 package/sunxi-mali-mainline/glesv2.pc create mode 100644 package/sunxi-mali-mainline/sunxi-mali-mainline.hash create mode 100644 package/sunxi-mali-mainline/sunxi-mali-mainline.mk create mode 100644 package/sunxi-tools/0001-meminfo-Access-to-io-memory-via-pointers.patch create mode 100644 package/sunxi-tools/Config.in create mode 100644 package/sunxi-tools/Config.in.host create mode 100644 package/sunxi-tools/sunxi-tools.hash create mode 100644 package/sunxi-tools/sunxi-tools.mk create mode 100644 package/supertux/0001-CMakeLists.txt-compile-squirrel-with-fPIC.patch create mode 100644 package/supertux/0001-Fix-build-on-PowerPC.patch create mode 100644 package/supertux/0002-Fix-build-with-boost-1-73.patch create mode 100644 package/supertux/Config.in create mode 100644 package/supertux/supertux.hash create mode 100644 package/supertux/supertux.mk create mode 100644 package/supertuxkart/Config.in create mode 100644 package/supertuxkart/supertuxkart.hash create mode 100644 package/supertuxkart/supertuxkart.mk create mode 100644 package/supervisor/Config.in create mode 100644 package/supervisor/S99supervisord create mode 100644 package/supervisor/supervisor.hash create mode 100644 package/supervisor/supervisor.mk create mode 100644 package/supervisor/supervisord.conf create mode 100644 package/supervisor/supervisord.service create mode 100644 package/suricata/0001-python-ensure-proper-shabang-on-python-scripts.patch create mode 100644 package/suricata/0002-configure.ac-allow-the-user-to-override-RUST_TARGET.patch create mode 100644 package/suricata/Config.in create mode 100644 package/suricata/S99suricata create mode 100644 package/suricata/suricata.hash create mode 100644 package/suricata/suricata.mk create mode 100644 package/suricata/suricata.service create mode 100644 package/swconfig/.swconfig.mk create mode 100644 package/swconfig/Config.in create mode 100755 package/swconfig/swconfig create mode 100644 package/swconfig/swconfig.hash create mode 100644 package/swconfig/swconfig.mk create mode 100644 package/swconfig/swconfig.tar.gz create mode 100644 package/swig/Config.in.host create mode 100644 package/swig/swig.hash create mode 100644 package/swig/swig.mk create mode 100644 package/swupdate/0001-diskpart-force-kernel-to-reread-partition-table.patch create mode 100644 package/swupdate/0002-Shellscript-stops-before-completing.patch create mode 100644 package/swupdate/Config.in create mode 100644 package/swupdate/S80swupdate create mode 100644 package/swupdate/swupdate.config create mode 100644 package/swupdate/swupdate.hash create mode 100644 package/swupdate/swupdate.mk create mode 100644 package/swupdate/swupdate.service create mode 100644 package/swupdate/swupdate.sh create mode 100644 package/sylpheed/Config.in create mode 100644 package/sylpheed/sylpheed.hash create mode 100644 package/sylpheed/sylpheed.mk create mode 100644 package/synergy/Config.in create mode 100644 package/synergy/synergy.hash create mode 100644 package/synergy/synergy.mk create mode 100644 package/sysdig/Config.in create mode 100644 package/sysdig/sysdig.hash create mode 100644 package/sysdig/sysdig.mk create mode 100644 package/sysklogd/Config.in create mode 100644 package/sysklogd/S01syslogd create mode 100644 package/sysklogd/sysklogd.hash create mode 100644 package/sysklogd/sysklogd.mk create mode 100644 package/sysklogd/syslogd.service create mode 100644 package/syslog-ng/0001-fix-build-on-uclibc.patch create mode 100644 package/syslog-ng/Config.in create mode 100644 package/syslog-ng/S01syslog-ng create mode 100644 package/syslog-ng/syslog-ng.conf create mode 100644 package/syslog-ng/syslog-ng.hash create mode 100644 package/syslog-ng/syslog-ng.mk create mode 100644 package/sysprof/0001-define-NT_GNU_BUILD_ID.patch create mode 100644 package/sysprof/Config.in create mode 100644 package/sysprof/sysprof.hash create mode 100644 package/sysprof/sysprof.mk create mode 100644 package/sysrepo/Config.in create mode 100644 package/sysrepo/S51sysrepo-plugind create mode 100644 package/sysrepo/sysrepo.hash create mode 100644 package/sysrepo/sysrepo.mk create mode 100644 package/sysstat/Config.in create mode 100644 package/sysstat/sysstat.hash create mode 100644 package/sysstat/sysstat.mk create mode 100644 package/systemd-bootchart/Config.in create mode 100644 package/systemd-bootchart/systemd-bootchart.hash create mode 100644 package/systemd-bootchart/systemd-bootchart.mk create mode 100644 package/systemd/0001-loongarch64-architecture.patch create mode 100644 package/systemd/80-buildroot.preset create mode 100644 package/systemd/Config.in create mode 100644 package/systemd/Config.in.host create mode 100644 package/systemd/boot-files/buildroot.conf create mode 100644 package/systemd/boot-files/loader.conf create mode 100644 package/systemd/dhcp.network create mode 100644 package/systemd/systemd.hash create mode 100644 package/systemd/systemd.mk create mode 100644 package/sysvinit/0001-Makefile-disable-stack-protector-strong.patch create mode 100644 package/sysvinit/Config.in create mode 100644 package/sysvinit/inittab create mode 100644 package/sysvinit/sysvinit.hash create mode 100644 package/sysvinit/sysvinit.mk create mode 100644 package/szip/Config.in create mode 100644 package/szip/szip.hash create mode 100644 package/szip/szip.mk create mode 100644 package/taglib/0001-fix-taglib-config-file-for-cross-compiling-906.patch create mode 100644 package/taglib/0002-Don-t-assume-TDRC-is-an-instance-of-TextIdentificationFrame.patch create mode 100644 package/taglib/0003-Fixed-OOB-read-when-loading-invalid-ogg-flac-file.patch create mode 100644 package/taglib/Config.in create mode 100644 package/taglib/taglib.hash create mode 100644 package/taglib/taglib.mk create mode 100644 package/tar/0001-Fix-memory-leak-in-read_header.patch create mode 100644 package/tar/Config.in create mode 100644 package/tar/tar.hash create mode 100644 package/tar/tar.mk create mode 100644 package/targetcli-fb/Config.in create mode 100644 package/targetcli-fb/S50target create mode 100644 package/targetcli-fb/target.service create mode 100644 package/targetcli-fb/targetcli-fb.hash create mode 100644 package/targetcli-fb/targetcli-fb.mk create mode 100644 package/taskd/0001-Fix-missing-cmakedefine-HAVE_GET_CURRENT_DIR_NAME.patch create mode 100644 package/taskd/0002-Use-correct-variables-for-GnuTLS-detection.patch create mode 100644 package/taskd/0003-CMakeLists-use-pkg-config-uuid-detection.patch create mode 100644 package/taskd/Config.in create mode 100644 package/taskd/taskd.hash create mode 100644 package/taskd/taskd.mk create mode 100644 package/tcf-agent/Config.in create mode 100644 package/tcf-agent/S55tcf-agent create mode 100644 package/tcf-agent/tcf-agent.hash create mode 100644 package/tcf-agent/tcf-agent.mk create mode 100644 package/tcf-agent/tcf-agent.service create mode 100644 package/tcl/0001-dont-build-compat.patch create mode 100644 package/tcl/Config.in create mode 100644 package/tcl/tcl.hash create mode 100644 package/tcl/tcl.mk create mode 100644 package/tclap/Config.in create mode 100644 package/tclap/tclap.hash create mode 100644 package/tclap/tclap.mk create mode 100644 package/tcllib/Config.in create mode 100644 package/tcllib/tcllib.hash create mode 100644 package/tcllib/tcllib.mk create mode 100644 package/tcpdump/Config.in create mode 100644 package/tcpdump/tcpdump.hash create mode 100644 package/tcpdump/tcpdump.mk create mode 100644 package/tcping/Config.in create mode 100644 package/tcping/tcping.hash create mode 100644 package/tcping/tcping.mk create mode 100644 package/tcpreplay/0001-configure-ac-fix-without-libdnet.patch create mode 100644 package/tcpreplay/Config.in create mode 100644 package/tcpreplay/tcpreplay.hash create mode 100644 package/tcpreplay/tcpreplay.mk create mode 100644 package/tegrarcm/Config.in.host create mode 100644 package/tegrarcm/tegrarcm.hash create mode 100644 package/tegrarcm/tegrarcm.mk create mode 100644 package/tekui/Config.in create mode 100644 package/tekui/tekui.hash create mode 100644 package/tekui/tekui.mk create mode 100644 package/terminology/Config.in create mode 100644 package/terminology/terminology.hash create mode 100644 package/terminology/terminology.mk create mode 100644 package/tesseract-ocr/0001-Fix-timeval-structure-build-failure.patch create mode 100644 package/tesseract-ocr/Config.in create mode 100644 package/tesseract-ocr/tesseract-ocr.hash create mode 100644 package/tesseract-ocr/tesseract-ocr.mk create mode 100644 package/tftpd/0001-Use-extern-qualifier-to-fix-gcc-10.x-build.patch create mode 100644 package/tftpd/Config.in create mode 100644 package/tftpd/S80tftpd-hpa create mode 100644 package/tftpd/tftpd.hash create mode 100644 package/tftpd/tftpd.mk create mode 100644 package/thermald/0001-thd_trip_point-fix-32-bit-build-error-with-musl-v1.2.patch create mode 100644 package/thermald/Config.in create mode 100644 package/thermald/thermald.hash create mode 100644 package/thermald/thermald.mk create mode 100644 package/thrift/Config.in create mode 100644 package/thrift/thrift.hash create mode 100644 package/thrift/thrift.mk create mode 100644 package/thttpd/Config.in create mode 100644 package/thttpd/S90thttpd create mode 100644 package/thttpd/thttpd.hash create mode 100644 package/thttpd/thttpd.mk create mode 100644 package/thttpd/thttpd.service create mode 100644 package/ti-cgt-pru/Config.in.host create mode 100644 package/ti-cgt-pru/ti-cgt-pru.hash create mode 100644 package/ti-cgt-pru/ti-cgt-pru.mk create mode 100644 package/ti-gfx/0001-newclkapi.patch create mode 100644 package/ti-gfx/0002-fix-build-omaplfb-linux.patch create mode 100644 package/ti-gfx/0003-km_install_modules.patch create mode 100644 package/ti-gfx/Config.in create mode 100644 package/ti-gfx/S80ti-gfx create mode 100644 package/ti-gfx/egl.pc create mode 100644 package/ti-gfx/esrev.sh create mode 100644 package/ti-gfx/glesv2.pc create mode 100644 package/ti-gfx/powervr.ini create mode 100644 package/ti-gfx/ti-gfx.hash create mode 100644 package/ti-gfx/ti-gfx.mk create mode 100644 package/ti-gfx/ti-gfx.service create mode 100644 package/ti-sgx-demos/Config.in create mode 100644 package/ti-sgx-demos/ti-sgx-demos.hash create mode 100644 package/ti-sgx-demos/ti-sgx-demos.mk create mode 100644 package/ti-sgx-km/Config.in create mode 100644 package/ti-sgx-km/ti-sgx-km.hash create mode 100644 package/ti-sgx-km/ti-sgx-km.mk create mode 100644 package/ti-sgx-um/0001-Makefile-do-not-install-init-script.patch create mode 100644 package/ti-sgx-um/Config.in create mode 100644 package/ti-sgx-um/S80ti-sgx create mode 100644 package/ti-sgx-um/ti-sgx-um.hash create mode 100644 package/ti-sgx-um/ti-sgx-um.mk create mode 100644 package/ti-uim/Config.in create mode 100644 package/ti-uim/ti-uim.hash create mode 100644 package/ti-uim/ti-uim.mk create mode 100644 package/ti-utils/0001-plt.h-fix-build-with-gcc-10.patch create mode 100644 package/ti-utils/Config.in create mode 100644 package/ti-utils/ti-utils.hash create mode 100644 package/ti-utils/ti-utils.mk create mode 100644 package/tiff/Config.in create mode 100644 package/tiff/tiff.hash create mode 100644 package/tiff/tiff.mk create mode 100644 package/time/Config.in create mode 100644 package/time/time.hash create mode 100644 package/time/time.mk create mode 100644 package/timescaledb/0001-Allow-building-against-PG13-source.patch create mode 100644 package/timescaledb/0002-Add-compatibilty-wrapper-functions-for-base64-encodi.patch create mode 100644 package/timescaledb/0003-Add-missing-utils-acl.h-includes.patch create mode 100644 package/timescaledb/0004-Add-support-for-PG13-List-implementation.patch create mode 100644 package/timescaledb/0005-Adjust-code-to-PG13-list-sort-changes.patch create mode 100644 package/timescaledb/0006-Adjust-copy-code-to-PG13-addRTEtoQuery-changes.patch create mode 100644 package/timescaledb/0007-Adjust-code-to-PG13-convert_tuples_by_name-signature.patch create mode 100644 package/timescaledb/0008-Adjust-code-to-PG13-tuple-conversion-changes.patch create mode 100644 package/timescaledb/0009-Adjust-hypertable-expansion-to-PG13-changes.patch create mode 100644 package/timescaledb/0010-Adjust-decompress-code-to-Var-field-renames.patch create mode 100644 package/timescaledb/0011-Adjust-jsonb_utils-to-PG13-changes.patch create mode 100644 package/timescaledb/0012-Handle-AT_DropExpression-in-process_utility.patch create mode 100644 package/timescaledb/0013-Adjust-copy-code-to-PG13-changes.patch create mode 100644 package/timescaledb/0014-Adjust-code-to-PG13-command-completion-tag-changes.patch create mode 100644 package/timescaledb/0015-Adjust-copy-to-PG13-HEAP_INSERT_SKIP_WAL-change.patch create mode 100644 package/timescaledb/0016-Adjust-planner-code-to-PG13-planner_hook-signature-c.patch create mode 100644 package/timescaledb/0017-Adjust-code-to-deparse_context-changes.patch create mode 100644 package/timescaledb/0018-Update-compat.h.patch create mode 100644 package/timescaledb/0019-Adjust-code-to-PG13-tuptoaster-changes.patch create mode 100644 package/timescaledb/Config.in create mode 100644 package/timescaledb/timescaledb.hash create mode 100644 package/timescaledb/timescaledb.mk create mode 100644 package/tinc/Config.in create mode 100644 package/tinc/tinc.hash create mode 100644 package/tinc/tinc.mk create mode 100644 package/tini/Config.in create mode 100644 package/tini/tini.hash create mode 100644 package/tini/tini.mk create mode 100644 package/tinyalsa/0001-disable-doxygen-usage.patch create mode 100644 package/tinyalsa/0002-interval.h-add-missing-header.patch create mode 100644 package/tinyalsa/Config.in create mode 100644 package/tinyalsa/tinyalsa.hash create mode 100644 package/tinyalsa/tinyalsa.mk create mode 100644 package/tinycbor/0001-Enable-build-for-different-c-libraries.patch create mode 100644 package/tinycbor/Config.in create mode 100644 package/tinycbor/tinycbor.hash create mode 100644 package/tinycbor/tinycbor.mk create mode 100644 package/tinydtls/0001-sha2-sha2.c-fix-build-on-big-endian.patch create mode 100644 package/tinydtls/Config.in create mode 100644 package/tinydtls/tinydtls.hash create mode 100644 package/tinydtls/tinydtls.mk create mode 100644 package/tinymembench/0001-arm-fix-build-on-Thumb-only-architectures.patch create mode 100644 package/tinymembench/Config.in create mode 100644 package/tinymembench/tinymembench.hash create mode 100644 package/tinymembench/tinymembench.mk create mode 100644 package/tinyproxy/Config.in create mode 100644 package/tinyproxy/tinyproxy.hash create mode 100644 package/tinyproxy/tinyproxy.mk create mode 100644 package/tinyssh/Config.in create mode 100644 package/tinyssh/tinyssh.hash create mode 100644 package/tinyssh/tinyssh.mk create mode 100644 package/tinyxml/Config.in create mode 100644 package/tinyxml/tinyxml.hash create mode 100644 package/tinyxml/tinyxml.mk create mode 100644 package/tinyxml2/Config.in create mode 100644 package/tinyxml2/tinyxml2.hash create mode 100644 package/tinyxml2/tinyxml2.mk create mode 100644 package/tio/Config.in create mode 100644 package/tio/tio.hash create mode 100644 package/tio/tio.mk create mode 100644 package/tk/Config.in create mode 100644 package/tk/tk.hash create mode 100644 package/tk/tk.mk create mode 100644 package/tmux/Config.in create mode 100644 package/tmux/tmux.hash create mode 100644 package/tmux/tmux.mk create mode 100644 package/tor/0001-Fix-static-linking-with-OpenSSL.patch create mode 100644 package/tor/Config.in create mode 100644 package/tor/tor.hash create mode 100644 package/tor/tor.mk create mode 100644 package/tovid/0001-manpage.patch create mode 100644 package/tovid/Config.in create mode 100644 package/tovid/tovid.hash create mode 100644 package/tovid/tovid.mk create mode 100644 package/tpm-tools/Config.in create mode 100644 package/tpm-tools/tpm-tools.hash create mode 100644 package/tpm-tools/tpm-tools.mk create mode 100644 package/tpm2-abrmd/Config.in create mode 100644 package/tpm2-abrmd/S80tpm2-abrmd create mode 100644 package/tpm2-abrmd/tpm2-abrmd.hash create mode 100644 package/tpm2-abrmd/tpm2-abrmd.mk create mode 100644 package/tpm2-pkcs11/Config.in create mode 100644 package/tpm2-pkcs11/tpm2-pkcs11.hash create mode 100644 package/tpm2-pkcs11/tpm2-pkcs11.mk create mode 100644 package/tpm2-tools/0001-tpm2_import-fix-fixed-AES-key-CVE-2021-3565.patch create mode 100644 package/tpm2-tools/Config.in create mode 100644 package/tpm2-tools/tpm2-tools.hash create mode 100644 package/tpm2-tools/tpm2-tools.mk create mode 100644 package/tpm2-totp/Config.in create mode 100644 package/tpm2-totp/tpm2-totp.hash create mode 100644 package/tpm2-totp/tpm2-totp.mk create mode 100644 package/tpm2-tss/0001-Temporary-fix-for-build-without-C.patch create mode 100644 package/tpm2-tss/Config.in create mode 100644 package/tpm2-tss/tpm2-tss.hash create mode 100644 package/tpm2-tss/tpm2-tss.mk create mode 100644 package/trace-cmd/0001-trace-cmd-libtracecmd-API-cleanup.patch create mode 100644 package/trace-cmd/0002-trace-cmd-make-it-build-against-musl-C-library.patch create mode 100644 package/trace-cmd/0003-trace-cmd-Move-add_event_pid-out-of-ifndef-NO_PTRACE.patch create mode 100644 package/trace-cmd/Config.in create mode 100644 package/trace-cmd/trace-cmd.hash create mode 100644 package/trace-cmd/trace-cmd.mk create mode 100644 package/traceroute/Config.in create mode 100644 package/traceroute/traceroute.hash create mode 100644 package/traceroute/traceroute.mk create mode 100644 package/transmission/0001-fix-utypes.patch create mode 100644 package/transmission/0002-fix-utp-include.patch create mode 100644 package/transmission/Config.in create mode 100644 package/transmission/S92transmission create mode 100644 package/transmission/transmission.hash create mode 100644 package/transmission/transmission.mk create mode 100644 package/tree/Config.in create mode 100644 package/tree/tree.hash create mode 100644 package/tree/tree.mk create mode 100644 package/tremor/Config.in create mode 100644 package/tremor/tremor.hash create mode 100644 package/tremor/tremor.mk create mode 100644 package/triggerhappy/Config.in create mode 100644 package/triggerhappy/S10triggerhappy create mode 100644 package/triggerhappy/triggerhappy.hash create mode 100644 package/triggerhappy/triggerhappy.mk create mode 100644 package/triggerhappy/triggerhappy.service create mode 100644 package/trinity/0001-Fix-build-with-GCC-10.patch create mode 100644 package/trinity/Config.in create mode 100644 package/trinity/trinity.hash create mode 100644 package/trinity/trinity.mk create mode 100644 package/trousers/0001-Check-if-the-compiler-understands-pie-and-relro-options.patch create mode 100644 package/trousers/0002-Check-that-getpwent_r-is-available-before-using-it.patch create mode 100644 package/trousers/Config.in create mode 100644 package/trousers/trousers.hash create mode 100644 package/trousers/trousers.mk create mode 100644 package/ts4900-fpga/Config.in create mode 100644 package/ts4900-fpga/ts4900-fpga.hash create mode 100644 package/ts4900-fpga/ts4900-fpga.mk create mode 100644 package/tslib/Config.in create mode 100644 package/tslib/tslib.hash create mode 100644 package/tslib/tslib.mk create mode 100644 package/tstools/0001-build-get-along-with-buildroot.patch create mode 100644 package/tstools/Config.in create mode 100644 package/tstools/tstools.hash create mode 100644 package/tstools/tstools.mk create mode 100644 package/ttyd/Config.in create mode 100644 package/ttyd/ttyd.hash create mode 100644 package/ttyd/ttyd.mk create mode 100644 package/tunctl/Config.in create mode 100644 package/tunctl/tunctl.hash create mode 100644 package/tunctl/tunctl.mk create mode 100644 package/turbolua/Config.in create mode 100644 package/turbolua/turbolua.hash create mode 100644 package/turbolua/turbolua.mk create mode 100644 package/tvheadend/0001-no-check_config.patch create mode 100644 package/tvheadend/Config.in create mode 100644 package/tvheadend/S99tvheadend create mode 100644 package/tvheadend/etc.default.tvheadend create mode 100644 package/tvheadend/tvheadend.hash create mode 100644 package/tvheadend/tvheadend.mk create mode 100644 package/twolame/Config.in create mode 100644 package/twolame/twolame.hash create mode 100644 package/twolame/twolame.mk create mode 100644 package/tz/Config.in create mode 100644 package/tz/tz.mk create mode 100644 package/tzdata/Config.in create mode 100644 package/tzdata/tzdata.hash create mode 100644 package/tzdata/tzdata.mk create mode 100644 package/tzdump/tzdump.hash create mode 100644 package/tzdump/tzdump.mk create mode 100644 package/uacme/Config.in create mode 100644 package/uacme/uacme.hash create mode 100644 package/uacme/uacme.mk create mode 100644 package/uboot-tools/0001-drop-configh-from-tools.patch create mode 100644 package/uboot-tools/0002-tools-only-in-no-dot-config-targets.patch create mode 100644 package/uboot-tools/0003-drop-autoconf.h-from-tools.patch create mode 100644 package/uboot-tools/0004-tools-env-fw_env.h-remove-env.h.patch create mode 100644 package/uboot-tools/Config.in create mode 100644 package/uboot-tools/Config.in.host create mode 100644 package/uboot-tools/uboot-tools.hash create mode 100644 package/uboot-tools/uboot-tools.mk create mode 100644 package/ubus/0001-Install-server-and-client-examples.patch create mode 100644 package/ubus/Config.in create mode 100644 package/ubus/ubus.hash create mode 100644 package/ubus/ubus.mk create mode 100644 package/uccp420wlan/Config.in create mode 100644 package/uccp420wlan/uccp420wlan.hash create mode 100644 package/uccp420wlan/uccp420wlan.mk create mode 100644 package/ucl/ucl.hash create mode 100644 package/ucl/ucl.mk create mode 100644 package/uclibc-ng-test/Config.in create mode 100644 package/uclibc-ng-test/uclibc-ng-test.hash create mode 100644 package/uclibc-ng-test/uclibc-ng-test.mk create mode 100644 package/uclibc/0001-powerpc-fix-PIE-PIC-builds-with-newer-gcc-binutils-w.patch create mode 100644 package/uclibc/Config.in create mode 100644 package/uclibc/uClibc-ng.config create mode 100644 package/uclibc/uclibc.hash create mode 100644 package/uclibc/uclibc.mk create mode 100644 package/udev-gentoo-scripts/Config.in create mode 100644 package/udev-gentoo-scripts/udev-gentoo-scripts.hash create mode 100644 package/udev-gentoo-scripts/udev-gentoo-scripts.mk create mode 100644 package/udev/Config.in create mode 100644 package/udev/udev.mk create mode 100644 package/udftools/Config.in create mode 100644 package/udftools/udftools.hash create mode 100644 package/udftools/udftools.mk create mode 100644 package/udisks/0001-fix-build-with-newer-glibc-versions.patch create mode 100644 package/udisks/0002-Fix-systemd-service-file.patch create mode 100644 package/udisks/0003-Fix-compilation-issue-with-missing-sys-sysmacros.h-i.patch create mode 100644 package/udisks/Config.in create mode 100644 package/udisks/udisks.hash create mode 100644 package/udisks/udisks.mk create mode 100644 package/udpcast/Config.in create mode 100644 package/udpcast/udpcast.hash create mode 100644 package/udpcast/udpcast.mk create mode 100644 package/udpxy/Config.in create mode 100644 package/udpxy/udpxy.hash create mode 100644 package/udpxy/udpxy.mk create mode 100644 package/uemacs/01-clear-ixon-termios-flag.patch create mode 100644 package/uemacs/Config.in create mode 100644 package/uemacs/uemacs.hash create mode 100644 package/uemacs/uemacs.mk create mode 100644 package/uftp/Config.in create mode 100644 package/uftp/uftp.hash create mode 100644 package/uftp/uftp.mk create mode 100644 package/uhd/0001-host-CMakeLists-add-boost-unit_test_framework-requir.patch create mode 100644 package/uhd/0002-host-fix-build-boost-173.patch create mode 100644 package/uhd/0003-add-RISC-V-endian-detection.patch create mode 100644 package/uhd/Config.in create mode 100644 package/uhd/uhd.hash create mode 100644 package/uhd/uhd.mk create mode 100644 package/uhttpd/0001-Remove-Werror.patch create mode 100644 package/uhttpd/0002-Fix-TCP_FASTOPEN-related-compile-error.patch create mode 100644 package/uhttpd/Config.in create mode 100644 package/uhttpd/uhttpd.hash create mode 100644 package/uhttpd/uhttpd.mk create mode 100644 package/uhubctl/Config.in create mode 100644 package/uhubctl/uhubctl.hash create mode 100644 package/uhubctl/uhubctl.mk create mode 100644 package/ulogd/0001-ulogd-fix-build-with-musl-libc.patch create mode 100644 package/ulogd/Config.in create mode 100644 package/ulogd/ulogd.hash create mode 100644 package/ulogd/ulogd.mk create mode 100644 package/umtprd/Config.in create mode 100644 package/umtprd/umtprd.hash create mode 100644 package/umtprd/umtprd.mk create mode 100644 package/unbound/Config.in create mode 100644 package/unbound/S70unbound create mode 100644 package/unbound/unbound.hash create mode 100644 package/unbound/unbound.mk create mode 100644 package/unclutter-xfixes/Config.in create mode 100644 package/unclutter-xfixes/unclutter-xfixes.hash create mode 100644 package/unclutter-xfixes/unclutter-xfixes.mk create mode 100644 package/unionfs/Config.in create mode 100644 package/unionfs/unionfs.hash create mode 100644 package/unionfs/unionfs.mk create mode 100644 package/unixodbc/Config.in create mode 100644 package/unixodbc/unixodbc.hash create mode 100644 package/unixodbc/unixodbc.mk create mode 100644 package/unrar/Config.in create mode 100644 package/unrar/unrar.hash create mode 100644 package/unrar/unrar.mk create mode 100644 package/unscd/Config.in create mode 100644 package/unscd/S46unscd create mode 100644 package/unscd/nscd.conf create mode 100644 package/unscd/unscd.hash create mode 100644 package/unscd/unscd.mk create mode 100644 package/unzip/0001-Add-a-CMakeFile.txt-to-ease-cross-compilation.patch create mode 100644 package/unzip/Config.in create mode 100644 package/unzip/unzip.hash create mode 100644 package/unzip/unzip.mk create mode 100644 package/upmpdcli/Config.in create mode 100644 package/upmpdcli/S99upmpdcli create mode 100644 package/upmpdcli/upmpdcli.hash create mode 100644 package/upmpdcli/upmpdcli.mk create mode 100644 package/upower/Config.in create mode 100644 package/upower/upower.hash create mode 100644 package/upower/upower.mk create mode 100644 package/upx/0001-Check-DT_REL-DT_RELA-DT_RELSZ-DT_RELASZ.patch create mode 100644 package/upx/upx.hash create mode 100644 package/upx/upx.mk create mode 100644 package/urandom-scripts/Config.in create mode 100644 package/urandom-scripts/S20urandom create mode 100644 package/urandom-scripts/urandom-scripts.mk create mode 100644 package/uredir/Config.in create mode 100644 package/uredir/uredir.hash create mode 100644 package/uredir/uredir.mk create mode 100644 package/urg/0001-select-h.patch create mode 100644 package/urg/0002-urg-gcc6-fix-narrowing-conversion.patch create mode 100644 package/urg/Config.in create mode 100644 package/urg/urg.hash create mode 100644 package/urg/urg.mk create mode 100644 package/usb_modeswitch/Config.in create mode 100644 package/usb_modeswitch/usb_modeswitch.hash create mode 100644 package/usb_modeswitch/usb_modeswitch.mk create mode 100644 package/usb_modeswitch_data/Config.in create mode 100644 package/usb_modeswitch_data/usb_modeswitch_data.hash create mode 100644 package/usb_modeswitch_data/usb_modeswitch_data.mk create mode 100644 package/usbmount/0001-rules-fix.patch create mode 100644 package/usbmount/0002-use-udev-environment-instead-of-blkid.patch create mode 100644 package/usbmount/Config.in create mode 100644 package/usbmount/usbmount.hash create mode 100644 package/usbmount/usbmount.mk create mode 100644 package/usbredir/Config.in create mode 100644 package/usbredir/usbredir.hash create mode 100644 package/usbredir/usbredir.mk create mode 100644 package/usbutils/Config.in create mode 100644 package/usbutils/usbutils.hash create mode 100644 package/usbutils/usbutils.mk create mode 100644 package/ushare/Config.in create mode 100644 package/ushare/ushare.hash create mode 100644 package/ushare/ushare.mk create mode 100644 package/ussp-push/0001-fix-build-against-bluez-4.patch create mode 100644 package/ussp-push/0002-fix-build-again-obex-bluez.patch create mode 100644 package/ussp-push/0003-add-OBEX_CharToUnicode.patch create mode 100644 package/ussp-push/Config.in create mode 100644 package/ussp-push/ussp-push.hash create mode 100644 package/ussp-push/ussp-push.mk create mode 100644 package/ustream-ssl/Config.in create mode 100644 package/ustream-ssl/ustream-ssl.hash create mode 100644 package/ustream-ssl/ustream-ssl.mk create mode 100644 package/utf8proc/Config.in create mode 100644 package/utf8proc/utf8proc.hash create mode 100644 package/utf8proc/utf8proc.mk create mode 100644 package/util-linux/Config.in create mode 100644 package/util-linux/Config.in.host create mode 100644 package/util-linux/su.pam create mode 120000 package/util-linux/util-linux-libs/util-linux-libs.hash create mode 100644 package/util-linux/util-linux-libs/util-linux-libs.mk create mode 100644 package/util-linux/util-linux.hash create mode 100644 package/util-linux/util-linux.mk create mode 100644 package/utp_com/Config.in.host create mode 100644 package/utp_com/utp_com.hash create mode 100644 package/utp_com/utp_com.mk create mode 100644 package/uvw/Config.in create mode 100644 package/uvw/uvw.hash create mode 100644 package/uvw/uvw.mk create mode 100644 package/ux500-firmware/Config.in create mode 100644 package/ux500-firmware/ux500-firmware.hash create mode 100644 package/ux500-firmware/ux500-firmware.mk create mode 100644 package/v4l2grab/Config.in create mode 100644 package/v4l2grab/v4l2grab.hash create mode 100644 package/v4l2grab/v4l2grab.mk create mode 100644 package/v4l2loopback/Config.in create mode 100644 package/v4l2loopback/v4l2loopback.hash create mode 100644 package/v4l2loopback/v4l2loopback.mk create mode 100644 package/vala/0001-dont-add-dirty-to-valac-version.patch create mode 100644 package/vala/vala-wrapper create mode 100644 package/vala/vala.hash create mode 100644 package/vala/vala.mk create mode 100644 package/valgrind/0001-workaround-SIGSEGV-on-PPC.patch create mode 100644 package/valgrind/0002-Define-PTRACE_GETSIGINFO-on-PowerPC-when-not-availab.patch create mode 100644 package/valgrind/Config.in create mode 100644 package/valgrind/uclibc.supp create mode 100644 package/valgrind/valgrind.hash create mode 100644 package/valgrind/valgrind.mk create mode 100644 package/valijson/Config.in create mode 100644 package/valijson/valijson.hash create mode 100644 package/valijson/valijson.mk create mode 100644 package/vboot-utils/0001-Add-missing-definition-of-MTD_CHAR_MAJOR.patch create mode 100644 package/vboot-utils/0002-Add-missing-header-include-for-ssize_t.patch create mode 100644 package/vboot-utils/0003-Avoid-RSA-type-redefinition.patch create mode 100644 package/vboot-utils/0004-Disable-static-futility.patch create mode 100644 package/vboot-utils/0005-include-sys-sysmacros.h-for-major.patch create mode 100644 package/vboot-utils/0006-Update-for-openssl-1.1.patch create mode 100644 package/vboot-utils/0007-Make-vboot_version-extern-in-header.patch create mode 100644 package/vboot-utils/Config.in.host create mode 100644 package/vboot-utils/vboot-utils.hash create mode 100644 package/vboot-utils/vboot-utils.mk create mode 100644 package/vde2/0001-no-cxx.patch create mode 100644 package/vde2/0002-fstp-Add-static-to-inline-functions.patch create mode 100644 package/vde2/Config.in create mode 100644 package/vde2/vde2.hash create mode 100644 package/vde2/vde2.mk create mode 100644 package/vdr-plugin-vnsiserver/Config.in create mode 100644 package/vdr-plugin-vnsiserver/vdr-plugin-vnsiserver.hash create mode 100644 package/vdr-plugin-vnsiserver/vdr-plugin-vnsiserver.mk create mode 100644 package/vdr/Config.in create mode 100644 package/vdr/vdr.hash create mode 100644 package/vdr/vdr.mk create mode 100644 package/vim/Config.in create mode 100644 package/vim/vim.hash create mode 100644 package/vim/vim.mk create mode 100644 package/vlc/0001-Disable-building-of-statically-linked-vlc-binary.patch create mode 100644 package/vlc/0002-automake-add-subdir-objects-option.patch create mode 100644 package/vlc/0003-build-use-pkg-config-to-get-tremor-libs.patch create mode 100644 package/vlc/0004-Fix-build-error-using-uClibc-by-adding-sys-types.h.patch create mode 100644 package/vlc/0005-Don-t-assume-strerror_l-is-available.patch create mode 100644 package/vlc/0006-posix-remove-ancient-run-time-fallback-to-real-time-.patch create mode 100644 package/vlc/0007-Add-support-for-freerdp2.patch create mode 100644 package/vlc/0008-configure.ac-also-use-AC_PATH_PROG-to-check-for-wayl.patch create mode 100644 package/vlc/0009-modules-video_filter-opencv_example.cpp-fix-build-wi.patch create mode 100644 package/vlc/0010-modules-access-live555.cpp-fix-build-with-live555-20.patch create mode 100644 package/vlc/Config.in create mode 100644 package/vlc/vlc.hash create mode 100644 package/vlc/vlc.mk create mode 100644 package/vmtouch/Config.in create mode 100644 package/vmtouch/vmtouch.hash create mode 100644 package/vmtouch/vmtouch.mk create mode 100644 package/vnstat/Config.in create mode 100644 package/vnstat/vnstat.hash create mode 100644 package/vnstat/vnstat.mk create mode 100644 package/vo-aacenc/Config.in create mode 100644 package/vo-aacenc/vo-aacenc.hash create mode 100644 package/vo-aacenc/vo-aacenc.mk create mode 100644 package/vorbis-tools/Config.in create mode 100644 package/vorbis-tools/vorbis-tools.hash create mode 100644 package/vorbis-tools/vorbis-tools.mk create mode 100644 package/vpnc/0001-Makefile-allow-to-override-the-PREFIX-variable.patch create mode 100644 package/vpnc/0002-Makefile-allow-to-override-the-version.patch create mode 100644 package/vpnc/0003-Makefile-allow-passing-custom-CFLAGS-CPPFLAGS.patch create mode 100644 package/vpnc/0004-Makefile-provide-an-option-to-not-build-manpages.patch create mode 100644 package/vpnc/0005-Makefile-allow-passing-a-custom-path-to-libgcrypt-co.patch create mode 100644 package/vpnc/0006-config.c-Replace-deprecated-SUSv3-functions-with-POS.patch create mode 100644 package/vpnc/0007-sysdep.h-don-t-assume-error.h-is-available-on-all-Li.patch create mode 100644 package/vpnc/0008-sysdep.c-don-t-include-linux-if_tun.h-on-Linux.patch create mode 100644 package/vpnc/0009-config.c-add-missing-sys-ttydefaults.h-include.patch create mode 100644 package/vpnc/Config.in create mode 100644 package/vpnc/vpnc.hash create mode 100644 package/vpnc/vpnc.mk create mode 100644 package/vsftpd/0001-utmpx-builddef.patch create mode 100644 package/vsftpd/0002-fix-CVE-2015-1419.patch create mode 100644 package/vsftpd/0003-Prevent-hang-in-SIGCHLD-handler.patch create mode 100644 package/vsftpd/Config.in create mode 100644 package/vsftpd/S70vsftpd create mode 100644 package/vsftpd/vsftpd.hash create mode 100644 package/vsftpd/vsftpd.mk create mode 100644 package/vsftpd/vsftpd.service create mode 100644 package/vte/Config.in create mode 100644 package/vte/vte.hash create mode 100644 package/vte/vte.mk create mode 100644 package/vtun/0001-fix-installation.patch create mode 100644 package/vtun/0002-fix-ssl-headers-checks.patch create mode 100644 package/vtun/0003-openssl11.patch create mode 100644 package/vtun/Config.in create mode 100644 package/vtun/vtun.hash create mode 100644 package/vtun/vtun.mk create mode 100644 package/vuejs/Config.in create mode 100644 package/vuejs/vuejs.hash create mode 100644 package/vuejs/vuejs.mk create mode 100644 package/w_scan/0001-musl.patch create mode 100644 package/w_scan/0002-si_types-h-fix-build-with-gcc-10.patch create mode 100644 package/w_scan/Config.in create mode 100644 package/w_scan/w_scan.hash create mode 100644 package/w_scan/w_scan.mk create mode 100644 package/waf/waf.hash create mode 100644 package/waf/waf.mk create mode 100644 package/waffle/0001-cmake-forward-cflags-from-.pc-files-to-waffle-cflags.patch create mode 100644 package/waffle/Config.in create mode 100644 package/waffle/waffle.hash create mode 100644 package/waffle/waffle.mk create mode 100644 package/wampcc/0001-Add-RISC-V-endian-detection.patch create mode 100644 package/wampcc/0002-include-wampcc-platform.h-fix-build-with-musl-1.2.0.patch create mode 100644 package/wampcc/0003-Broken-build-on-Windows.patch create mode 100644 package/wampcc/Config.in create mode 100644 package/wampcc/wampcc.hash create mode 100644 package/wampcc/wampcc.mk create mode 100644 package/watchdog/Config.in create mode 100644 package/watchdog/watchdog.hash create mode 100644 package/watchdog/watchdog.mk create mode 100644 package/wavemon/Config.in create mode 100644 package/wavemon/wavemon.hash create mode 100644 package/wavemon/wavemon.mk create mode 100644 package/wavpack/Config.in create mode 100644 package/wavpack/wavpack.hash create mode 100644 package/wavpack/wavpack.mk create mode 100644 package/wayland-protocols/Config.in create mode 100644 package/wayland-protocols/wayland-protocols.hash create mode 100644 package/wayland-protocols/wayland-protocols.mk create mode 100644 package/wayland-utils/Config.in create mode 100644 package/wayland-utils/wayland-utils.hash create mode 100644 package/wayland-utils/wayland-utils.mk create mode 100644 package/wayland/0001-build-add-option-to-disable-tests.patch create mode 100644 package/wayland/0002-meson-do-not-check-for-c.patch create mode 100644 package/wayland/Config.in create mode 100644 package/wayland/wayland.hash create mode 100644 package/wayland/wayland.mk create mode 100644 package/waylandpp/Config.in create mode 100644 package/waylandpp/waylandpp.hash create mode 100644 package/waylandpp/waylandpp.mk create mode 100644 package/webkitgtk/Config.in create mode 100644 package/webkitgtk/webkitgtk.hash create mode 100644 package/webkitgtk/webkitgtk.mk create mode 100644 package/webp/Config.in create mode 100644 package/webp/webp.hash create mode 100644 package/webp/webp.mk create mode 100644 package/webrtc-audio-processing/0001-Proper-detection-of-cxxabi.h-and-execinfo.h.patch create mode 100644 package/webrtc-audio-processing/Config.in create mode 100644 package/webrtc-audio-processing/webrtc-audio-processing.hash create mode 100644 package/webrtc-audio-processing/webrtc-audio-processing.mk create mode 100644 package/websocketpp/Config.in create mode 100644 package/websocketpp/websocketpp.hash create mode 100644 package/websocketpp/websocketpp.mk create mode 100644 package/weston/0001-tests-include-fcntl.h-for-open-O_RDWR-O_CLOEXEC-and-.patch create mode 100644 package/weston/0002-libweston-backend-drm-might-need-EGL.patch create mode 100644 package/weston/Config.in create mode 100644 package/weston/weston.hash create mode 100644 package/weston/weston.mk create mode 100644 package/wf111/Config.in create mode 100644 package/wf111/wf111.hash create mode 100644 package/wf111/wf111.mk create mode 100644 package/wget/Config.in create mode 100644 package/wget/wget.hash create mode 100644 package/wget/wget.mk create mode 100644 package/whetstone/Config.in create mode 100644 package/whetstone/whetstone.hash create mode 100644 package/whetstone/whetstone.mk create mode 100644 package/which/Config.in create mode 100644 package/which/which.hash create mode 100644 package/which/which.mk create mode 100644 package/whois/Config.in create mode 100644 package/whois/whois.hash create mode 100644 package/whois/whois.mk create mode 100644 package/wilc1000-firmware/Config.in create mode 100644 package/wilc1000-firmware/wilc1000-firmware.hash create mode 100644 package/wilc1000-firmware/wilc1000-firmware.mk create mode 100644 package/wilink-bt-firmware/Config.in create mode 100644 package/wilink-bt-firmware/wilink-bt-firmware.hash create mode 100644 package/wilink-bt-firmware/wilink-bt-firmware.mk create mode 100644 package/wine/Config.in create mode 100644 package/wine/wine.hash create mode 100644 package/wine/wine.mk create mode 100644 package/wipe/0001-musl.patch create mode 100644 package/wipe/Config.in create mode 100644 package/wipe/wipe.hash create mode 100644 package/wipe/wipe.mk create mode 100644 package/wireguard-linux-compat/Config.in create mode 100644 package/wireguard-linux-compat/wireguard-linux-compat.hash create mode 100644 package/wireguard-linux-compat/wireguard-linux-compat.mk create mode 100644 package/wireguard-tools/Config.in create mode 100644 package/wireguard-tools/wireguard-tools.hash create mode 100644 package/wireguard-tools/wireguard-tools.mk create mode 100644 package/wireless-regdb/Config.in create mode 100644 package/wireless-regdb/wireless-regdb.hash create mode 100644 package/wireless-regdb/wireless-regdb.mk create mode 100644 package/wireless_tools/0001-remove-bzero.patch create mode 100644 package/wireless_tools/Config.in create mode 100644 package/wireless_tools/wireless_tools.hash create mode 100644 package/wireless_tools/wireless_tools.mk create mode 100644 package/wireshark/Config.in create mode 100644 package/wireshark/wireshark.hash create mode 100644 package/wireshark/wireshark.mk create mode 100644 package/wlroots/Config.in create mode 100644 package/wlroots/wlroots.hash create mode 100644 package/wlroots/wlroots.mk create mode 100644 package/wmctrl/Config.in create mode 100644 package/wmctrl/wmctrl.hash create mode 100644 package/wmctrl/wmctrl.mk create mode 100644 package/woff2/0001-CMake-Handle-multiple-libraries-being-returned-for-B.patch create mode 100644 package/woff2/Config.in create mode 100644 package/woff2/woff2.hash create mode 100644 package/woff2/woff2.mk create mode 100644 package/wolfssl/Config.in create mode 100644 package/wolfssl/wolfssl.hash create mode 100644 package/wolfssl/wolfssl.mk create mode 100644 package/wpa_supplicant/0001-AP-Silently-ignore-management-frame-from-unexpected-.patch create mode 100644 package/wpa_supplicant/0002-ASN.1-Validate-DigestAlgorithmIdentifier-parameters.patch create mode 100644 package/wpa_supplicant/0003-Include-stdbool.h-to-allow-C99-bool-to-be-used.patch create mode 100644 package/wpa_supplicant/0004-ASN.1-Add-helper-functions-for-recognizing-tag-value.patch create mode 100644 package/wpa_supplicant/50-wpa_supplicant.preset create mode 100644 package/wpa_supplicant/Config.in create mode 100644 package/wpa_supplicant/wpa_supplicant.conf create mode 100644 package/wpa_supplicant/wpa_supplicant.hash create mode 100644 package/wpa_supplicant/wpa_supplicant.mk create mode 100644 package/wpan-tools/Config.in create mode 100644 package/wpan-tools/wpan-tools.hash create mode 100644 package/wpan-tools/wpan-tools.mk create mode 100644 package/wpebackend-fdo/Config.in create mode 100644 package/wpebackend-fdo/wpebackend-fdo.hash create mode 100644 package/wpebackend-fdo/wpebackend-fdo.mk create mode 100644 package/wpewebkit/0001-Fix-build-with-musl.patch create mode 100644 package/wpewebkit/Config.in create mode 100644 package/wpewebkit/wpewebkit.hash create mode 100644 package/wpewebkit/wpewebkit.mk create mode 100644 package/wqy-zenhei/Config.in create mode 100644 package/wqy-zenhei/wqy-zenhei.hash create mode 100644 package/wqy-zenhei/wqy-zenhei.mk create mode 100644 package/wsapi-fcgi/Config.in create mode 100644 package/wsapi-fcgi/wsapi-fcgi.hash create mode 100644 package/wsapi-fcgi/wsapi-fcgi.mk create mode 100644 package/wsapi-xavante/Config.in create mode 100644 package/wsapi-xavante/wsapi-xavante.hash create mode 100644 package/wsapi-xavante/wsapi-xavante.mk create mode 100644 package/wsapi/Config.in create mode 100644 package/wsapi/wsapi.hash create mode 100644 package/wsapi/wsapi.mk create mode 100644 package/x11r7/Config.in create mode 100644 package/x11r7/libxcb/Config.in create mode 100644 package/x11r7/libxcb/libxcb.hash create mode 100644 package/x11r7/libxcb/libxcb.mk create mode 100644 package/x11r7/mcookie/Config.in create mode 100644 package/x11r7/mcookie/mcookie.c create mode 100644 package/x11r7/mcookie/mcookie.mk create mode 100644 package/x11r7/x11r7.mk create mode 100644 package/x11r7/xapp_appres/Config.in create mode 100644 package/x11r7/xapp_appres/xapp_appres.hash create mode 100644 package/x11r7/xapp_appres/xapp_appres.mk create mode 100644 package/x11r7/xapp_bdftopcf/Config.in create mode 100644 package/x11r7/xapp_bdftopcf/xapp_bdftopcf.hash create mode 100644 package/x11r7/xapp_bdftopcf/xapp_bdftopcf.mk create mode 100644 package/x11r7/xapp_beforelight/Config.in create mode 100644 package/x11r7/xapp_beforelight/xapp_beforelight.hash create mode 100644 package/x11r7/xapp_beforelight/xapp_beforelight.mk create mode 100644 package/x11r7/xapp_bitmap/Config.in create mode 100644 package/x11r7/xapp_bitmap/xapp_bitmap.hash create mode 100644 package/x11r7/xapp_bitmap/xapp_bitmap.mk create mode 100644 package/x11r7/xapp_editres/Config.in create mode 100644 package/x11r7/xapp_editres/xapp_editres.hash create mode 100644 package/x11r7/xapp_editres/xapp_editres.mk create mode 100644 package/x11r7/xapp_fonttosfnt/Config.in create mode 100644 package/x11r7/xapp_fonttosfnt/xapp_fonttosfnt.hash create mode 100644 package/x11r7/xapp_fonttosfnt/xapp_fonttosfnt.mk create mode 100644 package/x11r7/xapp_fslsfonts/Config.in create mode 100644 package/x11r7/xapp_fslsfonts/xapp_fslsfonts.hash create mode 100644 package/x11r7/xapp_fslsfonts/xapp_fslsfonts.mk create mode 100644 package/x11r7/xapp_fstobdf/Config.in create mode 100644 package/x11r7/xapp_fstobdf/xapp_fstobdf.hash create mode 100644 package/x11r7/xapp_fstobdf/xapp_fstobdf.mk create mode 100644 package/x11r7/xapp_iceauth/Config.in create mode 100644 package/x11r7/xapp_iceauth/xapp_iceauth.hash create mode 100644 package/x11r7/xapp_iceauth/xapp_iceauth.mk create mode 100644 package/x11r7/xapp_ico/Config.in create mode 100644 package/x11r7/xapp_ico/xapp_ico.hash create mode 100644 package/x11r7/xapp_ico/xapp_ico.mk create mode 100644 package/x11r7/xapp_listres/Config.in create mode 100644 package/x11r7/xapp_listres/xapp_listres.hash create mode 100644 package/x11r7/xapp_listres/xapp_listres.mk create mode 100644 package/x11r7/xapp_luit/0001-posix-openpt.patch create mode 100644 package/x11r7/xapp_luit/Config.in create mode 100644 package/x11r7/xapp_luit/xapp_luit.hash create mode 100644 package/x11r7/xapp_luit/xapp_luit.mk create mode 100644 package/x11r7/xapp_mkfontscale/Config.in create mode 100644 package/x11r7/xapp_mkfontscale/xapp_mkfontscale.hash create mode 100644 package/x11r7/xapp_mkfontscale/xapp_mkfontscale.mk create mode 100644 package/x11r7/xapp_oclock/Config.in create mode 100644 package/x11r7/xapp_oclock/xapp_oclock.hash create mode 100644 package/x11r7/xapp_oclock/xapp_oclock.mk create mode 100644 package/x11r7/xapp_rgb/Config.in create mode 100644 package/x11r7/xapp_rgb/xapp_rgb.hash create mode 100644 package/x11r7/xapp_rgb/xapp_rgb.mk create mode 100644 package/x11r7/xapp_rstart/Config.in create mode 100644 package/x11r7/xapp_rstart/xapp_rstart.hash create mode 100644 package/x11r7/xapp_rstart/xapp_rstart.mk create mode 100644 package/x11r7/xapp_scripts/Config.in create mode 100644 package/x11r7/xapp_scripts/xapp_scripts.hash create mode 100644 package/x11r7/xapp_scripts/xapp_scripts.mk create mode 100644 package/x11r7/xapp_sessreg/Config.in create mode 100644 package/x11r7/xapp_sessreg/xapp_sessreg.hash create mode 100644 package/x11r7/xapp_sessreg/xapp_sessreg.mk create mode 100644 package/x11r7/xapp_setxkbmap/Config.in create mode 100644 package/x11r7/xapp_setxkbmap/xapp_setxkbmap.hash create mode 100644 package/x11r7/xapp_setxkbmap/xapp_setxkbmap.mk create mode 100644 package/x11r7/xapp_showfont/Config.in create mode 100644 package/x11r7/xapp_showfont/xapp_showfont.hash create mode 100644 package/x11r7/xapp_showfont/xapp_showfont.mk create mode 100644 package/x11r7/xapp_smproxy/Config.in create mode 100644 package/x11r7/xapp_smproxy/xapp_smproxy.hash create mode 100644 package/x11r7/xapp_smproxy/xapp_smproxy.mk create mode 100644 package/x11r7/xapp_twm/Config.in create mode 100644 package/x11r7/xapp_twm/xapp_twm.hash create mode 100644 package/x11r7/xapp_twm/xapp_twm.mk create mode 100644 package/x11r7/xapp_viewres/Config.in create mode 100644 package/x11r7/xapp_viewres/xapp_viewres.hash create mode 100644 package/x11r7/xapp_viewres/xapp_viewres.mk create mode 100644 package/x11r7/xapp_x11perf/Config.in create mode 100644 package/x11r7/xapp_x11perf/xapp_x11perf.hash create mode 100644 package/x11r7/xapp_x11perf/xapp_x11perf.mk create mode 100644 package/x11r7/xapp_xauth/Config.in create mode 100644 package/x11r7/xapp_xauth/xapp_xauth.hash create mode 100644 package/x11r7/xapp_xauth/xapp_xauth.mk create mode 100644 package/x11r7/xapp_xbacklight/Config.in create mode 100644 package/x11r7/xapp_xbacklight/xapp_xbacklight.hash create mode 100644 package/x11r7/xapp_xbacklight/xapp_xbacklight.mk create mode 100644 package/x11r7/xapp_xbiff/Config.in create mode 100644 package/x11r7/xapp_xbiff/xapp_xbiff.hash create mode 100644 package/x11r7/xapp_xbiff/xapp_xbiff.mk create mode 100644 package/x11r7/xapp_xcalc/Config.in create mode 100644 package/x11r7/xapp_xcalc/xapp_xcalc.hash create mode 100644 package/x11r7/xapp_xcalc/xapp_xcalc.mk create mode 100644 package/x11r7/xapp_xclipboard/Config.in create mode 100644 package/x11r7/xapp_xclipboard/xapp_xclipboard.hash create mode 100644 package/x11r7/xapp_xclipboard/xapp_xclipboard.mk create mode 100644 package/x11r7/xapp_xclock/Config.in create mode 100644 package/x11r7/xapp_xclock/xapp_xclock.hash create mode 100644 package/x11r7/xapp_xclock/xapp_xclock.mk create mode 100644 package/x11r7/xapp_xcmsdb/Config.in create mode 100644 package/x11r7/xapp_xcmsdb/xapp_xcmsdb.hash create mode 100644 package/x11r7/xapp_xcmsdb/xapp_xcmsdb.mk create mode 100644 package/x11r7/xapp_xcompmgr/Config.in create mode 100644 package/x11r7/xapp_xcompmgr/xapp_xcompmgr.hash create mode 100644 package/x11r7/xapp_xcompmgr/xapp_xcompmgr.mk create mode 100644 package/x11r7/xapp_xconsole/Config.in create mode 100644 package/x11r7/xapp_xconsole/xapp_xconsole.hash create mode 100644 package/x11r7/xapp_xconsole/xapp_xconsole.mk create mode 100644 package/x11r7/xapp_xcursorgen/Config.in create mode 100644 package/x11r7/xapp_xcursorgen/xapp_xcursorgen.hash create mode 100644 package/x11r7/xapp_xcursorgen/xapp_xcursorgen.mk create mode 100644 package/x11r7/xapp_xdbedizzy/Config.in create mode 100644 package/x11r7/xapp_xdbedizzy/xapp_xdbedizzy.hash create mode 100644 package/x11r7/xapp_xdbedizzy/xapp_xdbedizzy.mk create mode 100644 package/x11r7/xapp_xditview/Config.in create mode 100644 package/x11r7/xapp_xditview/xapp_xditview.hash create mode 100644 package/x11r7/xapp_xditview/xapp_xditview.mk create mode 100644 package/x11r7/xapp_xdm/Config.in create mode 100644 package/x11r7/xapp_xdm/S99xdm create mode 100644 package/x11r7/xapp_xdm/xapp_xdm.hash create mode 100644 package/x11r7/xapp_xdm/xapp_xdm.mk create mode 100644 package/x11r7/xapp_xdpyinfo/Config.in create mode 100644 package/x11r7/xapp_xdpyinfo/xapp_xdpyinfo.hash create mode 100644 package/x11r7/xapp_xdpyinfo/xapp_xdpyinfo.mk create mode 100644 package/x11r7/xapp_xdriinfo/Config.in create mode 100644 package/x11r7/xapp_xdriinfo/xapp_xdriinfo.hash create mode 100644 package/x11r7/xapp_xdriinfo/xapp_xdriinfo.mk create mode 100644 package/x11r7/xapp_xedit/Config.in create mode 100644 package/x11r7/xapp_xedit/xapp_xedit.hash create mode 100644 package/x11r7/xapp_xedit/xapp_xedit.mk create mode 100644 package/x11r7/xapp_xev/Config.in create mode 100644 package/x11r7/xapp_xev/xapp_xev.hash create mode 100644 package/x11r7/xapp_xev/xapp_xev.mk create mode 100644 package/x11r7/xapp_xeyes/Config.in create mode 100644 package/x11r7/xapp_xeyes/xapp_xeyes.hash create mode 100644 package/x11r7/xapp_xeyes/xapp_xeyes.mk create mode 100644 package/x11r7/xapp_xf86dga/Config.in create mode 100644 package/x11r7/xapp_xf86dga/xapp_xf86dga.hash create mode 100644 package/x11r7/xapp_xf86dga/xapp_xf86dga.mk create mode 100644 package/x11r7/xapp_xfd/Config.in create mode 100644 package/x11r7/xapp_xfd/xapp_xfd.hash create mode 100644 package/x11r7/xapp_xfd/xapp_xfd.mk create mode 100644 package/x11r7/xapp_xfindproxy/Config.in create mode 100644 package/x11r7/xapp_xfindproxy/xapp_xfindproxy.hash create mode 100644 package/x11r7/xapp_xfindproxy/xapp_xfindproxy.mk create mode 100644 package/x11r7/xapp_xfontsel/Config.in create mode 100644 package/x11r7/xapp_xfontsel/xapp_xfontsel.hash create mode 100644 package/x11r7/xapp_xfontsel/xapp_xfontsel.mk create mode 100644 package/x11r7/xapp_xfs/Config.in create mode 100644 package/x11r7/xapp_xfs/xapp_xfs.hash create mode 100644 package/x11r7/xapp_xfs/xapp_xfs.mk create mode 100644 package/x11r7/xapp_xfsinfo/Config.in create mode 100644 package/x11r7/xapp_xfsinfo/xapp_xfsinfo.hash create mode 100644 package/x11r7/xapp_xfsinfo/xapp_xfsinfo.mk create mode 100644 package/x11r7/xapp_xgamma/Config.in create mode 100644 package/x11r7/xapp_xgamma/xapp_xgamma.hash create mode 100644 package/x11r7/xapp_xgamma/xapp_xgamma.mk create mode 100644 package/x11r7/xapp_xgc/Config.in create mode 100644 package/x11r7/xapp_xgc/xapp_xgc.hash create mode 100644 package/x11r7/xapp_xgc/xapp_xgc.mk create mode 100644 package/x11r7/xapp_xhost/Config.in create mode 100644 package/x11r7/xapp_xhost/xapp_xhost.hash create mode 100644 package/x11r7/xapp_xhost/xapp_xhost.mk create mode 100644 package/x11r7/xapp_xinit/Config.in create mode 100644 package/x11r7/xapp_xinit/xapp_xinit.hash create mode 100644 package/x11r7/xapp_xinit/xapp_xinit.mk create mode 100644 package/x11r7/xapp_xinput-calibrator/Config.in create mode 100644 package/x11r7/xapp_xinput-calibrator/xapp_xinput-calibrator.hash create mode 100644 package/x11r7/xapp_xinput-calibrator/xapp_xinput-calibrator.mk create mode 100644 package/x11r7/xapp_xinput/Config.in create mode 100644 package/x11r7/xapp_xinput/xapp_xinput.hash create mode 100644 package/x11r7/xapp_xinput/xapp_xinput.mk create mode 100644 package/x11r7/xapp_xkbcomp/Config.in create mode 100644 package/x11r7/xapp_xkbcomp/xapp_xkbcomp.hash create mode 100644 package/x11r7/xapp_xkbcomp/xapp_xkbcomp.mk create mode 100644 package/x11r7/xapp_xkbevd/Config.in create mode 100644 package/x11r7/xapp_xkbevd/xapp_xkbevd.hash create mode 100644 package/x11r7/xapp_xkbevd/xapp_xkbevd.mk create mode 100644 package/x11r7/xapp_xkbprint/Config.in create mode 100644 package/x11r7/xapp_xkbprint/xapp_xkbprint.hash create mode 100644 package/x11r7/xapp_xkbprint/xapp_xkbprint.mk create mode 100644 package/x11r7/xapp_xkbutils/Config.in create mode 100644 package/x11r7/xapp_xkbutils/xapp_xkbutils.hash create mode 100644 package/x11r7/xapp_xkbutils/xapp_xkbutils.mk create mode 100644 package/x11r7/xapp_xkill/Config.in create mode 100644 package/x11r7/xapp_xkill/xapp_xkill.hash create mode 100644 package/x11r7/xapp_xkill/xapp_xkill.mk create mode 100644 package/x11r7/xapp_xload/Config.in create mode 100644 package/x11r7/xapp_xload/xapp_xload.hash create mode 100644 package/x11r7/xapp_xload/xapp_xload.mk create mode 100644 package/x11r7/xapp_xlogo/Config.in create mode 100644 package/x11r7/xapp_xlogo/xapp_xlogo.hash create mode 100644 package/x11r7/xapp_xlogo/xapp_xlogo.mk create mode 100644 package/x11r7/xapp_xlsatoms/Config.in create mode 100644 package/x11r7/xapp_xlsatoms/xapp_xlsatoms.hash create mode 100644 package/x11r7/xapp_xlsatoms/xapp_xlsatoms.mk create mode 100644 package/x11r7/xapp_xlsclients/Config.in create mode 100644 package/x11r7/xapp_xlsclients/xapp_xlsclients.hash create mode 100644 package/x11r7/xapp_xlsclients/xapp_xlsclients.mk create mode 100644 package/x11r7/xapp_xlsfonts/Config.in create mode 100644 package/x11r7/xapp_xlsfonts/xapp_xlsfonts.hash create mode 100644 package/x11r7/xapp_xlsfonts/xapp_xlsfonts.mk create mode 100644 package/x11r7/xapp_xmag/Config.in create mode 100644 package/x11r7/xapp_xmag/xapp_xmag.hash create mode 100644 package/x11r7/xapp_xmag/xapp_xmag.mk create mode 100644 package/x11r7/xapp_xman/Config.in create mode 100644 package/x11r7/xapp_xman/xapp_xman.hash create mode 100644 package/x11r7/xapp_xman/xapp_xman.mk create mode 100644 package/x11r7/xapp_xmessage/Config.in create mode 100644 package/x11r7/xapp_xmessage/xapp_xmessage.hash create mode 100644 package/x11r7/xapp_xmessage/xapp_xmessage.mk create mode 100644 package/x11r7/xapp_xmh/Config.in create mode 100644 package/x11r7/xapp_xmh/xapp_xmh.hash create mode 100644 package/x11r7/xapp_xmh/xapp_xmh.mk create mode 100644 package/x11r7/xapp_xmodmap/Config.in create mode 100644 package/x11r7/xapp_xmodmap/xapp_xmodmap.hash create mode 100644 package/x11r7/xapp_xmodmap/xapp_xmodmap.mk create mode 100644 package/x11r7/xapp_xmore/Config.in create mode 100644 package/x11r7/xapp_xmore/xapp_xmore.hash create mode 100644 package/x11r7/xapp_xmore/xapp_xmore.mk create mode 100644 package/x11r7/xapp_xpr/Config.in create mode 100644 package/x11r7/xapp_xpr/xapp_xpr.hash create mode 100644 package/x11r7/xapp_xpr/xapp_xpr.mk create mode 100644 package/x11r7/xapp_xprop/Config.in create mode 100644 package/x11r7/xapp_xprop/xapp_xprop.hash create mode 100644 package/x11r7/xapp_xprop/xapp_xprop.mk create mode 100644 package/x11r7/xapp_xrandr/Config.in create mode 100644 package/x11r7/xapp_xrandr/xapp_xrandr.hash create mode 100644 package/x11r7/xapp_xrandr/xapp_xrandr.mk create mode 100644 package/x11r7/xapp_xrdb/Config.in create mode 100644 package/x11r7/xapp_xrdb/xapp_xrdb.hash create mode 100644 package/x11r7/xapp_xrdb/xapp_xrdb.mk create mode 100644 package/x11r7/xapp_xrefresh/Config.in create mode 100644 package/x11r7/xapp_xrefresh/xapp_xrefresh.hash create mode 100644 package/x11r7/xapp_xrefresh/xapp_xrefresh.mk create mode 100644 package/x11r7/xapp_xset/Config.in create mode 100644 package/x11r7/xapp_xset/xapp_xset.hash create mode 100644 package/x11r7/xapp_xset/xapp_xset.mk create mode 100644 package/x11r7/xapp_xsetmode/Config.in create mode 100644 package/x11r7/xapp_xsetmode/xapp_xsetmode.hash create mode 100644 package/x11r7/xapp_xsetmode/xapp_xsetmode.mk create mode 100644 package/x11r7/xapp_xsetpointer/Config.in create mode 100644 package/x11r7/xapp_xsetpointer/xapp_xsetpointer.hash create mode 100644 package/x11r7/xapp_xsetpointer/xapp_xsetpointer.mk create mode 100644 package/x11r7/xapp_xsetroot/Config.in create mode 100644 package/x11r7/xapp_xsetroot/xapp_xsetroot.hash create mode 100644 package/x11r7/xapp_xsetroot/xapp_xsetroot.mk create mode 100644 package/x11r7/xapp_xsm/Config.in create mode 100644 package/x11r7/xapp_xsm/xapp_xsm.hash create mode 100644 package/x11r7/xapp_xsm/xapp_xsm.mk create mode 100644 package/x11r7/xapp_xstdcmap/Config.in create mode 100644 package/x11r7/xapp_xstdcmap/xapp_xstdcmap.hash create mode 100644 package/x11r7/xapp_xstdcmap/xapp_xstdcmap.mk create mode 100644 package/x11r7/xapp_xvidtune/Config.in create mode 100644 package/x11r7/xapp_xvidtune/xapp_xvidtune.hash create mode 100644 package/x11r7/xapp_xvidtune/xapp_xvidtune.mk create mode 100644 package/x11r7/xapp_xvinfo/Config.in create mode 100644 package/x11r7/xapp_xvinfo/xapp_xvinfo.hash create mode 100644 package/x11r7/xapp_xvinfo/xapp_xvinfo.mk create mode 100644 package/x11r7/xapp_xwd/Config.in create mode 100644 package/x11r7/xapp_xwd/xapp_xwd.hash create mode 100644 package/x11r7/xapp_xwd/xapp_xwd.mk create mode 100644 package/x11r7/xapp_xwininfo/Config.in create mode 100644 package/x11r7/xapp_xwininfo/xapp_xwininfo.hash create mode 100644 package/x11r7/xapp_xwininfo/xapp_xwininfo.mk create mode 100644 package/x11r7/xapp_xwud/Config.in create mode 100644 package/x11r7/xapp_xwud/xapp_xwud.hash create mode 100644 package/x11r7/xapp_xwud/xapp_xwud.mk create mode 100644 package/x11r7/xcb-proto/Config.in create mode 100644 package/x11r7/xcb-proto/xcb-proto.hash create mode 100644 package/x11r7/xcb-proto/xcb-proto.mk create mode 100644 package/x11r7/xcb-util-cursor/Config.in create mode 100644 package/x11r7/xcb-util-cursor/xcb-util-cursor.hash create mode 100644 package/x11r7/xcb-util-cursor/xcb-util-cursor.mk create mode 100644 package/x11r7/xcb-util-image/Config.in create mode 100644 package/x11r7/xcb-util-image/xcb-util-image.hash create mode 100644 package/x11r7/xcb-util-image/xcb-util-image.mk create mode 100644 package/x11r7/xcb-util-keysyms/Config.in create mode 100644 package/x11r7/xcb-util-keysyms/xcb-util-keysyms.hash create mode 100644 package/x11r7/xcb-util-keysyms/xcb-util-keysyms.mk create mode 100644 package/x11r7/xcb-util-renderutil/Config.in create mode 100644 package/x11r7/xcb-util-renderutil/xcb-util-renderutil.hash create mode 100644 package/x11r7/xcb-util-renderutil/xcb-util-renderutil.mk create mode 100644 package/x11r7/xcb-util-wm/Config.in create mode 100644 package/x11r7/xcb-util-wm/xcb-util-wm.hash create mode 100644 package/x11r7/xcb-util-wm/xcb-util-wm.mk create mode 100644 package/x11r7/xcb-util/Config.in create mode 100644 package/x11r7/xcb-util/xcb-util.hash create mode 100644 package/x11r7/xcb-util/xcb-util.mk create mode 100644 package/x11r7/xcursor-transparent-theme/0001-fix-symlink.patch create mode 100644 package/x11r7/xcursor-transparent-theme/Config.in create mode 100644 package/x11r7/xcursor-transparent-theme/index.theme create mode 100644 package/x11r7/xcursor-transparent-theme/xcursor-transparent-theme.hash create mode 100644 package/x11r7/xcursor-transparent-theme/xcursor-transparent-theme.mk create mode 100644 package/x11r7/xdata_xbitmaps/Config.in create mode 100644 package/x11r7/xdata_xbitmaps/xdata_xbitmaps.hash create mode 100644 package/x11r7/xdata_xbitmaps/xdata_xbitmaps.mk create mode 100644 package/x11r7/xdata_xcursor-themes/Config.in create mode 100644 package/x11r7/xdata_xcursor-themes/xdata_xcursor-themes.hash create mode 100644 package/x11r7/xdata_xcursor-themes/xdata_xcursor-themes.mk create mode 100644 package/x11r7/xdriver_xf86-input-evdev/0001-build-get-rid-of-sdkdir.patch create mode 100644 package/x11r7/xdriver_xf86-input-evdev/Config.in create mode 100644 package/x11r7/xdriver_xf86-input-evdev/xdriver_xf86-input-evdev.hash create mode 100644 package/x11r7/xdriver_xf86-input-evdev/xdriver_xf86-input-evdev.mk create mode 100644 package/x11r7/xdriver_xf86-input-joystick/0001-build-get-rid-of-sdkdir.patch create mode 100644 package/x11r7/xdriver_xf86-input-joystick/50-joystick.conf create mode 100644 package/x11r7/xdriver_xf86-input-joystick/Config.in create mode 100644 package/x11r7/xdriver_xf86-input-joystick/xdriver_xf86-input-joystick.hash create mode 100644 package/x11r7/xdriver_xf86-input-joystick/xdriver_xf86-input-joystick.mk create mode 100644 package/x11r7/xdriver_xf86-input-keyboard/Config.in create mode 100644 package/x11r7/xdriver_xf86-input-keyboard/xdriver_xf86-input-keyboard.hash create mode 100644 package/x11r7/xdriver_xf86-input-keyboard/xdriver_xf86-input-keyboard.mk create mode 100644 package/x11r7/xdriver_xf86-input-libinput/0001-build-get-rid-of-sdkdir.patch create mode 100644 package/x11r7/xdriver_xf86-input-libinput/Config.in create mode 100644 package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.hash create mode 100644 package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.mk create mode 100644 package/x11r7/xdriver_xf86-input-mouse/0001-build-get-rid-of-sdkdir.patch create mode 100644 package/x11r7/xdriver_xf86-input-mouse/Config.in create mode 100644 package/x11r7/xdriver_xf86-input-mouse/xdriver_xf86-input-mouse.hash create mode 100644 package/x11r7/xdriver_xf86-input-mouse/xdriver_xf86-input-mouse.mk create mode 100644 package/x11r7/xdriver_xf86-input-synaptics/0001-build-get-rid-of-sdkdir.patch create mode 100644 package/x11r7/xdriver_xf86-input-synaptics/Config.in create mode 100644 package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.hash create mode 100644 package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.mk create mode 100644 package/x11r7/xdriver_xf86-input-tslib/Config.in create mode 100644 package/x11r7/xdriver_xf86-input-tslib/xdriver_xf86-input-tslib.hash create mode 100644 package/x11r7/xdriver_xf86-input-tslib/xdriver_xf86-input-tslib.mk create mode 100644 package/x11r7/xdriver_xf86-input-vmmouse/Config.in create mode 100644 package/x11r7/xdriver_xf86-input-vmmouse/xdriver_xf86-input-vmmouse.hash create mode 100644 package/x11r7/xdriver_xf86-input-vmmouse/xdriver_xf86-input-vmmouse.mk create mode 100644 package/x11r7/xdriver_xf86-video-amdgpu/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-amdgpu/xdriver_xf86-video-amdgpu.hash create mode 100644 package/x11r7/xdriver_xf86-video-amdgpu/xdriver_xf86-video-amdgpu.mk create mode 100644 package/x11r7/xdriver_xf86-video-ark/0001-mibstore.patch create mode 100644 package/x11r7/xdriver_xf86-video-ark/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-ark/xdriver_xf86-video-ark.hash create mode 100644 package/x11r7/xdriver_xf86-video-ark/xdriver_xf86-video-ark.mk create mode 100644 package/x11r7/xdriver_xf86-video-ast/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-ast/xdriver_xf86-video-ast.hash create mode 100644 package/x11r7/xdriver_xf86-video-ast/xdriver_xf86-video-ast.mk create mode 100644 package/x11r7/xdriver_xf86-video-ati/0001-Fix-link-failure-with-gcc-10.patch create mode 100644 package/x11r7/xdriver_xf86-video-ati/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.hash create mode 100644 package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.mk create mode 100644 package/x11r7/xdriver_xf86-video-cirrus/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-cirrus/xdriver_xf86-video-cirrus.hash create mode 100644 package/x11r7/xdriver_xf86-video-cirrus/xdriver_xf86-video-cirrus.mk create mode 100644 package/x11r7/xdriver_xf86-video-dummy/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-dummy/xdriver_xf86-video-dummy.hash create mode 100644 package/x11r7/xdriver_xf86-video-dummy/xdriver_xf86-video-dummy.mk create mode 100644 package/x11r7/xdriver_xf86-video-fbdev/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-fbdev/xdriver_xf86-video-fbdev.hash create mode 100644 package/x11r7/xdriver_xf86-video-fbdev/xdriver_xf86-video-fbdev.mk create mode 100644 package/x11r7/xdriver_xf86-video-fbturbo/0001-sunxi_x_g2d-drop-unused-dri2-include.patch create mode 100644 package/x11r7/xdriver_xf86-video-fbturbo/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-fbturbo/xdriver_xf86-video-fbturbo.hash create mode 100644 package/x11r7/xdriver_xf86-video-fbturbo/xdriver_xf86-video-fbturbo.mk create mode 100644 package/x11r7/xdriver_xf86-video-geode/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-geode/xdriver_xf86-video-geode.hash create mode 100644 package/x11r7/xdriver_xf86-video-geode/xdriver_xf86-video-geode.mk create mode 100644 package/x11r7/xdriver_xf86-video-glint/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-glint/xdriver_xf86-video-glint.hash create mode 100644 package/x11r7/xdriver_xf86-video-glint/xdriver_xf86-video-glint.mk create mode 100644 package/x11r7/xdriver_xf86-video-i128/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-i128/xdriver_xf86-video-i128.hash create mode 100644 package/x11r7/xdriver_xf86-video-i128/xdriver_xf86-video-i128.mk create mode 100644 package/x11r7/xdriver_xf86-video-imx-viv/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.hash create mode 100644 package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.mk create mode 100644 package/x11r7/xdriver_xf86-video-imx/0001-Update-to-newer-swap-macros.patch create mode 100644 package/x11r7/xdriver_xf86-video-imx/0002-Fix-error-unknown-type-name-uint.patch create mode 100644 package/x11r7/xdriver_xf86-video-imx/0003-support-glibc-2.20.patch create mode 100644 package/x11r7/xdriver_xf86-video-imx/0004-Make-video-API-forward-and-backward-compatible.patch create mode 100644 package/x11r7/xdriver_xf86-video-imx/0005-xf86-video-imxfb-fix-m4-hardcodded-paths.patch create mode 100644 package/x11r7/xdriver_xf86-video-imx/0006-xserver-1.14-compat.patch create mode 100644 package/x11r7/xdriver_xf86-video-imx/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-imx/xdriver_xf86-video-imx.hash create mode 100644 package/x11r7/xdriver_xf86-video-imx/xdriver_xf86-video-imx.mk create mode 100644 package/x11r7/xdriver_xf86-video-intel/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-intel/xdriver_xf86-video-intel.hash create mode 100644 package/x11r7/xdriver_xf86-video-intel/xdriver_xf86-video-intel.mk create mode 100644 package/x11r7/xdriver_xf86-video-mach64/0001-cross-compile.patch create mode 100644 package/x11r7/xdriver_xf86-video-mach64/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-mach64/xdriver_xf86-video-mach64.hash create mode 100644 package/x11r7/xdriver_xf86-video-mach64/xdriver_xf86-video-mach64.mk create mode 100644 package/x11r7/xdriver_xf86-video-mga/0001-misc-fixes.patch create mode 100644 package/x11r7/xdriver_xf86-video-mga/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-mga/xdriver_xf86-video-mga.hash create mode 100644 package/x11r7/xdriver_xf86-video-mga/xdriver_xf86-video-mga.mk create mode 100644 package/x11r7/xdriver_xf86-video-neomagic/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-neomagic/xdriver_xf86-video-neomagic.hash create mode 100644 package/x11r7/xdriver_xf86-video-neomagic/xdriver_xf86-video-neomagic.mk create mode 100644 package/x11r7/xdriver_xf86-video-nouveau/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-nouveau/xdriver_xf86-video-nouveau.hash create mode 100644 package/x11r7/xdriver_xf86-video-nouveau/xdriver_xf86-video-nouveau.mk create mode 100644 package/x11r7/xdriver_xf86-video-nv/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-nv/xdriver_xf86-video-nv.hash create mode 100644 package/x11r7/xdriver_xf86-video-nv/xdriver_xf86-video-nv.mk create mode 100644 package/x11r7/xdriver_xf86-video-openchrome/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-openchrome/xdriver_xf86-video-openchrome.hash create mode 100644 package/x11r7/xdriver_xf86-video-openchrome/xdriver_xf86-video-openchrome.mk create mode 100644 package/x11r7/xdriver_xf86-video-qxl/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-qxl/xdriver_xf86-video-qxl.hash create mode 100644 package/x11r7/xdriver_xf86-video-qxl/xdriver_xf86-video-qxl.mk create mode 100644 package/x11r7/xdriver_xf86-video-r128/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-r128/xdriver_xf86-video-r128.hash create mode 100644 package/x11r7/xdriver_xf86-video-r128/xdriver_xf86-video-r128.mk create mode 100644 package/x11r7/xdriver_xf86-video-savage/0001-cross-compile.patch create mode 100644 package/x11r7/xdriver_xf86-video-savage/0002-xorg-xserver120.patch create mode 100644 package/x11r7/xdriver_xf86-video-savage/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-savage/xdriver_xf86-video-savage.hash create mode 100644 package/x11r7/xdriver_xf86-video-savage/xdriver_xf86-video-savage.mk create mode 100644 package/x11r7/xdriver_xf86-video-siliconmotion/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-siliconmotion/xdriver_xf86-video-siliconmotion.hash create mode 100644 package/x11r7/xdriver_xf86-video-siliconmotion/xdriver_xf86-video-siliconmotion.mk create mode 100644 package/x11r7/xdriver_xf86-video-sis/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis.hash create mode 100644 package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis.mk create mode 100644 package/x11r7/xdriver_xf86-video-tdfx/0001-cross.patch create mode 100644 package/x11r7/xdriver_xf86-video-tdfx/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-tdfx/xdriver_xf86-video-tdfx.hash create mode 100644 package/x11r7/xdriver_xf86-video-tdfx/xdriver_xf86-video-tdfx.mk create mode 100644 package/x11r7/xdriver_xf86-video-tga/0001-mibstore.patch create mode 100644 package/x11r7/xdriver_xf86-video-tga/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-tga/xdriver_xf86-video-tga.hash create mode 100644 package/x11r7/xdriver_xf86-video-tga/xdriver_xf86-video-tga.mk create mode 100644 package/x11r7/xdriver_xf86-video-trident/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-trident/xdriver_xf86-video-trident.hash create mode 100644 package/x11r7/xdriver_xf86-video-trident/xdriver_xf86-video-trident.mk create mode 100644 package/x11r7/xdriver_xf86-video-vesa/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-vesa/xdriver_xf86-video-vesa.hash create mode 100644 package/x11r7/xdriver_xf86-video-vesa/xdriver_xf86-video-vesa.mk create mode 100644 package/x11r7/xdriver_xf86-video-vmware/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-vmware/xdriver_xf86-video-vmware.hash create mode 100644 package/x11r7/xdriver_xf86-video-vmware/xdriver_xf86-video-vmware.mk create mode 100644 package/x11r7/xdriver_xf86-video-voodoo/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-voodoo/xdriver_xf86-video-voodoo.mk create mode 100644 package/x11r7/xfont_encodings/Config.in create mode 100644 package/x11r7/xfont_encodings/xfont_encodings.hash create mode 100644 package/x11r7/xfont_encodings/xfont_encodings.mk create mode 100644 package/x11r7/xfont_font-adobe-100dpi/Config.in create mode 100644 package/x11r7/xfont_font-adobe-100dpi/xfont_font-adobe-100dpi.hash create mode 100644 package/x11r7/xfont_font-adobe-100dpi/xfont_font-adobe-100dpi.mk create mode 100644 package/x11r7/xfont_font-adobe-75dpi/Config.in create mode 100644 package/x11r7/xfont_font-adobe-75dpi/xfont_font-adobe-75dpi.hash create mode 100644 package/x11r7/xfont_font-adobe-75dpi/xfont_font-adobe-75dpi.mk create mode 100644 package/x11r7/xfont_font-adobe-utopia-100dpi/Config.in create mode 100644 package/x11r7/xfont_font-adobe-utopia-100dpi/xfont_font-adobe-utopia-100dpi.hash create mode 100644 package/x11r7/xfont_font-adobe-utopia-100dpi/xfont_font-adobe-utopia-100dpi.mk create mode 100644 package/x11r7/xfont_font-adobe-utopia-75dpi/Config.in create mode 100644 package/x11r7/xfont_font-adobe-utopia-75dpi/xfont_font-adobe-utopia-75dpi.hash create mode 100644 package/x11r7/xfont_font-adobe-utopia-75dpi/xfont_font-adobe-utopia-75dpi.mk create mode 100644 package/x11r7/xfont_font-adobe-utopia-type1/Config.in create mode 100644 package/x11r7/xfont_font-adobe-utopia-type1/xfont_font-adobe-utopia-type1.hash create mode 100644 package/x11r7/xfont_font-adobe-utopia-type1/xfont_font-adobe-utopia-type1.mk create mode 100644 package/x11r7/xfont_font-alias/Config.in create mode 100644 package/x11r7/xfont_font-alias/xfont_font-alias.hash create mode 100644 package/x11r7/xfont_font-alias/xfont_font-alias.mk create mode 100644 package/x11r7/xfont_font-arabic-misc/Config.in create mode 100644 package/x11r7/xfont_font-arabic-misc/xfont_font-arabic-misc.hash create mode 100644 package/x11r7/xfont_font-arabic-misc/xfont_font-arabic-misc.mk create mode 100644 package/x11r7/xfont_font-bh-100dpi/Config.in create mode 100644 package/x11r7/xfont_font-bh-100dpi/xfont_font-bh-100dpi.hash create mode 100644 package/x11r7/xfont_font-bh-100dpi/xfont_font-bh-100dpi.mk create mode 100644 package/x11r7/xfont_font-bh-75dpi/Config.in create mode 100644 package/x11r7/xfont_font-bh-75dpi/xfont_font-bh-75dpi.hash create mode 100644 package/x11r7/xfont_font-bh-75dpi/xfont_font-bh-75dpi.mk create mode 100644 package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/Config.in create mode 100644 package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/xfont_font-bh-lucidatypewriter-100dpi.hash create mode 100644 package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/xfont_font-bh-lucidatypewriter-100dpi.mk create mode 100644 package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/Config.in create mode 100644 package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/xfont_font-bh-lucidatypewriter-75dpi.hash create mode 100644 package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/xfont_font-bh-lucidatypewriter-75dpi.mk create mode 100644 package/x11r7/xfont_font-bh-ttf/Config.in create mode 100644 package/x11r7/xfont_font-bh-ttf/xfont_font-bh-ttf.hash create mode 100644 package/x11r7/xfont_font-bh-ttf/xfont_font-bh-ttf.mk create mode 100644 package/x11r7/xfont_font-bh-type1/Config.in create mode 100644 package/x11r7/xfont_font-bh-type1/xfont_font-bh-type1.hash create mode 100644 package/x11r7/xfont_font-bh-type1/xfont_font-bh-type1.mk create mode 100644 package/x11r7/xfont_font-bitstream-100dpi/Config.in create mode 100644 package/x11r7/xfont_font-bitstream-100dpi/xfont_font-bitstream-100dpi.hash create mode 100644 package/x11r7/xfont_font-bitstream-100dpi/xfont_font-bitstream-100dpi.mk create mode 100644 package/x11r7/xfont_font-bitstream-75dpi/Config.in create mode 100644 package/x11r7/xfont_font-bitstream-75dpi/xfont_font-bitstream-75dpi.hash create mode 100644 package/x11r7/xfont_font-bitstream-75dpi/xfont_font-bitstream-75dpi.mk create mode 100644 package/x11r7/xfont_font-bitstream-type1/Config.in create mode 100644 package/x11r7/xfont_font-bitstream-type1/xfont_font-bitstream-type1.hash create mode 100644 package/x11r7/xfont_font-bitstream-type1/xfont_font-bitstream-type1.mk create mode 100644 package/x11r7/xfont_font-cronyx-cyrillic/Config.in create mode 100644 package/x11r7/xfont_font-cronyx-cyrillic/xfont_font-cronyx-cyrillic.hash create mode 100644 package/x11r7/xfont_font-cronyx-cyrillic/xfont_font-cronyx-cyrillic.mk create mode 100644 package/x11r7/xfont_font-cursor-misc/Config.in create mode 100644 package/x11r7/xfont_font-cursor-misc/xfont_font-cursor-misc.hash create mode 100644 package/x11r7/xfont_font-cursor-misc/xfont_font-cursor-misc.mk create mode 100644 package/x11r7/xfont_font-daewoo-misc/Config.in create mode 100644 package/x11r7/xfont_font-daewoo-misc/xfont_font-daewoo-misc.hash create mode 100644 package/x11r7/xfont_font-daewoo-misc/xfont_font-daewoo-misc.mk create mode 100644 package/x11r7/xfont_font-dec-misc/Config.in create mode 100644 package/x11r7/xfont_font-dec-misc/xfont_font-dec-misc.hash create mode 100644 package/x11r7/xfont_font-dec-misc/xfont_font-dec-misc.mk create mode 100644 package/x11r7/xfont_font-ibm-type1/Config.in create mode 100644 package/x11r7/xfont_font-ibm-type1/xfont_font-ibm-type1.hash create mode 100644 package/x11r7/xfont_font-ibm-type1/xfont_font-ibm-type1.mk create mode 100644 package/x11r7/xfont_font-isas-misc/Config.in create mode 100644 package/x11r7/xfont_font-isas-misc/xfont_font-isas-misc.hash create mode 100644 package/x11r7/xfont_font-isas-misc/xfont_font-isas-misc.mk create mode 100644 package/x11r7/xfont_font-jis-misc/Config.in create mode 100644 package/x11r7/xfont_font-jis-misc/xfont_font-jis-misc.hash create mode 100644 package/x11r7/xfont_font-jis-misc/xfont_font-jis-misc.mk create mode 100644 package/x11r7/xfont_font-micro-misc/Config.in create mode 100644 package/x11r7/xfont_font-micro-misc/xfont_font-micro-misc.hash create mode 100644 package/x11r7/xfont_font-micro-misc/xfont_font-micro-misc.mk create mode 100644 package/x11r7/xfont_font-misc-cyrillic/Config.in create mode 100644 package/x11r7/xfont_font-misc-cyrillic/xfont_font-misc-cyrillic.hash create mode 100644 package/x11r7/xfont_font-misc-cyrillic/xfont_font-misc-cyrillic.mk create mode 100644 package/x11r7/xfont_font-misc-ethiopic/Config.in create mode 100644 package/x11r7/xfont_font-misc-ethiopic/xfont_font-misc-ethiopic.hash create mode 100644 package/x11r7/xfont_font-misc-ethiopic/xfont_font-misc-ethiopic.mk create mode 100644 package/x11r7/xfont_font-misc-meltho/Config.in create mode 100644 package/x11r7/xfont_font-misc-meltho/xfont_font-misc-meltho.hash create mode 100644 package/x11r7/xfont_font-misc-meltho/xfont_font-misc-meltho.mk create mode 100644 package/x11r7/xfont_font-misc-misc/Config.in create mode 100644 package/x11r7/xfont_font-misc-misc/xfont_font-misc-misc.hash create mode 100644 package/x11r7/xfont_font-misc-misc/xfont_font-misc-misc.mk create mode 100644 package/x11r7/xfont_font-mutt-misc/Config.in create mode 100644 package/x11r7/xfont_font-mutt-misc/xfont_font-mutt-misc.hash create mode 100644 package/x11r7/xfont_font-mutt-misc/xfont_font-mutt-misc.mk create mode 100644 package/x11r7/xfont_font-schumacher-misc/Config.in create mode 100644 package/x11r7/xfont_font-schumacher-misc/xfont_font-schumacher-misc.hash create mode 100644 package/x11r7/xfont_font-schumacher-misc/xfont_font-schumacher-misc.mk create mode 100644 package/x11r7/xfont_font-screen-cyrillic/Config.in create mode 100644 package/x11r7/xfont_font-screen-cyrillic/xfont_font-screen-cyrillic.hash create mode 100644 package/x11r7/xfont_font-screen-cyrillic/xfont_font-screen-cyrillic.mk create mode 100644 package/x11r7/xfont_font-sony-misc/Config.in create mode 100644 package/x11r7/xfont_font-sony-misc/xfont_font-sony-misc.hash create mode 100644 package/x11r7/xfont_font-sony-misc/xfont_font-sony-misc.mk create mode 100644 package/x11r7/xfont_font-sun-misc/Config.in create mode 100644 package/x11r7/xfont_font-sun-misc/xfont_font-sun-misc.hash create mode 100644 package/x11r7/xfont_font-sun-misc/xfont_font-sun-misc.mk create mode 100644 package/x11r7/xfont_font-util/Config.in create mode 100644 package/x11r7/xfont_font-util/xfont_font-util.hash create mode 100644 package/x11r7/xfont_font-util/xfont_font-util.mk create mode 100644 package/x11r7/xfont_font-winitzki-cyrillic/Config.in create mode 100644 package/x11r7/xfont_font-winitzki-cyrillic/xfont_font-winitzki-cyrillic.hash create mode 100644 package/x11r7/xfont_font-winitzki-cyrillic/xfont_font-winitzki-cyrillic.mk create mode 100644 package/x11r7/xfont_font-xfree86-type1/Config.in create mode 100644 package/x11r7/xfont_font-xfree86-type1/xfont_font-xfree86-type1.hash create mode 100644 package/x11r7/xfont_font-xfree86-type1/xfont_font-xfree86-type1.mk create mode 100644 package/x11r7/xkeyboard-config/Config.in create mode 100644 package/x11r7/xkeyboard-config/xkeyboard-config.hash create mode 100644 package/x11r7/xkeyboard-config/xkeyboard-config.mk create mode 100644 package/x11r7/xlib_libFS/Config.in create mode 100644 package/x11r7/xlib_libFS/xlib_libFS.hash create mode 100644 package/x11r7/xlib_libFS/xlib_libFS.mk create mode 100644 package/x11r7/xlib_libICE/Config.in create mode 100644 package/x11r7/xlib_libICE/xlib_libICE.hash create mode 100644 package/x11r7/xlib_libICE/xlib_libICE.mk create mode 100644 package/x11r7/xlib_libSM/Config.in create mode 100644 package/x11r7/xlib_libSM/xlib_libSM.hash create mode 100644 package/x11r7/xlib_libSM/xlib_libSM.mk create mode 100644 package/x11r7/xlib_libX11/Config.in create mode 100644 package/x11r7/xlib_libX11/xlib_libX11.hash create mode 100644 package/x11r7/xlib_libX11/xlib_libX11.mk create mode 100644 package/x11r7/xlib_libXScrnSaver/Config.in create mode 100644 package/x11r7/xlib_libXScrnSaver/xlib_libXScrnSaver.hash create mode 100644 package/x11r7/xlib_libXScrnSaver/xlib_libXScrnSaver.mk create mode 100644 package/x11r7/xlib_libXau/Config.in create mode 100644 package/x11r7/xlib_libXau/xlib_libXau.hash create mode 100644 package/x11r7/xlib_libXau/xlib_libXau.mk create mode 100644 package/x11r7/xlib_libXaw/Config.in create mode 100644 package/x11r7/xlib_libXaw/xlib_libXaw.hash create mode 100644 package/x11r7/xlib_libXaw/xlib_libXaw.mk create mode 100644 package/x11r7/xlib_libXcomposite/Config.in create mode 100644 package/x11r7/xlib_libXcomposite/xlib_libXcomposite.hash create mode 100644 package/x11r7/xlib_libXcomposite/xlib_libXcomposite.mk create mode 100644 package/x11r7/xlib_libXcursor/Config.in create mode 100644 package/x11r7/xlib_libXcursor/xlib_libXcursor.hash create mode 100644 package/x11r7/xlib_libXcursor/xlib_libXcursor.mk create mode 100644 package/x11r7/xlib_libXdamage/Config.in create mode 100644 package/x11r7/xlib_libXdamage/xlib_libXdamage.hash create mode 100644 package/x11r7/xlib_libXdamage/xlib_libXdamage.mk create mode 100644 package/x11r7/xlib_libXdmcp/Config.in create mode 100644 package/x11r7/xlib_libXdmcp/xlib_libXdmcp.hash create mode 100644 package/x11r7/xlib_libXdmcp/xlib_libXdmcp.mk create mode 100644 package/x11r7/xlib_libXext/Config.in create mode 100644 package/x11r7/xlib_libXext/xlib_libXext.hash create mode 100644 package/x11r7/xlib_libXext/xlib_libXext.mk create mode 100644 package/x11r7/xlib_libXfixes/Config.in create mode 100644 package/x11r7/xlib_libXfixes/xlib_libXfixes.hash create mode 100644 package/x11r7/xlib_libXfixes/xlib_libXfixes.mk create mode 100644 package/x11r7/xlib_libXfont/Config.in create mode 100644 package/x11r7/xlib_libXfont/xlib_libXfont.hash create mode 100644 package/x11r7/xlib_libXfont/xlib_libXfont.mk create mode 100644 package/x11r7/xlib_libXfont2/0001-configure-define-HAVE_LIBBSD-when-libbsd-was-found.patch create mode 100644 package/x11r7/xlib_libXfont2/Config.in create mode 100644 package/x11r7/xlib_libXfont2/xlib_libXfont2.hash create mode 100644 package/x11r7/xlib_libXfont2/xlib_libXfont2.mk create mode 100644 package/x11r7/xlib_libXft/Config.in create mode 100644 package/x11r7/xlib_libXft/xlib_libXft.hash create mode 100644 package/x11r7/xlib_libXft/xlib_libXft.mk create mode 100644 package/x11r7/xlib_libXi/Config.in create mode 100644 package/x11r7/xlib_libXi/xlib_libXi.hash create mode 100644 package/x11r7/xlib_libXi/xlib_libXi.mk create mode 100644 package/x11r7/xlib_libXinerama/Config.in create mode 100644 package/x11r7/xlib_libXinerama/xlib_libXinerama.hash create mode 100644 package/x11r7/xlib_libXinerama/xlib_libXinerama.mk create mode 100644 package/x11r7/xlib_libXmu/Config.in create mode 100644 package/x11r7/xlib_libXmu/xlib_libXmu.hash create mode 100644 package/x11r7/xlib_libXmu/xlib_libXmu.mk create mode 100644 package/x11r7/xlib_libXpm/Config.in create mode 100644 package/x11r7/xlib_libXpm/xlib_libXpm.hash create mode 100644 package/x11r7/xlib_libXpm/xlib_libXpm.mk create mode 100644 package/x11r7/xlib_libXrandr/Config.in create mode 100644 package/x11r7/xlib_libXrandr/xlib_libXrandr.hash create mode 100644 package/x11r7/xlib_libXrandr/xlib_libXrandr.mk create mode 100644 package/x11r7/xlib_libXrender/Config.in create mode 100644 package/x11r7/xlib_libXrender/xlib_libXrender.hash create mode 100644 package/x11r7/xlib_libXrender/xlib_libXrender.mk create mode 100644 package/x11r7/xlib_libXres/Config.in create mode 100644 package/x11r7/xlib_libXres/xlib_libXres.hash create mode 100644 package/x11r7/xlib_libXres/xlib_libXres.mk create mode 100644 package/x11r7/xlib_libXt/Config.in create mode 100644 package/x11r7/xlib_libXt/xlib_libXt.hash create mode 100644 package/x11r7/xlib_libXt/xlib_libXt.mk create mode 100644 package/x11r7/xlib_libXtst/Config.in create mode 100644 package/x11r7/xlib_libXtst/xlib_libXtst.hash create mode 100644 package/x11r7/xlib_libXtst/xlib_libXtst.mk create mode 100644 package/x11r7/xlib_libXv/Config.in create mode 100644 package/x11r7/xlib_libXv/xlib_libXv.hash create mode 100644 package/x11r7/xlib_libXv/xlib_libXv.mk create mode 100644 package/x11r7/xlib_libXvMC/Config.in create mode 100644 package/x11r7/xlib_libXvMC/xlib_libXvMC.hash create mode 100644 package/x11r7/xlib_libXvMC/xlib_libXvMC.mk create mode 100644 package/x11r7/xlib_libXxf86dga/Config.in create mode 100644 package/x11r7/xlib_libXxf86dga/xlib_libXxf86dga.hash create mode 100644 package/x11r7/xlib_libXxf86dga/xlib_libXxf86dga.mk create mode 100644 package/x11r7/xlib_libXxf86vm/Config.in create mode 100644 package/x11r7/xlib_libXxf86vm/xlib_libXxf86vm.hash create mode 100644 package/x11r7/xlib_libXxf86vm/xlib_libXxf86vm.mk create mode 100644 package/x11r7/xlib_libdmx/Config.in create mode 100644 package/x11r7/xlib_libdmx/xlib_libdmx.hash create mode 100644 package/x11r7/xlib_libdmx/xlib_libdmx.mk create mode 100644 package/x11r7/xlib_libfontenc/Config.in create mode 100644 package/x11r7/xlib_libfontenc/xlib_libfontenc.hash create mode 100644 package/x11r7/xlib_libfontenc/xlib_libfontenc.mk create mode 100644 package/x11r7/xlib_libxkbfile/Config.in create mode 100644 package/x11r7/xlib_libxkbfile/xlib_libxkbfile.hash create mode 100644 package/x11r7/xlib_libxkbfile/xlib_libxkbfile.mk create mode 100644 package/x11r7/xlib_libxshmfence/Config.in create mode 100644 package/x11r7/xlib_libxshmfence/xlib_libxshmfence.hash create mode 100644 package/x11r7/xlib_libxshmfence/xlib_libxshmfence.mk create mode 100644 package/x11r7/xlib_xtrans/Config.in create mode 100644 package/x11r7/xlib_xtrans/xlib_xtrans.hash create mode 100644 package/x11r7/xlib_xtrans/xlib_xtrans.mk create mode 100644 package/x11r7/xorgproto/Config.in create mode 100644 package/x11r7/xorgproto/xorgproto.hash create mode 100644 package/x11r7/xorgproto/xorgproto.mk create mode 100644 package/x11r7/xserver_xorg-server/0001-modesettings-needs-dri2.patch create mode 100644 package/x11r7/xserver_xorg-server/0002-include-misc.h-fix-uClibc-build.patch create mode 100644 package/x11r7/xserver_xorg-server/0003-hw-xwayland-Makefile.am-fix-build-without-glx.patch create mode 100644 package/x11r7/xserver_xorg-server/0004-hw-xfree86-common-xf86Init.c-fix-build-without-glx.patch create mode 100644 package/x11r7/xserver_xorg-server/0005-Fix-segfault-on-probing-a-non-PCI-platform-device-on.patch create mode 100644 package/x11r7/xserver_xorg-server/Config.in create mode 100644 package/x11r7/xserver_xorg-server/S40xorg create mode 100644 package/x11r7/xserver_xorg-server/xorg.service create mode 100644 package/x11r7/xserver_xorg-server/xserver_xorg-server.hash create mode 100644 package/x11r7/xserver_xorg-server/xserver_xorg-server.mk create mode 100644 package/x11r7/xutil_makedepend/Config.in create mode 100644 package/x11r7/xutil_makedepend/xutil_makedepend.hash create mode 100644 package/x11r7/xutil_makedepend/xutil_makedepend.mk create mode 100644 package/x11vnc/0001-Fix-build-on-32bit-arches-with-64bit-time_t.patch create mode 100644 package/x11vnc/0002-scan-limit-access-to-shared-memory-segments-to-current-user.patch create mode 100644 package/x11vnc/Config.in create mode 100644 package/x11vnc/x11vnc.hash create mode 100644 package/x11vnc/x11vnc.mk create mode 100644 package/x264/Config.in create mode 100644 package/x264/x264.hash create mode 100644 package/x264/x264.mk create mode 100644 package/x265/0001-fix-gcc-options.patch create mode 100644 package/x265/0002-arm-asm-primitives.patch create mode 100644 package/x265/Config.in create mode 100644 package/x265/x265.hash create mode 100644 package/x265/x265.mk create mode 100644 package/xapian/Config.in create mode 100644 package/xapian/xapian.hash create mode 100644 package/xapian/xapian.mk create mode 100644 package/xavante/Config.in create mode 100644 package/xavante/xavante.hash create mode 100644 package/xavante/xavante.mk create mode 100644 package/xdg-dbus-proxy/0001-Fix-musl-compilation-by-adding-TEMP_FAILURE_RETRY.patch create mode 100644 package/xdg-dbus-proxy/Config.in create mode 100644 package/xdg-dbus-proxy/xdg-dbus-proxy.hash create mode 100644 package/xdg-dbus-proxy/xdg-dbus-proxy.mk create mode 100644 package/xdotool/Config.in create mode 100644 package/xdotool/xdotool.hash create mode 100644 package/xdotool/xdotool.mk create mode 100644 package/xen/0001-9pfs-include-linux-limits.h-for-XATTR_SIZE_MAX.patch create mode 100644 package/xen/Config.in create mode 100644 package/xen/xen.hash create mode 100644 package/xen/xen.mk create mode 100644 package/xenomai/3.0.10/0001-lib-boilerplate-iniparser-Allow-building-with-GCC-10-2-2020101.patch create mode 100644 package/xenomai/Config.in create mode 100644 package/xenomai/xenomai.hash create mode 100644 package/xenomai/xenomai.mk create mode 100644 package/xerces/0001-fix-static-linking-with-curl.patch create mode 100644 package/xerces/Config.in create mode 100644 package/xerces/xerces.hash create mode 100644 package/xerces/xerces.mk create mode 100644 package/xfsprogs/0001-mdrestore-do-not-do-dynamic-linking-of-libtool-libra.patch create mode 100644 package/xfsprogs/0002-libxfs-do-not-try-to-run-the-crc32selftest.patch create mode 100644 package/xfsprogs/Config.in create mode 100644 package/xfsprogs/xfsprogs.hash create mode 100644 package/xfsprogs/xfsprogs.mk create mode 100644 package/xinetd/0001-ar.patch create mode 100644 package/xinetd/0002-destdir.patch create mode 100644 package/xinetd/0003-rpc-fix.patch create mode 100644 package/xinetd/0004-configure-rlim_t.patch create mode 100644 package/xinetd/0005-CVE-2013-4342-xinetd-ignores-user-and-group-directiv.patch create mode 100644 package/xinetd/Config.in create mode 100644 package/xinetd/xinetd.hash create mode 100644 package/xinetd/xinetd.mk create mode 100644 package/xl2tp/Config.in create mode 100644 package/xl2tp/xl2tp.hash create mode 100644 package/xl2tp/xl2tp.mk create mode 100755 package/xl2tp/xl2tpd create mode 100644 package/xmlstarlet/Config.in create mode 100644 package/xmlstarlet/xmlstarlet.hash create mode 100644 package/xmlstarlet/xmlstarlet.mk create mode 100644 package/xorcurses/Config.in create mode 100644 package/xorcurses/xorcurses.hash create mode 100644 package/xorcurses/xorcurses.mk create mode 100644 package/xorriso/Config.in create mode 100644 package/xorriso/Config.in.host create mode 100644 package/xorriso/xorriso.hash create mode 100644 package/xorriso/xorriso.mk create mode 100644 package/xr819-xradio/Config.in create mode 100644 package/xr819-xradio/xr819-xradio.hash create mode 100644 package/xr819-xradio/xr819-xradio.mk create mode 100644 package/xscreensaver/Config.in create mode 100644 package/xscreensaver/xscreensaver.hash create mode 100644 package/xscreensaver/xscreensaver.mk create mode 100644 package/xtables-addons/Config.in create mode 100644 package/xtables-addons/xtables-addons.hash create mode 100644 package/xtables-addons/xtables-addons.mk create mode 100644 package/xterm/Config.in create mode 100644 package/xterm/xterm.hash create mode 100644 package/xterm/xterm.mk create mode 100644 package/xutil_util-macros/Config.in create mode 100644 package/xutil_util-macros/xutil_util-macros.hash create mode 100644 package/xutil_util-macros/xutil_util-macros.mk create mode 100644 package/xvisor/0001-fix-build-with-gcc-10.patch create mode 100644 package/xvisor/Config.in create mode 100644 package/xvisor/xvisor.hash create mode 100644 package/xvisor/xvisor.mk create mode 100644 package/xvkbd/Config.in create mode 100644 package/xvkbd/xvkbd.hash create mode 100644 package/xvkbd/xvkbd.mk create mode 100644 package/xxhash/Config.in create mode 100644 package/xxhash/xxhash.hash create mode 100644 package/xxhash/xxhash.mk create mode 100644 package/xz/Config.in create mode 100644 package/xz/xz.hash create mode 100644 package/xz/xz.mk create mode 100644 package/yad/Config.in create mode 100644 package/yad/yad.hash create mode 100644 package/yad/yad.mk create mode 100644 package/yaffs2utils/yaffs2utils.hash create mode 100644 package/yaffs2utils/yaffs2utils.mk create mode 100644 package/yajl/0001-Let-the-shared-and-the-static-library-have-the-same-.patch create mode 100644 package/yajl/0002-cmake-disable-shared-library-build-when-BUILD_SHARED.patch create mode 100644 package/yajl/0003-Link-with-shared-libyajl-in-a-shared-build.patch create mode 100644 package/yajl/0004-Link-libyajl-_s-with-libm-when-isnan-is-not-brought-.patch create mode 100644 package/yajl/Config.in create mode 100644 package/yajl/yajl.hash create mode 100644 package/yajl/yajl.mk create mode 100644 package/yaml-cpp/Config.in create mode 100644 package/yaml-cpp/yaml-cpp.hash create mode 100644 package/yaml-cpp/yaml-cpp.mk create mode 100644 package/yasm/Config.in create mode 100644 package/yasm/yasm.hash create mode 100644 package/yasm/yasm.mk create mode 100644 package/yavta/Config.in create mode 100644 package/yavta/yavta.mk create mode 100644 package/ympd/0001-only-c-language.patch create mode 100644 package/ympd/0002-added-forward-declarations.patch create mode 100644 package/ympd/Config.in create mode 100644 package/ympd/ympd.hash create mode 100644 package/ympd/ympd.mk create mode 100644 package/ytree/0001-fix-musl.patch create mode 100644 package/ytree/Config.in create mode 100644 package/ytree/ytree.hash create mode 100644 package/ytree/ytree.mk create mode 100644 package/zbar/0001-zbarcam-zbarimg-get-rid-of-gettext-h.patch create mode 100644 package/zbar/0002-zbarcam-zbar-cam-img-.c-fix-build-with-musl.patch create mode 100644 package/zbar/Config.in create mode 100644 package/zbar/zbar.hash create mode 100644 package/zbar/zbar.mk create mode 100644 package/zd1211-firmware/Config.in create mode 100644 package/zd1211-firmware/zd1211-firmware.hash create mode 100644 package/zd1211-firmware/zd1211-firmware.mk create mode 100644 package/zeromq/Config.in create mode 100644 package/zeromq/zeromq.hash create mode 100644 package/zeromq/zeromq.mk create mode 100644 package/zic/0001-remove-dependency-check-on-version-file.patch create mode 100644 package/zic/zic.hash create mode 100644 package/zic/zic.mk create mode 100644 package/zip/0001-configure-Remove-Check-C-compiler-type-optimization-.patch create mode 100644 package/zip/0002-configure-Don-t-use-host-CPP.patch create mode 100644 package/zip/0003-Makefile-Use-CFLAGS-from-command-line.patch create mode 100644 package/zip/0004-configure-use-LDFLAGS-from-command-line.patch create mode 100644 package/zip/0005-unix-configure-remove-GID-UID-size-check.patch create mode 100644 package/zip/0006-unix-configure-borrow-the-LFS-test-from-autotools.patch create mode 100644 package/zip/0007-timezone.c-needs-time.h-fixes-musl-compile.patch create mode 100644 package/zip/Config.in create mode 100644 package/zip/Config.in.host create mode 100644 package/zip/zip.hash create mode 100644 package/zip/zip.mk create mode 100644 package/zisofs-tools/zisofs-tools.hash create mode 100644 package/zisofs-tools/zisofs-tools.mk create mode 100644 package/zlib-ng/zlib-ng.hash create mode 100644 package/zlib-ng/zlib-ng.mk create mode 100644 package/zlib/Config.in create mode 100644 package/zlib/zlib.mk create mode 100644 package/zlog/Config.in create mode 100644 package/zlog/zlog.hash create mode 100644 package/zlog/zlog.mk create mode 100644 package/zmqpp/0001-Allow-building-shared-or-static-library-only.patch create mode 100644 package/zmqpp/Config.in create mode 100644 package/zmqpp/zmqpp.hash create mode 100644 package/zmqpp/zmqpp.mk create mode 100644 package/znc/Config.in create mode 100644 package/znc/znc.hash create mode 100644 package/znc/znc.mk create mode 100644 package/zsh/Config.in create mode 100644 package/zsh/zsh.hash create mode 100644 package/zsh/zsh.mk create mode 100644 package/zstd/Config.in create mode 100644 package/zstd/Config.in.host create mode 100644 package/zstd/zstd.hash create mode 100644 package/zstd/zstd.mk create mode 100644 package/zxing-cpp/0001-Link-library-with-OpenCV-make-libs-private-not-exported-to-the-users.patch create mode 100644 package/zxing-cpp/0002-CMakeLists-txt-add-BUILD_OPENCV-option.patch create mode 100644 package/zxing-cpp/Config.in create mode 100644 package/zxing-cpp/zxing-cpp.hash create mode 100644 package/zxing-cpp/zxing-cpp.mk create mode 100644 package/zynq-boot-bin/zynq-boot-bin.hash create mode 100644 package/zynq-boot-bin/zynq-boot-bin.mk create mode 100644 package/zyre/Config.in create mode 100644 package/zyre/zyre.hash create mode 100644 package/zyre/zyre.mk create mode 100644 package/zziplib/Config.in create mode 100644 package/zziplib/zziplib.hash create mode 100644 package/zziplib/zziplib.mk create mode 100644 support/config-fragments/autobuild/andes-nds32.config create mode 100644 support/config-fragments/autobuild/arm-aarch64.config create mode 100644 support/config-fragments/autobuild/bootlin-aarch64-glibc.config create mode 100644 support/config-fragments/autobuild/bootlin-arcle-hs38-uclibc.config create mode 100644 support/config-fragments/autobuild/bootlin-armv5-uclibc.config create mode 100644 support/config-fragments/autobuild/bootlin-armv7-glibc.config create mode 100644 support/config-fragments/autobuild/bootlin-armv7-musl.config create mode 100644 support/config-fragments/autobuild/bootlin-armv7m-uclibc.config create mode 100644 support/config-fragments/autobuild/bootlin-m68k-5208-uclibc.config create mode 100644 support/config-fragments/autobuild/bootlin-m68k-68040-uclibc.config create mode 100644 support/config-fragments/autobuild/bootlin-microblazeel-uclibc.config create mode 100644 support/config-fragments/autobuild/bootlin-mipsel-uclibc.config create mode 100644 support/config-fragments/autobuild/bootlin-mipsel32r6-glibc.config create mode 100644 support/config-fragments/autobuild/bootlin-nios2-glibc.config create mode 100644 support/config-fragments/autobuild/bootlin-openrisc-uclibc.config create mode 100644 support/config-fragments/autobuild/bootlin-powerpc-e500mc-uclibc.config create mode 100644 support/config-fragments/autobuild/bootlin-powerpc64le-power8-glibc.config create mode 100644 support/config-fragments/autobuild/bootlin-riscv32-glibc.config create mode 100644 support/config-fragments/autobuild/bootlin-riscv64-glibc.config create mode 100644 support/config-fragments/autobuild/bootlin-riscv64-musl.config create mode 100644 support/config-fragments/autobuild/bootlin-sh4-uclibc.config create mode 100644 support/config-fragments/autobuild/bootlin-sparc-uclibc.config create mode 100644 support/config-fragments/autobuild/bootlin-sparc64-glibc.config create mode 100644 support/config-fragments/autobuild/bootlin-x86-64-glibc.config create mode 100644 support/config-fragments/autobuild/bootlin-x86-64-musl.config create mode 100644 support/config-fragments/autobuild/bootlin-x86-64-uclibc.config create mode 100644 support/config-fragments/autobuild/bootlin-xtensa-uclibc.config create mode 100644 support/config-fragments/autobuild/br-arc-full-internal.config create mode 100644 support/config-fragments/autobuild/br-arc-internal-glibc.config create mode 100644 support/config-fragments/autobuild/br-arm-basic.config create mode 100644 support/config-fragments/autobuild/br-arm-full-nothread.config create mode 100644 support/config-fragments/autobuild/br-arm-full-static.config create mode 100644 support/config-fragments/autobuild/br-arm-internal-full.config create mode 100644 support/config-fragments/autobuild/br-arm-internal-glibc.config create mode 100644 support/config-fragments/autobuild/br-arm-internal-musl.config create mode 100644 support/config-fragments/autobuild/br-i386-pentium-mmx-musl.config create mode 100644 support/config-fragments/autobuild/br-i386-pentium4-full.config create mode 100644 support/config-fragments/autobuild/br-microblazeel-full-internal.config create mode 100644 support/config-fragments/autobuild/br-mips64-n64-full.config create mode 100644 support/config-fragments/autobuild/br-mips64r6-el-hf-glibc.config create mode 100644 support/config-fragments/autobuild/br-powerpc-603e-basic-cpp.config create mode 100644 support/config-fragments/autobuild/br-powerpc-internal-full.config create mode 100644 support/config-fragments/autobuild/br-powerpc64-power7-glibc.config create mode 100644 support/config-fragments/autobuild/br-riscv64-full-internal.config create mode 100644 support/config-fragments/autobuild/br-s390x-z13-internal-glibc.config create mode 100644 support/config-fragments/autobuild/br-xtensa-full-internal.config create mode 100644 support/config-fragments/autobuild/linaro-aarch64-be.config create mode 100644 support/config-fragments/autobuild/linaro-aarch64.config create mode 100644 support/config-fragments/autobuild/linaro-arm.config create mode 100644 support/config-fragments/autobuild/sourcery-arm-armv4t.config create mode 100644 support/config-fragments/autobuild/sourcery-arm-thumb2.config create mode 100644 support/config-fragments/autobuild/sourcery-arm.config create mode 100644 support/config-fragments/autobuild/sourcery-mips.config create mode 100644 support/config-fragments/autobuild/sourcery-mips64.config create mode 100644 support/config-fragments/autobuild/sourcery-nios2.config create mode 100644 support/config-fragments/autobuild/toolchain-configs.csv create mode 100644 support/config-fragments/minimal.config create mode 100755 support/dependencies/check-host-asciidoc.sh create mode 100644 support/dependencies/check-host-bison-flex.mk create mode 100644 support/dependencies/check-host-cmake.mk create mode 100755 support/dependencies/check-host-cmake.sh create mode 100644 support/dependencies/check-host-coreutils.mk create mode 100755 support/dependencies/check-host-coreutils.sh create mode 100644 support/dependencies/check-host-gzip.mk create mode 100755 support/dependencies/check-host-gzip.sh create mode 100644 support/dependencies/check-host-lzip.mk create mode 100755 support/dependencies/check-host-lzip.sh create mode 100644 support/dependencies/check-host-make.mk create mode 100755 support/dependencies/check-host-make.sh create mode 100644 support/dependencies/check-host-python3.mk create mode 100755 support/dependencies/check-host-python3.sh create mode 100644 support/dependencies/check-host-tar.mk create mode 100755 support/dependencies/check-host-tar.sh create mode 100644 support/dependencies/check-host-xzcat.mk create mode 100755 support/dependencies/check-host-xzcat.sh create mode 100644 support/dependencies/dependencies.mk create mode 100755 support/dependencies/dependencies.sh create mode 100644 support/docker/Dockerfile create mode 100644 support/docker/apt-sources.list create mode 100755 support/download/bzr create mode 100755 support/download/check-hash create mode 100755 support/download/cvs create mode 100755 support/download/dl-wrapper create mode 100755 support/download/file create mode 100755 support/download/git create mode 100755 support/download/helpers create mode 100755 support/download/hg create mode 100755 support/download/scp create mode 100755 support/download/svn create mode 100755 support/download/wget create mode 100644 support/gnuconfig/README.buildroot create mode 100755 support/gnuconfig/config.guess create mode 100755 support/gnuconfig/config.sub create mode 100755 support/gnuconfig/update create mode 100644 support/kconfig/.gitignore create mode 100644 support/kconfig/Makefile create mode 100644 support/kconfig/Makefile.br create mode 100644 support/kconfig/POTFILES.in create mode 100644 support/kconfig/README.buildroot create mode 100755 support/kconfig/check.sh create mode 100644 support/kconfig/conf.c create mode 100644 support/kconfig/confdata.c create mode 100644 support/kconfig/expr.c create mode 100644 support/kconfig/expr.h create mode 100644 support/kconfig/foo.h create mode 100644 support/kconfig/gconf.c create mode 100644 support/kconfig/gconf.glade create mode 100644 support/kconfig/images.c create mode 100644 support/kconfig/kconf_id.c create mode 100644 support/kconfig/kxgettext.c create mode 100644 support/kconfig/list.h create mode 100644 support/kconfig/lkc.h create mode 100644 support/kconfig/lkc_proto.h create mode 100644 support/kconfig/lxdialog/.gitignore create mode 100644 support/kconfig/lxdialog/BIG.FAT.WARNING create mode 100755 support/kconfig/lxdialog/check-lxdialog.sh create mode 100644 support/kconfig/lxdialog/checklist.c create mode 100644 support/kconfig/lxdialog/dialog.h create mode 100644 support/kconfig/lxdialog/inputbox.c create mode 100644 support/kconfig/lxdialog/menubox.c create mode 100644 support/kconfig/lxdialog/textbox.c create mode 100644 support/kconfig/lxdialog/util.c create mode 100644 support/kconfig/lxdialog/yesno.c create mode 100644 support/kconfig/mconf.c create mode 100644 support/kconfig/menu.c create mode 100755 support/kconfig/merge_config.sh create mode 100644 support/kconfig/nconf.c create mode 100644 support/kconfig/nconf.gui.c create mode 100644 support/kconfig/nconf.h create mode 100644 support/kconfig/patches/01-kconfig-kernel-to-buildroot.patch create mode 100644 support/kconfig/patches/06-br-build-system-integration.patch create mode 100644 support/kconfig/patches/10-br-build-system.patch create mode 100644 support/kconfig/patches/11-use-mktemp-for-lxdialog.patch create mode 100644 support/kconfig/patches/12-fix-glade-file-path.patch create mode 100644 support/kconfig/patches/14-support-out-of-tree-config.patch create mode 100644 support/kconfig/patches/16-fix-space-to-de-select-options.patch create mode 100644 support/kconfig/patches/17-backport-kecho.patch create mode 100644 support/kconfig/patches/18-merge-config.sh-create-temporary-files-in-tmp.patch create mode 100644 support/kconfig/patches/19-merge_config.sh-add-br2-external-support.patch create mode 100644 support/kconfig/patches/20-merge_config.sh-Allow-to-define-config-prefix.patch create mode 100644 support/kconfig/patches/21-Avoid-false-positive-matches-from-comment-lines.patch create mode 100644 support/kconfig/patches/series create mode 100644 support/kconfig/qconf.cc create mode 100644 support/kconfig/qconf.h create mode 100755 support/kconfig/streamline_config.pl create mode 100644 support/kconfig/symbol.c create mode 100644 support/kconfig/util.c create mode 100644 support/kconfig/zconf.l create mode 100644 support/kconfig/zconf.lex.c_shipped create mode 100644 support/kconfig/zconf.tab.c_shipped create mode 100644 support/kconfig/zconf.y create mode 100644 support/legal-info/README.header create mode 100644 support/legal-info/README.warnings-header create mode 100644 support/legal-info/buildroot.hash create mode 100644 support/libtool/buildroot-libtool-v1.5.patch create mode 100644 support/libtool/buildroot-libtool-v2.2.patch create mode 100644 support/libtool/buildroot-libtool-v2.4.4.patch create mode 100644 support/libtool/buildroot-libtool-v2.4.patch create mode 100644 support/misc/Buildroot.cmake create mode 100644 support/misc/Vagrantfile create mode 100644 support/misc/gitlab-ci.yml.in create mode 100755 support/misc/relocate-sdk.sh create mode 100644 support/misc/target-dir-warning.txt create mode 100644 support/misc/toolchainfile.cmake.in create mode 100644 support/misc/utils.mk create mode 100755 support/scripts/apply-patches.sh create mode 100755 support/scripts/boot-qemu-image.py create mode 100755 support/scripts/br2-external create mode 100644 support/scripts/brpkgutil.py create mode 100755 support/scripts/check-bin-arch create mode 100755 support/scripts/check-dotconfig.py create mode 100755 support/scripts/check-host-rpath create mode 100755 support/scripts/check-kernel-headers.sh create mode 100755 support/scripts/check-merged-usr.sh create mode 100644 support/scripts/cpedb.py create mode 100755 support/scripts/cve.py create mode 100755 support/scripts/eclipse-register-toolchain create mode 100755 support/scripts/expunge-gconv-modules create mode 100755 support/scripts/fix-configure-powerpc64.sh create mode 100755 support/scripts/fix-rpath create mode 100755 support/scripts/gen-bootlin-toolchains create mode 100755 support/scripts/generate-gitlab-ci-yml create mode 100755 support/scripts/genimage.sh create mode 100755 support/scripts/graph-build-time create mode 100755 support/scripts/graph-depends create mode 100755 support/scripts/hardlink-or-copy create mode 100755 support/scripts/mkmakefile create mode 100755 support/scripts/mkusers create mode 100755 support/scripts/pkg-stats create mode 100644 support/scripts/pycompile.py create mode 100755 support/scripts/setlocalversion create mode 100755 support/scripts/size-stats create mode 100644 support/testing/conf/binfmt-misc-kernel-fragment.config create mode 100644 support/testing/conf/docker-compose-kernel.config create mode 100644 support/testing/conf/docker-compose.yml create mode 100644 support/testing/conf/f2fs-kernel-fragment.config create mode 100644 support/testing/conf/grub2.cfg create mode 100644 support/testing/conf/isolinux.cfg create mode 100644 support/testing/conf/minimal-x86-qemu-kernel.config create mode 100644 support/testing/conf/unittest.cfg create mode 100644 support/testing/infra/__init__.py create mode 100644 support/testing/infra/basetest.py create mode 100644 support/testing/infra/builder.py create mode 100644 support/testing/infra/emulator.py create mode 100755 support/testing/run-tests create mode 100644 support/testing/tests/__init__.py create mode 100644 support/testing/tests/boot/__init__.py create mode 100644 support/testing/tests/boot/test_atf.py create mode 100644 support/testing/tests/boot/test_syslinux.py create mode 100644 support/testing/tests/core/__init__.py create mode 100644 support/testing/tests/core/cpeid-br2-external/Config.in create mode 100644 support/testing/tests/core/cpeid-br2-external/external.desc create mode 100644 support/testing/tests/core/cpeid-br2-external/external.mk create mode 100644 support/testing/tests/core/cpeid-br2-external/package/cpe-id-pkg1/cpe-id-pkg1.mk create mode 100644 support/testing/tests/core/cpeid-br2-external/package/cpe-id-pkg2/cpe-id-pkg2.mk create mode 100644 support/testing/tests/core/cpeid-br2-external/package/cpe-id-pkg3/cpe-id-pkg3.mk create mode 100644 support/testing/tests/core/cpeid-br2-external/package/cpe-id-pkg4/cpe-id-pkg4.mk create mode 100644 support/testing/tests/core/cpeid-br2-external/package/cpe-id-pkg5/cpe-id-pkg5.mk create mode 100644 support/testing/tests/core/device_table2.txt create mode 100755 support/testing/tests/core/post-build.sh create mode 120000 support/testing/tests/core/post-fakeroot.sh create mode 120000 support/testing/tests/core/post-image.sh create mode 100644 support/testing/tests/core/rootfs-overlay1/test-file1 create mode 100644 support/testing/tests/core/rootfs-overlay2/etc/test-file2 create mode 100644 support/testing/tests/core/squashfs-xattr-kernel.config create mode 100644 support/testing/tests/core/test_cpeid.py create mode 100644 support/testing/tests/core/test_file_capabilities.py create mode 100644 support/testing/tests/core/test_hardening.py create mode 100644 support/testing/tests/core/test_post_scripts.py create mode 100644 support/testing/tests/core/test_root_password.py create mode 100644 support/testing/tests/core/test_rootfs_overlay.py create mode 100644 support/testing/tests/core/test_selinux.py create mode 100644 support/testing/tests/core/test_selinux/br2_external/Config.in create mode 100644 support/testing/tests/core/test_selinux/br2_external/external.desc create mode 100644 support/testing/tests/core/test_selinux/br2_external/external.mk create mode 100644 support/testing/tests/core/test_selinux/br2_external/package/selinux-test/Config.in create mode 100644 support/testing/tests/core/test_selinux/br2_external/package/selinux-test/selinux-test.mk create mode 100644 support/testing/tests/core/test_selinux/br2_external/package/selinux-test/selinux/buildroot.fc create mode 100644 support/testing/tests/core/test_selinux/br2_external/package/selinux-test/selinux/buildroot.if create mode 100644 support/testing/tests/core/test_selinux/br2_external/package/selinux-test/selinux/buildroot.te create mode 100644 support/testing/tests/core/test_selinux/extra_modules/buildroot.fc create mode 100644 support/testing/tests/core/test_selinux/extra_modules/buildroot.if create mode 100644 support/testing/tests/core/test_selinux/extra_modules/buildroot.te create mode 100644 support/testing/tests/core/test_timezone.py create mode 100644 support/testing/tests/download/__init__.py create mode 100644 support/testing/tests/download/br2-external/git-hash/Config.in create mode 100644 support/testing/tests/download/br2-external/git-hash/external.desc create mode 100644 support/testing/tests/download/br2-external/git-hash/external.mk create mode 100644 support/testing/tests/download/br2-external/git-hash/package/bad/bad.hash create mode 100644 support/testing/tests/download/br2-external/git-hash/package/bad/bad.mk create mode 100644 support/testing/tests/download/br2-external/git-hash/package/good/good.hash create mode 100644 support/testing/tests/download/br2-external/git-hash/package/good/good.mk create mode 100644 support/testing/tests/download/br2-external/git-hash/package/nohash/nohash.mk create mode 100644 support/testing/tests/download/br2-external/git-refs/Config.in create mode 100644 support/testing/tests/download/br2-external/git-refs/external.desc create mode 100644 support/testing/tests/download/br2-external/git-refs/external.mk create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-branch-head/git-partial-sha1-branch-head.hash create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-branch-head/git-partial-sha1-branch-head.mk create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-reachable-by-branch/git-partial-sha1-reachable-by-branch.hash create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-reachable-by-branch/git-partial-sha1-reachable-by-branch.mk create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-reachable-by-tag/git-partial-sha1-reachable-by-tag.hash create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-reachable-by-tag/git-partial-sha1-reachable-by-tag.mk create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-tag-itself/git-partial-sha1-tag-itself.hash create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-tag-itself/git-partial-sha1-tag-itself.mk create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-tag-points-to/git-partial-sha1-tag-points-to.hash create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-tag-points-to/git-partial-sha1-tag-points-to.mk create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-sha1-branch-head/git-sha1-branch-head.hash create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-sha1-branch-head/git-sha1-branch-head.mk create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-sha1-reachable-by-branch/git-sha1-reachable-by-branch.hash create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-sha1-reachable-by-branch/git-sha1-reachable-by-branch.mk create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-sha1-reachable-by-tag/git-sha1-reachable-by-tag.hash create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-sha1-reachable-by-tag/git-sha1-reachable-by-tag.mk create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-sha1-tag-itself/git-sha1-tag-itself.hash create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-sha1-tag-itself/git-sha1-tag-itself.mk create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-sha1-tag-points-to/git-sha1-tag-points-to.hash create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-sha1-tag-points-to/git-sha1-tag-points-to.mk create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-submodule-disabled/git-submodule-disabled.hash create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-submodule-disabled/git-submodule-disabled.mk create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-submodule-enabled/git-submodule-enabled.hash create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-submodule-enabled/git-submodule-enabled.mk create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-tag/git-tag.hash create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-tag/git-tag.mk create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-wrong-content/git-wrong-content.hash create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-wrong-content/git-wrong-content.mk create mode 100644 support/testing/tests/download/br2-external/git-refs/package/git-wrong-sha1/git-wrong-sha1.mk create mode 100644 support/testing/tests/download/git-remote/refs-sub1.git/.gitattributes create mode 100644 support/testing/tests/download/git-remote/refs-sub1.git/HEAD create mode 100644 support/testing/tests/download/git-remote/refs-sub1.git/config create mode 100644 support/testing/tests/download/git-remote/refs-sub1.git/objects/07/cabc655213bdf7087d8dd50fda95124e935570 create mode 100644 support/testing/tests/download/git-remote/refs-sub1.git/objects/1d/f823cb8a6d1866148ae50a8009762a9c4c777f create mode 100644 support/testing/tests/download/git-remote/refs-sub1.git/objects/7d/52f458bdb0f9f5a4beb46fa82824421b8b988e create mode 100644 support/testing/tests/download/git-remote/refs-sub1.git/objects/99/f2e3e1cb15f9b52fa29f66d380dda061d917ab create mode 100644 support/testing/tests/download/git-remote/refs-sub1.git/objects/a1/30af1626bbadd64841b2cbcb6ac4ed0638ba1a create mode 100644 support/testing/tests/download/git-remote/refs-sub1.git/objects/bc/c81ba6e5bd8bf52c95688ae8d3e697e131fa23 create mode 100644 support/testing/tests/download/git-remote/refs-sub1.git/objects/cb/545facf77bbc5f24f95b6d503c338d10b7b717 create mode 100644 support/testing/tests/download/git-remote/refs-sub1.git/objects/dd/130f6f4629514adaf2e03407f3ed9344eb6cd6 create mode 100644 support/testing/tests/download/git-remote/refs-sub1.git/objects/e7/9c5e8f964493290a409888d5413a737e8e5dd5 create mode 100644 support/testing/tests/download/git-remote/refs-sub1.git/objects/f8/001e5780100962a5e30a25cbc4c9609cfc7bf3 create mode 100644 support/testing/tests/download/git-remote/refs-sub1.git/refs/heads/submodule create mode 100644 support/testing/tests/download/git-remote/refs-sub2.git/.gitattributes create mode 100644 support/testing/tests/download/git-remote/refs-sub2.git/HEAD create mode 100644 support/testing/tests/download/git-remote/refs-sub2.git/config create mode 100644 support/testing/tests/download/git-remote/refs-sub2.git/objects/0a/846af45c3e455789435f49f80d70e86b65b9d7 create mode 100644 support/testing/tests/download/git-remote/refs-sub2.git/objects/0b/32ebd8fc52cec991f18c94be980e85a8341585 create mode 100644 support/testing/tests/download/git-remote/refs-sub2.git/objects/32/d61bae693af7879da63b89a60d3ae67f851e56 create mode 100644 support/testing/tests/download/git-remote/refs-sub2.git/objects/3e/9b0a5198c64cea9c00f820433411e3b4d50c1c create mode 100644 support/testing/tests/download/git-remote/refs-sub2.git/objects/85/8f666af75b7c0dfba6b8be7eac5f196e7a1221 create mode 100644 support/testing/tests/download/git-remote/refs-sub2.git/objects/99/f2e3e1cb15f9b52fa29f66d380dda061d917ab create mode 100644 support/testing/tests/download/git-remote/refs-sub2.git/objects/cd/4d62ff218ab7b4a04f5bfdf800ace087af3ceb create mode 100644 support/testing/tests/download/git-remote/refs-sub2.git/objects/e7/9c5e8f964493290a409888d5413a737e8e5dd5 create mode 100644 support/testing/tests/download/git-remote/refs-sub2.git/objects/e8/3f6f805bd016b90acafc8702c52d778eb57310 create mode 100644 support/testing/tests/download/git-remote/refs-sub2.git/refs/heads/submodule create mode 100644 support/testing/tests/download/git-remote/repo.git/.gitattributes create mode 100644 support/testing/tests/download/git-remote/repo.git/HEAD create mode 100644 support/testing/tests/download/git-remote/repo.git/config create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/0b/d8ceb961c3b2b210f64a67d57f4b5cd669d343 create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/11/93ff46343f4f6a0522e2b28b871e905178c1f0 create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/25/59d83bfe937fc0412d96ed664663c9e8a99055 create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/2b/0e0d98a49c97da6a618ab36337e2058eb733a2 create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/2f/a37f6885d7eb746df75eccaddbacf3ac82799d create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/31/7406308d9259e2231bd0d6ddad3de3832bce08 create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/34/d1da713bf7de1c535e1d7d3ca985afd84bc7e5 create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/46/bae5b639e5a18e2cc4dc508f080d566baeff59 create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/51/6c9c5f64ec66534d4d069c2e408d9ae4dce023 create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/68/c197d0879d485f4f6cee85544722b79e68e59f create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/8b/8a7e885a041da72b1ee9a47c5b9300b172a9e7 create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/92/ef85be57d627f280d8ce3724452ac21c9a6452 create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/99/f2e3e1cb15f9b52fa29f66d380dda061d917ab create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/a2/38b1dfcd825d47d834af3c5223417c8411d90d create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/a9/dbc1e23c45e8e1b88c0448763f54d714eb6f8f create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/b2/4b387624edc78d0292a127c43cad9ba97c6232 create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/cf/0f4f85d7a1237e377a2d25b996518a877ea001 create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/d4/e2941d18a63535400476324ddeb7f40164be41 create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/e2/2695cbf976fed1f543ad7486a531c0af473482 create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/e2/cfe068f7e5bf4de32ffe1241da53abce9fa89e create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/e7/9c5e8f964493290a409888d5413a737e8e5dd5 create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/f6/476b879f65e956d7dedd5b08736369e9a24acc create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/fe/74231105841041d5f441e70399d37f0e600aa5 create mode 100644 support/testing/tests/download/git-remote/repo.git/refs/heads/master create mode 100644 support/testing/tests/download/git-remote/repo.git/refs/heads/mybranch create mode 100644 support/testing/tests/download/git-remote/repo.git/refs/heads/submodule create mode 100644 support/testing/tests/download/git-remote/repo.git/refs/tags/mytag create mode 100644 support/testing/tests/download/gitremote.py create mode 100644 support/testing/tests/download/test_git.py create mode 100644 support/testing/tests/fs/__init__.py create mode 100644 support/testing/tests/fs/test_ext.py create mode 100644 support/testing/tests/fs/test_f2fs.py create mode 100644 support/testing/tests/fs/test_iso9660.py create mode 100644 support/testing/tests/fs/test_jffs2.py create mode 100644 support/testing/tests/fs/test_squashfs.py create mode 100644 support/testing/tests/fs/test_ubi.py create mode 100644 support/testing/tests/fs/test_yaffs2.py create mode 100644 support/testing/tests/init/__init__.py create mode 100644 support/testing/tests/init/base.py create mode 100644 support/testing/tests/init/systemd-factory/var/foo/bar create mode 100644 support/testing/tests/init/test_busybox.py create mode 100644 support/testing/tests/init/test_none.py create mode 100644 support/testing/tests/init/test_openrc.py create mode 100644 support/testing/tests/init/test_systemd.py create mode 100644 support/testing/tests/init/test_systemd_selinux.py create mode 100644 support/testing/tests/init/test_systemd_selinux/linux-squashfs.fragment create mode 100644 support/testing/tests/package/__init__.py create mode 100644 support/testing/tests/package/br2-external/openjdk/Config.in create mode 100644 support/testing/tests/package/br2-external/openjdk/external.desc create mode 100644 support/testing/tests/package/br2-external/openjdk/external.mk create mode 100644 support/testing/tests/package/br2-external/openjdk/package/openjdk-hello-world/Config.in create mode 100644 support/testing/tests/package/br2-external/openjdk/package/openjdk-hello-world/HelloWorld.java create mode 100644 support/testing/tests/package/br2-external/openjdk/package/openjdk-hello-world/openjdk-hello-world.mk create mode 100644 support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/Config.in create mode 100644 support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/JniHelper.java create mode 100644 support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/JniTest.java create mode 100644 support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/JniWrapper.c create mode 100644 support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/JniWrapper.java create mode 100644 support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/jni_helper.c create mode 100644 support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/jni_helper.h create mode 100644 support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/native.c create mode 100644 support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/native.h create mode 100644 support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/openjdk-jni-test.mk create mode 100755 support/testing/tests/package/copy-sample-script-to-target.sh create mode 100644 support/testing/tests/package/sample_gst1_python.py create mode 100644 support/testing/tests/package/sample_libftdi1.py create mode 100644 support/testing/tests/package/sample_python_argh.py create mode 100644 support/testing/tests/package/sample_python_attrs.py create mode 100644 support/testing/tests/package/sample_python_autobahn.py create mode 100644 support/testing/tests/package/sample_python_automat.py create mode 100644 support/testing/tests/package/sample_python_avro.py create mode 100644 support/testing/tests/package/sample_python_bitstring.py create mode 100644 support/testing/tests/package/sample_python_can.py create mode 100644 support/testing/tests/package/sample_python_cbor_dec.py create mode 100644 support/testing/tests/package/sample_python_cbor_enc.py create mode 100644 support/testing/tests/package/sample_python_click.py create mode 100644 support/testing/tests/package/sample_python_colorzero.py create mode 100644 support/testing/tests/package/sample_python_constantly.py create mode 100644 support/testing/tests/package/sample_python_crossbar.py create mode 100644 support/testing/tests/package/sample_python_cryptography.py create mode 100644 support/testing/tests/package/sample_python_django.py create mode 100644 support/testing/tests/package/sample_python_gitdb2.py create mode 100644 support/testing/tests/package/sample_python_gobject.py create mode 100644 support/testing/tests/package/sample_python_gpiozero.py create mode 100644 support/testing/tests/package/sample_python_incremental.py create mode 100644 support/testing/tests/package/sample_python_passlib.py create mode 100644 support/testing/tests/package/sample_python_pexpect.py create mode 100644 support/testing/tests/package/sample_python_pynacl.py create mode 100644 support/testing/tests/package/sample_python_pytest.py create mode 100644 support/testing/tests/package/sample_python_pytest_asyncio.py create mode 100644 support/testing/tests/package/sample_python_pyyaml_dec.py create mode 100644 support/testing/tests/package/sample_python_pyyaml_enc.py create mode 100644 support/testing/tests/package/sample_python_rpi_gpio.py create mode 100644 support/testing/tests/package/sample_python_service_identity.py create mode 100644 support/testing/tests/package/sample_python_smmap2.py create mode 100644 support/testing/tests/package/sample_python_subprocess32.py create mode 100644 support/testing/tests/package/sample_python_treq.py create mode 100644 support/testing/tests/package/sample_python_twisted.py create mode 100644 support/testing/tests/package/sample_python_txaio_asyncio.py create mode 100644 support/testing/tests/package/sample_python_txaio_twisted.py create mode 100644 support/testing/tests/package/sample_python_txtorcon.py create mode 100644 support/testing/tests/package/sample_python_ubjson_dec.py create mode 100644 support/testing/tests/package/sample_python_ubjson_enc.py create mode 100644 support/testing/tests/package/test_atop.py create mode 100644 support/testing/tests/package/test_crudini.py create mode 100644 support/testing/tests/package/test_docker_compose.py create mode 100644 support/testing/tests/package/test_dropbear.py create mode 100644 support/testing/tests/package/test_glxinfo.py create mode 100644 support/testing/tests/package/test_gst1_python.py create mode 100644 support/testing/tests/package/test_ipython.py create mode 100644 support/testing/tests/package/test_libftdi1.py create mode 100644 support/testing/tests/package/test_lpeg.py create mode 100644 support/testing/tests/package/test_lsqlite3.py create mode 100644 support/testing/tests/package/test_lua.py create mode 100644 support/testing/tests/package/test_lua_cqueues.py create mode 100644 support/testing/tests/package/test_lua_curl.py create mode 100644 support/testing/tests/package/test_lua_gd.py create mode 100644 support/testing/tests/package/test_lua_http.py create mode 100644 support/testing/tests/package/test_lua_lyaml.py create mode 100644 support/testing/tests/package/test_lua_sdl2.py create mode 100644 support/testing/tests/package/test_lua_utf8.py create mode 100644 support/testing/tests/package/test_luaexpat.py create mode 100644 support/testing/tests/package/test_luafilesystem.py create mode 100644 support/testing/tests/package/test_lualdap.py create mode 100644 support/testing/tests/package/test_luaossl.py create mode 100644 support/testing/tests/package/test_luaposix.py create mode 100644 support/testing/tests/package/test_luasec.py create mode 100644 support/testing/tests/package/test_luasocket.py create mode 100644 support/testing/tests/package/test_luasyslog.py create mode 100644 support/testing/tests/package/test_luvi.py create mode 100644 support/testing/tests/package/test_lxc.py create mode 100644 support/testing/tests/package/test_lxc/lxc-kernel.config create mode 100755 support/testing/tests/package/test_lxc/rootfs-overlay/usr/bin/iperf3.sh create mode 100644 support/testing/tests/package/test_lxc/rootfs-overlay/usr/share/lxc/config/minimal-iperf3.conf create mode 100644 support/testing/tests/package/test_lxc/rootfs-overlay/usr/share/lxc/config/minimal.conf create mode 100644 support/testing/tests/package/test_lzlib.py create mode 100644 support/testing/tests/package/test_netdata.py create mode 100644 support/testing/tests/package/test_openjdk.py create mode 100644 support/testing/tests/package/test_openssh.py create mode 100755 support/testing/tests/package/test_openssh/post-build.sh create mode 100644 support/testing/tests/package/test_opkg.py create mode 100755 support/testing/tests/package/test_opkg/post-build.sh create mode 100644 support/testing/tests/package/test_perl.py create mode 100644 support/testing/tests/package/test_perl_class_load.py create mode 100644 support/testing/tests/package/test_perl_dbd_mysql.py create mode 100644 support/testing/tests/package/test_perl_encode_detect.py create mode 100644 support/testing/tests/package/test_perl_gdgraph.py create mode 100644 support/testing/tests/package/test_perl_html_parser.py create mode 100644 support/testing/tests/package/test_perl_io_socket_multicast.py create mode 100644 support/testing/tests/package/test_perl_io_socket_ssl.py create mode 100644 support/testing/tests/package/test_perl_libwww_perl.py create mode 100644 support/testing/tests/package/test_perl_lwp_protocol_https.py create mode 100644 support/testing/tests/package/test_perl_mail_dkim.py create mode 100644 support/testing/tests/package/test_perl_x10.py create mode 100644 support/testing/tests/package/test_perl_xml_libxml.py create mode 100644 support/testing/tests/package/test_prosody.py create mode 100644 support/testing/tests/package/test_python.py create mode 100644 support/testing/tests/package/test_python_argh.py create mode 100644 support/testing/tests/package/test_python_attrs.py create mode 100644 support/testing/tests/package/test_python_autobahn.py create mode 100644 support/testing/tests/package/test_python_automat.py create mode 100644 support/testing/tests/package/test_python_avro.py create mode 100644 support/testing/tests/package/test_python_bitstring.py create mode 100644 support/testing/tests/package/test_python_can.py create mode 100644 support/testing/tests/package/test_python_cbor.py create mode 100644 support/testing/tests/package/test_python_click.py create mode 100644 support/testing/tests/package/test_python_colorzero.py create mode 100644 support/testing/tests/package/test_python_constantly.py create mode 100644 support/testing/tests/package/test_python_crossbar.py create mode 100644 support/testing/tests/package/test_python_cryptography.py create mode 100644 support/testing/tests/package/test_python_django.py create mode 100644 support/testing/tests/package/test_python_gitdb2.py create mode 100644 support/testing/tests/package/test_python_gobject.py create mode 100644 support/testing/tests/package/test_python_gpiozero.py create mode 100644 support/testing/tests/package/test_python_incremental.py create mode 100644 support/testing/tests/package/test_python_passlib.py create mode 100644 support/testing/tests/package/test_python_pexpect.py create mode 100644 support/testing/tests/package/test_python_pynacl.py create mode 100644 support/testing/tests/package/test_python_pytest.py create mode 100644 support/testing/tests/package/test_python_pytest_asyncio.py create mode 100644 support/testing/tests/package/test_python_pyyaml.py create mode 100644 support/testing/tests/package/test_python_rpi_gpio.py create mode 100644 support/testing/tests/package/test_python_service_identity.py create mode 100644 support/testing/tests/package/test_python_smmap2.py create mode 100644 support/testing/tests/package/test_python_subprocess32.py create mode 100644 support/testing/tests/package/test_python_treq.py create mode 100644 support/testing/tests/package/test_python_twisted.py create mode 100644 support/testing/tests/package/test_python_txaio.py create mode 100644 support/testing/tests/package/test_python_txtorcon.py create mode 100644 support/testing/tests/package/test_python_ubjson.py create mode 100644 support/testing/tests/package/test_redis.py create mode 100644 support/testing/tests/package/test_rings.py create mode 100644 support/testing/tests/package/test_rust.py create mode 100644 support/testing/tests/package/test_syslog_ng.py create mode 100644 support/testing/tests/package/test_tmux.py create mode 100644 support/testing/tests/package/test_turbolua.py create mode 100644 support/testing/tests/package/test_uboot_openssl_pkgconfig.py create mode 100644 support/testing/tests/toolchain/__init__.py create mode 100644 support/testing/tests/toolchain/test_external.py create mode 100644 support/testing/tests/toolchain/test_external_bootlin.py create mode 100644 support/testing/tests/utils/__init__.py create mode 100644 support/testing/tests/utils/br2-external/Config.in create mode 100644 support/testing/tests/utils/br2-external/external.desc create mode 100644 support/testing/tests/utils/br2-external/external.mk create mode 100644 support/testing/tests/utils/br2-external/package/external/external.mk create mode 100644 support/testing/tests/utils/test_check_package.py create mode 100644 system/Config.in create mode 100644 system/device_table.txt create mode 100644 system/device_table_dev.txt create mode 100644 system/skeleton/dev/.empty create mode 120000 system/skeleton/dev/fd create mode 120000 system/skeleton/dev/stderr create mode 120000 system/skeleton/dev/stdin create mode 120000 system/skeleton/dev/stdout create mode 100644 system/skeleton/etc/group create mode 100644 system/skeleton/etc/hosts create mode 120000 system/skeleton/etc/mtab create mode 100644 system/skeleton/etc/passwd create mode 100644 system/skeleton/etc/profile create mode 100644 system/skeleton/etc/profile.d/umask.sh create mode 100644 system/skeleton/etc/protocols create mode 120000 system/skeleton/etc/resolv.conf create mode 100644 system/skeleton/etc/services create mode 100644 system/skeleton/etc/shadow create mode 100644 system/skeleton/media/.empty create mode 100644 system/skeleton/mnt/.empty create mode 100644 system/skeleton/opt/.empty create mode 100644 system/skeleton/proc/.empty create mode 100644 system/skeleton/root/.empty create mode 100644 system/skeleton/run/.empty create mode 100644 system/skeleton/sys/.empty create mode 100644 system/skeleton/tmp/.empty create mode 100644 system/skeleton/usr/bin/.empty create mode 100644 system/skeleton/usr/lib/.empty create mode 100644 system/skeleton/usr/sbin/.empty create mode 100644 system/system.mk create mode 100644 toolchain/Config.in create mode 100644 toolchain/helpers.mk create mode 100644 toolchain/toolchain-buildroot/Config.in create mode 100644 toolchain/toolchain-buildroot/toolchain-buildroot.mk create mode 100644 toolchain/toolchain-external/Config.in create mode 100644 toolchain/toolchain-external/pkg-toolchain-external.mk create mode 100644 toolchain/toolchain-external/toolchain-external-andes-nds32/Config.in create mode 100644 toolchain/toolchain-external/toolchain-external-andes-nds32/Config.in.options create mode 100644 toolchain/toolchain-external/toolchain-external-andes-nds32/toolchain-external-andes-nds32.hash create mode 100644 toolchain/toolchain-external/toolchain-external-andes-nds32/toolchain-external-andes-nds32.mk create mode 100644 toolchain/toolchain-external/toolchain-external-arm-aarch64-be/Config.in create mode 100644 toolchain/toolchain-external/toolchain-external-arm-aarch64-be/Config.in.options create mode 100644 toolchain/toolchain-external/toolchain-external-arm-aarch64-be/toolchain-external-arm-aarch64-be.hash create mode 100644 toolchain/toolchain-external/toolchain-external-arm-aarch64-be/toolchain-external-arm-aarch64-be.mk create mode 100644 toolchain/toolchain-external/toolchain-external-arm-aarch64/Config.in create mode 100644 toolchain/toolchain-external/toolchain-external-arm-aarch64/Config.in.options create mode 100644 toolchain/toolchain-external/toolchain-external-arm-aarch64/toolchain-external-arm-aarch64.hash create mode 100644 toolchain/toolchain-external/toolchain-external-arm-aarch64/toolchain-external-arm-aarch64.mk create mode 100644 toolchain/toolchain-external/toolchain-external-arm-arm/Config.in create mode 100644 toolchain/toolchain-external/toolchain-external-arm-arm/Config.in.options create mode 100644 toolchain/toolchain-external/toolchain-external-arm-arm/toolchain-external-arm-arm.hash create mode 100644 toolchain/toolchain-external/toolchain-external-arm-arm/toolchain-external-arm-arm.mk create mode 100644 toolchain/toolchain-external/toolchain-external-bootlin/Config.in create mode 100644 toolchain/toolchain-external/toolchain-external-bootlin/Config.in.options create mode 100644 toolchain/toolchain-external/toolchain-external-bootlin/toolchain-external-bootlin.hash create mode 100644 toolchain/toolchain-external/toolchain-external-bootlin/toolchain-external-bootlin.mk create mode 100644 toolchain/toolchain-external/toolchain-external-codescape-img-mips/Config.in create mode 100644 toolchain/toolchain-external/toolchain-external-codescape-img-mips/Config.in.options create mode 100644 toolchain/toolchain-external/toolchain-external-codescape-img-mips/toolchain-external-codescape-img-mips.hash create mode 100644 toolchain/toolchain-external/toolchain-external-codescape-img-mips/toolchain-external-codescape-img-mips.mk create mode 100644 toolchain/toolchain-external/toolchain-external-codescape-mti-mips/Config.in create mode 100644 toolchain/toolchain-external/toolchain-external-codescape-mti-mips/Config.in.options create mode 100644 toolchain/toolchain-external/toolchain-external-codescape-mti-mips/toolchain-external-codescape-mti-mips.hash create mode 100644 toolchain/toolchain-external/toolchain-external-codescape-mti-mips/toolchain-external-codescape-mti-mips.mk create mode 100644 toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/Config.in create mode 100644 toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/Config.in.options create mode 100644 toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/toolchain-external-codesourcery-aarch64.hash create mode 100644 toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/toolchain-external-codesourcery-aarch64.mk create mode 100644 toolchain/toolchain-external/toolchain-external-codesourcery-arm/Config.in create mode 100644 toolchain/toolchain-external/toolchain-external-codesourcery-arm/Config.in.options create mode 100644 toolchain/toolchain-external/toolchain-external-codesourcery-arm/toolchain-external-codesourcery-arm.hash create mode 100644 toolchain/toolchain-external/toolchain-external-codesourcery-arm/toolchain-external-codesourcery-arm.mk create mode 100644 toolchain/toolchain-external/toolchain-external-codesourcery-mips/Config.in create mode 100644 toolchain/toolchain-external/toolchain-external-codesourcery-mips/Config.in.options create mode 100644 toolchain/toolchain-external/toolchain-external-codesourcery-mips/toolchain-external-codesourcery-mips.hash create mode 100644 toolchain/toolchain-external/toolchain-external-codesourcery-mips/toolchain-external-codesourcery-mips.mk create mode 100644 toolchain/toolchain-external/toolchain-external-codesourcery-niosII/Config.in create mode 100644 toolchain/toolchain-external/toolchain-external-codesourcery-niosII/Config.in.options create mode 100644 toolchain/toolchain-external/toolchain-external-codesourcery-niosII/toolchain-external-codesourcery-niosII.hash create mode 100644 toolchain/toolchain-external/toolchain-external-codesourcery-niosII/toolchain-external-codesourcery-niosII.mk create mode 100644 toolchain/toolchain-external/toolchain-external-custom/Config.in create mode 100644 toolchain/toolchain-external/toolchain-external-custom/Config.in.options create mode 100644 toolchain/toolchain-external/toolchain-external-custom/toolchain-external-custom.mk create mode 100644 toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in create mode 100644 toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in.options create mode 100644 toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/toolchain-external-linaro-aarch64-be.hash create mode 100644 toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/toolchain-external-linaro-aarch64-be.mk create mode 100644 toolchain/toolchain-external/toolchain-external-linaro-aarch64/Config.in create mode 100644 toolchain/toolchain-external/toolchain-external-linaro-aarch64/Config.in.options create mode 100644 toolchain/toolchain-external/toolchain-external-linaro-aarch64/toolchain-external-linaro-aarch64.hash create mode 100644 toolchain/toolchain-external/toolchain-external-linaro-aarch64/toolchain-external-linaro-aarch64.mk create mode 100644 toolchain/toolchain-external/toolchain-external-linaro-arm/Config.in create mode 100644 toolchain/toolchain-external/toolchain-external-linaro-arm/Config.in.options create mode 100644 toolchain/toolchain-external/toolchain-external-linaro-arm/toolchain-external-linaro-arm.hash create mode 100644 toolchain/toolchain-external/toolchain-external-linaro-arm/toolchain-external-linaro-arm.mk create mode 100644 toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in create mode 100644 toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in.options create mode 100644 toolchain/toolchain-external/toolchain-external-linaro-armeb/toolchain-external-linaro-armeb.hash create mode 100644 toolchain/toolchain-external/toolchain-external-linaro-armeb/toolchain-external-linaro-armeb.mk create mode 100644 toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in create mode 100644 toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in.options create mode 100644 toolchain/toolchain-external/toolchain-external-synopsys-arc/toolchain-external-synopsys-arc.hash create mode 100644 toolchain/toolchain-external/toolchain-external-synopsys-arc/toolchain-external-synopsys-arc.mk create mode 100644 toolchain/toolchain-external/toolchain-external.mk create mode 100644 toolchain/toolchain-wrapper.c create mode 100644 toolchain/toolchain-wrapper.mk create mode 100644 toolchain/toolchain.mk create mode 100644 toolchain/toolchain/toolchain.mk diff --git a/Makefile b/Makefile index fbd9e57c..fcc7d240 100644 --- a/Makefile +++ b/Makefile @@ -786,11 +786,11 @@ endif mkdir -p $(TARGET_DIR)/etc ( \ - echo "NAME=LoongOS(GD)"; \ + echo "NAME=Buildroot"; \ echo "VERSION=$(BR2_VERSION_FULL)"; \ - echo "ID=LoongOS"; \ + echo "ID=buildroot"; \ echo "VERSION_ID=$(BR2_VERSION)"; \ - echo "PRETTY_NAME=\"LoongOS $(BR2_VERSION)\"" \ + echo "PRETTY_NAME=\"Buildroot $(BR2_VERSION)\"" \ ) > $(TARGET_DIR)/usr/lib/os-release ln -sf ../usr/lib/os-release $(TARGET_DIR)/etc diff --git a/board/loongson/ls2k300/readme.txt b/board/loongson/ls2k300/readme.txt new file mode 100644 index 00000000..f4bc1c5f --- /dev/null +++ b/board/loongson/ls2k300/readme.txt @@ -0,0 +1,31 @@ +loongson LA64 ls2k300 + +Intro +===== + +This default configuration will allow you to start experimenting with the +buildroot environment for the ls2k300. With the current configuration +it will bring-up the board, and allow access through the serial console. + +How to build it +=============== + +Configure Buildroot: + + $ make loongson2k300_mini_dp_defconfig (this will use rootfs_overlay) + +Compile everything and build the system: + + $ make + or + $ make -j4 (run in 4 core PC) + +How to install the system +======================== + +you can use +{buildroot_path}/output/images/rootfs.tar.gz +or +{buildroot_path}/output/images/rootfs.ubi +to install to SSD or nand by uboot function +remember rootfs.ext4.gz rename to rootfs.img diff --git a/board/loongson/ls2k300/rootfs_overlay/boot/.gitignore b/board/loongson/ls2k300/rootfs_overlay/boot/.gitignore new file mode 100644 index 00000000..e69de29b diff --git a/board/loongson/ls2k300/rootfs_overlay/etc/ssh/sshd_config b/board/loongson/ls2k300/rootfs_overlay/etc/ssh/sshd_config new file mode 100644 index 00000000..83b371e1 --- /dev/null +++ b/board/loongson/ls2k300/rootfs_overlay/etc/ssh/sshd_config @@ -0,0 +1,117 @@ +# $OpenBSD: sshd_config,v 1.103 2018/04/09 20:41:22 tj Exp $ + +# This is the sshd server system-wide configuration file. See +# sshd_config(5) for more information. + +# This sshd was compiled with PATH=/bin:/sbin:/usr/bin:/usr/sbin + +# The strategy used for options in the default sshd_config shipped with +# OpenSSH is to specify options with their default value where +# possible, but leave them commented. Uncommented options override the +# default value. + +#Port 22 +#AddressFamily any +#ListenAddress 0.0.0.0 +#ListenAddress :: + +#HostKey /etc/ssh/ssh_host_rsa_key +#HostKey /etc/ssh/ssh_host_ecdsa_key +#HostKey /etc/ssh/ssh_host_ed25519_key + +# Ciphers and keying +#RekeyLimit default none + +# Logging +#SyslogFacility AUTH +#LogLevel INFO + +# Authentication: + +#LoginGraceTime 2m +#PermitRootLogin prohibit-password +PermitRootLogin yes +#StrictModes yes +#MaxAuthTries 6 +#MaxSessions 10 + +#PubkeyAuthentication yes + +# The default is to check both .ssh/authorized_keys and .ssh/authorized_keys2 +# but this is overridden so installations will only check .ssh/authorized_keys +AuthorizedKeysFile .ssh/authorized_keys + +#AuthorizedPrincipalsFile none + +#AuthorizedKeysCommand none +#AuthorizedKeysCommandUser nobody + +# For this to work you will also need host keys in /etc/ssh/ssh_known_hosts +#HostbasedAuthentication no +# Change to yes if you don't trust ~/.ssh/known_hosts for +# HostbasedAuthentication +#IgnoreUserKnownHosts no +# Don't read the user's ~/.rhosts and ~/.shosts files +#IgnoreRhosts yes + +# To disable tunneled clear text passwords, change to no here! +#PasswordAuthentication yes +#PermitEmptyPasswords no + +# Change to no to disable s/key passwords +#ChallengeResponseAuthentication yes + +# Kerberos options +#KerberosAuthentication no +#KerberosOrLocalPasswd yes +#KerberosTicketCleanup yes +#KerberosGetAFSToken no + +# GSSAPI options +#GSSAPIAuthentication no +#GSSAPICleanupCredentials yes + +# Set this to 'yes' to enable PAM authentication, account processing, +# and session processing. If this is enabled, PAM authentication will +# be allowed through the ChallengeResponseAuthentication and +# PasswordAuthentication. Depending on your PAM configuration, +# PAM authentication via ChallengeResponseAuthentication may bypass +# the setting of "PermitRootLogin without-password". +# If you just want the PAM account and session checks to run without +# PAM authentication, then enable this but set PasswordAuthentication +# and ChallengeResponseAuthentication to 'no'. +#UsePAM no + +#AllowAgentForwarding yes +#AllowTcpForwarding yes +#GatewayPorts no +#X11Forwarding no +#X11DisplayOffset 10 +#X11UseLocalhost yes +#PermitTTY yes +#PrintMotd yes +#PrintLastLog yes +#TCPKeepAlive yes +#PermitUserEnvironment no +#Compression delayed +#ClientAliveInterval 0 +#ClientAliveCountMax 3 +#UseDNS no +#PidFile /var/run/sshd.pid +#MaxStartups 10:30:100 +#PermitTunnel no +#ChrootDirectory none +#VersionAddendum none + +# no default banner path +#Banner none + +# override default of no subsystems +Subsystem sftp /usr/libexec/sftp-server + +# Example of overriding settings on a per-user basis +#Match User anoncvs +# X11Forwarding no +# AllowTcpForwarding no +# PermitTTY no +# ForceCommand cvs server diff --git a/configs/loongson2k300_defconfig b/configs/loongson2k300_defconfig index 4a35c2e1..b7d1b660 100644 --- a/configs/loongson2k300_defconfig +++ b/configs/loongson2k300_defconfig @@ -16,7 +16,7 @@ BR2_TARGET_GENERIC_GETTY_PORT="ttyS0" BR2_SYSTEM_DEFAULT_PATH="/bin:/sbin:/usr/bin:/usr/sbin" BR2_SYSTEM_ENABLE_NLS=y BR2_TARGET_LOCALTIME="Asia/Shanghai" -BR2_ROOTFS_OVERLAY="board/loongson/ls2k1000la/rootfs_overlay" +BR2_ROOTFS_OVERLAY="board/loongson/ls2k300/rootfs_overlay" BR2_PACKAGE_ALSA_UTILS=y BR2_PACKAGE_ALSA_UTILS_AMIXER=y BR2_PACKAGE_ALSA_UTILS_APLAY=y diff --git a/configs/loongson2k300_mini_dp_defconfig b/configs/loongson2k300_mini_dp_defconfig index 39f32553..2f3f1ee2 100644 --- a/configs/loongson2k300_mini_dp_defconfig +++ b/configs/loongson2k300_mini_dp_defconfig @@ -16,7 +16,7 @@ BR2_TARGET_GENERIC_GETTY_PORT="ttyS0" BR2_SYSTEM_DEFAULT_PATH="/bin:/sbin:/usr/bin:/usr/sbin" BR2_SYSTEM_ENABLE_NLS=y BR2_TARGET_LOCALTIME="Asia/Shanghai" -BR2_ROOTFS_OVERLAY="board/loongson/ls2k1000la/rootfs_overlay" +BR2_ROOTFS_OVERLAY="board/loongson/ls2k300/rootfs_overlay" BR2_PACKAGE_ALSA_UTILS=y BR2_PACKAGE_ALSA_UTILS_AMIXER=y BR2_PACKAGE_ALSA_UTILS_APLAY=y diff --git a/fs/ext2/Config.in b/fs/ext2/Config.in index 333ead95..cd5915f8 100644 --- a/fs/ext2/Config.in +++ b/fs/ext2/Config.in @@ -29,6 +29,11 @@ config BR2_TARGET_ROOTFS_EXT2_4 endchoice +config BR2_TARGET_ROOTFS_IMG + bool "img root filesystem" + depends on BR2_TARGET_ROOTFS_EXT2_4 + default y + config BR2_TARGET_ROOTFS_EXT2_GEN int default 2 if BR2_TARGET_ROOTFS_EXT2_2 diff --git a/fs/ext2/ext2.mk b/fs/ext2/ext2.mk index 74c99bd7..10be3fb1 100644 --- a/fs/ext2/ext2.mk +++ b/fs/ext2/ext2.mk @@ -40,7 +40,16 @@ ifneq ($(BR2_TARGET_ROOTFS_EXT2_GEN),2) define ROOTFS_EXT2_SYMLINK ln -sf rootfs.ext2$(ROOTFS_EXT2_COMPRESS_EXT) $(BINARIES_DIR)/rootfs.ext$(BR2_TARGET_ROOTFS_EXT2_GEN)$(ROOTFS_EXT2_COMPRESS_EXT) endef + ROOTFS_EXT2_POST_GEN_HOOKS += ROOTFS_EXT2_SYMLINK endif +ifeq ($(BR2_TARGET_ROOTFS_IMG), y) +define ROOTFS_IMG + ln -sf rootfs.ext2$(ROOTFS_EXT2_COMPRESS_EXT) $(BINARIES_DIR)/rootfs.img +endef + +ROOTFS_EXT2_POST_GEN_HOOKS += ROOTFS_IMG +endif + $(eval $(rootfs)) diff --git a/package/Config.in b/package/Config.in index 48767d35..ff138265 100644 --- a/package/Config.in +++ b/package/Config.in @@ -1266,6 +1266,8 @@ menu "External python modules" source "package/python-zc-lockfile/Config.in" source "package/python-zeroconf/Config.in" source "package/python-zope-interface/Config.in" + source "package/python-pyftdi/Config.in" + source "package/python-smbus2/Config.in" endmenu endif source "package/quickjs/Config.in" diff --git a/package/loongson_kernel/loongson_kernel.mk b/package/loongson_kernel/loongson_kernel.mk index 65b18a7a..d55b9a21 100644 --- a/package/loongson_kernel/loongson_kernel.mk +++ b/package/loongson_kernel/loongson_kernel.mk @@ -8,8 +8,7 @@ LOONGSON_KERNEL_SITE = $(TOPDIR)/package/loongson_kernel/loongson_kernel.tar.gz LOONGSON_KERNEL_SITE_METHOD = file define LOONGSON_KERNEL_EXTRACT_CMDS - tar -xzf $(LOONGSON_KERNEL_SITE) -C $(@D)/ - cd $(@D) && ./loongson_kernel.sh $(BR2_PACKAGE_LOONGSON_KERNEL_HOSTSITE) $(BR2_PACKAGE_LOONGSON_KERNEL_USER) $(BR2_PACKAGE_LOONGSON_KERNEL_PASSWORD) $(BR2_PACKAGE_LOONGSON_KERNEL_PATH) + tar -xzf $(LOONGSON_KERNEL_SITE) -C $(@D)/ --strip-components 1 --wildcards */uImage endef define LOONGSON_KERNEL_INSTALL_TARGET_CMDS diff --git a/package/loongson_kernel/loongson_kernel.tar.gz b/package/loongson_kernel/loongson_kernel.tar.gz index a6e400bc97f900d4c10cf5b5651e3aa4c7858c84..ed59cb8aedbc5dba80c18d3fbb09bdcc78865e6c 100644 GIT binary patch literal 8816491 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 z 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

N_9Cr?0-YH80Aa*_{Z_ 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℞yl{GDY`g@y9f# z1>PPlvxsu%Am?^&3#L!N@T=T8|NiUy?zK2ZjFhDUW=F4RD)G_J|az^VC0Q zW%=I_FCks0a1L{^*-S;edI&we&1~%HuBpq1v1~l+KZIq^&R!Q+|M2s||9g4M)8;Yz z=5{Zsu$Y%0vaoaizK+3f<=me~vUBhDV&SpD!S$KC6CKoR^J7sz4|yPRA7vTnGxv~{ z8GhxO3TE(yIa+!M(8vr^tbnq zJ0p-oTk|^*D}T=4+gy9X%HX3CZ2zx34|~&I?tWC>lN$KOrgckAg73q!qr8gRl+3E; zxZ7QqjJQhZj4TV^OO|#0Eqn*uJ!FkfBPPy2e(gAse<`efVK6?Iv{1ii4)KA)eo-Up zZ^Gt9n9I|jxxk+n#dc-zoymP6hAoPV zVQVa{cMu}Rpt*P8K0KfJYh|)q$?G8OoHpbC9T&7wc{OYR>V;NKBDtp*%c!Df#rw61 z$cb6GN1JHeZ3O4AMjU9#2Ub={`0Jtf^99ZmO@GPkf>sCrh`a6qONn+Wvxq0dKZ)Ld zV+zZv-(X>d%b06j9&;hL%Z46ZStG5ZabyfDsfc0qbY9V1)JTG{n`EP8l%m%w%PsCua@+$TMmT`_BX6HJ3 z`MGP7*)4}H47KPX^8oi>iDFr=P@lG`@c+AfoILbT<3w%g#s+S*FxG|Hw$ihLBAHVm zB0HAlHs8gvo{#;-+zOskGG4X+F~a}lnnU=D7yl)#z@?3X&szW0GH-r+`4v2a*nky! z9Sl!YnW&|Rc#UFjiuokrG42=K4>0?=KibSSNufEoYlG^!;knUX`&LVdqH#OMxRvlc z+B~bNU@mS=@@7_6oo4q%m>dz8F5V$LQ=_(t1BCYPdBo48)>>p)J6+EU_MU7$D7nbwD8Kvt|>Kx@vaVZz3Nwvd_hybo>Nrw0Gt z!KjBkx@l~O+hiPtw$bl2YBd_?Au$*v9Mu{OuhAcrVclI)mzF$|5vP4DdNXyUteCPO}!JfBXM`$ zv`606X1^%;(AYgZY0w>k9KbkV!{bMd_;Z1yX3ZH%aPpk-a>7*+<6XynYPek2UcOQf z$?0y=vD~W66`O11h8-WB+Exzvw(i4?^EFsk=}xdZH@SkJJX+3A94+I=kCt-8|FEXp zQX7tzD)mRpl)9tkLXN>cH5}ck)*s!a)*aogYBQQc^QOdI9_Jd6O-_f!u_kN?$yX%y zEV+ye*%WlC=QTnehySF$kLb@-%2!(5%F0*h+&^Hly)XULg-(q4c~1~eUSc}TmJ?5I zq`!QEEpSQnLHpH6JbKA?3o9U8x^P6+#Pt(>t-ZB7Tls!BhCIsNM@+Wrg{Y(q!zOqqdsU3@)tDUf9CLk3zlFaCT^QpUzZtazwW*h!`|16MgXcnfh`AiT zPaAbNt*_c@GanwKrOblN{*QI(vv8MohvwMNy~@76ZUy-)lDfK;^(ozjK3$zGzN_CH zV`@yQJ?)BXNY=&+{b}SWsXq-4yRR9zLeiL5uZyz#)-+?yhhwx+z=wiS{!#yz8b{&& zHqawp^2)Ot=in`L?kp$$z`c!RpYPd#hzas6u6-_+;qD7Q`FVrcfD$@mkOL~uN4hcU z*|$@VH7|$yJ>pe!eO@*1kTw;4M8W5E);XS6rAFkQ6-(CHfZD5&K$uY6fk3m1y=T6L)?wPutQ^>t~D(_q=ep50~{-e@Q-#r?KO;-eOJAPXqf>LHqIx?6@X)A`4D62G6mB~6>^4~@4#9RSpv)^nooB=~Du zONjgic_dhdLo7=Vg26zukq06!kW&-7+6u`1KDk%OIUDi3l?@E{Y3+4+j!HxB2+l1g zeBYYi7B&$0zqQpqoL-mc{>$3(Gfvtw8|Hi5*J>*a&lythll5~-NbjtVV;S{FWG?j* z=%{J!h(F_`L^`eJFJP?C&9Iz-()(^TXl@XXZqwOiSr!|zv{hbosc`* zvu_qWL%PiKt@U<-2 zwVKu|cj-4$zCHh^R{1va{(D2^mzq}jh2(lM#+fED#tGQWyx+<(W*@uPkjJ!#es+p> zUjoRwk-bSHwVhs2V88)1D^R$!%+1`x2R(HPf zt7sPTEacd8=OKR|;5Y*f`SzD&TcJ0;$Zho_+={`|LDM9=sPM_B-$l-*75aSR&8=t9 zWoLA!!69cf>QDxs&n>j}pXnWq-oaf-k4QI%{R2LAs56XtN7Eb{>D=>NHHlT@e4+EZ zfzGA9*D{xn#dn@zUI=slxN@H%(Vypg*(u+D@*sde|-1~k!H8)>Z#v{tkouI=DWwBANq zZv(BD+NfCP9lz5?)!lC!&_MI)0{t5DYv;*~ep4ITn%5a-gI`R;WViD5Mk~u+Xk(S1 zvuTyzUmfc)<(j8ovaoVGr#;iVvf$h!klR>9O{zH0OwH1_aXaw!e=pkxVkD0EB`$uj zTJT~4ufoHr1)upx>3Amkj_fp9z!?2woL@6W-DJ0l9JV3(!&6s_{NdU?XPm-E+SI;} zet5sgF^ci*;{LLVW1OTHMvOD;Q-VH@e#Bw3G3@-1)di0Tv)2U6+u6bfdYJTNHUPQX zSi;#Dn5!N%0NXs#K~+?y zun7a_>36jbIDgghv<`aw1MptE2I?y?fXW@ao%d5GoFe4aP1O0MN&laIODv^8>H99 z8_FiEh3rJ{;9Suh+r+(5WYZQNwR=Zvexjhd?%Iuw&Q^Kb&mSXxH;4G$hcFW{Wd?xtwecp_zdEUxZgo82-NvGPjtTaG|NJKJMvj* zuhcv1=)CrfyTp+*6?b0Qhb;`gd(&Y*d62nYnIh%n6_a#1`A7`gIw^)l4v}&4I9Cwk zkW_g%9qaL=vW)43zrwHW8TdRBUV90z3CC&vB(D<9*x+N^T0hm`%OU;E)BD?`O^i6d zh2ODGOTk*F6HQb+hUkXWYE+l=Mo~y;AKNpkU9c&Xb?guW>ICC@0+RU{B9q{pfUf!d|%^x$n zmF}dIojcK+ISHR?X?@MFqt3OI_s@**DosRd^~C=h7tlHIcej#F??isAP0TH~vRrSh z$eD&5TJ7mOxgS_q?yw##x5>i7YnT=hpDJRBY#?l)lj=krbkx3k_ytaMzn7!7g1B4i z!R%c){MP9^!KZea%&QhI|AyD+15cezeVx0hTHHUMC!P>V>qYK`TJBRWyzUEHtB=;| zqqXMHT79(E90fIQBKNkj)*!wTSYNG$1@melpFbZuzw8(Ex{^nHicufQsHb4mQg~di zXD{Y`@5dZ-hMm~nN7UX}aO%(h3sU9CE^qDf5uQHBg5x~#q zYptDSIWYE0^;PHSc@7upxyK{h&~dY<&)l)3kG#3i`B(aXr@KPP<~tK)Y>0TiPa}Qh zNhkE*@SLHf6N&S>zq#!@@xZzF4apSjmGmpMHR?SZI>xV>yQ_u!|MEoJbL$bRBV4AF z8+y;QmoJm=+tkO~upa-J z-qZM;`~Ro-+iGv|a3L?aPx7RmzfIGI$oslr`yud4to_V+iKC13b^pEja(+W=h8-<< z-AyAt-FEN{r?8P3CzFAn13x#nsB|0ztiO%G3P!%%Q+`AyP(rm7eeTC4ap|! zh)xAvp4KK#5@UA{xsL&z2FANBPmbq3%9HB)ry-XQ@FjpBlg?hIJL6sq`C#CalS}77 zB+h~4&p7I5yi7D+_@WNao6d#8b51Kf$D4lzOm$rH=rHwcCYTZ~^l!AV_U_C?Zie9m z=k={QJRz?H*1Ix~_ZRa0VV>07FAXu9hW$pYcU6;=EyLI6+b7nC9R09I3D|G=QLHZj z|KS9GpI13UXWlxUUy6M=qVGewg*6iI6#h&fSXyP#vf%yK=jT2|`%m+GMb>)_&UX}u z=@Il>-%7t#2K}CCrQa=W({Dpx(mh9%DnAnJAEvb<{~+kOiT2oUS3|}sTXGk6HR4c4M*J1to_dI~#+a-P*Fs?hw2b?CD4t#`kuTK^z12f$! zY!fFZmlBL|_7j{5-X{p&#{qAW2~bD9iDZJaBoq8-$TF+7iTPWtEN>I>)gq#WRk5Nj zStR{cSM*|yuUbf-BYwG|7ps2B!m8tXutwsYh>!K`r@a}|L+sJO6tCKzj*9!VfzbPh zOTB-`^U*`W}Q|YpIV)LaCC^N|g-c2U~qWaw7Z;V* zhrX(oF_)2Z7kh)g>R(@=7&&K4hWBPO2>+u|2X{oNioE!B3rf|7DWSR9jQFI0pVFh+ zc(GS`GS+{`l(4;;w?N1LkL6y)_D<7MTK$~hdy`bDqzB)}3w}1MCX}Du&g|>@lq&0! zOO+y$`(_Y4XA(T$Al|mY;BB946L;Esu$^8DE7EzImhz@U+tI#%5Bz$zlAKn|IeP2_L2b@9~U21Z7fxl=E+>JTAeO!3|pxxpKo7wPJfv+WN?k8#r z)gCQX#XX*dWf07j-1Sz5-|Bd&QeWy*&XTV5W8VcziP#I0Yj~O1FVDCh;%bml3fq5=7@N6{o=1Iz{U*M;z^Ah8W2qf#yNVonb|L?L z&i(H^B7BAFX&x1%`xVWs5_fL!!Gx_w``GUkzgs@0c@tdU_d63}n62*J1rj#zE>PpI z@-a3f)CVeDzHqa0l}+fI3O~zm{~@#;iQIGUgS-g&VqLjh%rD_n3Evk!7#DoMF&cbx z{{fyisZ{aglnOdqvw>)!ph(mOKHk>=W&m

oE)B@ynLF_k;4S%C-qIvi+z~1W={P*)# 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

8zL?Z!2om*EGvA$IMMy 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

Gswr$j`Wj2s3f` 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

I^ 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%0DF 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
tm|W;<@PZS0q}{?1!Z&ld`W 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%0DRaar`_?|^^gRA;_#nn#iG{$X}X0K6X%+~op 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 z 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

Ot2m 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

|vZT8&E=-(>wJd!n*Q;G*NLrX0 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

!)gk~=zICT3 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%0Ap(pi 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%0Ap`GIVlPOP?&kFPb91Hf__8d?_r9(8YS7xw01c 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 z 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

&^85xQ!={b|L!#l(M%+{IXep89AVmQ{hHzTF3Kj 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 z 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�}_s43iqxsgqL*1cXkCQ`EKl&uoM#pY$s}E8# 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 z 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

#>4bR_Nqhq2JQ8DISWo* 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%0DP&~ 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

y5;7Kr~XQ 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

vJcY);8{`$98TTz5-ct*e~ z2;NLiBPr&SZ{Wwi(OUoYG%nRzac$@B$A%9}-bQW_zlx>uvW}&GVqc;vea|TzljdbJ zL?$aI-GBkhAyOU~F+4yz#jTZxJI!|~+2_(x9b|frVrXdrxZtpyF(~8Kji|kMuoKliNlT34HTiQ#poviN{y(su#S~ zTuOL^YMf39;NSQHGflY zq*?S+s-0%bmOrU5?rYi200NrAemixX?*DiJ`unQUVRrss zgRM*PCu*Z5mAa2Ne2ky1c6M5R+|nJ06>^RhW&NH{Cex!v*)cPHORUyrdWc{Ezp3h7ni41PK?spd-Pg7YDC`^(+GwRq>(S zm_EJzkfn>9rVmKxfGb;i*Xx%gk<}eDAPL5ZCB3f535`t$|PshI!CS-x+kL|s4=-GX_m9_qVi|uIeWS* zsqoPc7w|>Vr~xNP6WMh!;r>A7ce9-}+vTd{l3tfxEkl~RM(v!ief)4?f$|)j-mNLyhPR${E^oQaX8PcB%lN^1xe3v{ zmwMp7_IX<+!G3mUU_J6SG;|#&1xhEi>aKUl#C|i0ddQ?(Ysj(_3F^;4+@1=4oCQd7%z9aW#(2 zO6^MJZCzsxcYN;swv9^+S39pZ2dCO3fCK0n^&|mfun{5*rwVOf3K`XRD5=r)TnV2~ z*S(u(c%dR067%eX4-zS|Lnet=;Il4|>-exi5(K`S`|>?dDCzX>ziOTy=o9Ag z<8=A;NIcvK2wRrNLn6$AsbZisWFD*#|O};Y!mzCvW~k`+`Dv z*9zIEnTWKFk*mS<#Lvx{%)`e%SIy$LD<+*jt)&U4X*V9GIVM*wcYVuyuUs)R$Wl{| ze$Ep^FnbG%JJGJ#rhnx7!Y>7F7zZ2kNbpRU%uqd69%yJPb{yFi)<)2PzrvT~DgC$O z)i>ZAUfu>+PQ$x2t2XzX%5HWtQuq3AHsG>{tGU4fh4gOLd0{@E+EGD4^uY(A(!eDS zmq%Z~?N0fU%8xUTAQQWv?>K|@ek9V?MdBW8u+<_y&3ev2E8gBr1~U@r2AfawDE!!+ zuhOf!9yOvFsSS_**$&}tV@r2er(gI_*6`)5tasqglQ*lS9NExcSk$!XvM2KCu7^*M zgl)TPXJ*+~2deza;WRfyxNzLHoBzj2{kLE0)bp=%INQZ#S}6gn%uOian6%G36(uez zt2jBYE(=<_>`izG`OF=lS4qiDg`rY4-&0M2bVqtiY}j83E+UZg=KiOK634uJjlWi+ ziY&wdzNEtg(*7pW^s)xoC_fZ1+9G42ndgzyFT+qYY|m^PLm|UbGQ2FtOXh6cUC4W_ z9AvV03)Xdg6kc=5&)bj+&2Mu3ixJ_;)*ysiJ{u>wbEBA$iPXH5?|3yqf=H{>a|-== z@~`EaKnq3ZAjp-_l9y#`;@Npr`I9YU?_)l@^Vj*shXK!RNG~I!jfxrw7JB%Vngs?= zZ0IS|ISBJN%HQ4B*heHb&rS-kk)5i`uRo82{Jq}RLkR$toai}v6go-gslI3mH|fQN z+Q)iV0IH{d8!@1f-lcFl?F6p@Wta{_42}K0XpFzqRQx7g@hUBx8sZFCdV3a=?<*$q zCV={OKin^;YP9mbC65Mc&Wafif@Ui%{37IlhQj(lbK-fEf!OM}Z*aiGSOCOwCQ91z z*XP_Qe;5w#CKM;dS$xl2;BTwD<6Jg|TZ}L6Qll=LgHLdg#rxJ|_e(dU* zH=NAJs(H+;0ejkUO?f1oA0}igk{>JN2AXx5P##FX{)aF@mI*pk+&`bu4FR4!-}-Vu zV7T2Hd#%LW_7rnmR-pZnTwJYw6DgHKc~Wz=rCC_BIrtym^>&QrulDDHYJF_X#F6HC z+RWXV$q=z-Vzyl2rehP{2pPa{OFon0!Vknic7c^~3jhbp*JQT|NDul5z#ZR~X~3)7o3 zcngd~QnJ)qZI$_}OWMfQN;GUId5bBI!@hEE;fJ8z}DFwz`|mCc5o2O5EK%}e9%mgN*5f|+#2 z_!sW`zOUTyjlN)4?7u~z+SV7@V7Sw>|1eEzC&u#-Ee-$eJJ<>I`tXsQ$gmiK`Z)GU zc7<&nEfb*{S<%L^qgi>S*Bkvy0+ljcc+Bz7gLG48SU;5%=8V} zmw-xj^}lm?{|Pe6ysv+zqtG}0-Ie_ASPW`M;-xX$SYG5>>$4`XeIMKUR>8re?7qoU zK}L}ZIQEBvrn|L$=lzdQE{0o6Y?YpSY6b52ToppMn9$m<5{AMO2nuRq$Q_QSbyvDf z1o(S8wP)HkcMeIv%u8G$r90b>k|A z>%DKXZa)4?A;4Yu@$lR?x6aCpMTIvLchYDbUnJ=Ij3_8~)fA$(8SRi`3d~kTTtA&; z+?X5ENre zN!$|Ms=6<_lKZ2%t31p{?tc~WKC>9E1Hc2kz0;cCwtgtY`$@%S)T&b9$I5s5V&8hsadNjSW|PVnmijY= z$u0gh1F`^gaDwNL0I!j@$J;^5`o?uRIj1o`-!s}X&7(`J-mE0eoU5z7V_A$T%%2Y! z=rL(iid6!)I+3D(j;GpdMq{2uW9$ps1}C#VS{s}bI^@12hV=BA=MN10;jzuVeow-= zUL(24QDHjYDa(%l^p^|si*LrDU2B{Pz)f_f{gEkS(UXDuUW(&+DQc(^(TtMRd3 zf+=h>@0wu^e~-%I27{5{Mdno0OPOH6T>M~8l6|-8Gvd=|<-gvfG*>-Y@5RRYJsm}a zi$HiO>qUl$gcyfI+9*j@fa`Z}*2Q#p%^tuLHbexgbbgE9 zyczU85pk&>+i2nVN@@CUyYM*NUT%(?*cv{r1c;H$IV3>Gw}h77Y~r-1%g33 zMM#1vgI)dFW>q8KNWiE@E}5ICN{)urORL(%iQDgw6}y^ddWF@US~uu^AOALTOYiJN zymmb?6%-w)7N})t*pktimLAups zia~?6r`nOcZ-jRdolHX?wtpKJx^d}Ad^)U!{|}W%{$V|?^}i{?^8> zey?M=_?yM!pTx!!$92LbLQk0E3)LWu3lyB9h_;U`pEhuDlPeEV5e3D~&l4W&%y?Py zed;=rO$>f0&?7~N-nx#jNz28<=-cr3;LA*)x!rB3Hr?@qjjq)ivN0CBL$8I7Rqe5b zw^2SauWD|#hZd9I?E1^K;f z*FM-{IrRjPA?^0UOio3yc1WME@%RwUa$`O19$}m>6fCYY3s+j7L~-!vP(8_{#A@RT z>fWs4J(yH5>XKvdM;qE-C*Kz>gifQ2OVL}nlVh@s0z&=!i7#q@ig*QP2h(Bl(b*%| zx!dSv&U2|;T&_1hilAzc6!IR;^z#0rXYe$9@382R~I7bh!TwF+p@d(bKY62oc@fU224d;9e~Wg zsBxg(MP{7q>=k;{$$Q-|^;oDa1YmabD_4uLlTE=g0CE_MI79fhZ{Kb0yF zd9%v0UN)F{y(}%+y%_q9+byW{o1V}i!SVXnDVEe@P3Wah2{#_LeSHGj!w+2kdX6l3 z&Mpvuq`vY@5Ey$2Ycr#c@Pu&hyFbly1Q#n~P2&IzrFV1dt)GOGSLg>1ZAHdueBQvl z$q$eEAsyJq8Bxbh-@xl78+*rXD^7j3hdz(1f{l~@4Nva803V;^DZ8otwfn3BdiI5! zQy|&gz7^m}d-bo?eW9PrBx7`LWW&I{3Caf)N=n_!E5=5a5{E=F2YKS}PD zohC@y?kV>xHGv{(vEx4t&~~FnX7Jx759TME^V+6~P>r z<6;SM%E8y(L_gc$O1m3q;`4<0S-ri$c24@9udfZ+C_vxG7`NoClcvX>vHBPD-p6`e zyvp-E!E#^lDG#i4`R#O^5bH|Z&xT&|I)P6)#`56f1BBb`lg1D?Ew019D`hVK6t``K0xEd? zS!=x80^yqO6}%1?1oz8;Pq)Kd0S*IqSsq4Nu!Z%{)))8ED?NAIt*gj;gPE`^&4u_) zU!2KcaOIG@;xx@)o(#lCX}P{Mq3?BP>(1;%qiNKN=EZN$-BDPDMJJzI)O*3hU}9=O zr}yU6TEJj{&?^6{l#aY5pJPVyq>Lu~p`F10MvCdY2oeFiBuQiom+sI0WZ7A#0y2KR z_%+?UVHDTdci1c%wDe{0w|TwWEay;5a7@Kn1}h7~c6W1Ev}EopU9GOb)vek#Ck$o8nhnn|JdC`n;YWCjK>MfNnK@@}0f$D0TImKV@}F8kcYzAXCTqVFls&2*c=h zti}t(ENZUoVNtX$+S9+%&WHmmGrN(a=#yo@pm0A6R~2jGggPq4h;unbx>C}%PMT@# zTv>31@|`Y;%^hvg!wzS~=FVLWbDHE7HCT}pA22O{(_X}(>|cVD2+}dYfrj+WjC?)15N;GmtlOPAd>`?k!@!(&+RCCZu%S{;L$D;Gl_sjw2QsP<3dv^LKZJp!084x4k^LAo@S{ zT~;#!Mz<$64*@EEXOSYie~5*!h;&>O4Kvq76Dc#HcPBZsuGI>0-0djtoYtV24Xn5u zoP*LW3nY=T#y<`jAFNw1zXD*ul`$B|im432P;^B_+DvYu9z~nVhI1+f)#S9#SK>j> zam`C%4sRxGOEpfVR98s79Iq_^@cT7U=fBx00N7;g`q2;T$uV57tKJ}{24c&7&@iZZoUoO5 zB=<7w>S)iu6j-T^2pk1qloKme22jRGCW3t1~iS zUc5v<*7RFfLI$E5rRuj)+3-d7)8N79dR2498}|jSxbr7$_Y>6T2kKYzP1zTl;+5&h z=grTv$lib|^#%}I6Bg{v>oGlo4Po7(W*tlkLd%~W(8)pGW| ztSY5@%!gLOs@4`2vTVQ=#(v0j@9kX|!^#Gu4DYjiy;cKw3~sWNtEaAo2I?G<0&yxN z({GR*L3~!sW?K=#G2-4mTY*!Dnntu0P#<8)(H6i}Swdj9w@vuag|i!guD6PNkTVJYp$3~gCaX*keR(~9@>}#)Ic2$gLACFLkA&WS<}Q)2J!5NX149V zz-ypG{!~+^iPHl5b7O-O2m`yVa?+2%qdBu3{Xxsl%8oK z;987b@IrFoMJ%(wnaogO?(($ z_6UK4q$gm@^h=m>m17zLq)nxRxa;PD5n%^Ot{5~Lu_ugrtEGM$qPJr8%{WjOPA)8nw|}DrMjY3~2%JITkz;9h7(ioXD)Ig+`@mV98Bo-GTMWe0oPN=zc_RMPAe<$-w0be7~1? z9ETa@V9+R?OV2>H`KX3wFU%z^`R)CJ?%V7oLNES!jvt6+UDRtP%+{>-Zx4sKU2+WIy3~DgKJ($-80_WSOs^O;NI&x(rTrMGsAJnoL%S51ZtjT*%Ayu*cacs6@YG=cSC@H38|yFII)?#HbW{v5~Q>p zX_G7qdDic=pTWM(tl7XytL7=8bZM>cv$(55KUg?>7V#eRCTp{&*M72mwyyP) zJC(#H>uyvhQD~Aw0(jQrXZA+HVDkw(|1ScmY{AG^)5aXwP)l`Fbu`44Ml*}u=Ki5D z?o=4}f_`Hl`OX=6hWQh;p2*Pn$d;}XFRtaH4 zr&w$k4unwurr`LCOjIZF2Ht7KlR51>W>oab{~Q=6#=a2_$r>kmZZgLpn;hC2rmxcEe{k4rp@j`KTkeFdDoYl^9 zzU@zQqQS_~kYIErLb_V{Ix_vdYrg|7Vb3h)kT1skRUQV@Mj7=fpxBq#(?f#>te@eI0Y0Df4=lkDlD**II41%~flN{6g zi(yNj<)IulMa~FKX*-!_6mu|I^X3&uXiMql+JTLW_W%kPuOf)P^U5s!9vuv$AVeC_ z%QQ{nTc`+7r7Ix&`YSS@|7~EZbA9U~2ju;Fufs>4Gp%bj3a1jM#R|p2v8y`p1v+Yc zmMp{Kh%e0P<$L5>@Y$yB(>7_`*YgTBBG@wGm}Lzc{H)E#p?tQkS|t+6z1F!MZg`ow zqq2L&&CWOxV&_C}D>D|RhY_-Jf2*&E@$zpOz<3i-zW^TlO+Lm@z~x!=;9fB(s9tv3 zR`*uKcda=ib~LlX?Pml6ZKdDTkmbQ*X%#tt!;t}swmu;W_J=jR=fKeCZFEEwg}sm= zeWSM=bKpgjS0@wUL9TS_&n@lSuK!_&)z!!D^J#BJIVpSgpx#LbAifem&LEa9lmVq; zZbv5e(2-;L{VsDfL^A{-zF!uP;2Mri*&IEEaFwSpk55_*FG z`gH4pd~|(L!rr*9=N7p4kmC-aWE^)o;A-N_83(OW7GsgEB6B45KW=8mdjFl2SLmjS z`6PdhPu-)vk}z@)ma zet3-ynDNFel-!3FhKJ0ch?jI=-T-rL*LVR6`>p!i;0wS;a~G8xljz+O>awtSsKNQ; zY^we;wHsx1-kK*Vm(a?kI{VE%1w2F=au5Ezgf7(uB`;EnTGzrMgmjP_H%=;I0 zLwjZ8FB^iZ;daf@o_|hRm+RJZB``iDEfm65fT^rdc~>KL$@)JBlaKObswhu&36_N( z!ga6mrLyonIF(z9gdc|uSL)c2HYbpNQ`rH7#|tdXx(PRC0&%YdU9L6;jO-$b%(^ArZDZIZ!%e}NMGTUfO_rifio@__Y2ZS zv0wl?bOiPk1oYP@nsWKdE@3*vkMM4RM>VdnE|GMOGPB-lOJT7pWVetsZ)4GE@WFkS z*u2-e)(s{6(uyM1Y90};^y7b7S2tq6!HWxTaa(pG z)n;KP_>CRABV}ho^~|$EPgJgMT%7 zVwLo3u30#;B+aC+&dw}hIgxUlYjf=UW$lRiIli1@KV4E@XSy5z49(yAe(Q>mx@cJD zLETc@PR^R`PiP?vUfQ~e-e7xQ#$BdUX%fLP;K~5~9(-uzP!h*1Ts+;Tp|7{jl|ycR znPiy4cS#k8n}k2C3@0pplBuEMovA(QNj5QZ9;Kkf7_^jT7+3MVMcPfJhQ8xS!WVN6 zFY_4a1TDSAIm7{RC-|Ny;3&`XKF>(8l@Gm@<2MD(`xYYXFvAvXi{ugbhR)5pNsM2R z4dLHCBgfYmZ{0LF|15{hpA3373hUm`-+^zUSZf@Y*fC)^-Ui7ZVEQtFn7Pb>Z`S2f z*5!f1^IzzX9qFTfS105+4e!(+`FI93kx!4g3hZ}r=NCcT_|wa6V->+!cT!v8vK1IJ45fpKE7;II3%!t&T2Wl+h1hI(M>|;g zbq&bGY_p6o^aEcol?!e64raf{4lw#w8D_MaQxqy-Q3HttU~d<^Y)j=B_#KE5KheTJ-#NISSY``-+9 zD2{e=os{S_)R@T6oAqLEAwodl?Cnu#`)5CIiVKT#huP5HD=%uZKTt;3=Ws)LxS4e{ zKv?lj3@ZaJ^`Y>Sa!X5Fzs|YG&oNVF2(VC3*Y!*&g&f0fc`m)Md$(I zDoYv;8M|V<48u{!ZF5b%!>zcT-qme$2ce&|!SYKMgwa9&U}#93T-ZN7jmIosqlnOl zzgVOM&Ygq2a%O0ZF-}D)j#^=_B}`a{Nvjf8tN-kV5xya5|6JR}mPqLGNwmb!I|Z&B zrt|4TuiYCVUe0urZh0SnX&F3$3@|iDz!7_w#h55-IYSFB7R<>L%*hwrpQfb~9vD@f z8qDTw`7bH6S0vV|h2trjhhgq!nM7PY8>4|aC2WzpKP4m?xj$)Sta4mB1H&|~KOzJ; zv%!TcX2DU_4wpyRi++a%j1<7e3FTdzW6gzMS&zV{h;D=3pqGXpT>f-i7^QvhV@VgJ z-MnM>y6^wd%|(<_QoZ2gSHN*bz4rtNb+)QNWqEisoo4x`udCnv>$t$L+;55eEBJbk z{~_`#;vc?cR=wWe_0%Gt4?D&P=~`&5oqHIw8@9(kZAjW;(!}r!)%7W^grbIe)6VMb z+ut&RnZ*))g9!0Qx9FIwr+~UD=dlMDfA1>JxyR~Ozwv6b-TX|T5IVP!G9`+L3xx2+ z3Y$_!r17x zk(aKpupB)Bekw*v0jJyzEFFFP`Jc5*X!l|3KjP4nSfhRg`et)M9n&>l7_$vA_+R^-*@HL`u+3cyfEDnmSzI!Y5AB9)_*h&XLdpW+ z&(rVsuZ?v0HdaM-IEt6RRiMmX`^lV}tFoDXT>HT}9Cvdn5fc6{ERNs9Rg>2JYPm^9 zG*OL9o~-LZp5O#)59hZo`-a3#hl-`wm6qiHVn*UKZ&UnE_9(hpBoxsDZUnaT2@!`+ zmS;VHGmq`&4yFfB$M^J_s5M`odve8bcliP?hFfl;xc?kdpX(}Eogl5okAmjD#`qB> z#g;K|?8SG#yHAx+-QB%KTiW3U&?al$$E_dWwI7WnR~b~QE#?swTYo@juYW? z)Gac%IMW`xvn9VuWSnX0;~?aJ>aZ5O{984McCg1!wk}Y!;)taHUvH^2N6vC_J{#d4 z{QXqKQeWNY&md8IP^Hb-yx7<{e9W$k@itg5KAtsSpv{L&67Q5{I$wX9rQ*< zDFT%*J<>OJSei2&9nnO7phxF)f1p9j?CbD0#iwAZfpiTY{6`k4F1l7|*ns{gH1^T- zmFuSsh=z}UUn|2LJ$L?B2g9al$--(`rZ^WB5Xk4hhu~jDif2_C7xVbV+>DL{FQ#tM z96Dy>Kj)S72gBrxxp^KXT%ubt#k0gUPa6daO5{9Z+t6~?Pp5crDAaIU4X{xNcQvDU z0bvpQjbAPKh@jN9Fr`{fo!+xDBmG|==r)Y{^blEkA@9EgHmYaET^<|PjH`_a& z(pZcTEXGLtnB`{PO@9!=wQCtBBHQjN7I`$(&Zjthb(bqt_#3C1orTXpA$IIGCts09 zQXOKEZeumkRlRiIwzI(><`s{N?Ut>ntwx#*xFr2PDUk7mA0x>@m*9DCi}EJDNGFjU z01rM_2nCTkD@*!2`fVWNYR@v184P#OoM!TY-^!Hv z0XQ*s$m=ny=m1)Z1#wD2uw#{f{6($txE%JJ9xU_sm2VJpc9mk47t(Xj%yp3*U4%ui zRIp%X0wb<*Zn@UM^v$!mk9F-b=A1JRoYFeC8Y0B2-XXZW<{tj-B-8<0+5ar+#O)Wu zNM~OjI8VZx`O_8*nQX>4YYLIZ5`gZtH^yaEUptM-^^TM9dW#;0PODP3$iO$f>#oW^ zfU56z(KowO`Nrq>VRYrHi^m&s*!B;3r-kw>DlMHEqjJNAzx`GIE(4?8pu9bIZ+jsk z7Juazys%!amA`J`ESojEjBwZn42aqC8}Tu^irQ%F4A`kHankC#mbv}uHMSaOU(RK< zKmYM|EatZEW5d0JiUz!^BXP!b$C>M);WB{Z1YyFIc6%IUC?RRvIRis<3Z;e~fPo`uXe-%4Z^>;`J zEv;4t&vRZTXblnf#|ES3j#7v!=$bxesoc_`kYBx-{}c4Fd49XrA&kyz z^x1V@*LdtE*fXbFVR*QYQ^`pa2B?fpC81bdWTiLSto7~YGWi0QXeH0aNAygvhuM|mHSQ6LolwG7gmekEz$f2mTMA@Fl# zdg-lebd*;ob>Zb5_#-M2@X*VxI{n_H%15(a<&0r|B+C?^vY7yPEcR6I6=%8==bN)4 zQ#6F(ZD_5aHrtJWk$H{sUYxe1OtY^MPHMHWjC)HiJcmnfhIfqR*4g?Z_E9 z@A7rRDzX=*T&#v%H=IY=fKH(cO4$%Zp_ymBdhbI4C+vjQyQ3_{IG+PgjGVYM3>)i( z??qsGT~W4RFLe+MkCI4hmryMr_i}@fi)fG~4L`oDr~ZlSDlK}yfj1m|pO)rp;(z=Z zzwBAjwJLP;$1ep%SmIM130lo3XMW|3=UW==c1?;|OyNXtUZULs z%s5ASUT_6PXV%xPYZK#41Qi~o&ai`LuFu5Mjju=7UCM(Mk#_QN14|kD-mERxJ~oWh z4D@pkUei8+h&F|2C<4FEex9LeFUt^__QGCC+&zLs`ywO2rQN(RJqC+I_{n(rFmEsl z-l2Lg4s(diq;vb@UbLZ+@LX%1P^JncRKXBM5^KICQh*nz&h^hMN}lmGE^$$2J)o)M z$U2qPP|2sZtS;bQ6AP)~?>?}h8hF>%TyPfLS~FS6Z-f0Wbyj!UTsqG8f+0r?(v8jW z?VK7UEV40O55Ah^er(NhCC{JBeYGjpsxF?#eVrcR3DeeQXxNZ|jjk0EK~2rdh$DQx zfgSZZ@6c)!jD3q^i3!hd+;%gFjupOfweBCn19Qsg1k0x*oL$IVm9LaJo%06yhhOq$ zEWInwh{joNgtxRiYgqkGK4H0bE{l;UX#M1LSNmBlzXg(uVg%+nFQvejlLap3b5~G} zlA-531Da*fJO7jr?GIats?EEHhQm9gMAhe6Tt9SKqRBfetATYMi8{AqcI0*3^_?UK z=%o4uG#}|xbhq}LH3q-9B8NzI#yM|#-h#D7F7f;S0y9Zllg}Gb<(y6NVn)A$OC2m5 zZF}dLzfzUVPr@1V_uF0n#PeYNl6$8H*D|f1vRKF;k@f(DVlDvR^TI-NK~U6|?qpvJ z9l!UwkDC7lliHbA&8Oc_z`ZI|PJYK?2l%K@_|7UrG(kA%gywXn-*Okz3;M<%2SP#=>5Ix- zCwwV9j2ApHMk8qYnIbq?hp}(#H4$-*ctr1Ckl22cS|~Z&?dOE=zY;i1VhtSKJ+vEQ zsS!DBM5z<0Rfdb&VaDdj(aep{hKbUf@d;d;!ssQ*@RZ>$5o3dYoNKbi)drz_+yYrk z>XV*A5DB)*V4wR4FzLj9%wS{o!^|IEcjISbE8oLI;K#H#HxY#kSJ3@<4%cQDSaoMk zW|d;`#)>2O;b2qw>1jD0sh*G4;Gv%bkLTa)b4xURol3i&O7ln zKUhha#ff351Z)F&eO9bMo|UC2adzOWHQ67f;@TEZCTO53UR8Sddj5ryO;$)w`ATAts1fFY z#7X0l>i@UKXP40G+L^F*eY}NZMwK4eB*$7(z{zDI>!BhotVwJ(_(aWITA*GPi8__Abs zB55X39i>HyW4Q>*pEv+h|?d5y|$zFb)k*GYR1K~>Pt^J6%QO=ebfcLY2_ zfus!evyiY;Urhx*OCt=$MNgEmQ-+wgnoxrnSZ}{V25{!yxg0S*_pm%R0P6xtBZ6Lr z#bHqmjVppl4r*wszXDU=`nZ^6b`F)oaW3s#>dgoF;W-MHEHXph=rO`P#HvFKdO~K} zZ$qNa_)FH(N4Px@2hO=m z#lUDlsnV|NqQ+x)8Zr9@Ue`w6IqOct)LOoJljl-2zM!CLJ6q2eaZhPb{U<_~UPL<0 zkie=LPTO;W6!5=1?VKfzc(_LpTp?9O_89s-cuEO-!p}cw%6Q8m&dAIrzKivw@+F)I zTI^(zkp2bug%hQR!=$+^|M!=#Dj0?L&44#|QZeM`t~x&luJ+IC{aeDe`~&G7b;`Gj|anS~a@Lt0-2E0`<#*8&S%+*GIaxj-|{S3uA4-?7~MxmO#l} zVkLo&l@;UnO9tSEE@Cq*g#K7;C+h}Uk11J*R30j%w>I&*L3Rc zMAn)$0mM}Ziy11=)gagF;TlW-49#795fxQ%xE0!d`crJlXxwH27@S7J^JAQvU`d{N^oRICxVm^FFEbZGe48uXG z1{$v0@BcZz!%IWpni~T;R`LeHI=+EAQup4nTE1Fc)DUMI)Z-hE;5 z?eT;mu;;#d8cODL=!a5KNQpG zMUz+1Eq|!kx>fhmIv_XUh&Q`7Cp7VEt*2>$b%yF8qCP}afIkX3kNRR;p zb)InGZ~*xgnGY&<9eR(#E^n1KM_uplBkA#7G#hs!Dsdj!RB+bVev^$YPt;f)ab3)N zI2}k~)v5;_uM2Z!9%P@0i(w|ZKLN~1o_YDn2pE2zJ^OI*Eg+45@2!3LAU@$U$_<4O zkp4g-5=n~d!?2LqqynA&RF>96{dmxKN4Fk376Q<8ku;6=#g`jrosv*i#c#VwQE*q4 zNEEFIEpjnU3&dWb!ffwUn{#m4SOG^al~ut5Rn%ax>+y1{pU1}+(VpkpDWhXExY=^B zTo#1MK?>M3eUE4zx%1v*^LgY8gDFb_j|>2K(d_I~&)cQm+xs7mudeJ~vRE$jjV=BJ zb<+(cn)-M6?Jx9O`2!8D^`k>hV}G1C)jMD+AW*b_(*2Zqr_+RE>qczZNz-A~?a#^# z{mQ|?T_I+<^y7ImnfjML+m*bsD!|uSw7zW}OV>>94Gtg*2c3>=P<7v{`8Pl9xO>|d-F2cX zRBquP`diHfPWKv^^>xyU*N566S|FD3j(gEgbY4UfMEMGm4pv6aI4I)Y--Sb-f2jHa z(wz0Aa{0v0yqzFNhG#otSouWlEhY!bnKy|lhSx=l-xcdzUQZ_V>VAka$yaU3ozS4KLTgEl#kwa9 zb7cg>*#)6+Effe4lMhG5(%wMUr>X*xndQT^OWyOJKThVj*~WbwO?k0G)7+}-23M|Z z+e)dyh%k#0W{4IzHPul@ReG^-%v&Lj^gX6-kf3Z7GFR-gyYjCO0x85NJ@FrYe7^(>K-Bs=gwmWldlD1aT3|2t}s-Vx*Posp=(^4zVOm2T;utQp*+fNw(u{n15tK%>vlrV zjXFmBHmj&_x9#N^13b7l(e3nr6?>{Sp)?{0yX$HWpxA6$Ef5$VzJ{yU$23a+D)L?o z9kiZ*^KsR8k~WX&fjHQkLD9Vlp-6W8T+QEoS0BQV=0J(X2p7S z=>f$9txs9Nsv$CvUb_!ih$3F|HGWX|uRwq{Wg3L6X$??!=yi3I?z#LEB6zoigUj5| z`Gb<3J3bkZ7qu+7S(x3?NBf0SDE0g540@iTfk>}Kb|uO)R}ATi_i#gGT;hpr?T>Ps znH|v_5`Ha~;OmX)KIm@%A~VKIZifGGg`8RR^Z8Chz_Pppc^zMV2kmFf`{WzeORn1@ zj!r-t$Gf>T2;^!c(>Ec1;V!!r zpW*>3%e4}OR_l9xplD8O8zGU3^}V#zGX7Z2@Jln_OC}rX+S@7f;EtQ0!*q98-hs7l zkD%KBitZ4?q}v(VUA__YWxlE!_5O!=ve#*~iM_u#)1h_~xRcHj7PSWphdl|@F#hd@4!@lEbX0-+&X|Feb=atY5D{A2|e;nTOCGng=MXXnjd^qwJt{J$>z1uL&)dwQRn zos?~DpBIS_-Wig3EiA6Hog-XUZahytwKq2G;>6ZAuo?}pbyMV%=``uN*>%eK*C%{y z`6p`guJx4;#}a-AN5?I7t%p8A%Pl#80iQ-Sy8)=az`U!mQ=2l&f5hJ%!P2nPxZJ1A z_z&ZR$ld~q_OO##n~(hQgfW|<13wNP7mH~y2>Zu-Q3K|ncZvop%RIJcTu7PaA*!K{ zJeRh$(obOY3#{wPrp)!`+*Zf2wWgOq`ZB;PQzT*TpOIH4Vp!}P{-3Q2Q92#mw1_I|tO=Xz+eGKGDNFvV0eR;C9DojNum4b+vK&S$AO+LtTyp{*}naLUz6jG(cLHQH(wh`Br+ z3;+pZ1pfm>eyaE^Px`4yXe9_BY_*MwVzZgpy!$Zax{Yx))9GA@KnXB+p*ud`cBF2(qSwb+(GVo9pA+77Tp3{NpHbz zk@#(IW<(S3#?fkd+|@0M2L+QM3AV|q?xz3ms=rI~DSD`=YNaSHgvrr}MdEg0|2l!s zVNz*~o>~QWl+tPZQ@PqW-LA?znIq=)lBB?&rDi|SCTW|J23=cUY^%St(PKfVB9zW8 zHDUie2;@h|V8|dlEF=R1#bSE4l=TrFvq47t!$dEYjaPFT0wxvcq=cEKQ_$o<7|1Wmvi%;Way4 zlehaVD3-p@Hj`zM5vA&yV8j1mTp{PNLEYVA*LV&mg{c83CN3MX+bz#GVXCj*e#w_t zRUPOgc(SQ~AmAO}KcBRJODt)}8yDl_TVhdOob%s9nUyJ1SIY5`haGHs4FLzUetBOf z)`Nb8QD%>~tW7Ep%!uSEwRqC`D2K@!ZwMZg=}YIcFe%RyfExra`jw&IULbKI_`=zNXDYiw z-jgh!lkiMJGi{Lt@t0>w{$&;m1HxAgax_-$jM=9oIm!|B+A*9BBN%gFM-d)Ay^TY} zAGVNs|C0NNj6ciql3FYmhZdetTt7AV$b32bQuIW}((m;`=78!qNMVO*aHwhsoZtLe zN79ZGk6;ip_V8XTvP8Sj;bd!@G5uF5NL=opx7Okw+eqh@)sc>NQ^?g2?7QCIBf8>% zffm>{v6Vw^KM`~S?CH;LKLp|xJ+CKJJ+D>h8>9{somT4sxh0(eT9sjHy>u6sLJpkw?uviHp8~?dA}G} zk>Be}#}+0%u$?G2ptkD_tTT*tF|?BhrcSEst(Cl-^Le)e(wBA@)P)Bf zVLD{R&KLp#gZ22$NEX1kR-Q*2@YLRc7nDVgRk8kb-p9*-|4y)JVDLu4PvY%9NDJH~ z+xK)`wV9b}{*6)4jtVkGbO8Uoo)rf_w%i7D-UG09_}e11_Mg89PWJ{38rI_Hfqaw( z+hhRyC98aNn(hL0fvYwcq3*YHRx|X*B_DQ96tXG(`M(X62`M^D6^}~M`_M7cOE?93$f zOJq^1xy`!7?}5g)U2-J*F2g=#T0uoK5YJ37J=kJo@7lZLsPf#F35{Nfwf-w)CS?!x zXH6m#UizJ<)bM+Zr|K2c@jXoz-W4p$QdYvSA9qn5_K{v7JEwRf+3M-Oki#QIitZK4 zHqZHj6C{5*rr`~ZoAg*JVD0@tFg}Ta5?76MB_r=5JQpjv1oTiy1c@)DNSiDs8*uTbm)8ut-3$5INE``%Ibmor{?AhRm@U3j zi`Sk0EHR)=+LI?aX5`RRxwP8a#lk5qe`t>Iqe@tdPC1Mb7*Dx)=-;T`oCQV ziB1wT1{M-C73Sa=RgH5r(8eeek8r@cvKz*Wq%>Q9ZQ`)DftEViemWm=Bld7bZ)7>h zm|i(D^K7Ny4}3M8p%UuqPM=B`)**B53e0+PK@vopTVfM4ZB)lbLrwe3^dT`hyO4vS zc+Lx@+!zA@z-Kl-Zta=%y8~-iVWGHPlF1*FI+NPQ^dlDVh?=0Vb)H{?`P#2=qV&J- z`sJgHUacDI_?oZhTq=jN_gm|G@8+S(fXwAJTNLrf)fWZQr^J-o;T?|Wt~ ztBHA%k)a73%xDTd*ywU8YDtfQA(9LuH5F~JwKgo@lp*Pfd*4iBDc3vgcL0zqM_y99 z(Yv?F5-3}&3)JRMhEWf8_6NG^ppBptRp@%_uccRf#5W_k@LBd4SKz8Qc(}^fn(J!z z{EjWtJS_Z)2LFAUv9u|{oj-S(_*PFtG9g+YPoE>@Dg z$Ke(uBFAlYS%KeRJsnmB6THaQFRh;4sg-W^a#fgkYmM)GbS3L=MeD$!%p*o`(A}V^e;kpyoga<(cRr}7 z+&%9B7)*V)RQBE#>;LF8uW z#`Ta&g=OqU0xxE>qgGQQ{46?Y(fw~8zv#%)5S~@8cQMiU%YvSo0RWKSZ~hhwI^-9# zA3i_yq;D*cjmJyU<6?bm{ETWYqkoi-{g+KS%OA=6Bgd+LM0Hj`cAPTkn1oh)d_XK5BcTHx@CQEzVod_Ui{8ko5ue{nN81~5(xzM`75Dzd3P2LCx#Ue+G_n_Q`Fz&-_~871IK z-+V)rWge8I`YZ9N`iE|1PVr#^E^jhhm*(ef)B~xcc+Gaf8}JOBz{XoGH&bO+7`5^% zr=y*ZpAA0Px)aQxdNkT<)CYgR>8c3Yydknz6AA%MQi-|z^vz4fft{+JNE}`6PZv9) zZry#S{G5h7z3rc79z_)ZU#B&GIXCpjpSs~aoWbYAyc!P4Y}-67hRET}$XJ-j4SU|s zP2czZZ}o*^9!H8jJm~S%0GVIhcIv{aXD=$1**SH6D%Y=~B2K+*S|n3icAJk4r=yS^ z83WIKd|E!EMjICFzOl;SHwV5nT4>UwTA7UGXMS8#?fCSuA_8&fiWUbk#>FVv7rN@R zp;gUtz!4ri`_giNqmhs01yV+p8qH+zeFK>be3#`;oWuk(-$fsb?*Y}8d7blMND~^D z*Em(8-{fmEE6hT#m6kj4$8x`}wL|#G?4N=}H=S8E^}QoiMo1c;w5|78ln(l%E$HGhCAb^IS|THOmuvf;ghGU9UsB z;eI8f)CBaZ27^<5O%Yf748O{@8`LkLB{ejZ*Q-AGyQPk+QMCoL1WbE7RCdhCC*Rk? z*~yV{P02?fM;FkqqavMMc1j&5^9Wun6$ieXs~)^N(67iY_Rj2=Xfezpj+>Yh%XNTn z$*=>2J(E$=f6zL5PX`E-Z;(JwQ%75pTj)F`jS}oHK>N$(@zE!=J)nuPLr{CN z&V>Yq1Fq+YwEugzlI{BKSufAzc7XIZy;3f-mX{X~^P^1?DbJpGG6qZBb{lMKPx`Y| zAdRxW64e(szIzw=PW<$F+`irmK(1WF>tt#ypP=zcx|Y)qDEMHVyX{7b&@}Gx2DfO=16)&Be_}qb z_W=BzCu&u4ndZ=XqY9DTJaOQp2hE2bUM}Ze(OxEIX!2TJ4#%@I?bfP&{6{@n_rO~j zS8QTrik{%GBId^b)(KZ+*`eV1Xu>S0u*H>RS`XA5U53pxz`iYCbq|R^6>Kv9*|o{r ztSp|YW>ZjJqwi0JaTw`2c*5X`=6zEF4eN$1^Q?ZA_O<6#a09JV3tO}^-2 z&&por8Fq2}Rn}MW9GeC6B{I`|GinN*+%DTXWgg|~^R1dt|K>Nz;q5){A@R03II3E| z$Je^aP5Y-&3XlR(^+0i5V*C2R^Ar}HhXc~8H zu-`7+*IWO!yqw?utiZ3}_kBtDHE|dySai zo?CD7<^n8Zzf&Pur`9`vOW=Q9X89~xh@eSaY#%=`F&WBi8!@n>_;A^a9bMY5VNj7uA8SCQqH{Z!~C-hGe-C(2b?{C zSxQYm01Qudx;n@qO%()&WP{re@8@bZ#Y-v!ZfT&OF0-EF+wIHYcGd76x}!>z?&^56 zk$OVt+d(ybj#ji#Q37D!!6HC2EhK^ySBW= zSuNjoU|5Xp_ooeC(;u&i-i6mvp@I#VOd(NjH#4;zm6zEreG;irmk5Ce3k&50JF?bo z_Z`VfDFSH@8l115<(ptTFiMF#au~9q*5p`+hMsfz$jdh|MH};aXoF;$sh0kR%1r$h zz3}j-=R*(f0;}(pf}v$GyAuDoW+1E^&awq;4fdF1mZiY)dk0dfwtF4LK3V@-PT3mf zvX4!XD-d8sQB8di;UFZWQ+Cn#=Ot|hQfh~cRsbXgCWB>B&fPXt~{E0R+mw=;&P81z~%c^aoQ zKKRXzTb!&ldj(1^skyE+PWS-z;6|3K6`yaynI0Y?w9 zSb(v`Z)V?JcfpQ3Ior`+Gw2kq9?!jQa)WPB7ZiI44F6m|q3|Wzx-+x?{aKF1P|JC1 z%DUDhimcl=iS!3Pis<;~m@IDZOOT{J2E$8iEOm|p`|iI87c_sn;iG3~V?eXNq2<6# zTJ5AFFckHpFiC=W^I=LTo%y{Z6&=B^cD$B-_f0cQ+b98Uhe{UuYs_+Kr%X#|reVWh zTOywNBZ<-5F3ur9`R{OnsbbO=%lnM_IoEa5ek&`uT^>=LS(?g7%q-|bZ4_U3g*n*~ znr>2Q5&v*m&mC2S*}{(vdHy5+{_cwFzjaIgVA02apqk57Ru`Y%3Eha>oZXbQ*6bl% zQXp1--w?sFt|Hmb`D*R1gFISx(eYF^QJ&;axE?7z+$@g@+e!btpB!t|5+nVaS^J-K z{$03dx-4`ks0C==Ev@hb;;)gM-L!03e%(gxRdVk6)d_LL+l^Mk6MzGiXG}39ZuFgy z&VVZVU5%X>Ea6CL`bqY%IifCI(W6Rafp()~{x$m*&5M`>+@ouh!YxVe{f=N3>w28* z5C0P(wI4;zoR2HDnsk0trsP}f`9RcTiL(YCJH~;TBUi2vZ3X5ymc%5Wmi_2pvC-qE zM|T-6?QKt-A7`x-(BaZz5}H95IVwImZ4J%CGE>d31Xl~<*;Xtc$L4B#>pxdb^HB@m zG4HyF-h#xL`O_-(k-7_$0=tO!c$!ErGGM+ekJ|@WVhXaGMmS`=>@FV3JhawkR+h>P z(x>14(dBEGj4_gNRO}k}wX?U^cn!*Vc zlFMUY=Z4OAumX>JwFKD5Rm$jmzNZ+xfICW3U^DABrtf|ZtOlr;CWjAxC}$zr@uL{{ z_TqT;04FFV=0AVDdYf7dg+EYw(EO;2G8g=C)2#DR*Q*DW4}OI{k_MJ{OpyPhG=GX4 zfDdMU_V9lYR{$UM?-yW;j6>Ytc5FNS=u^sJQAj_zANu0QUd_Bu$j`fS+tkavm3J<; zlGuV5c6sQ(5^#IEG;!{mS_chqfit{5egI&o{WRe)xvxVgMt*H-$`Q9ZtLHH?vGOt- zoq-k>&?S2#2wE0P=FL66W9XH(*Kqj8)WA4Lm;eig?$JFlvwvVThmad*?!Vt?Y$?bN ztCl%(5mup<&6c=GE_bg9Gl)cK#h$AtMYOT4Snn-q^|b60#7{a!w0 zr}=4q@RNXipfO4$zha;Eg8uoA9)01D zpZ<|nAKI6N5`2#c-)g!RM?fp=*V8DDr)^o_{t@FCG*P0NVnIA%p^>!9PM9_GUD@j${iyVgn+!k1(xU+sI>i36G=9eLAyPjE4ww&r zBB6cn{lvR)L%8;<=#(erDPdlV@a}(fE9K?D=tyP0mbax2G;TZ&;c_d&I%T3uhXB&| zvgEGXj}3^gmRicuCyb|-0BMD16PVTpukyMfW1j6<6mh4k8GcYR@A za3}vbz^~Y0;V)2(=U>YuuIzZuzeN*%#66RC=N{SavNC?KY8)c?s!NgNaxA*B?PO1Hty(L|JR|Y@RBI~<+p3{~COI71< z|4W>Egx9|xcTXkq@*K40K^Q0gtYVC62uyG9Is=Qfz3~ikPf6&1oyU7cJw)R4&N=)o zNiJ{jMOeyfa_MK6J@4XamBYCvb$4YDp0N25Kdq8pUSCf; zq0eDvdI!2$X<^XZkcE6;NvY#w+$Pir`Svd|_n5@o0{>*)D6+OT^uqpgxRqGTn;!id z(vkXy$u_TOr^zE5G&a)2|EKJQwMU)gpN;ik~N8)V-7q8pYL?`c6IPMpbBl~O*muK3s=WDf~de((EpA6=x%+(#A%`;l(iL#NO zw_s@osQ%#>rF8F&3FkaN=YnU}LjC}@W)AL0>t=C7C=`)7mH+jMs8cVrDwtbWpV4FL5}%uq1kvgXvqI`cX9KdD=_ zlI8A8;@Gb)6F=31<=z7CD+MZ)39X_Yz@s0)qyBIE5>HvFwkM>^cUi#C732PBnFV6b ziS*s#5#GP<@#Rc3vSqtG%r?Dywj}tM&%&T`g$vo$?ElEs%l^G?K;vW>#&>^*p58j> zS|+7}-N3FPZZtORFQrW9u5RsP7(aq{4YzU$ti1F!U%B|J<4brz3a8lHk>gOYOT1Qk zqPdook_-8fXIKd7YwFS^fbm+_*(nD@!)mWS;aUe}VfoyxfRo9=NamGyd0DT{eINWJ zdSLlry&pOUsOcn#4<@fr1ZLv*W@RXLk3)H)3YXwqHPDYqeg>pj+~j?$gyX-`dKXQsdd4mYIfXw(vP5s>RLQmIVjzuT;=K>=$Dc73< zmo>QmsKxNYy8$tuVfOfyR>0_p;oeRzOn;o@Ax*2LIg`Nmb0*bPSNaJXck0fH*liGN zMXa5O-{-L^0;a%!gOT`1f>fR(tpWUtoaC&Z4yOs>={^sNK0dZlf1f#R68Wg^(a(9F z_dGB5ZA_sIKXKd7FEliNs!w;{_gFhP91+eel30p%@qYVh$v!63cdymNe!gh+T8@@( ztjN&h&&oqf2Z29YYYFe~BrTu-uKlJ5^8yUA9v{NsN0&a@cUNmo{*@2N`{*3NUtKv4 zZ%OO_VOvM1;-6hT^VP)Fj(&aWJELz??XhwcDwt2^LO9rFPj5W*;2z~Rh578R=1W5Q z19`e37&N9l*fyk^&Y*-fCv*L`l4*FXglLkYY7+lN&2H! zYmS3F5#nZVZzE0;_*Q$j-;{(}3hzOgG`>=u0rx|z`OhCGgxhy@DcN=rpF5|DQMqGs zPixl}a%;1krg<&@f4w(SYX&7qQT?r@8Zya+TMTpV#;;q@OPF8wIJaFo%XBK)O4m<` zCaY&@LOg1e?YTT>OXfqeogzpp_0`Mz5_I7>;VQiA?!t?bLGE?I4u>1>fH~GbF`G%< z#*%o&Ozs!ZL!3BAX2?4z`)W^_X$w7J=Z|=&aajHLK7RzT2bXkU@XF@RAa@8l6-BZv zf^%IdwxQ`(AGp_(5=+(Ul)CO!b+hGnFV*McYV4qX^)jm(L|uzB%u5=sRsQIYnIfNo z;busoowX(Q^3T9bsqEmEnS#PPSAU-UE{9{cB7Ucrk7cH$Z@9WJdyV{7A-tv1D*>>x zBadyp_&B-D&UufJ)~rAqt9B+k|vYjRkcMG$aVZ;Ggm z=3KgX@#hqCl!xBjS?RLrlxW%V&ncq!^ybGUUJd<++d)bJ3lJ{HaV0aCbn4C$RN%^k z+H?3&oOnO+#P|Jo#Vvnz{dDsoyMDg`zwk=?F@bo9E2f#++LvyBn@4wlm)2vLvt9_- zq8+{Tm|ej})Y&N%QPpiscCQB4Jsp+r7x?0MubBKHlHqiy^DEX-y?x7;<&AT{gxn_# zxz36G;j<6qS8u-hrc#c!bj14!NL{@)ARcL+gb@INN3Z^ z>lJgOND&4eSmAZtvq}6`bV*!XsVv6F)$sn}tE+ZDjqevjdMSXdjo!&^NmCUI%c}{` z`&V_YEQw6I#jn==of$C|pFPIx`Kb$hBV~BnjQ)Hz77+h^)F7F084~{|#Y3mWaKa^L z^a>UEiK<}G4fj56&Lg7RPL)b<|3s65rR9RM#$)-;IZ;V4##I^3(gVusFw|{D{ zYKqj4PBioAAw%;T#0{X*nlWosUk#g~=tHBUHIjLelr$&@{akzDe@P*hkWDq#d8my$ zJ>Ue8pE)IW{qWn#(&b~b-j@_x;+hZ;v@*Y4Tzh4-)RW+ zdF;KJUoX5qEWankZ~_z9SM0N5EdgFlX8 z*k~FzqylYtSbe^Qs$F>=MIxXMcahe9JkS{O4M-=et+zu}D57yL4{Ah!J(UpZr9p*! z^OW~_WK-6cG_iix`WUp9A{nMs;Is8!MnF=5k=?gA_LFyCWsI{j;~ihJPm~LWmamg= zJn}g<1G{1kfxiM&T`#S%n(|jfWV~%#!d#ZU-w=vbx|;bty0BZUhkYTiQ{jSN&?QYE z-zj1JfUh{9XY&*^nDv7TJKmhfTw%V^T0D!6%BPd@Yi-xn;^1#EG8r}Y6ZTY*KU?+m z6V7>)XLO@8JWc2@4oj_Wj`xk2tK9voF3k5rpnW(0E=s`J9Vz49Ia+wSedigFBf6vv z`$rs5SwU)A?q&3Oqdw{aqP>zj=xKD}G_c>Pq|^_nvNVJY{69>aRa6v=^Ymns9$(=ang*8l3H6?SweB=n?fQjiou}wb(#`8vQt#h*m3%yej!NE!2{@?uK9G1X&v{M#B2`D&>F*SaP;ZwG0Kna>%? zeQ$*ev2Pz1y)42nn>sYebbV~3v_ERJU;ddlN1*?_@L?=E?T!d7$ZzRH_LHCk3FznD z`+G7AXdvQ|FsH!@>Q*-B+W9r?>bfRIj!Va=Ii@JSWr``M??_d8~Zg|A0&qlZ&6w59WpI*O{6#}KqFPp2;L z`fZ?$8&W1*L^>F6ICERgz3HXt&d^^Wxb4@)LefS=mcLUYPp65cuxg5WzjMdJDmv{tZPP92oS(RR<*jY>E5_ z0|d>}jO^^&JC|Rongq=pddS<;#e4RPvE+fy3_tWGBbS^hXQba>NNm4oGJTK9J|kD@ z3-iOGv>hWk!+ZTE@P{@? zeNuT2`IJ>Rf&Vy(>bdS2iwlyw9!uvQM?mXB70t6{Vgu9Q}{RNT&mO^{$p>({V0SRv$j)0B(b>$%csof!}cgNBIPot)Sww zK~jSG)-6VB?Kj~n%N*o@8Rvl2Y5NJ>T!+nI1sL#e{Xm-s8SBMdIP~SZ#cYsT^V<&4 zEg)vSqca@IpGT-FL{`4U!lSMVkxs&g+6UXctY6JO_8bdN$FXy>*$W=1I#0)~);{@5 zku3%5&27)UbxU&5bbkfyQ(6$Wb=%pEjxm(|9b-tJ-R9c!QLH^U zEMWVhWLPzG&5n8V@bARI;*j#43BZW8yDvdaA>Npl&?QYgJN*UsD6g_S4g$bj@c zCSa-Vxmu*!L526#hZ+U*qO-WPOM2;#J(|8yH^8OMLWWQI4uuwNTv7n<824-k{3$T4vgGIoab?!iUh%&2SARyec9i_m1K;ayH z-^N7%j&j*U3Ae27FbEcLb-&p3qqO)z8$m_8E4a=lHvfL%6ZON+gSrDCxu}|fP{uz? zR)#XxGr>K)QSVh`PViw2ej%DOohE`xF^?pE|CwT3F0N?l!z)mIo^k^R8O6PCr*DGaN%)rcWTo2sonM5sBvp7(LQ5KzT>mO@?}OeFYw+Az8Cg) z&PU{-iis0Pz!bU1nsPr|1J3pH%-&4lI3@+B&NcEjuR;8^`Zlu>Z9<2?X0MIRcWHD> z#^1JZjp_F~cMqV}_v>b5w)vhrPdSoR=kWXI>wQd5J#K3>_y_5ih0e4FFrJgA@c*R? z^`3ty$JSp|qick3n6NXGGb!r3{hs}pLeJ46@q6F2s#M;zFgFiD#~wW=Y50K$4-w^d z5ORN6;)D@6;RbqD&vMttTJhKGw}kBUc|dbmp^3T*?W7VhI6}5jV9<%M{kT={)0e}0 z%R+PMZWwpzGlkOhID{|k!0eJm;#pT^WX6}?0sZHHC23&r9;-=eXhv1=Z4PC+e*B(s zK?|Lovr@Wo{GQ(bnUsp@Ah#Oh{J3i#P=-(h=KZB@rGX~ob^9t62)w_n+$t7Qsrzep zCZU7Wn75UR-F_oiYyFKM!?Ez9^9cpPw(03*`0E!)X5scYQ}n}3@~5#YH^Icgdhl+?24J*o>#Aqd#;yY%>huSoaa%RV^A z@25XT#x%Uw6ax3n5Xx&N@kf70=g!J*1(Qa8nd@G?_g^TN+0hWg*S(@}dNgyjx9_E= zH&2m#YU%;c@1yBqFCHlpJIn{J4W06w6{4&Hgc`m2ok72>&F)uK>#IfYBX7KNMK$}{F1yC~ zt$k8~-dXdAL7aV_%Gs_z(^Ms2HXVh)j335~Z}@NSktip+de|YgV!3$e-q|Z7OU&5& zRyW_5nD@|w)`3}L)Qe86reB~|vRe$IKNRmQU(VGLET@jPkZH&NFh3dTI2rhe-Msqp z9^VnZ^py+>aw!bEtoeTV01dLe?g)L&@|*pe5i8ohGV$i++|ubrE9pYZNyLk&6*4XBX&c6Mu;>tA4wPrEkJrA532ghK0b?l(^Ps(puy$h^NaqrK*mgcI(TNAF_!6i3lFa<=!GsI_X0u?TS5)9=XD4JTqsZD|-N9R!aVrMCzFAapJ}4^Z0)T&|8` zz}jBYp%6o!(emlr7fWUbVP2A53*0vCV|J9HmOTp#N9z?QQP_s%PX;UUy`1tHbJBZO zNcfWmQL%ZUOfx2FJL=-@$T-zK7Lf)}1M|c;M}TDCq8!bo61Lnu^ZFFE?~r^b6W8cI zxB9^E;r7|Ch(3FsfB8VDe`=YZUq^F{kAo){c$2xV`gOCO7Xw(-nSI!7J)t)TRd15f ztCt{Kz1f@&|1-X`*LEbC+;}phgQyLJP~BE@ z`ixY8VmV%;L5!OGK}LzTI+OYebg-x)^&==frZ!Wr_!JhZSvG3v+)nKW+I51USzs`Y z3AQ|cs%c`+w=N}fyNnXqsK@i`HuizLRG##fSR}49Dt&k$Ok-a=M zTC72_KGwp>&F!P82rAWyz`~aTtyNj~ZO)vH>7fj6(55(Spl>qz#}Q9{xR!UC)qcWM z!=GGz=GGUNr-d(4SkyXEHZPXN;rT2U#~Y?6rl@23S^z&McJp%rwoFZhf4RRI@0#DT z5Xfly4&ULH-ao?rJdmN0LHkKZCP&-mSFx!ka*;$zS@m_73yL`_vJL-WwK}E^^{Lb6 z9TctqX4u9_>KUj`by1vF!}enX%;@k8Se=FMA1&ge#2-;(*rP9~6?I|?isO3Tq^;1t zs#$79poo7tYXFOVUeVU}YXtahmBcX3D(W%3MyY&Ly8CRdc!kO=KwlLBRdaV(c9pg- z3EN?+oG3gJYXz!rGko)Ff9UvfkfyzE7lDxuQg6R|8$Ym+Aq)<_orH^+CU|TDsskBS z`p$Di#SYmd^7~dB3e7UfGUjq@+If2G#>>SmoyFFB9=2!&rMHNgDPTGxfG~MKjAlV` zlw*2pbr|Y>JBdi^a}9wDpgMXI96Cx#tZ4V_Xt93Spm{AnR?&X)KAN^wu3GhxY%Q#@ zrSobZWqmezuixzhR3BlWO6_bKw262Ij&58k4!H(+!1pD+Mi<<4*;?FI+kUog)T78` z^`Bmw{KMWI7r^+BPs&B7r-!m{Rjl$P7k2Qu183^>17i2}VvbxZr#(oSE*KqH_~IxH zGh6@iQ#)k8udUmH%rR>rx;%Jid^v3`leB`;wmmUzp)H@w>QkRI;v(D6{26uvS2}FGj+@A*DDz|s_K|j#CyQ^kC{F}Bzq%NL1o$;jY zhwWs{{3`u~z!e2v>DF&s>_V?&iyQ!h_7jVPSA3U}1z=gaBCu?c5yQI)n5f|lYA7() zf7^^~`B%FlcFtzD)Ycde5*>Koo`JTkNvFPbIxltgzYh#oN!yF_`E{1$*Qx#8yYC=J zVpPBdm|J0-?i`is4|xz*Tg{wg?qIdpl6pT6z=sM)DJ6BdMN!znWs7XF zWJh(wsQ@Fi_JQ2IT_Kh)H~2EPh$l55Ak>Q~Ouo|1PcFX)bf5~nxC%dAG zb}ELE4d?{zubl_CYn;ruOdDZf>FfFFFmS)lN^pr2#RbbgL7Pyx7tH<3!ibv!((f{z z9$v4!W%0W1V$0A@ukSl0qe;w*@eMUGSJS*dd-L8hRn>nDJ{P5}#-&0&8$C&!c__lH z)pq)$oTChsBUf7T-S&bJd0KGaS7`wE-u$(x^j^wC;k)nSC7+3ok`gx9??@zc#c60R z{SFh0{QgoNOrep^QKsGc)2ipRh~zE|w8Zz+TI7KR}6ml^c;A>+2e zM!X5?9sOm^NAx{AeClewkRA(Z)wfNP_ZPOTVuaS{OO-;?{$vEi2WG`HS4CepDBsw` z{^n!z)K=cic^xW84pAg_756L*ji{2@_}|Zz_{V62`XFc^zz3$|tuaZXu{+LjSkb#F`h` zSc>Fn@AJsQs8k*kZwfTv$AZ~k6y5nBr%Q%0?QG$jp?P7g!#bbOXX2;$-#2RY$5abV z|8|2@lES|=#hVd$ecGUwmAv^t{z7bvV+>L_*xPyhnnD6r$z?jNu+UyFHc~plQj7o0 z#IqULb9fNw*5d)I&&=ijq5Y4&%jJ-K%`8VS?1;U;S^o$zbmBR4a{d~bTE(F42GDD3 zonIGGo-xE;JP*OM*B5t zgsJbz;p?1vbz}WJPF&_|9JnON&4~D&0wB+QrU$xy$V}>kz#N^`?>Yg;v7Z`z`x_5@#BC zdMcA<8thxI3pzVL;qGI-le7_n)b7NsY&vQbBnPxlhX8;#yM795K4SuN+?LJn(rzo$V)G(&hEhyQTWnx5tY8SShiR^ zIq=A=AkdxP9q2VFaU@X7=`7@NV%XYv%VAd5D%a`yoOsR*F?-DIPGuum5>qnsPGX{G zX+}B9u`=7*{Z3TLvh@~Y_FUf3uB<6<|8&FC$xRJw2j3 zyZLQ;Wl|E$Glw11J6S!h`~06JJ_1#>-Z(n%Uau3n_4hPqF}Cg0Zm&{<>O;KFd5>T3 z@7hwIFt>kix{dJSr!mS1+aLmLRUYZz=33C8?n&iNBw)8o9~~^4%Wl zx^(P7t>$dlVa035rAn)L5&hq^{V(e@36h3<#tCT`#`3^-e#-d~g%!+^;H7(w@LuJ) z>`xWEp_-qZpKzd;fBkT81HWwArTU$H7rU~rVp$r7jv%N5rX_%-DDv0#6^0{Y*J{wY z+up1eF8wz#h^pw9)aL5HYSbccNKZmEXBTv+W4_ts1Ussm8#5;uE^BMLPhSlkkNz(K zOOU#C5|XQ>|Cqr+qbdCdo1P^<4bOzo$+F5NHqd(I_tVF}1S^3<_oG2VxW;*R6J^y%W5&g&kk_jsVQ0%IAykT zZ%F9)7le&V2PukmfzBe+uE}ceJn{!E>Hncy`OM?Eal09oWr8U5?akaon-&}$uhNcE zLs8+L%R=vpuu3n*#`{kW8eOtZyw_Rs>K?~b91XbyT^Ra5pGx+#38S@9NXuDk1Jb&B zJ;YQH9RFK-?a49Krt1IhMLL5WAY2j6G1Z~!A@F1^N)at$BcW5VEkh&m$}J1F>0$V3 zmX=OO@SSt+tqRCTj{j^(<&jx0GhR%O-Qg;t#4yA+Ri&No=$_opG+ZyO#!MYx&fm&E z5AS-&%(ivqlwAHqn0<&%zhKJ6^SY3cXAL5${(Bi$ds9U75SzeH z-`Mfmdq5QG4N90ZwQUaY*nwDRM7t@j7_COKwBtX!DonDE-i_Wy(It$L!gN;TYFW=I zk-)KnD>;idtnCGQiyoo#I4%qh2q7?J^ly`#jt=qsOS`dEG6)r39IC0SdWq34XvhjU zFmFuT4?13X9o?b#M>Ou50)!Qf_cyJWJKq||MPh1IvoLqZG<&qwnwD1i9lMs6{-E!T z>R>Les79l5gEA#s)^VdRJm=F2FX2U6vZ(ub*rzP}%nYvBe94i5GvkJ{)hdl`q~72A zT`9;Hf9oPYhB-f5Q*f_NIzH`Igk~t)q3%Re6*j(d$nVtqdnL@hRYm4KEj!SI@x`!I zKr^VxQ(>0^3&>jqIa2ZI4(VCLLo)l**UNGlu`{e@ieOd9O1)N=RO)Ep8(9)1 zo#{Qjnwi&ESA@QVms#K1Z$(MWbl36qx@2>%FE;ap3>in& z-mpvF#L!MWhS3XBd7kTQQB*+DX)pGe$lzMul_~p`7%6rIDjoJ6C0$lO#}-Qn4fPVZT8AuPOq z9w#U9rq`GIS?Ka`6?Z^I#Zhj@dq4L=k|U<6u-r?aEPL4n2bWEAS{8aYU0E+}&=Dtm zsA!eJ;h{7-HpT#gDKC5=?P}wx(bpvjX(fI4VXJzm#K!Eg)q1Q;lJRvJ9${Ucf69^W8hR zY33d`i0z}V-1;ru*aC-G$iQs{Px6gK38WX0tRr`Ws7j?2aSe4$Vz#H9h{aQak^X4z zx@FQizswzl+_olx#U8iB>^*Se*bgzxmAhBpFt(dMbyJ!hT?#*Om$LzJMT&5sb%BBySh_1@4~u292{=f}(WE|2H3+9Buao`&8A8f*q)7tzc7v|)P zw=;$_$Srh0n^`bna^ZhnyD2N!TSW|C6kD3G(%3^d{Xl#yye&gBoF{zVnuWm zpk(G7*V}F7lhPoXe)E2^UXCe4{c<{hKQ%wEnQXEYYMfmjCOa(~77MN2I7JdxxbWf_ zLK=bP#GJr#fWnCf5K|0;#$!@NT0*KIA(Gkioy-f_k(;o%zNN*o0_>D*j1=Tip8t2G z2@{~K;Rkp_c)5*>1wDghFQ_r}8XtNy&_RjmSQ3(}ax#Ra936g}QH%4f%0g)^V%N2L z@Ab9txy(L{UI)wIooa6P&89tp-uB2NfaH``yIN2jsM@fR&hE@d7vNF@Tvx*QAR)8= z5sce&K5jJ9ggVr3i!0cVDVRlOY zSmRcJcIrQDOY>5x2F+^nsZ#)}#7NH>jxa2JYiLF?evzJj|7sJR#rIRMC&y2MC%rcZ zd=ONxM+dqx5F|^b@LaK3mU%?@O{A_2SS;;(O!@6Z-^tDPn!W>zVQgyb6wBiGI`oi- zL*ouiDVQn7e@=<3w}~OTsJntP`8KkW0O{X4NudG9z0A*TUe94I*qff`jkBa51oj^P zEhS@}(2j6(y6H7B_@dM*pSV;wC|K*JT*40gw{lTvkED$0mo%5jAT_N%`5LvBLyX++ z&a9u!HmphxQtF zCK4&#sZ$GwZi1D|x3gjciF24Vy~nfbAkPn91&dxk$MiATPm6b4X3%B+U9?;^3S2;B zx_o5~K4+QI?n}I7YZLM=NtFlVlRh~|aspB<~a{)RFw(%Co=?d4W zmwC?=OjHp%kBl1pYO*3Nr&*_ov@n{_^r^}PJM0LI_J_|;Rvt*o6@IFgCuo<_>S?M# zmK<0mY=AYuXH>izJBxzn8E&RsYa9jCCc7KRD-&Xepf=lTqC<3#`gT{~yCB~f^C&}S z@?*N-10&v6@p5H{xW49!ugB*%KI)6sdkga>|1|8e0R8IuD zKVolte24(J+X5KzGNPqTP&Y39+xQNS)3R|({==%-?AG3Fy9(MLvayVE>~L@0V9OI@ zdmzRq^9T!&Ahw!j4R6atH~8&ICWCQ4xkLDt^Dt(RR2H_H__ zO4)w8-jy`MGtCmI@IXZ3^|>!E+($11MhjY=6SV=aR0U2`Ig${lcEzt_HeyiJc9QBX zWLfsk`usi==Sn_-Jqc6eq}wvrn;lf^aQ*O<_|tA*#v#=cSYuTK4vEe>jI3NWu*_sQ z+iU;tA{*wN<0yX9jOku7xmmoiNgtSPI1=p?l1qS>uC#)0Q+c>{p3nb+%MncY=O0MY zI=O+CZT^`pE@wq8ehFk>_Ilse$m=++&9()mGU3y*9H64GzwePEe&5rr$;+t^@e@-| zklY4mi|6vs!Wc4VJ0}jt=iJj8Q|ClMs4KG2)&Cmj%7J*#S3ojEU--mk&2>`bK5{c4 z(Ax~$3R2bdxxg9Jbf2xQo%zO>W8I5qDQcJkpI=WhhkYK~(VLEnrw~l_{Uxt1a~C(W zn|_uIrR_^(Gk-3fhcVKQu}G@L;J+GZ3>kH%hF2>=S^x&^v{_hm)#I`QduBmcDSM6_dCn|__P$$myC zLOq<7JD#d|*k|4!aDpc;v}dpDPOP#iaMGke_IUAqT zx7S(-ZZfuJ?J@E_=6b3uca{^9Wd@lhXM@*U%o{2K!|y97*rD#GUjjm72fp@x1@`-) z0-|p;G83Q29Z`M`_ntOj(95DOt^Rd?Gs;*wFc z7g3()|9J}+t@}1(p#n*}`>1Xcz0auaTOB%-Z|xzOOTtN*cYg^sjlfu!_(p;ADPfH~ zBWmN5sAR}!h<|(1hI~vOy3%60lo}~RU7J&_Y$P**?$s-*SG+FVnyNM^Zc)@Z)sd-s za2C0*{_v`=-^wIxLar4+*Y}q$a9T)j!ma(GWD(}uxSC#^fuaNXBbiCEYw|d0gP9)G zcVGX431(52DY+i;K|F-~>XFbrH}*LRV_9&H_&Rp(UZ)xR)=-u-we(}TJxvrj&w+Pe zMHbQTTVNF#3mk%E3qKB3jAOWskMe8-W<>Hc4|sO?D%QacDHDxMBgL4ZnIlr@4< zaWc&UFXVXWxV9ht9vFPnfe2dn|Lc=^?6nvqwpaUyv_*SO`p_wUfazCOZV1$c1z}EO z18Ts!`;PBLthO@>Pr#p2203{Ud7eX)PbgxdZeWhRCSL;|Lmv;X<$4X*d%kFkXt|yV z@bkphg?e+p-2G8?pFE$Wt_P>fQgug2loNv*EvP# zu?61-=?eUfY@K3IyQmA;PR@6e3i!L+TE&?6t*Oyl{c9E@FxN$MG=QWiP#@ z&0^oX*dtQCFQhCyCnVh@*rA2j1+XjbF@noV{w*mz{kd@Z_4Efa_mGwOogH%kOJLOE zxI5X+L!2HCn{v4pf#L2$Z0<4&epfbmwsoI|I{c<TPBGw zT0*o#^l2~!>wh^X-{u!Dkqns?Q}0a0zH}Y0nnNAB-&vRzmt%_0|HITs{8S8->U3n8 z`Y=G}Z#bi9ZCp6;y~JDWzXiSZcOvy}nV_%hEWT9Xt+gXdAfV8MAfaAw|ETHw_U(m` z%qfY5rw|fSTd06%fhVzK_vDzBUWu;~gl_03cKxz_CUm6EURyi&6yIB2828{ST7EKc zZ)8s~xmGmoe%39bkBtQq&9YD9dc2oA!*9?waPzFl$Cvq_Ry!=aR)AahUSX|PRqpK+HS~H^9kn`0Rczib4o+{vG zQ*4b?$EDI1dON-8OFy)*ly9fL=68+rvD<=B*a^t(&2Qxs-?h8lLH4VJivu67-dje+ z&7{(!4BVkN?b$)pc*mGF6$1)(^p(Kz+NbNNj$|z!e*635Onfb&XXo(7k;hPg`KL+oTcSM8A6uA z*{p0JVRb`=qxS*tQIDq~c2sZaM}vh@hTQB>Y#(yPsCO~V@xrplGtc7%TVOBKnRAR3 z@DeP?Cj(=%aRR|caFyLR-Bjvub!rq9!Diru-8XmM z2>%nu!4`X3^_oli`conW=H-pf;XbEH@x`d;}p{uioSjJDrxLSL!%j}ivAX%>2#}{L6Bu0%BKTaHB-@$b>+FpwCr&6rZ z1CzO*rj@2#4S#Ui#G^J-)zcmg*B7QgJnyBKl!<#26oLWeo`TU80lChEp ze$vZi>=auJyt>Owj(w;XL8@ldf2W-unD~DflYa!fq}rBc&eqMK#fU9rby0**?f(X94~T2sy!0hbuET!f z*m4PO#GtoiQrU6aZpV2Aw<(?;8tYYkqJ=oBo-7;0?KGe7r%hr9wwYy6R znN~TgyafqE*!S>QMpQ(qqn8Cr+mObcT-o!1dd6Yjw-?kcW@7fGEpGZ8(k-JRTV2T= z?}N$xVeT>XWI7alvigc6h2 zZw)I$7p9cJx)Xmkxr~Ea{>%}vu%TU`?&UhFJPioi8e_4q?A$9pmS>*%;l2DzAspfI zx$j$jqo{0C4GBSU`nIi^&!f_y$LG2;eXw2n$#3I5YtG6#9-UN~=<9z4k75Y#ZM=Y7 z3Jb*dlNP2ia6M({3O=hvs#4bnI5_MhmQgiVzP@OzFo3A9z&GvR;s z;E;NUWofD8o5P?nr+9;B$KR7QiXA#vENlH`sFgloJ{w{4te9$19=jT(b+nQ!<@`Y; zP}Rp#JFN;RRB1fXcHVr{%Mi|At*rz1v;5!zBoBC2@;m{!rNfP9*d&uYYuR35_Q-$Hkt`*rKq4AjXQ-q2}@EZ<5=dEpVmr>^in#=}|l`#&{ z^xdlT3GqlcV4kORarqRLC5MhAtjLI%@R=@$}$l~-3 zuURQCw|$AUC$agB$W0rac@|e<8jpGQIfJ7?;By;C0}qh&Sl*Q2IEim637aNq1?lum zOgf&WS^MuVjc2W}rM-a9{Kc8*mGiE1CS|1d;{Q0LvF{J7gh0Pr zChnn|i=_X+QmtC~$ES~euMXhfz{%YlAhGY6S2Q}jhFZR{_yz(`PwJh$H;iTgny29H znUjfw2K8~s#bE#NySbv5|SIvJ~Dv}U5z`?zHpb29v3iJJ=ZKUkcln$lE z6qvVy_?{5^Uw9`wgGKPOR>J3};|*&=mgP{2?Y7JI=5!CLOPU*nIfW&W*<7LX@L}4t z5d~OH&zX(JX}eEG@WcdiBNGuD-%d0ti|RSJ`kD=v**gx- zUPaAY-r7AM|2(pw0Fg-bKiyv1Qt+mAeIkgifw*cOoS_)gM??%WAtevPVxXeP(8~^<^&QBTC)$gpk$jAxKi8PUMoJOSS1@(mx0pXSeTH?L+PJv48v=c+$#N;g z0JETpODy3>87CZeKF~=VSw{oRR?e^;ns;d2o<}?8-YfGMBhF zv(b#h_Kh##6`vOd?r``S6e*r=W1kE7M4&gh1o`4QX5T|WcYLwP>_;7dyrmkbQ;0BL0v@z)Jg4{Jo7{)-xNH8sZ@ zjhJHmVxYTkv^RaYQP(pxx+4f9!KT?4N3>v#iiz8 zt(R#nWc$8qCXG;nrdd$S*Hq|a9hOQWiF)p5xDBYK0&Zhz%i2#oPyKbbCCp>~d;RbG z1xlJ-MU=k@%+JT+n!V;OP~oj77^gZYceZf+8&6lqj`sLtA(!v^4wMraOT-6OUI);XrXTj@Jz&pGYPiy{!|9$f`h$ap zcECGA6UHXoet1fm{>YWnzH(c-gV)Jp4gdba5+P=$JO=dD??;-&?~lmT&Zrd`uyfra z=63+66^PqEby*@>HG>ku8wlw;)89x6Mo3jtD1Y;_Jho$3N>_>B(=70%wOdz(QC?<) z%*!3p#K^R@Jc|NaVh~&R7zj~V&vp;F!?y3mxf9_G+lYZMyD-)-VBgHUr!YJ%u<1O` zuS9c{+|l~%RbP9X^xUJ)2+5z7=q#zFh>mVJ=#WAD&9ZMhG8Q30>iqTvRM4fnO3vLK zcQIC%iN6I=O2Oj{%$Icl`!;mp_g|$L(AZ8@D`1A>A7%Tbtse~5u`YA@!1asG!cYCT zSz3P`XkJaGK5OnajdmwdmQ;qR~)G|RdWCT4uc)LD$IEU+^lG~ z0hI0a{sGJGz{ki`j>Ov3jif)Vb*mSyh!KpuO}31DYO**e$f#^n&7oE1us&+s<=|Y> z!sFT6!i^UJ557 zmE+<_c`XDf%&K(B27FMZRu^P_=;wIuHQja&$5etp+p$f7-)%?^*P};l`C%*G^QEU0 z?pYcgb$V^yi*4g05&-U2LiOa5O#t&r%up-H;$xED0`}R|gUd_3MCehLDB*jx-N0q} z0~XZt+Jo4CO~*D80IK3$SDczN+)tn>SUFw&P*FP(6wZeU?&;dzYTf(_V}mg{^&a|@ zqVuvA?Sh)6WrC#eGbCEu0n#{0ODLr2pmEh!#%70=QIcFaTi)mNM|@oMpB>^VG+lYt zQIhM+KH|wDBD_iMx#1-bW+jL=Hh8jcIj%d4W7!t1kD~{A3c9%7Lt922}a9-I>(3sv-ljNO`GoZlT3^^nY*IO z6XL)0cU*Wz-owY)0x>Onha0muCk^k%lDbR7iytB2jnKPcC~&R=T*W)2bEE^_gSM;> zdMxu0@z>_8{QXI132xKO_{}uPn4`YPL56!-tHOty*Xyr*6JmOO&*o3{LEg$gPz$@< zhHSw(#dSY?y^s-nMqTU7OMlEJe2P;5TCv zeVND~rkW4g2O_7p8fH?%0}v>=x?c_Dp97$sB&3qHAp`r=mHiXma?7UwBqkgxh+#Nk z*mWyB1)hKKDwVw9`!zvBPw{k^Pg6Gw(WiAar&qRK+~5*2|ICk&OEFhqSJQajhiYbB z)|N@JHI+@FiANnRxCd~(Wx?619~hpF@b4j|#QKU==a&9GI5RE2ccYS|4;b8<=qgs1 zdFb@x^d~Vj-Jy4zgA|?rtpt7nFq_zl^E1`rRAxZ7PDc5T4tsK*@YlUbKyrzn%#Ryb z>fij@dk%bF30#o(3*if>G`g=;-ky04F6HP9ptK}&RkqEf(^9ocK1!4B{1P!bv_4qh zde-yB#y??%ioMs87Amu4#gXx(Az93_Q?T>W%|G)bEX#|Ny~xiQ?&GeEvv(}jj-vh* zxMK%4IIL$@r+90|)Q}iFe*JBH9he$-&dii6+8MSp$I_P7RiW8Loc9gH7pMmP`>+hq zq;jgNdboX`?;wzm+fJf_=L%uf+F9A`#gLdk@rf>CFX-`@PCxr|pPTH!?YHmoIEE|X zG>n>*H%c)`fWS8-{L(Bg&7gREt0fdV?p4C$89>&{Co=B!>s%vm%dls`kEMgfhhx*n zYwCv6--fX{fxL*WNL zOsr5aQp`W-BxGQlmot3>-z+Z;GL_0aE`DA97V{_s+waD&+DQ1E-h=0gO*^$u-%p$k zazMNp6Bg0fHt-gVJ8*=eCZF+ z3Zf3L763u1izYYVR$lih8C@Tm5 z*TLCwQ34KY(YU9@J|1#51L-!x@2jwxv7@ZFfaM&qa_6P=bzWF!go#pAUs-f9{vAg9 zR)6&VlBA@D7nNVWUiG)%C)E(G`De=+!`FGdtF*&#m$z=Lz`;-wzg0$cbDd@MniB&2 ztGN-LVHIVjod!jgt!ZVt5K}SRzekiQFCMg+x2ox}i@LE++NYC!jX7J49~IITOc9fV z+HPkpZ`{-RX(2RZVg|aZp#|&2)7AeCo->(Et}tA9_5_e(57MphA-m`_hvAa0M*(kc z(}F$Tokw(W%D6`CZU3kBoOt@R5;}L=N1}3f>xTu*=R)q&;MSlu1D8=o~j;P?r^VLPCCy%e~bsD3$umkfxT z%igwB(zttRBAP@9n~NxU-cb_jV{-BBN#RV*EY5f8CiA+xh@M`{-G<8?eU`s z`qp=)Z?qx7Cjm?ae$EaZ5k4<$OQnRuIDPvq=d#U(E*B2wF5pPRFupfE>{*lhD+QCO7KU)R$C{n?)I{aDUOD(5kp%_13GkJp^*#P@Z(eMx z_;XrlzNuh`%B9vB&1^-uU=pWgtM}uehQE^S#0~9PVx)2X*@g-o?QG^U%NHK?InVS) zv00Y{m1zX;#!KdHT!ChkVb(t@YNV|vD2x_YDSM!G8Vqc!oAzC0)jM-VNRH3kwm2#k z3SVvJ(21tqEd8w%|I7We<>YKFR~A-1O%7$;0f2fmW9rnJ?{y2&sc3)S4o6pXF-;%l+g=QXdWKm(}?9jO;V| ziuwg%--7@GNIT40Xca5p9i?Ap-e!UN=!{lVQSP!1i`q3b4_6PMEd%p55#b?nVPLwm z-raOxZX0E`XVmelg~MGM%AIxRrsC*O>CBaRz}~v2Q*Px-oO}G@9jyC~A`F%}dZf-M zQ9O6FSP!5*vdR?h5%})My3aY#-dedv&LY79bLeG}fkh!Qfw)>zzK`G)#Ea#)nRTU@ zF?;C0iE~K^aCOhID%A=B8Nbb-m3$;Iq8ha0d^VhBt6j8Iu`xn52CY4R!!5@sEzqB!vnYO7qPfcLOR?0U z@*G8r1=%i#$Is)=k00&K+;U!?^Df$;L{^S(ppf^EmTcU%s@R4d6R@FFZ|^MnL^2ZD z4M*Kx!j(oRd@-rqo6330E^x+9)~q}R5p7b!_0Go` zN;5%{%{qebgP%)H(}=Qsu#FwMc2X>_pmA~R9g4LM2_C$5D)f8@wdH%UFS~Dy69gPq zEJgdOl4pcPW`EVXdbLI+MO$A4Z(g(8fnQ@3_A$1tfxM|Jb~}2f>>IGES!$ZnTd z?`gtnJx70^KvqUc-%ukPE{rYkb<`a9;EU~Vd6J{0GK3$z6Z&YIEb#@)2n63>x-DT5 z!q5V~Qm@+pJV>8SfuZ&bT7jQ*RYb0XathBgwK(OTU>(EQRV92Ki4>*^fJi)WlJ49Y}Xv=x`N?DHGw!}Jf|Fze5Ry6b6cF^jfwmsgo zP7ri!w2W1&_inSDusBO7m#?g1j5!EM-hUDZP*~4gn3!di=3|6fM$y2%60K>2K)`QS zgr<4z?UsF;e*=qRS1+BRKa+j4LT&*Mx-;psU1-?D9(FDVUiDoY48|_i2X#?UHQC}k z=BrLLsUNRRW-K-lh;{5%8t#5q-UTXrf3Li`dC%y!gQmyi31_pYe?bPw{o zbJe4%zv(Bpd*+Fg7=OKxOn0YLa;mc|(ovM`wl}EZgG)^Yets|`S`Nxhu0C!f7Yz4nkBS%n0A9M$I%CqqvLD^v z@||7nG`dVz3VcN@Jn^w-j zFLR3E#!7}6rP_i=Y64X%CiU7T*GcKr?6C+IbRy6vNw)_#g;oVg{-eQnI(j=pk)JQ6 zdA^#!Y=eZx*FV?l%NW+`8%SlfJSl+&mqK?Z3vo(@T_q*YjdR^o=8Fqwi?9Di7&$MD zliEO$8-*^2>jw1rO1=)ad*IKTwSByKW?gVq6M!WLc_F8GdSAhtDN8Y+VV{fakSk7< z$D*)zN9Scn=T5RK$Xy8R(i+}kr2aJGtcAMMfG)1J-8A6V;CpRtIn=O-QuEEn%IY{hp|^3us~>UD#D#06ZE<4i%Uy8$fn@H%I#P zy4JQV+w?6;|9Z>5Hg)_9xN`aIK*p-dCc(^M(Cf@&Y%drRn;G*vAgZ=yg~GWpuJSK~ z?9eRQxbzH83s?_a8-rjpEmh?nRFM^!(e2Z!NUb(8S86j!Jq>6N9jn!uaZ*@hI;k7I zR%7zq>R|Hxmlp+THycy^s=yl>=TRk*>48D2rGqHFj+XpA%b6i@dHrg;4@|S^93&&q zX}f}R$5VpZqcOb=rRQP0kZ%3Pg8reEf-5omSq&p)2Pl%KGN1Bj7OWEVoxRg-!|>EU zrcTrKi_aWu@7Ju8H!~LEs$xF-zOzLSDrJUI2Kf&5V)*nSS#+&kZeVXIt7Xb|m?E@> zz~jj3Z^zncU)*Xu#-!}!&V1l_a$nqT@sL3P+&DmfeZ87-;}f`VFuoGx$<;|5pCpik zBHU*$Ztowg^e&M7sEW&zm3+wfcWH0f$9lV6HX3R?Z5One<~@fyhs<`O`hRy0)ZFw# z`0r(@U>AwYSm}K{AIzfi+w8pBGOE~a0+8n|j-jIwMYv{nJG7g5M=zvFE1o%b-}0}) zpWsh3Tr#Hx0u>K#Z)gtZ8glV#WzayLdmxzv7E|H7{)9Ncb-NN}>Jv2LH@Nk?UG1K> zpYyAsGI#<2}5u zP`ui1qs$}jyT6f9L%`_uGH4N7#;{~oh!@kC0L2nyr8*y+=+X-=o!8aBEY&*yvS0F? zNMd!PE-vwrB59>(FYtJiru?l4x>ubvjgB1uUo!QX_o_fA9F#vpviGJvn{<5Q9ZODF z+?5Zs(NKO}fAL>e`a^_M3ibRr)tn{NAu#s!r|TD&VfSf|@pJAJRol$Da=bwiN7SL9 z1WR%w!mjO0sbFoJTHW|ZOSL{B_DUTe_iKhd#z^&@eV&yKvKk)UO_e0=ln1p0J4N|t z(&zb)zI-b?tQOXVV4jZRiD(R)^Nh;o1lDX%C>RX<2W{!#C<`JQE&AGtuGQ71p7Kn+ z?fM*qa1%+oS3s~QQP~Ex|F;sgz-LeQxG6Thvy@!jCp*OEMaCNIyk4`Jvx&m!mM=jG z^zq&3zc;-f*s(tcK5)d|xg?LSG0@}fO8L(ClEnWJlJZ<%L9ainb6wD+?Aw5#=sC`o zL}%OoaN3Qy9}`*aUL`dU{$uNgEA31&(w3kXnA`<}7cT&vje_c)9%Ubu7!>Y3o$?7q z`DsS>3W}1h?>wraCNUy4t=ejc@Zo2e^2u7ftsW56fsaJ*zyIyxdKnVI+1?O0z?r1` z#>Cox`cT4));4M<|7&K7N>xhnK}9&$BFX4ZO+p851Bd%XaHn-W?REMz`eMNc_f3!7)whqbm5w8pf zo)~1Fu?@U*19o2&ay%o)Q%yP4m1c)y~j_i!rZ75&4^raXY9(b zs@B0T_gW7Es(QOEzi#S-D;wjQIARwCsAeEka@XyDosJBP3;(8C-d@NIv)D%K_9dK~ zr_(QF^sm@fQ4`j(Zng{YrNvoWxraLux38`_xeW_|MuAbi4SE+C5U@+bi`e^>gnWN*_$hB zUhChrPoK3S{gs}pU^rH373%lQLBlg#iI$!wtJf)L#qBIovG>k{2}n}cA8Tu#gb=}f zOBuZH_K`u~nXW_b1J*xJo;$BHl3f(YW+XE0zs@GSIsTi3c|%_~WSL!;(7Bm7Ad*~X zrus4?aewI?XpfaYIAGIf;tlg`PYfWWSn=xY-iBINAN6 z*wXAA8=L7X?uFaFCBO3eYO&v8KJRCDD{-$3HcX@Z{KM{1ceITv*2e7V_&C^@$>3G8 zGX&{(_7ffHvnOu_QaZ%hJs$Z-^~(oIC0V-DeUI z9flsryCOq4AL#T$!vOcoOF{;POYNUVUSbkRi~juJzRz3AVQQwotXX^Ct)-9nM1~7y zo9pS9h4#(x^=#BW9t~1nISS#rmCS2s82m<>EaI9tAou%z0BHAl;+}CEeCPD(VZl`4 zomkWFH#mb>ZCu6Vldqr4&$P_AC$Ue!zS%Y*)lMCp^{pSwqU@OWcW&D5Zc1kc-_r z4u#5V+}rXuO6HARhXR-n7qLFt5tFz^ZCiO5*IH5-p_~iyA4DEDovlYP*%aAgPj#Ug z2Ie&sUC=wE&C&&uw+7hz=Z0oUgR=V0IzSD}wi8GRVzG4A;TKVFiGk`b4FRP{dw$IK z*8f<~*jt`t)Uny?{@#v6o+VvEl-@Epbl2Fb@fOje0t9F@w+lNu?04N%SNW9NP{6wZj?X=&<^~-MON&4SR*XB;U`pCe*G9(B4uE zlHV(05%%b^dA$akeYILPSAo-f_)D7q zXZk?;UoWK_CW__gekn=&;;&HS5uw-f)v@!t=N%`(-`dx6HvuA-2AvG2%OisQviZNm z+Q(KUJxdi1W^tLYqRx|b6K>XG$#scJ`SZy@+ct=cnf0Bqf!4J=?=SCAWx>>%Roe}~ z=MMFd^Oq@C5(=7YZ`Zn!J2XAAr|Qo|t!wgiQ*2mj8)SGExs{F0>?tr3#mFk+e)C7l zm61|`{J0ZZY4w07>m7m>TB?wsScNJ%Cl;4A9@G8Xy(iGr!`H6=fs#gglMa1-`gwLc zEM_`1_&HlPc0DW65k7GV9Vsy3IkTOOlU0Ka+kT19^;d?6m9)$*lMAZT^RJ!|Z{oaF zs*L>?+O&ENSS}=Rt5mfNLTMxW-qQEKzWTR-YYmJgGm+Rq1beTiY|sKn*Lkv)c<;F) zpQz5SubwIf#vmpP!UXPlF>RR)@#BQg#p1#aM@Kb2_FmJSAr0P)G+U9fv)1`OsN>bP z$}YA-86>P^t9-e`=xs6%r+r6e|11*(-$xoiK@TM zbI6>+s1mnbhywj^dND%&r){|>l7xyg0yLJ``JP$sTsxb~G=<#{fwAa^o%8%$-Dsb+u^y(_2YaBA(RaL=PnQO-a2 z{Mdby^Phr`8mz>R0?rF^kn-o^<78(hUANEH4UvzQW_wAV`*SSgzP+s-bF>F@EFVuT zYsA^t9Z^#ahIpXo;xDp~Cu|)Z7E`Ka<9h}WMfD*^Kc(wLd0!7g^7qW2&#&TZHi|^a z);(zE17-(uMP0;UM~*FR1|ys;2hVhzEyWhcOyVve#Rs3NCG};;!PQ@3s~>{8#vymm zqjIA``Yy!&h~mZW*LRUmq(>T<2ZY8kl~G4k#>zooS^ zeAzeah~!@j)16$%eAIP(bj+fzE_V(U`rH4#HE=nV!fJSe%*8TdIn8JFK4pIs%k-R> z1z#<1&D*7R)u>;h_P^h(+J7Co-@BOla+aQD)9&+qGn>@qo0XEfpPv$a`S2CF6L1rB z0q5*`wx@5`sfayY!E)qD>l$(_awL-m;@5nE1IiZc z<;x8oV2V!3Rg4cSy!M%MZB9*6!s@m!_vo}{{cbt~K(Q^V7<+7zz+xD*a&GVV$oPi< zgpj%R&#|VrP28*4T~6_h|9Z{gZz)gDe5s@$ZU1*H+j7ng`m+ua@ui9EhisMyF063J z)>*q*fk)^w#?E1lHNqXx?(H=fpZ<>LDG@)MmgbM7WBX@5|2+EJ`oxoc?~T{7Tp5_R zs8?y_w-e-}86We^(_j2i9Yi)yN`AR1BPj);w-m zkNprARCj!&Q@Fm>fu?bM?Wa2C`ny;Qzkhl*Qwt(0^?{lx={w00>2WCp^>f|w%ep1; z8T{cq$v??Dj>g@S#0UMN?hi6O>uv%ed4@0Mj%&g z>RxMd^5(Y9QfVDvRDm@}_V~ed>2JcODAkTNlqdcQ*+hQOXwObIR&#)@DP||(;;2Ab zv@A6K9K-dgE^f-_etU7_^l@?Rk0M0VqRq}}Lty7DN$w~9RiSoUzdTVX8_+A3af>a^ zr2p&`B{}}FPh<|Gk`Dgbv|K`5e_b$BJ{usxLTPqxPBXEf_cSqMZPdzz^h7}J-~fFD zPQMX@>g*R(sNA>v*4_4G@A_Qb2=eUwK?6r>l;02!)+xnY)MTygjs@IPg}<498ZNXioBPq6^G$iE4I*{Wm}zD@EK!+10;B4^Pg*0^*B#r zU#B@)g{f&x$)XOj-*buMm4gJ1ZSlYxL*uG%{4PJUqa01NKNk?@i($7h&4FQjlC6a1 zL~LAeIx!UklOL%0m--H?WY^)dTk66(u`NMNt*Yr#nRZvS3B3}e1#Z#G@BeA!VAkil zlC<)UIfgf?X^*&G@4EaLd&fD@$&?ka~t zpK{i-fiRhcP)x4nuRgB(zs@CeC_xR<==UeagW09o{U*uMW?IUfb^-LrF==+Sb;gOv z=m5dvT#}7D6Ghb|DrSPPcFwfh!G3nl1({Zi2m zOy%PVj+-gCul8bU=Gbs{2(I5JAi?d-7aL@9MnK3Eo@=mg6@LW(D~Uq7Bl#S4uFbt( zVd)#c&GPX|;-C4u%*tO=;*;X6rl)|LOmF=FcH&fjh8(aT^Xy=>}X|LH9wand~t-C!;ampXVFFfly>#>tzXjR!}K>X^{ z^!yA&3X5(#Y|?;ak*A~w)aCLacEgobb6Iy~gVyYPw? z&g1pWE@a4OTHr_ze$l%$yGW+bGFgAxge0Y4+o)gaZlXbAk0Z&+M&}ptwQVtn+OJ=$ zcnuUpnoyjmW1)om6NRri#&^2IPCK-=mC*B=7N=!u#jma+hApj^6d>P1^!%U4C^0!D zHv~jeAzVAmI55GT{2DyTpWzZ|`VSoU-q!_W9+$+>L;uS>jLAq`QZ@=&O=&%}%C-<5 zInT)3`}p^0TP8ndR_U_c*k613OP$jbcZ2bAQMp*Z5k+ID_gp$4zoR~CkK)$QJygwK zE{1_ogtL`b-^4l=#?f%@x<2uJWZh~D{N<0{=x(l{_AVgJDrh2ZO0YR!HnX4-Vq2Bp%_m47gqtQ)P}i zN$;Gmmc^-b$fmL+s-Fe5wu#H_P34Gow9b;3>uf`M7PS+2_Q)!_X-%m-wce({upfi3 zPk+_*f)3VRaE8&w^swt?t+mJ%qc0}7{oH5T!lY}ca4j=ech9zQ`R_5O_WIo?Y7`TB?s z<+h%GW?y9d^*bn_^*>0VCg}rF1vqA9UIihgw6cguY(TADYXweRtlahpZ%R z2Cf#UAGG}2^b>RyTw=s2{jcR45dQir}*?6?^BA7FEr{Q;I z%=4CE)k-R>&%Q!KtM?KbUPs5#;VTApDsmgSKd+RPI8B7CD7V?dV2v?I{ocRx0`pj( zc9sdgk`q_Gf)dG_wbYczE?vu+8AF--32pN$^27Nz~Yk~NmhHRDns_i}X5 zdiS-X#=i!IrP3|OJ+|)t%whIns`3$QGH2!wQc;A_c*jZ?UzZ%w&XAhX=Mj@6t zjL(s^DKy4%nwpjD>L~r}AjKS7_D!fU@gB3`XF{kd0gF?AU$Vy{x*Z8a_3uhg-PsrI%C z>DcZET*uy6ZAl)HSb>v5uP>4B-i24|+GGt=F3AgYK=nTXa4-N?5l*~aq!E~f0wSO) z1y>f%EH#zk;1iyH&)`6OwN1geFfX zW2cya5evRS!IuYLE4n89NPow?M|YG=2vhaQQ=X!-`SWrRX3 z+P7UMCcT$Aztx6&oQWWuxrzTht312Y<_X z1u8$YEs0OP-rJ>P%kaN?`^2u4?pwxnu)vay&W{i)T|}9e#OQyNM*0vQqcrA@xU`O>!YIEJL|mbpleedk(F$$N5H<`YwJ zpdas2IT#V3B8*Im+{>Y}`4P?+jqtp;_;jb(*AD6wIboeG{=}deV8>U{&{Ux(BdO5S zDikPP&GSR_A8BsmU;H6!e&`>XAQ^VT@ug*}T$>j2yARuM@T=sD;^CV7AIcK9xSU*{ zH726mc338*4Vwml;uTsbU1}Q|WS_E(8-|mflDHe2l2~?-rfkH$;dben?cBndb&6C= zvU`Yry-;i?_)ey>_G{csI1O60{K1X>y7Jz%2SuSa+|~GGg&8<7%qGMC(4bJJ*q{IH z8{F1carMwlgAe|Rdzz6|NAxU~cI+;y7Ff_6E^7msY#CTncu#bIq$K8<;op7#?}UXZ zVm{E$@pFWMu&G$n6PMA^S2P*nVRxtje#+RHn(NtsIjQy!i7_@+?oyIm0V_l)8nUMf zsJvU9ftM&$A_}*(jk&T3L+F@O2{!d?oOP&0xy;(P%-mG1u1R}~*Kq8xR$~5GJ!p`P z-fOp1eq!wTBEoZY@-mCyQM0XZ_a{cJgO>4W&uO#tQpTuB51|EYI{-~A;WKt0kh6=M z4T-t34ilSiCVHBctc7EGWQcnTcRa&>^x$5dr_qopx`Szu?E~QqKrNh0&Cjdz2*81* zvWEKdSci>5*E0cV*^!6nPltM~rsMf1*lKCLmzKx-P2BPQvWh)A5BrAUF0mzs8jxq$ zDS^)b#lv7#$m3G#EsH`16ocFO`R4QWB0dD4jkR*t%}BJ==637%>WlC<0oP{lUK!cB zH)yQ#cxkWle0hd;ehv|sbSo>$aJ=~Dce?UWF78uA8P(qFrgXpN@@Tppb8ihb zej;B6Ws7dsfOWoRz@7wM)7y+64ZwFPrsd#D2zA4)ul)DzD(Ewy@6VeT7In90BtbTa z%MjsOrJ`_?uiqF3aI}k9@Nqxm93(`>C3y(ew6M-vfBI~>=c>-Lh51AlpGQlmq)!+N z7}vjtGM-G);-o^t=&<%a(#F8IXyd@2i* zTgJ5>g|}5)q-vn@EwgVvjKOeQb<63VUI^WQl0Bi*Nv42=uLiX&*lWyb zd0E!6c43bcd@jAmS@my&^5DMZSjg?>hy8mnvKY^F4#}P z>v15(?lpvEG@|P=O$cg9M9__JeR}bg48y%ysc}=3q{`1;kIO^IyA&pkG z(PrEt#1Qp)i9&=7AokJ~x40KUnfEf{SRrlOOUuc>bv%ye7ql2iJM% zzn`u}woYpwxFYw(rUcJ0clXkUqye5LvV^p}Xj*yrg&Xs;HH|cz-4*#gi^0tJsgG~h zTvVmN!}VAhysY!|5>1Ns8M89@ye7MDa1ZoNKT_l3u)ay@G^#Q0G#RQ3>~jon_(8~D zwM+$%B%>wRxR%;fBR zM}ydV^BLE33H6vcmone3AnT32Q`>T&$#n(-3FJ+P_71$U5t6*Ca~a4beOaR${nF0A zINd*PePUBe4pReR)2e4D#4dZ_(v2XF*9sZBkq8tR|CakIRd|wx%&p=}) zsd1a$IKJCmA5p-`A2&kUHx<@7kuq)O&i6DkmBLHRGjRItQfj%1&puA`E%gK0;MCN)&|5CCVa_#u`NAkh2q; z-j3SriuEGq?M42YjB%|D-K%)T;w0KsN{MNKRMjf2FTKqQ+V-e0HLYW!G?=esg@^wyC&YpY%ydI)0`e(i3sg6@e!WCbi~npbAF+6WupodW zwJr`yv~5|6b{Y&P+>MLCh$=Q87Y&KdO{rOj6Y2iUehwfPx<8#ny0A@gOhpbb`cB3x z>zo`Tk!7{Csl|OQgHB3$0;nWJS@K>{Kq8tjFGnIR$Qx%~5KQu$XJ=oPGta&1qpf1G zx>j4!WbSniOJkRZNs zCILo@7)0fyB_onG+eV3bKJ4Z5w7u;{)Rv%Y;5QjSOdOyB%UcZT4YW+yOpG|=r~4aM zy_6$8yBZwyEWXlo#6ak+%-i+g{HMql_`v@}Z@perml21owf)jsx_Ll>*1RhLievf~ znx_|AzKSqlZs^c7v#d6|m?gr~nNR=nCD+7DJZUHG?8P>)S6uZplX;|a@MFJ;^Hs#e z6v{zUW6QTD4!0Dqwt&=lh}>2)rZvEk9kPZ55`mCcGC}EVw;d0#Xp0MOP;yCz+z_f#ioEP2nN#lyqg* zR6@(7k0yDOI<-|w_?+?Q#jlxbb-&d2Kzz}v25_!FFsWaaFHI8OVQC3rdTT`2uX2vL z7P(hfPaCJ9T~cQ1R`m0-_1n-P$KB$H^6lxBeXK2bKtNTW6YC#yDscO+D;9PvH2`W@ zHAcVwVO#vr6B}B4Qm~T0{$aSs^X~cIphKNs@vkHQBc8i1yYT+d{2}91=x=OOlc$F= zzrI+CKi)YaFVD6*52ZcKEadsT_~XVAwHf#2sDIJ15t($a5jj)i$hl-&YB%KTbEcB= zRzG+>Wus_LYiBzTklRSi9q-1NPMh+KzU=(0DfATilA_68kl?Uqf0Yghm{`bgxbeS% z;4JV#n;@sjBe#N9n{(#t{d~l8&sgrUiR}m-fZE=bqpWw$QYn;bMEKDEe}dk{W}bwm zvp(TcrMi>l|J_n+oafBJB?5zYr~h%yroUe+{a*i{C)p?P?@Qu<8WE&X-i^2*B0Inp{7np>*dx`|HfE9awnFhm8Cwn>SFrN#!|XFv~D-(J^|I0+~KAXz3DZ z6I~Oqp6)17lWY8I@ZRw+x)PmsVN7YG1953w>tfV~d`pHnr^Ce2tumntxctt@S^fC_ zXP<+Vn8Q@JAKS5VT$vVhM$Mu>uEF*p9F{1*d*R|Q0$Rl2=9FWS1J zq&l<5kKR3p8kJgK$ci|}CN?yTeA=6_Uow@iJ>+Y>&KviiOX8TAm_Ow4l9=8TH1;%J zwv7s-)6-9i9JVZg$u|OSKb}A3)HW;ogj)zVC0}gBGAe7#A&dj88}gKd zeac9QNY1k`7o5_*qUjF7jJmmG4(dqVZ^<)#WyG>g`$y;Jr~{c!h67X=F-Kj1r#IWQcxnIIjg%VHL3E<@x)LO3aaMmgLrHG7=f2bz)u~qyP8* zZ#sJ_`{$1-C0yKn$|Wt|jQYRer&bHQ9_3<5U0?HEl8t@Oh9bN6&`1Iuw_k9P?IEV$ zz<%Az2ie=jzVUlvFd~@ORKsWqenG4Gp= z8n31VxgQswty{MFvOQY7_}$kp>*j(VLOwHfDL6wa2FDoaWANn6K}=)!JxKOR_Wf6v z{NiK5j`fB8vImM;$jGCielZ8a8})RR^V2%DF5eiuY0cw>+05eTXGYIkD|7aS zEyD>15C<~Mufup*onmvBZ^f=>5JDk-Ea)(lp}sbKVap5O*~-)eHtucoo$DqUp~hyYKLe ze6xp#Mn!sr)p6fR>9!Ej=h&b7eh4c{AJes(J&;YSL}IM!uC5m=N?C)+J^zy;BmVpJ zDQC}Bh7%>g8d5t>tDOn{Nq>vb9+%vVL*f`ZQ+@JkY8XbQeIctT!86Mc<1wb(1#tw# zK&JbLXRz7u0-w0S*FkTBKj9wP9s~Nj3g-a*L=X1>$|-{VybYr+x?m8r(|{uCEAK`f zUj33*we~J2>dAqQD!3ml!HnX*{ownoSkEG}>q`HbnDn84`?tByYB9F-%h5~by&jIe zY&CE!tFKw{L6b(Hq&$1D(dZxod8%r?+f-x6!UOrYKmDIvTbx7SKlzi$tf)FxuwCU8 zgISw++u3qQXgmLoujSw0otutk!+S<|oSqRylmOnC<(XJBqEplP1J~$3Qnkj1gU+R# zZH2KO1gToP!-Ay2ru>#>^rrAXces4bxBs2NV^ff=tn>RwqrN+vz~y3_X*7B8e8PCZ z9$z4pWRBUUud1-!m|CnV>)H3~b6)S7U+Ej-(}0QKN=0Bj$nR@l&81vD5s-%mLiaq( zbl&;>_IY;)88Ul%Av2<0prT>nJ|bSYWnxczJ30BfY}=6L;`0E%6@OHN!R7ij|3XN1 zFY`X5hy*nykj?dJp7mKxoX;AREaUE$Rh`~~Ezz_~t%TOD-707{9{)+@T7_*1;As_< zL+S((06s;2tc8zePUx1jD1E50YG-KBn6ngtiDw^XfdEsq2N7{OVxm*p++*J&8oGsVjQR)ETCRL2aI^@S`}yoScnnW`#aMQxyAe8P9^4UBMsf!MfXid4aNcCmM;5 zxkr7=SIS%tLJmdzb%E;O*k!pNj_2Q=-|U33%H2n`nR8`OK8mJnX7Hr=2B^}!477(8PH0a4Kd%LnLq~OeD)Zy*xlm$(l>3d9!;*P7j zUgwZ+bwiN!PH0P;fs7hT+6QlzokAw*6M0-tQpHuL*Wk5ZYHZtXoRH@I{)u!;uwxJT zCH~aHZW8m^?QI2JH5b(}^YHKip<9uxxM2G|B`oe#yhdGsRm;Mw`1{J!ZSm&m@9 zsZ;U3&t)GulD8r6BWB&jm$tGB?*@EXL?@qq{!!^B{YIjAUhqIN8o`!b_jqD4Je@Nz z*K=z{al&(TU`mo86`N#mBYTt8l@ZR}84wcN6n0BJhODVuX4NOP`LWKgV8%xXZt7f& zibLH=0YL3<)G#fK11=AwUG}afs*ES_!N(OV#}ewhVwrwXiI#c+=MFXx>YRPxsh$U6 z1TcFC3qgp4WG)A5??(j*;;%5wnqkvj1gL^+5U&q~L8e)-P-%TGMZQ%tjy2K#LRl+oa7$;)yeNwe;qK z7Q~?8iCiLop&&5flRyRYZel1>3Jlr)^b2ABPrUgv`kRq;qJf50W1{e3U(NliEy75| zz;t$8tia~g&7<-XCV!<`@$wXgV>$=9FBNW4z|kIj@~(nG(8NYL=NH;bbXUflgYat4 z>XgrtU~h47O2^56cuoSZk7qs!LVTmApDA`rkK(rgji5@`h*@9?ttY>wXTav-?TN2M z)ut%m;Q?xR@D^Fr!S@C#D9LK`N+wKUdnIP;&HUi@A+NabLSe5;m;llhQls=e$he1R zv(|Kg$2XRsH-q@!*7VxQ)&-Q_@*P}lEnWIOpBXku`NWd)nI+332DOitpi20aHntcki=qKBvZKF?fc%s#a!O9ySHn)#W& z%Y;_ze?A#gK}T*Hm}F5Ck5BjgbVJXW0=QO*(GaF`sr?5h3K4XsgDDQ@e?&F0z4nHT zn{0HC^=P4;^)WX+x-3~rEexPLt3SxQ3?#C<^k!t5=tLxq)ejYS5c88AFQ|)#)VL(G zv+p!MbG;mP`KpwuA|SExA3v7*AXrJBEsS*2>LZ(PPP6>l%jN@G_g3gvA97Avi)&&;mY}uk9-Be1sk`ah+nn`ScH(qazgq%OHdxV6}UqDFl z1+1QQ%JC-`jCE71wvv2H%$?*nb%j|wLI+aeV`bfv_JVbNO_LY}hCGM%)2+JE&?{9_ z&&73_ZKs;L!#65may&?ZxG+PcyM*2tB4+d@^CpNtw^`2gj`pO32HPB47j=C7RMzlZbn?&;0zElbea(CZ)6z*#COy~1S*TZM*FMbre8kJaS$dMSe zE7TN_q&CuhJtZ-i9j#7y5mz;~$xN9jo7hqlTG5Y5?D%;_x+lB;Zonxe30D1{-@(m>8H*SYq+mcjH|N(cRHrw_TNc|Uahw|b%z!v_PvzE4x?O{&yl?5nW2)qONXBL zubCy!mHN&%9&CQIN=AU(6=cny@##QrU-A|EU02P{CJkJ~z0B9^`d7LY69S~HC3W*s zJp)He-}xUOt!qHiUpu6hloq?p?DNU&GVT5;H!Zs3W+5Yd zWn|KhcdEJ&d`94esOby>$e=65iqsBebofg4s|NC%y2@qJmv-aJgL6$A_|SLgJ&VI$3QKfq>A+^@OU?L7e3Ztz4X@qISc=TT9RlRy78cCP zjGl{s9AFiU9j=oib!mD1AxsGAO)7UT=}K=tdH1>ob82+@~ zkV`)#idSk2R7FyJ2$%rhvc$UeB2E{>#z&`%dn*%)dqusK<{et{E=vW`heDxHWM@J` zn7<^|%Z8cv?xfo>#u*9dk?B`yD4IlJJH8v>&oQ&l0{3m4JinR(pJCZ>FBuWrKE7s_ z+6@G6QO$)>>b)>D3jw#D&Li)DDPZM>!jc*g6L8Pu_1iM)JyZjWOcp$@wfK2Q9jZ*m z(=64oJ=0_68YKNmeQqP8=4?i`DQpe(DNYnWS=G=OTH3M_ar!xYZ?;0V<)CtcHNEq1 zxWFVRKjfI2t&B{DnXnSG9q==Z&{ejr*DQ69}?s0pR;NzpeI}rNE1L)LPrtw zYXINa{Au1tFbMHPj1MR4wg98xWiaL$(v6}Mg$J~Y8C`jZ@iqSE$+Aul`c8}|FmoSF za81@-GA!Iu72EClS+{L1VmZ!Z9A(Zh^}m59KIk=b!gqyXl|(5-uj>5ipctKV1D{Qu3!(`XjOMGSz7j-y6R` z2I_EUakyk3Qn<#bZiBDii}Sk^UJh5d)6|g=5P5Zhq}liEyZ*|AbMk zXn>$vyOuSC?h|Y8?MmQ|1!stj2g)rs_Mm~-i+f)iAe73u5E|*m`ya^1Xh>zUq3__y z(obhS2o*nHyj%^q@cjHNZr1VrQGNQac!8e}fth7bSp@?h4Y3?5@87H&M%lQX;}(5I zh;7v?N|B=-gPKBqKBheDaw%xoesk0BVax4_tBk9Id2|yg|6-QyJbLy-t527V(5y5H zhSnw{G@!Ut`|)tdG`j6Uae3VlpGpIEjH)-YIeKl@qq)xjC7b8x95bM}8t zwnVS%Zr)0h#)at{d~~4#CaM*jfX=&2`E#zlW`^Fs`dXnCD||kP@uT2&s!``K%=$As zBTUPqPLk*>NvEsXlDexJdn$M4$p~|t8Z;WZ`ix|5)N7vg+1$%Fm6#qn5hEX2f}Rx9 z-PI6mRD|FW1=mIFQve<|=ekG^FNZH5M=+=BVL@QMlc6s@pJ~nZ`Z8;352fX$+*(+I z`L)Or&9VhKS`Xj}3(U`vctb|9#kyI@yPvPhZ=eI)=|V70J8btIfv?_x1>%=QophJJ zQ%AEt+Qxz(sSVE4;?8>jTU=Tx*NI(heR)^i_?5P{;A>3P`&5hOG?fvr;x97+#WTMw zi@#VHmH+;Bs}!0dHS_01;%iWD11CA=HiNz_#984Ih5+rQA2sWy21? z9QQFk_d%(T7#z!IzSm@C`+$jRJ|XO~vV_#Mzz3Cd7J}-4%!{j*%C~@cc6g%jMDr9# z^;6xPdsVNab=dj68pO6NSku0)=;%O*DRnF?^SV3BQQ^Y3_>L_r1&5b5_mmR+39Nbz zT{N$L{Xe=es${o<0N)uN*BA3GP{sbMW>~qeifyx{JS781r3jljtv@TQ&Ixcy(e21R zkr)y-iCmyN(Y(b!5^sdqoyi-be!0xbIR5nKkVyyp7c#>E~eEvVxrf*^S;CIgE)sla2V^R{%$cJVCONxQK)h;b} zkl^}%iT2mRlDW z*oVw~ylVJlIQNxLdcPu_v8FPelIv!s&^@&Am$1^G^7%DUIC(xiuw=-PSn2IPAiVb; zfOnJpg$%k?oxaWJ*Q51S=e?;`>7MhC+a$dqkJHaaVfo#uEX5+Q%H;@=x$bg!@w(I8 zZ~K?!W^AltQML6qfuEH_$3fS5VOqz9!d?LLJp<@*0_IiMjX*Qy&X@=aOVN{hDd zy|O0k!Qj%)n)&~p0n~4UXpe2WCmiwO^SdXRyN-j8MXhYfs@-8+Ad!8kA?Mbd%0Mxtb*;o-oxU73?0tvs$L71<0D1(A)2U7YT!O?OF7WfU$eg zN%x-(rrWo?i8QSat@vKjcL+UKPioYF<${I1Wc7-9V)=8W3!PGKf9=mFKUdm%Gk_D@!kwqGqrlRfX{50AP`&!`=a z8D=FWU-4B=XCXIWgw*9c+0mVC-Z!~AZd}nP@D}F}3+bg2U zlfDvT_H#2QHF+B<^`czX9D1{8))ETaFLpJo>zuzq75j)4PL>qmfM4K6C%jN-`eiEwJr7mmUIoSp`~ z$iFp}kB1TsT>{0g&s&^CBk-;`)-%+>|Yt(ud?lXrAM!p z*n4q82^{?r)v^a=s-lr_-K2#J!Nz;|nX6luI&yL;(f{ot{^$>J`-c0}R zF6%l9%{>lqaG_td*uTG2{=^7BY*WsqBHusg`iz#j^X)>6_18PnBatulxS$0K~!3*#V4ix<1_TZStYtIITOS>3{yF#KQGC9cqRB#X(TT zZvnRpYg&a**QO>TL60I0UN}8kZSafwWFY*LLOA{RO|;&MfMv_mylEAPB|U}k-=-Ey zq|3ja6?@c!H-MuMrvO8ph#ofYbMR2r2qZ3F1U-$Xd4Nd<%r5;|e@BlZ*kSf#=B1mA z=~O4)7D#6J#Xm1(CPkU}po>kFpn!y%i3S?vbZ9Z_3l!hVW&+ULjmFo zWLHmj5O|9jBNWF{CxWw^7s=X@((UOF@w5>^BZ&f85S_+6UvJh4zFIjk%Avo&gC;cT z1kbc)T#fEqx&(=&gIQ9r>pF*yrrqUEUgDhi*m}rhyvF;@^n=v5i`&nx7f-Xe`_6#NerjvIud3D)c28;`>IYv^Iu%?o$QOJP%fN=#<_4A z;`G}))wpYly3}rWnA_8b60jamE0&Y{X=|n@%U?n^9*$p%M4jWAUSa7P{dU~WYF?PP z>K0nQ^^mp+&a`ngu9V=CP|j04dP8R_Xi#$qPQ2Z`*qKxs@U(x%IH;?(f68GO1xT>daw~S)M!MJLY1|iBm=h zFemA3SR`|mX8UTG5Su7!P@&1XlhicEX?qD0>3T`}1-5$Bl~0dFQRV6!^^X z@R_LkR~z9p6Ot3xpyojQTX~5Ub<~wjZoejE`oPX9TcF*u_9Iuvj5CCdkQ8D|c3)P%TbA(6gS>F{GX0_|7%A zY<0S=TkUxlPT!{=#WmV%byFw=(+W}s3W@j}?F;Y&xRU12N%y~zGUG@dP+OoU9$y=> z#!e=uq#kupq6oYxpsfFzs6vB|1Ez0Q$riO2ilQn;ns0xN>z5D7eP;~1Gdknu4OwpV z=MDZty&SA$ym;A@VzD?aEi*JN{pwVaw<9fR%sKd*O4CzUH#6gb3M=Ti?@tuB*!~Nc ztMg=9^j-l`Yd18R(b5>Wwl8NIV1@>e*Wu6lAP{dgn<+)74EVo{jnFFw{wG4an#lkB zI29&#k8H%q2;OKh+{Tj!)_4r!jr5dtd_F^TZ$Nhf*9eDsRku8JZBDns9T@3K=5ewU zpYsw$Guu|&V{>@~NuoB6yte;(0qUFw=rjtOtsTZ+D>i(@bheL;pnR;;8}xjpAHo4% zjNOMWRe5uoXA1Pna#B>weZ!hp$yKGD5}c|g-W;O+*`Bx=m3~#mv(3xoh{R`rYt`ty z+bLY^jT8+0XOL>vLCBIPu9eeNlS@4Xc;qUTOSNMW9@P>V_({5!x{E{qFLVOh=4*^e zr4oD{qllf?i{a^XYZkf)=6&X(=xEcA>(i`mDV zPqUQuefDc(TtPAg1y5zms`f;gd1v_+;#j0poJy}|2e!XJSPBx*SiS!d)G+G7@0H}o zE4QN~i}LdPw?xfzR~QGt3M>x$MRIHt+7{-^I(s#qZq{#nhhbYbu3GM2j7ob|pS;XL zi`dWB*XoTQal%zRbGqlb&U{#_XAf~sSe(>1LjFbEy3+JIzFGK1Kh)L};ds6B^qPK9 zw_7VW(snc5j^myY6eNI1rsoVYxLBJqf^E_m!XZNUVUG42H8@d^F1a%^#YSm~P4YLO z>{l5%e$I7=44K2+j+v{-4%5oVyG}?y*o`MRe8eH=ILz#g;5uglh5ybo9-)1<2kzc( z4Wu&Hp&@Sh+d0M2dk6zntpgOIeI4Vr-%jdP`MxFVF1Vts+n z5$=zwzoP{jQ7O@MW8_6*2SvnXxtezg^L->o0lyq<`Q;piA%XOfkG&+vjxf*0SznlL zKbvni(m;98RQWtsn2=XXn9}KHUk&b~Xp4|OPNmSY|CsaJOpZG|-HCFKK{`QmQO8u_ zbW0LWM5tw(bq@3sKU;Q^5Bzy2;NGP*M13cZvR)DOgnqfpD$^V*1FDt-Z#Z~JSS3uU zq$G+uv?ZhP;~2^Z_y#ZhEnv@%RB5k#oe|PWm+fo1xNCPFj_;*eV_@x#`Me4z@|n^@ zsLmmT{Se|@0;^sGaSEGYsB4^mTVrGl4UEr?!WnVw_wQ0LXdmztcS=B z*0|M+)^vhP^f+$I#d%ehh$>iyy@<_9iGlWd=J?pF<>gh z)?N54RK1Z@VT6BiP+y`I`bP}nT6%t^>$h1`B|NA61(-^e-Y!**r7cx)T- zy*tW3KsY+-b}`~@_A^N8tRMzs+T$N~q>g7F!uLk{XQxjdpgCrUn zHkwlbNC-ct<4%JoPiFN$4aj8(_aQ9)vhu@MrXTx~-g12=n4{1Qjwr^<(?wPPGz zKe9m5oh||F%hI`uv8bvR3av${2DR0b?j1uD1UuhB2*_B8sVWUaPxQ5Kb$T0=L`A?Y zBAYjzmoA}{5PniJuUXfd79Gq=IzfOYQcczTBYZl`XN$M6HASH7W<0S4K5C0eJoHF@ zl)GVLJ|Ghq0tU+)7&_cQi(*|u`E;4U&e0-(`?6oACMl6?#Q2H;?*Nm$hgwP|`g8cl zHOj$=6?Vn~dG?eM$?GMe3s=%h(K+KC@do_Y`GuS6Gc7~)4LGd>>YYvBe4B~9gNN(- zO_QLl@ah*8&YQ{zBC@6h_I(+tq~c!`1?$t8euof}EZaNr!N(SPb8CNQ3x;T_if%S- zsg8zCE|oF!=Z|o)LGOO~LSF>DbAv2m_o9j8_U{m<;hg;%{DW?<&%NOyj>qn-$68h!6Ftcw-WKI@W14&gkJK zBhAH>Il*14({j2a7E&Qp$ye9l{L7|-ml-o3m?3;t)HUly6ibsc@jH{2*Y4n-Iju;1 z?nq_ANKby<;WbHR#H4!VTYACAmnF3m65AS*WQZ3pGOq##1ujNoWF0hUZfL}~j$_v+ zOKxa+RSsrN{QB(@gr1EUC6z<=&Ov2^;n$55hOQ~*b};( zZRX({l$G!(ORVD*OmgE$3^%tYSf;$L##}milgFzz{cS6w(vkj@yBGss%w=M-?H{DM zyCX0SHsg2aD%XT2N&ojC!`&Ja*o{Aa^DgN8Q7~B*#(;K_7p(aogwX5}&tbhxo=XI2 z_a5tyeUqgF@GgCJNi0u+uH1}xwjTf6G;;;T&ivpqQ>RdZZ zUJNB3ZD*9)9(fRUlS9$+yvsC2Ehb+MQUKi_f$tgn+Te)+KBrY3=QGz08wb4CFVdOj zcmqYz_aQ5YiyCUct2+akOUX5+Q}WOSYmEW+?`ls^QD%Z77A*A;EkY+SuO6`?7mjDC3IDfGalSh*s{glxKOMs{xJG^SqC_Rn*O7DBJHfh>!MsKLkMqmuUY zgmx|()A~P5{F3jEL$q#s|MAQ=u$)rOAd^@RFfW$|@fhI=caw-g!SoTHBY$8Ct~U6> zcQGT^ujk>3dcSwK#)F!^6H2?i>VUC&*`Fu?VG=4Dkh_J5Y~$iwCW-U!!>(x}kXL0J z_XwBsT+s*a^0xOw!JnibCEU+Ur=UU)-6|H##}i71)@h~B{n}mqE1CV*@@IF_-uiR< z-a-n7mLADJmc9}vEgjhg*tuWK;(UbsPWy0@S>xxS9I;+mfw%y>t7#_9lr>X46G~^O zHX>lh*|KyRDOq??65omkW2X(8Br1f)lwu*Xwi>U4@(zy>fg?uc4z|AJ880NO0(~Z0 z`3KDY-H7Hx%4l}r&qZ}hg8fMPO^JgqOdoopM5gt=ouqIN`LS;Erk)bke>3x+ee|WN zoVwXLjI<>D;e}yww`x%Cr%PY4ln4k@2c}7?|8K;?0muBPW1p+WwyoOn{K~@xs%}vA z5L*-4MiKw1!r!)o94_;M;XylvCz}iU!RXqUt`3+1|5Roo>mP8RP{17wxyHDO7z0i& zk*ne&udC9H8t!E}d*wO{bQYf_2#Vg$T)t9A{=^L5M8E`$)=sk-ctR}5gvaVg3oH#d zGn@3gvXhXm(+&s5Wv&sJSLqj+vu1jp{l&f$t5RZuTlKmqq}}~nGYM2>D&akoDe%K@ z+_eg$d&b>L%itqRDc)MuYt!!Z#V4EK;+8rl->!_;T?wnC|5S!hqg+Xl zIri?!GvR`u+1G*#0qTb77X(ht1a~HBRd(R4BIQIleeRvm&)UNtD}F ze8OG31sN*9Y4FvEu%>-u<>FuXtaQ#&2h+OQtqozxhQ4w4rX$%}Lr_XZy)!bIdq|6e$a|pZ<*=yBkx-b6eE@X8_H9lx#@L4vh(2@FZ>O`jD~eov|D*2CS@UZA!rN!Z_<^olS19Xc7#GAf_No}B*^HK{a=G`r{2!A~y&go$ z#7hu4-er=)j?q) zZ@-ei-YCCL>+ie4r<>75weJ*8-_{y8&q{+jhIW6Be>|hQqiuqU2nNPa?I|t3{EMu( zFVq5BEy-~XtH?e(ng3oE?Y=V6-Lkq@k&2?s8e!`uTn$%)4y8H?HvTF(D8%Ub3i2xo@Q&E5CZ z+X3GA9?>Q{M|@0kfXEr1E~Sh!}+CUHbuSmOKJ&+4X039070!IvkiHz#}% zM<40zHC;O&$9q8nHps; z3e|l&=Gus{{AJ*NdQ7O$8T9$Xb}uTHPO4|dh^rxrbWU9<3AI56M<)N zO~oDI+zq{Zzx~|=6Vt;09TO`bCE^ni#{>+H=_l>;A@ggx{^l;|`@szkT}GBY#FJDomelKJ#T)7OnUn$E)K)mg*qhWy&5Vqrw9{ zeA|mpb8eOc%t1849nb3}e>u)-{WE4wN_nua`fhJq^?_buMl2M3C=lVRzY{IaY_w=W zpgZ?DP3FYt(rEv=#x+rQg1AAq=DyXX?MtHdKZbOWg~|VZ)zFXPXaalfFMRU)iVsK? z8r$S2L@&DLvwqL7exy z6#lpWs^0h;0>X4)S1@zhi(qHT?Z*%$Xy67}!s25LZM#?F2666c1xi)%#}MDQYTHAU zL6^w0-PhHLrNV8F?>*ceJ~-CBzmP@TrDR5rCy%Vfoj$o4(abFaeaPB>*~)bMlP||~ zg>=IN5!mnN0Q>ALQt4SstoafK9Y|;kqsur!eWy$!Jl+iLnY#m+I1`-_pO-a{UplMy@$0m7}-71CjqnqY57_2&y)`cjvzV zC^GbsuNCEFk|5yVV3+_dXDl%!jCjW~X~e9lJ7b71+pM(T6j$UY)cuH78!x`frpaDz zLXt3CoqE+kM@;!D2T`wY@UiNLHaX_YJ;`>3Y{P4DH8>~iK zh6U3hmEV^F2EKsA-`5IC#h7J0IgQh-@&0o@&)q-A{*Gmt?#nDofscokv&pG2>?udU z%%e5PBV50zGt3S5_=?ak{`K&)db8~`CyXBG zlOfR&55On-vDqKjHGG4#xF4GaK_K0M_w%&oqEf~CAcR*3xf_4dHL^R656?7jKk?V9 zd{Dngq^07O*ps>ciu?vU^(JivcEvBGK9>$QtnuZ@8Y`@PnHz5!G0F^NpI8i%2#(Q$ zz`19)S;S$v^Lw3Nh9-!&C>T&vG^Rwq%p~V`c5%Qvp=6tAteDGQId7>}dfh`awvOw? z1MxK5NT_Ga$g_2>Yiv=2#<#~Mptc#ed|#F&X)(Ut;FKc?czVIrvj$WG)g$P@Qp7Yh zSzq6dkBw`s;u3E_pHsTY9Q3RbO3h*lq`f7ab%>XGB>C9ZvavbV&Y4NOvAvl5M@#DT z+wV?1#d2uh-1h|~^TxDDe*~OJFRo&11b6Mkur5$#@cyZZx``7VIk0&NTfkhG zCDQV6{y}Q~L@yq4*(PgAdJyh330h8g{d5jDqh6+bxxIq>U8=7pa&0MaS^n893S^L0 z)6O}`){*s?(+<1kG}5wY&*oiwcx%bFpa=At0#vVg&?_r(ipL(vi_7SXY z@2c?-%PIvDUco+XQU6v!ef#vo7L1jN+;+3`GjuZ| z?@=$CCGw}YRO!>Jc9LDP%o`~I6<;*vv3?Du&lgE1eSYaC9sD$qAZRPYH82?9{d35^ zb2D=Fb>9zVh~@-l8jhTQe$VxlE1lCH%aG1FG-?0vVi{k7gzTO80IYmJiYH}vEP$}M$LU^x4)lyEq#xF7t2I~V^KNT`(Xunm9td7#Ft?T`K{ zua9<{ihQb&%DLpqoEX(C(MhAk++Td#x8hn9?2N0$<8;Etiqz+=9lBSL4(uvlo)|C-!Siz1} zZb3vYp@;vSlWRIMRCxuJ?gVz0DS^)32Z5OZd};f>mWCgrs;W1=4qtRoxs4^=BsFE6 zVYm6nR14Oul2g0doh}7^-a>)~Ai13;oAt?6M4byM50s3BWq@@G9VUImPDCOzhL6D~GT2NVad7m#hlKws)`AE;CfnT-erM+R z2ZW`nK>%5U$+4=NOGZ&3x=Wu+8;IEW>A_`e1kW=-6^DI&45TK=D=#F#68#QeIbw}| zoH$pL%;ak?Q}&tY)#Tnqr&8q^0RuR5w~m}&JLvu>4!E)5thNyt=F2j@GR6TBlT(oX z;nZCGg{EPoG|ms%QaQZ(tB0T~ujf^CMEaS^H@I=Xv1;U_oo-#bd}t`BH|F7NXge<$ zM|o*ISz@@@+j5QT^FxWG{!RmVxSz zw%eI>9=)>YWEPDRAsZs@h-fjHK9l-qsT*XGTLImh{girZ&f^0v3oJ^D30MCkR& zdZ17AS7`x(jqHtCIz-p8Jp)85(T#er`;nMm{*nxZmlQ__Xip#bVI~7F05_ zTB}dl=MwPCvy^bwpZ{5idHYO@k<$ZLir&f6$(jvL@+b~<6SUs5#@umGPgxq$Rn8bZ zWWRKE8~~TQ>Q?l^eBV+&IE<5ibWS=cnZInyDdB%ss|bZU3kHglxg&Ewv=IfIe$HlH zqhjp1ukjo9B3;*3Kz^N-j-6LRH?n)ed}oMd|Fw|@Lt3k@2iX%Y z?$nmD((zmyj!jHGUN*mV`rL=z<%2P^5(-+H3Go=h|m+(WncolE=EYPJ%~( zLhk3PMg11^7X*+Nkh=e>9&GBzO)4hc5{7;@q0x_|^;+a%D!X@HOqH8~n;6E^9NI$J z1*p)ifsDYTt;X2@dq)5`HAy^eO?<%z6>G&cJ&Z)%|1&loy+o1N-39fOPn~&Kx-eRI zdB|SHt-j63&VA_oxB&d=r~J_5Av_VQ2TmV0~jB?fVYN`R|4vhKXVM_oiAv6 z*E@VkbWfkk+tE3V#wuUQ?*rpzu4D=uj-~XJ-#M4KHR*@rdpCwMmnCeh4PN1nRw9t&CAme|q)zdoZ^04cEZWK`0Z2Z=lxV z3&^H=rEO1fTz>#Xqu@784hxCCZ+eEp>8q!}MDAIMtGgmj~YoQKVRp(qi2z|gmlNzgA0siThnsnn0yK_@Eb@w*LFxR!3E?byl5^A3-Is0ZjqV3tlmeTfEXIcqMAph_E zx+`)(;t@FS)0yHYuVeSiP5Tw2;O-W&?sJ+`z8Ui25*FG&7>Yj_d8s8usSLa9!yk6a zl8bGT4<9~NQ5-@%5h+Pa&yMH}>3gQ+fsv6r@qmi`HCd#3t5}aqaMroeT<_v*0dirL zow7tSOC9J%hR&UV%o*wYnM#{{1J_Og`d-q%@~H3#V-(1>&{S6(dLRo@Y0pZD-x z)8%31l_L0H-oKg}YS~UG%y=7ZHg5Mik?AJ7Lo|g%{6vt`0+8>D*VkXMbB^$B(ux{E z#tt$ns+HA2lNNiSRX6BwQ!3)qDmM}gV_O7L6-VY}UQ7&*hL=9VkT*tIx7gGCQ)2U{T_>P+E@BL|ua_n5a^iA@y8#*0^6Cvv44vvp5z~xmZ4@)2j=_<(M7YfE@xJY$`a^ zR&kVL+g6;}gxt-|HTU})US1(HKFm9)FQqMO9f9sxU#3RhEIQ`f822IB5XJRVRrOE* zt~}JuoVYpeKfJp9z`iZ8BC1~anC{eR2~~STr;e8d!_{Ts7|=H?H3mf$reIxzEQrI05I#zIF1holUi zew4O1biF}30QMg{#xGIx!n~6-yP^hOW&f`Y-mQ@q)3D4_|bWmfUVb;VD05bn`=B6U_9L4;VTdIFB7I+p%f6osHpg<_(p41f>a{;O?`u=4Pv_7tcwr}MAlen~`G zW2cK^{Zj&0bpm{3Kq@HZGK73FgeuR)?C?KOweEcWmedMr(jW1DJAljHY0AKd3iEXUgR^r1SN~81JKWh+UcSbG-rZXcJT9T?by_x#xWPUw|kL-Aez0z(^rh? zCsB&?XrL4?~VC(hE{_?=0I7 z%mnoh*^mKOKP@`g^TuX9n%SusvC(vRO)^Eh6F8$TGPBg~UuR#dT%CrWFNMgqlR{=S z26}AHO3NZX++p#m|3%d>GM>=-ra67O+qJO%*TEZ2TuI;CSr}12VUs46SZ6h-+w_!c zJRL9HO@^ZdY2@!PQMMIFTTi4{Warg-^8h(6aZxO@@pWTkJgn(Eu{8DT8A0e8&;v=g z0xxN2o*a5iFIbgSvUZ2mO|S750~Vc>t%N0C>F-(g^ZBp|>>KjBt};VfKYg~;oF z6Luy6C!`^q7tO$OFOgTkN>0PKzLGEsqMN8{L0U`^`wYl5nx-*zZ8aS1&6S;ePrm;b&EC+&$m;(AHNd>c z*#IOJrpPx%!-JjQ`){-SyWy>}AN#C(?bwb4Usjggu!sb-jeHF=9)6zGW?1QOyht;@ z@})FNue)*|*bwfWn`sHV@~u*k6}eXz0Dzva4hv0Js);Ud8$^Hq77^0&agigN1qyfl zFvedTeDTSR|1y@`hL|wM(qB4gCEs&UZb``w^mx+7Z$d!3=xk4P?55u=A3WmCkf7Nr2~_zV%7U$)h3G;gs!pUm#?gx z891`I6ztJtZBN&1B(B5%qm#rG+jN&oad?@AN6gaDLL5l;EwIyy!-WyAATQIc-Gm5Y z;473=>?bR01cu_{WNY4Y2V~J6|{zoDBOytC+_uS61jaDw&qhjzpWT~(JW~p8-f!iI^ZW@D!Z_E zTW-m+UNUw#Ug&&|;XeKErtp%$LKl__9G*z5Ci6I7Yw-#YNUaevoV<8TJ~$V@9j<+)SI@j|4;`eDLl9x4_((fO(}}c@@ugAI>&_e17qHW<8ascq>gOB z&MnUZa~Gnl*|g=x?nIdHG%#XO>$tgODDeFANxKK(x=K){T9Ba(ri=ZrCMkT^78jaz zBpN;V;dh&(%V)75I3)ZqNMFxo;xh(Cd@Wtgm5xvYYgTdumj~LoS2!P3QlQ$aZUhU^ zB9q$QUXDJl&ZR@cHn}*O<#FjYQunpgz86x9s!~)*vZjnGG_n6$5#&*plceHKTx zY@95kzJHv12sDKNeen)X#}Jja(kHi-H>QHLv-~x7?XFt^`<*tkH@Aqup#2--cNa8N zI+>2QL49nj)yzTDAH*ZZ#R+PTEFk#`(z4eT6`D-X)OhQyRRDHM%GWcJA|k`+n7L)% zG^QGn;k8(!3EY85QTptf!|Y*~!7eOCZM+0yzV>}`-5tPxP)t^!oYOOjo!s8Jk`P5C8Y=J{#q;?xyMW zZdswFDcHq9P5k&@li1kyiS5|Q2#k#>$0|wB?w^nArJU{kd|BHeMLs9b$MZG)JG5ME zeqTS@ntz+hq7Xy-jkp&ZfK-HDep!Zyx#nc(U;ONMccpQCF&V_c0PShGG?oJ4P2fQX zJv4dZDM}ZHOdrsw-aN=)hC7a3R-pAXBtCkrS`&WYC7fKNmu6>;h&PEnEy%+O7+@Wi*SxHHaV>h2Cpzl{}Et28exJ`8*$Y9r)7ul3iZP2o( z9^l24)ODVub1P4hROf<^IcF7!@#(gYWE}K5*#OOUzcsX?g2;k{T&;9};Z}k zr$gKR!b5#OL1-N5+uEa?lPeE=wLj%0UCBL~yi>-enE7mLh3a?~!LVjSc>;ne9VN|I#GSleOF{xksluNH3q5oN`iJ2i!hE=Y&SnKV{@R))IXQ zdoxJbZ6Mn?u(Y*EUURol2pMq6EQ}3qNtGF^`TNx^_*T=O(ggh6h^+as19xS6ELqt! zmf_NrrptpGBmJf5wq>&GL1YwrB^zcFw2UUjy9bA8z0A1b@ z1C-8bnY8C(@~8aZ^%V!}?!n5E2IQ{*fd1OTg%r&Ng}gc;5UBhobr6Zki7?`8JfVo+ z^E{E6AJN(CSCt$mzf&BU6_~c$NBhI*k@F99o8!|lb-cyGFKxppbH9{O=KT>5#X?ZV zA4*sjW&F?l*&UdP&eWTJT`v;~fKTzs6?>CO$B2k^xKe@+6yDVA`-rGBxeThn9j03Z zR}>tl!qRtTtLKrNG<@&iQD#-J?)ibs>DY^9y5H=Z@8+hb^h2Id{Z$SkuJc@u+*r{r z)9iU*fi10=ZQu13epfFmc@SvYrM67}j`A(q%rQ2z3^7?K99_HNk`6ryalPw^^{d|f z4{0~#Z#5-sQq4orC7Nt}?*!?H{pEKvait1eVH)MzYu|iDL)G7~!W}$l{d-vKJ+5XJ zchY;jV+D+i4egUJx)J1^EeTm6LLW<7_^1_Zf)kj(ZBtDlSCgI zmIL~1m)>99oYC|;Z}cPF9JpPf9dP_30FhkUTr;336QtD(ufF_*fld zxLr{C#R^i0*CAHT=hR+Ed!W?Tj*rGW-QQ6}k476q1dTzlNRZvow8VU! zi(&!3*y%+S9@6Azq}%ltH`c!Ht=S0>bTfT5Xjb8E)@yblY?KEM^Nrkn`hoHe{mB@> zRJBi-nHV8qx?3opwKS){Lms6^2OjleWEC)+kZ#&e@M01M&az>Cw(@P4arcQDkAm~1 zA}KMOJmXiJa{?PAJDH`c}bgs9l%WYdAQ$8xnmgp z82y+ojgEbNTD#nSEc`i7Wf(OCo{{gKOq&jxW}K$pOKN6F^!vUUZX<~bp!AXf#Qjc5 zt5m6EJm~%cV&l^E7DrY*4|BIlvLv~Od|fS{(>Ok$NvhXAQ+6-c3ySW&e=E8w@Hui} z$2j_xgy4NH&-~vb1@t>lO2KioWIDFH>fRvma0AaAdHbxRC57k4KbazbVlho1t<~ZLuyIle?(z+!PMV^F(Q@Hfo069R$zZ3X<7P$fk z@`bDAnBD2S!T(S~*QagQr`|FFXMvqlxRnBI`0ks3#*E=w5TOJW?IkJ z<#f?IdDY^P%j^I4?oot$RIo!Zy8vZ;s&I0^!yQAZ^Q%4>ESDdGAdbqW+Q~f9$Lj>k9?W*)vr`(g^Vvb?RmDPa@fS>7s>1$O)Zh3SbmWq zqDzsXpS&VNos1$wj?YAfDlkq7dSA15_N=lkFF$5mPFINx^)ibnVsk|zHK7C4^Y&G{ zy8L>tsf%NvvTaW|IaWQ18;bpZtiyw2%$d+RdP~L}2I*^XH(V-=eR_x>4 zrvm`9`LogvnSXtm=H9QmWvf!}Fcz z37~Ch+`9-G*6VsCk}Ql1tl(q*@bLqz$8EnuzOg3ulx4#) zhK>7Ft`lSwr_U+Jbj?FSX7SoRw*E2)9?Xe~j#hQ6V6g%bDxTernaw%`N5Nbl+>3uA zN|kv3BY)~u)?Ita{hW>zU5d_Q=^M=?8LAyXXl~|2EIhDPRVYztNFlCsK5EDLabEV& z6WMB5jD_btq5n;ZraR~R6tS)5l*56T8C310Ry;e+Ge*RCnDtL^*{KB_iq~qdKuWk) z18%>;cp;bPMJ@g_fx|$cuyzBTsF3?wk+)Vv>9N};)%`NT&p5dR?ho)JKBH76R6)C3 z`McD>DYYR_=Z%VN%;nG8tW5G@(8{?8N%pPcT~}_F|CaF#47JJu0;6VLEMtF#N4`t| z{pa+Uhzd{tX^-;LA=xFT+c$KYjwI-5mInjH#v`Yh{T^2J#^vj%BK37d7N+`l)#$q{ z@?+eJ;hjt_oi%((GK7bE(+~oVCI9gN-ThtV;0D(G3L`Kv=?L){Vt9CCbgXtI9ppBH zv=Vo&Nb2Ssao8PMD0Ozn%*Unw2N!|V_2;Gh;oOomKA@8@-j$#2>Sw)K$5cBF!=K8B zGIEX1_nSE#Iu_Y+MPnPHHFZ}=V^eSOEUe8S^)pdqR{tfuKXe{@I&>AzXXb4|8Sd#WJd;{D<&X8%5&qNPD~ z<>#Q6VP-<IGNW{>jKr=y*sM?n5EDEw!f*!XDV$sEKr5M)8ZGp6(}#XtD64_B$&vtuw2 z*e{1iEBR8-*%sTAG^Z%;G)n?yT=QR^Yr%N)j)5;;){=hqNy9~$#a9aoAUr(glWAF> z_);EH5Cp}vvjH#l*mn%xbnoj?k+3ccsEvNv)CPQl=BYLt13Voj*v@l9jsLAU&PwyR ziF-U=JTHnd8hDG2&r2i<0e=!PE3P`q96N$r2ffsEzSxw=37BiT;kq!WaOD?Bf_=8y zOEnuPan&t^+Iq7=fX~0@ITi@^t=BV_Eo>~~GhhX#Jw9*aooiCd!mFqOA8Rpq?Ki(Y zSLJR=p#ia{G+#ek7U30o!XZ{TIxcwqg71gM4f$|zSq_zDio_)a?GAopDU+{~Rlm+O zx_fbcR^&=N;(0tOS?89rn-%Yz>1(ubG=-&HJ+)381Qi>1(}zBO@KD%y=r^~NJEnO+ zha`>!i#TVgJOuMqE&H!6%5Ow6y3!pYh&`E(eSDZMxri30V5=eUsRF>LSvdhIshiom z(#GO0hEXUIUc{f|r1rt1;K#uSL}SH!Er`>EK|}Cla09YleZPfK6D=pa?d_icLqyYd zx(>77-~Aiz^vt2i2We)@n3M-`ablAFMRo_LZnPSK5>XszRQMrln3SM@%MFc1e$QLy z+wtpt==coZ``HQ=2Epe^dItNx3S6wKU2$llU9MCKo8#gHgN-jk2*Ywqk?(3rW`a%~ z<2qOF42e7VeC|&lk({pMy=#u!v%#noM)R4v7iong9IL?==@d9Go2hjW`x;G43V>VM z{CudyNpn|^LycPy$TQu4!SrvQU&GhycE>k-Q8UkwGiSqmE#xarbS}fa&<$XT3A8NLtv!P^cij^#3Ul`rLHFFX_A+s6~Iy*_Jv}H z;e)aj`l(vz^x*H5Tk&H~Hq=HwnCeZUy&7jF;^%Lt=H*|Duj|$`gpzM>vOcysj1TX4 zg#EmEr6?fwknSRdk|@AC?1AgcH*-$!@Fhk?mwht0iZGiIefgO~?}->F+VQsn3yDt2 z%t~3K$gW;$d85tyszjBOk{R0aMuqoPNh*#-Hb>UXd7U2=$$JJKwmQ7xn$j{hJ2&1{D<#2P$GM?!4ce~l)ENhV(mO(9GB)hSZQqxhSvVH~Xm?<@<)uj(kt6Ku5E;r@_%L=}vY2PB7 z7^PKw^I7F!3mz}IF>c~csyoFkvsL~}G;E82q9D;7eV)Y=X<2u;!Lz_oU#n;3* zLcJI6e0xhSf8G)L#`oT|2r*qntBi2IX9q{^5{x{{61xNxrPwU9haHp)xJG~(mZVBKMQx~YTD0Q|N$hI14@jlzq%#qsHQpn1| z+0Xfw>{l`y_)IWIyIuZKKl!;~{Z8S*eT9gWwEAG>Lsz2us%)n|-l;m>q%h{GXz2mqs$Mve=)3~Cy%N}F3 zi^WVWBmQwB6(Hm{vc)_RsPeKJqH()bH8Lfb1%>_(bAcFAF_|@#O5Z;fCk|W)KtKQB z_#J99qp3HF=TL?7W<<&rN-u@@dPGq_aS|E>%(^L532$-S3E7wC!(Ihi4r;A{?tQSY zJ1?I5i(Wi82kqWGbC>4#Cuav>_@l0(Gw1@6D- ze9G1hICGU6u>tVA^O&|UQEFMisGLvVwNJzMU^kTWphU8sGT$Y}&yzS#g+n+IaRxjk zQQ1r^YeRS~Zn4K@GXw9Qs+QsBB6gbmljX4L)A!L-J{^ViQ6lhRMl#?N%MS0EixL#D z0CgZh@*m7`-FDq_{(4*7mlsVXMc9mE@8T|56_M1ed;p(isr6TI;E$8`X!R?o(}I6;4TPv z$vo2X&Po$hb+_?W$MXRf`~dO+?>t{*?xCdrTGOK;lOusMN~){X%%n9X(zR#JZXv!* zsjBqjSvpBhOD|+Sku9LOdi*gqg2L7pw>VhruV6K@_H=MkASivsXEofH;F57abNSyi zC3G%0X`3J5tR`6UxR_Yczq7}tXl@?67>Zz;1WO&be{uR-3|!l#vRCZl15iJv zsWyGv^%A>zMXwvNBQ^{~#F_c(%^S;br6`W>vYxigmq7)Sw1uL$bSqV#6=2eJf_}E1 zQ;WS$F`J$U3BnltNssTpMe|g3Ns#78yh-XSg7Y!B=nf(b?!!oK@h-?FjYdWIY?{nAZaUwwsjf&q zd(hG%E^}S#St*v1#r=DxEq@MYs#%WadohDQuzIeKN}per-={7ib|I+<Q$<$>+Qy-U_EDgMUkX32raf?5h76{N5+}MgLX%o3v78(7Dw%C%TiaGB8?4GvF5} z)ZIs#gBT?{#SZ$N)VM}JmfRq+MIxPk751q#`=jy;Ek~HNq&T@vyHJ&cOJS9T56Ld= zC|=Sl-)|uF8rEZJk-@I|Y`P=3FezD6=+lb^i8zj>169)L4S?nOSs9_RZm{XuSEJe1 z4T+skYt7a`pyPTaHfX`$@PvK?3dg5~0o7Nln;Rws!}8+2=-m~LWtTqbL(44NY27OC z{dx227CoK1^RgZKGya}9Z5%f@=1q&Z&YRhnR{y!_yw%Wz8=7<_ICYpt?M?f;@^GEUPr_`jM!CGcR(+`-jVJn8_ z)#3g&r+NA-CiL!&$x@U*s&VD@7LCh8&0s^Rbk9@l$+iCF$?J8zwM*t8b2?n7X>gMd zEQy2;{bJ%$XkiPSZZ^c;n4km9I?0fjv7QqdG7FK;fOMzZ(b$^CioqZ93cgD$2Q~lL z4)~&02{9K&S=AyDaw%1i-O2>h0g~G%!?!Yt&UaGuFou1-O5Ydg-{E-DyWqJeBMVa7 zdT}-JjcIOWRYJGTlAi28^R#{T894oO4Sh9%#iE4%zTZJ4OD<%$al$On?sp}|Uy-yN zE?}1vt;M=e<*Wfrwk<=d?4<5|Gr#wE=Z230D2VS=R7YGjZr{@6jsSOp%?);0VdBFS z^1)uFVP@q4>OV4^J-NkYwy&p8f_l~BVx^F*ZE!L*{m#xE1@!;#- ziTRo=_!Wl`R2hBXZj=})8eERf8@z<`$qjn3C3aM}11PNMm?p2dR1cTuv*i@*CgCx0 zgK`j-Jjz1dIC9I)F{D&5{`ObHJe=uex{Q&6dO`Ida(@2U$Wz#*wmPp(QBU#}2pp`W zXF039amLE{_q5-y$ky9?I}15lmAh2)F|KT%%J9ovli?SwMjrg@T_gzyY^j=k{;lB` zz;YKT)7EOibB?C8!w$?Z;kj;ZfV&so_Y^%6%ECWhpuzd_V!E}g*3>`;vuGC<$qL$_ zwfd}wR$_J_$j)rpND!hHnLB#N!*zr}zc#>iCs!k;abrjA{MV?OTS~tk7z^ahpPyJ@ zOXBgRVlm&d?!T~xu=^)oxjpF3rVO%isX)O4xxY67SH@)>e_?qC@A(j-_ue3qK3kC5 zc0)`U(ZYo%E;rn<-e+Hy2oy>6o2QR3lm3mk5k=2l8>_c z{;%lS1=PqNZB3mXhzIV$8b!2M7<+v`cd+nMas8E^>-Hk*XM`!p!nRp7w%kVeG0 zOd6W!v~SPGs%d$uEMMv$({E^wCkM3@8k#ZjaX1K z`8~aNH1tm7bmy{+4^Sbe3pwmX9K%LaQAKYS*&mcqQa^WaZC9u#`^W|llM862G_-E7 zPH!lT)%2^a;{@WqP{`!|M6N*g3?l0(9_JM$U|)yKv6y=@OI}Ls6$u{lJ=gW0W00=w z@%}L>U;X9rc1+>lRFBNW_FtT^l}v8*jr}eds0cu*T}{~9&$xop(6>js4bV4W41P{a z3S(aCM+qB>UH;`y{7YxN*wGN_QwuK0RC}ez?~_e^iKj4mg4%| z2b#`Cv#v(It|E`Fq5w|aCt{KFMB@Z2VAGXS)7_>=*|E3hyJ26h>Qos9&)UgvAGzbS z4)%;-%CCX-quo~Da^9}I%N+&Bt#Y4xwni;~{ zdgA3H(nTsZd)V?QSpVDL{Xmz%-U_t+GC;2oN@biQV+%W+R1kODTjiwhha-+2)UD*vkrVJ z7{Ru;Wq2UEyg!19RLW0uC(S|m>P665wamrAQ9&;I>&i8AtJ_Ib2DBiwORr z&n^2@OBSJPzwv&;sMxPU$TfBU?~Jid7DNR>x|hq&i(#Lw>V_jG5J3a-*6pSWLR_p8 zsbsmMQQkea?0GloWF})#CDsX`lUGp6K*{6<@=i&7TYZ$z+w4By+sA>PhrUMmvv+J5 zPchx9uuiFG3|=XRWJMRKc=kN|M;vX($>r{&J?`B^FF zcLhz(t6$nwa=NTu&k45D6d%d!G;(X!e~*AK4hKHY;v5M!j(f zekU~m6K=_Fx6sCrl@DI67=`|{KLmWaM z-dZ(Zfw;>KW_Ld#(R=;i$vB@4UL-vbl&n^7%!|}t80r6Suqy8jnC177^DrT4EY$tq5uW`r^2WVBzR6qqvoNeX51AfmN zVp)Og$-zV7{9b={_XO^&=7}OoH)kR8z|vHLy(iginwx|lYbZrVUZkxX{@4?+f~PdX zOP~6s_1yH6mhlFaTxhUKTMgK-O!$_Ip}0yHjO@q{I~vpb`=z)No=f`P$lEr53@(VO zAxc|H{{{Svtk^1WN#HmH6~9;ZJz-*a(>{$IG@u9IGfek2ocHocA868LwlcZn2fI)I z;TntoHJ+hxjq zeg&yK{Pe^k`n4^|M@K|>I9GrB66u@wYc~i*lZy}wryjxF)!98i5>K@FelD+18+;yE zo7B{%Orh$waUK3BPd_5-)hGWAqrc;C)-R+U{6aLsC6m1pfQGvrB|W`0SE=m*CpF4r_(uQS@aV^U0{E7sxq!*5&&Li1O8ekkR@+_O;kd zqSq?<3KRIa8!s&8TKV)YG(IA^g;BV%$kAeia_vMfhA|*;I0hE;!m=eP!k7O;*9V^^ z7x{*7s5EldwAo-*Qya)LL0-~8-nZ0_7PlFYckbn*4`9g_mG*vjj6>v21?b-{Ln$ z$}Rmz@0~DBJG#qMx-oJ8TgB;ZQ6D8qll50_^5toKpzamyCC#)|z&^6YI_%cU8V@b6kUZZT_BVX$C zO^RPZA0Z5bx8Ed=hfxp}iFLbw1}AcHb~clKgP#r)!@!$s=}NJxYAp8Xile9)LhKj8bnOrPeTh zp44wU7owc|o5(7D%G!3tJ+d2J(rLvce z%_u7~zCZf5zGN1K3~k+-zl>#h4h7r$*~?UE4n|52yg0Mz`LmjC#ou3Rd6IsE-;#9) zs^3|7?fp?-_#@|f{5GwdkN>WHZA00!d#BdU?nLjwi&_D`Y*hn3@o>vk&7b;)d$Uhv z>Kf`ccQ$fswK@`9{c>edjO*+~kAy*_KCiH?nj<({X=lS_fy2ad!AWyA3P!@#O08NH zd7;6v{!6=zZQ=r|<#<||J7OK*_9tgtX40v!Qy|Msr@z1g}Yj8_d8OLd(5CW>Q_Q(2>?cgrc#=H6?$+d~>3VKjyOPON@7sfQ6 ztml~wANaeJMh>as;&Gta&4B{tWGD3rc6m|i0>#6funl+>i{JcgFg~xHcnJFj^{KNX zevs+&iJtV<^P##B3`2soHV_$2dDE(X121!Z2B*u!W2nWE7iSzkp_yx#TV>BePB1!6|AhI9gTZ^1>T@?9mUOz zjp3Zqa63|Bv*Bo{%{{P;;vO>f8;9xLg`E0K87AU0Rp|iE_SV^4eSml2Kc&Ls`yRbN zZ79BAc!_@zIkFh`fkw4cbkn6+@iKy7&%B?@5u>7*g)-d*PD4ZcS+#aq!RH##a}VCI zkg&UnuiFE_Dakw*aSYpX=dXrclvv;nNi^q=+$vI!Kj{`XLj4Th?rTqdC7J5g0%4}O z9)v(}y`J5OhxLZ?s#g0?YVwEFd9GkWcXd`h(B`9HPvZO9!&D)t&8Y4!m3=UvWs~-w z{JP2Vlu3n|~{g!-gJy{}pnnX?h$36LjtuJFJ zrf?(|dhkx8oWb|3U4mzP-&Q4ryoC z%C|aki%JohBPjm|N4o@-sGltRWEXNyA_!&=w)~PnjrI?rHm19-&Kr#HR_RwB<;y1n zLGeM|{&3@XD9y@E9GS51qA?Jhj#XcbOi|Nw9uQ6jOVCAFjYZKLL z9XE~`^ycWI5%R?DOvf<5i}G&r`ttF#TY@zYVBngfQs6;*XJeqfkQB33KAy-uQ zFNQ#@e(I@!$dlRo?nZi_LzIb)MiDU6QL*qBo#w6AYhU3MUm@0i&bjbHptdhm`PxAS z$a(E%D058!sdE{XsCbk3``!trQQWmY9?1f*#6GHFj`$n}0j3CNfhbq*#f!P|-#7w= zEXkv@f!~p$mK9~}saJP&q=S);LC-A4?Kg**T-GUv8XQ=G-iE%P*9fhqQUmx64k}DO zg_@LsPR|C>{0C`We=F|`6I12!H*AmQ)rG|Bb=rV+sYnp%81FqSy9L-u4ODO?0*tK7>Ej~INk->Kk3RmEmZQ2z8klfoM zh-H_(HS*Ri0)ZNBgO*!j-gsv}@E42IcbP5=1)3d7cW7`LLk;1Q471m{2?ve22{g|n z83YG3hARIuBphHQ=^KcA#7Y8uBuL136u+BZy_>XedN6f)cGGprM)D!=TiZB zcE9eGNpmu3gU$m5TS}MdY|R^{e_W%(ns0q}-@wxX;}DH4p{0T6);7+j4(-ERZa`mS zzut~e49&L!-APB$i2a%w^#6lKJ^Q@((;wMs%jED=?f$$X{#p={#SY--f2+*Nz_Z5~ zUl#OY@}f;oAHHI>Blvb0ceKfBEW0Dut<88;-k*v4jx6%is|9<7?C8kL4aHtd9}ae@ zAL5*@fj?n|u6sEHPId8?Ps`p#fKn&;vHw~A2hi5hxP|HJFuBZ9lhdMQg~rQQj-yU5 zee~pGs`u{@^nZ}9-BDz#ytHxRq5dhGTS@g$r8Xsoba^btNbV&i$Mj!rPLN_d-cBL` zFU^Gc$DBq*M{VqpT82vV`=eDnLKcAw%#TM&|CYW%f@bpqKgDI9x~5!n`RkfPMOHj# zp6paSqCYukXu>GcSgt;Rq@-8h=0i>6$;a~gGeeWF!)iGxNZGNE6yRy!R`|&9OEBzT z2Fj|hyHCRy957Ug?P6G`8ESN%ESyKoqR0R|&wJmK8H$aiV-Z>dF`S2!B6^5i05G+H zf6nwSYMemr)B~fv(ayTyR7+DXMlW8WIG*%+E0Tck7L#Km zg9@59OXv98Yz$W>t}BFV8du*Fq|(=%_Y2QOJhXgPi>hG~x8z>J7-~`2-ZYh>9fTz} z#*neU;%A2qKOYqvwS7jqsCgtlrcnO?;`Vi9O!zWX1fbr{60}%d72y~6nuYOZa`V%n z+BIxAUzqU+v=1PQJ(Jt6dDaiAIO@LK_|a=??Z#lDZv+7I=n2%OJ*=uYn1iF{a^{BF zq!;r>Eq&WmLgMv<8h;Pr<+QwASrliBJP82uxY6c1H+~2I=lcYDxSD~(IpZ_D|BZ5` zq!D1;)vE=vR;+YfJ9I=iGVOb)p})RmC85i-3V6S1cIdFy=N1-nV(dJ^yCHI1I|GYt zFV-AMf3xhb<}>F4ns}CDwZeB?lW?CJE`%%S(by}oY)n+5gqPr4-xG-~FfNw|f43?P z-EG+^=?)%ZHj1Sk>tOMfN->AP*agl@;lD^VAom;D+UQYGl(h_eB$vkcpAxQ4r^1C^U(BY+x;2@Ajbf^vT6G?MjW` zQiEWG|Fw+K-=?9CnY^}RfF|AXyF)jA^-9V@j+8iA1__4^hibpCQ@8|9B_z!)(a{|V zSav}t3q}J|?nI0{Bl`NyilU2*-sImcu2j8#vx?JXS;v|Lqna(!?a=+4{^Hp)Ya7t4 zwPQ@5&$%_D^UX6#Qm-E16&D(jq14ygl#EAYJ8_W)jE@cVK6 zEShz95Dbyu=-U;1WXl@9H2b*)W{aPfwSk|(vKpodGNV(2fb$^Pd7!(e_j>?;ER}-4 z-6_N5m?NyfkyE(D=!SRQu6t)3a5WfYD_uI#1aq#&xOklTWIICU4N=Q20oT#{`ZGhV zwN!CW;?+IS>jS_0y@evKKdhm9!hiRBG^`CqQq7PDU7k-JXihho%^alkR!hq*p8tVH zxhzOf!}BhC^!6~qN<}|iJCYOea{r-G=dj$tkC-Gb64r&kdmiryHp0^f0fn6L9=2GREz zZ-X6xNRRFC<}BY-=uxkgU-N>zxl=QqoX&UfS7NEdstOJ24Ua9Obx&{DdIT>3W%9Ch|#xXn2YwU z0uLwf6@Mfda#`TpSR4{XgMyVw?~YG9DUVgs7pAk{(mN^k|JS3}1N{`|Ni*?`e_(T~ z&E+t3lh|WTxF>S6LCx}2o+NC1`6J06vin-{#ZQ_9W?5$uz=VbnGQqg{r3%+_Ac@503x zEyiZ?D@v7xBzlQ$J9+#B2LBq-tGVH;@Xz3-li(6-#d0Kx7*-i@6!{FV_*GrCxni5` zI0u0IxmX_ei!s+m3$xS2F?zO1WdTdQsBmWN{O8+0M$iTZdo?(IgYpyJ`=fOL`=kBygkrRzU zg~rQP$E4LqL2vbl_kRA=jXH@K^6N^^E0zvfi&P}}5W(mF-arZsrOc2dKtX0~hdCt} zIB}wx7?|sC&R15h-2GNu5zB*9=wT8*ZTsN&6Pm^MHPiXGaOF&I+%%`{LKS8AWQ*;zT-Z@GcZB(Hbr zWc(J$fOXojousefv5)zj>2~wZc;HR&SQraIq`F~gr z0~wLez9yWr+z6sXQ**0N!QXM`*mUT8vwH*is(ko%bX4|D&ocaP-}6bDs#Zf^C$dYC z@hw?FO)B9r6DPfl$moMU4}L_3FE0w{oJDlsaMru<-S}zEy{hIv64rQ>syQG5Ov$O% zd1L6)aBmfKkAnvGE)HVJ_XUeb@x^fs2PqgL(Mcw^jU@_!b~rQp^0;W7zmvZ7e>J0; zTaFh!-6i}!&rdWPHeq=`p=|5opo)WHU#|rN%k2cm4A6CNC<)V16gn)F9=ABr+6_<> z3$(Y#r{Vn>HcPdp%aR$FZ~ay1OKiHv zA=Ed2#(^)&fRs5Mk3oO2viCtx)7b!;2GS&A9Hpsp6V&ssNKaga5`_8N{n3jmiBe~^ zUlzN1GyA-HY*Xb$Or$ZJ`*-Wps;6499uyC#cJxh<{AF661=0jki&`P3@&#_3p#G%m z2TgoW*6Wks*f;G}T-=>T`kh!(gNOZLQG3^?0Bee<({Cz&7P-6IAa;)^o|KR4!=UQ{Jg zRM^u~6Agy*U)`A|kfmRX3Lvt3-8T9H+QKZm_(XSl%(4ZD?`e_@Lj{3+e_k_0lM#)y z@I_s4QQ+~{#q)0Gmo7%d-}>*k`Q_a;PBl)85Q~*i?GIC%Hyg0hXI{3eLZE|~LHV31 z+I@oG5h+3&N=EN3>$utr_qBi)sOK1O<3ORs=|7L@sS+L-ZlduN=cVxmC#u?q;BUYi zpBBacs`~MAfQ=dS*0;Ulf|`VHUyFNRi*r+(7yVoK%aNI->A~~UxmUU)?waKe&Mb*-hKawxJg zP|ZqiFZz@=5SWGqtKm@bmGd^xV-f!smO4BEW(yz|kX2Z!HeGeeCKN_;lgjdsQpX5whi;D#r~bo$XWk zrJ5-w;=1NAyQuI(Y5q})zYL$^ z$nLwA6WxO0nn8qYUYs7CPT(SpCeqxq3QC(Mw@ksfgNGYhoHsFlIhXsshT7q%gDqFEp1cjXlS z#RuhWE3^Db@kV;WOMiZv;ck4o*qTW=nRKN|hTJ2hjulE5XL%s4cOu;KdxN;64avd! zq%m3s)}?PmPT70%iU<#CC-^tFf(waonFhxoa6@&0-z05eEl#uHPRo*OIf^D9w7OZ% zrhG@JoEA!>_m5cp|3LLH(+qzvUc$d|!)9rNtP}Rk3j9cWj)Y)p%S2XT>_p6};Yq0u zXI-gD%sG_%i2tN(mI60ux1=?%=`}o&FRL3Fm*$tTJh3os*zn51!s!<};DQe@ z%l)9UKaeBSSeQuW{UMKYDUFPU^fw$GIjyvRxQUU=N>|bzOdL$zRZQ;x48C!dALQy3 z7e!mfH7zD+W&@2bfWc-p6(3IbPvmFRqgjq3npx~?S(4}2k~}f$Eaf;pxtUBrUw>wP zZhzI{wD6hyOnI33_T1BYd&!xmb-6Dc=6!M<9TL&bI$5o4=}Lx$#N?~5hJnY^%BO&W z=*3r&(W6F|{pT9F{f>)1ue9Mb9NsWWt`fkUa!x)RNfJwDtKj|05yHgmO*ni@^O}{C zIG!Q^!oX|+Aiyfe4Kq=4NzgMezd!5{g!{a@_Zf(p#e2X~`txF#Fctb*m)NIUg%Icz z!hvugCeVLlqr*aOW8+nEYkdl}C(-imwaKy9V9~A6!Ic8P8}q@?`RA*C^CV7!sH^m? z(gz(#G!ck=`ah4dBK|cwp=E{-I1c}_;68Nr;UFYn#F2k6yM4s*9)7ahgchBS1GS_t zTAYhwWK73EEvbuFutt(t?}V54LZud2aF++Cb%?@6pwBEWz_j!}_=m4urG8k>9`U}{ zHAZ6Us#+f#EGpfnc-@ce7PSKPUj!Mfl`Y4vyeLHWM{N%gM9mi|YJ3N6Gwo)|kuK9k zA$94J>7>;eX3FIulb~l+0YTAUyt<||I0(Mxlty_bje3vsO>_}~ie;=sSE04eB+1U& zZ!yVf?oJVQ$=2(osc)S{X;U=b)^mt`8S^nw`YnAZ3-|3Cw#v5EjxSvfFipRCtpJBh z1NTfOcER{p&=UeICtP!WvfF1k?^p&0<3C0tryNHp0vw(?j0w4A?Lr;d zjF^4QP8O8=>F4{uCU*_61z0LAXsDmEF&4lrgK4-J+s#JzNgy2e_p2Hf8041)84;ea zN(}U=+djVbt;_-=4Re8-K{n~K+SUFG6FNkqMnOb%;zQ)`t`6mmV29BS5{Q5`Tw{|Y z>9iRBU{K%k?{^oz>v~TzP=tEn8gxYzY$lm`SlB9H$s<#EK{O$;_5U*3iEJooP*1{{-IoFi3?q#ZnK77L=H;45m; zQQWc(Tpb7F!9~9K;L!K*F7w7Gt;=?Pi-vFB|JvjESZ1*e{o{xDz43I#9L-Gk{ryB> z<6@S(jlgNA`E3sU6Y57ZldH34Y|dw_$=+geGq)lvM}l-Czwub?VZto-u8sC5Nx1~s zE{>e`C;yryh5x23(Wox^6rU(BykHR*DAVJtE9JCG{w-X4X%QT1cwo+wW;LD_%ocgr z9)cXI%|#x2^C-_v4^&ObMRxs9U@;)aWa}rP6FDT|mG2x0 za4P^$K(N2Rg{^?+jB@ohMU4oFshq@=N`pCu1Lh%_`u)4HL)JsR3Z;e9{Cmql;cKk4 zT)H40!nI&NQ*;~>ZG-M8?WDAX&FcKm!+ete=V5Z3SO%V&s^YrSHiiH5wWR-PBJUh2 zWfp!_iphej*u_KJ!1*{$*#)Pges`;UcE|7Qs2S5i;XCXLs|gd}^dKFb&CUcyVa3<7 z-+E6;n||y!UK>z}=JQR^3ID+O1ig0St(IzM%3l|r)9ApJzS$ym>XpUN!-lW@9lTYs zE)hQU8xy{q`GEPQ?ER*}vr^uB(68C?alNaSBk569G6*?V`9AAGEmW|iZt3VwaSsV*^kgW)*| zKdR&$`=?S$B^*LqPNjs1>fUD^KaLPpSb*V&q3(jLcmo+3kzmvk!q z?na57H>rV>50+raV`_;Ik7N2{>zhqpNoehyoJ4IK6Nb~4Y&}_y@0+`RW-;# zJaJhUWSnR~HUv0-`p{diTEpki-u*WJ>uvggL9o!-5w*!cX0Vpb4@6MqhO=Wo??CG( zChJpIY~ZeZ^#VW($Kn0nv5_H0Yt{a%Dvni(z7=x6Izdc>Tj_3ckpMn)Rc0M zzGCj-4;}v*`@Ih%_2%`!{gyhJH6*lG zSHRrnL$c5RN7Y$|HQ{)F`)i^iARt`=0@B?jl9D3b-6h>aMY_8|y1QeWbThhP^yo1L z3^oSO@Bi|7dtRS&eeV0Z&UH>~i!D$GAD!x)>zgk*3DhBi1fR*}Vm+`jL7U&F#O2`7 zAeVSUk@wh|J%iFs`4Wcuk8IW2wVh$sEowKc)xxem@}(1+n#5+ovzdS3?mng=$F_P- zm=XYFlAvwTECWdzB|TkWOnrJRH^~o+&%t`;T%UB+S4y9{Uug=Xd`&GX`vP`L_a_5Q zU-Vg;!RMq-FaJ^n4|kw)+qE5b^NQzb?Sm@z@2c745`2ESL?h14=K7J`eclr-8XSUgHXDG&gMnAri#NZ8qDEQSQ{VuL3;g8FK!AKwuWDx0ovka<`Gq{zC za~F|hi8wFjZCyHQ-nLYggMMGgx!OH)~aAc=DWHLuZ}EIUPw zu^SREsFhcUAa>I+)>M)m0w_h)PYNFKf3}7u1Y{i5ulc3`mw(+boJ#^1GT#@ep#6j` zKRZ1tp?a)#ILIkHsHe)@_3x;i%t|_8*-JD$^(y$?uE|N8HD(>G1$}3k3?ZfHb~aWB z?E3Bx?`15UQqp)%aThuHQT(_4Xh2Bih`p?o!_1CxnwPKRe4`25j~~IoUgtQG!7ni^ z(z>w@IXZ<3wX3DBMs$onM=dz+S{12tU`p|GrT3WP7Vkb!A;VSi9{eGBg1YX!bEnCh z-qyb+^+p(fz!>s(7EN7%i4r)c>6xJ3df+`5Z}?4aS3{z8M8V$2(M07ni$+`Cm3`U3 z$X56@i4;2I`X9)0Gf;9cdy?0(^=rs?)}64W@_Yg1h%Rf_Mo(rrOhVURZRh-9t&33V#eYv3(@WTPgj>l+}TJTx&eZ0ycULf0c z%E6VXJ1A58oe@% zXMPT)l%pNp-KoS0=i0FpOJWw77F&3MM3?D4<7+E!s-bK3t7liii}S*qS6t{^ zsP~0ES|b~BqL%|19EZS;ijNeaWp{E(F1s;UnMzQ3-;A^C3-GOjr>vAJw1B5QMv<#g z*mpYf!73lOh?XV!{_}{%#LAA^LH`v;LReS~I=#o9m+US^0BmrF-d)9VQpNNUc-70Od(+#izpKz9$g+1i#{qcxf{n0%2^}Par{!bm$ zN6S_5>*rBGpD!{GZ&qF~*>x_yxqbNeUzcHm*B-1$FFUP31$A@fa+{2zX_%6=%YftJ z`G*GibgKIO0*1N^QcwD7XXuLgNxYs>zf~NDt{-LEE!cWjWB@7XumkRVn&^|m7jcvl z1uH7YWR|?U7VB#p3J(*ovES=_f`@n0*pwmsJBxi%MuO6vlDXrQal1IWnMc~{f^m79 z@K2sWht1cSGpNKG?wRosDQ-qgPptnzqQSFon@`8_y;UJhsiL+|BUa6h{Xh-#yhhyK zdwwc3-caw$LtY;|eU5P($&4oR#JVX(g5&2a!)+)8SS02MIM^1dJo8tSEr6kxPDn9s zby@x``QNKgv_{1(WV}n>e=)-UabJYS7d^ukNDHXvK73Grk9YRb(kJ5+ja=P#;zNcY zBdb4ftUe(pmyhLJSe!M#H#HX>7^MBE3b3m%* z?(cq#U~tRZxhz$p<~H}+Z+{)xC)K8X<>1V%6b^XDJ+gl(ZhLy)7t|= z!#m^eUo$vZq$^#j5q*s*k1UbblK<{rVDa?&5M$v1JaBzzL`kYGV(V5Are&Go=cKkMw;;dCrc8fT8BNO_N5x9HgRw!+x)dvI4vKhNgcweaQ+Uwo39 zt>Sv-)nO9(dAlyphLQ{cVT}zOk}jIWtsM#vt0SEgG}d#gQ%q8G@_|d_q(48sbP*;` zxqVnV1S}}^3T}m_C3Q7jMP6|p;BvCo=b1&RW}g0*x&V^oT26aU4t1D+JF%j6DtY3| z_*AgGIrJ!Mp`e??U!VT+^saILsYied#KQ99Ownx|gsV|AM*4$zNT!3;+JspBRH$`c z|GPq7+F;$!yf4kJ4lDPB(~_LQDkTaj++oY24T+I@+D+o$qx9;l5)8_@DwD*nW0)!8 zrPSql_t)#+U^Nx~;%|>g#W(&4d2jT&wm@<^EVHG)L7O6~YwC07mk{xwkBpb{S&R~k z9-a5Xxdq%zRAfTJ9$Q7Qv4A}PP3cPcM(epRZFTWpQ~chchqLNCW4XkuQNrUT>(B?f zbj*7D4Lfhr{w+u&?YOu=1l^jtTc6``59z~w%dq_B5Le$5!h+uucxIiHqyf-tbou$Y zCw4b3vfLyTeL{nOh10^bL=V|6hB}RT-X8x?*tBv{G9b^8&or%*F=+xtGnLmeQW)HH z)}u46gNig0`JwHMD7Q^P&(~`-?tM$~LXDvY@deeEqEk+-mZSw66c{^yE?=K0KY2fn zCYwjIt&ZY4(#-R1zw_-bk&=j$H4z!TYO=b+*|ttvKq2SJ_WpLj?TwqiQ^MO@mr~JM9;S=(QL5TI@ER2RFzZ zZ*mKD)r*-DBPC0G^CAr3WA_^9z?LN1CbLnN!TV(x2t$w&2S3o;Z<2oE{5|;RbOT*A z9nI$+?JpT1-myIA zSu5_?+j2K^>y*RV`OXh>g;ma5_Ad8l@>(^ zUn#p`b;_l_+;l6ybOo-!9Y@t|ED2`aks`jZhKi6Q-IWkFnHlx_uf$GDsBH?MV3+il znQ!en*N=aE#Po|!nMIp&PQzR2k^xTvez9hVJkD*^M{M?1w zmC{1`H@g9|WiI@Pr|Itx#7t2*)FG9>&+|_agmjb4!I5IGuO7b8(gqwiVeNr|3_x*6 z88&Sbdu>h+;-aFzXHAyYTpJDk`AyctI>T`Su<$JSzna`2O4%olQ?1{JD0Yqgc6Ofy zT622$elSv?!ew_JWzd+Je^R0qX?7@%RZn7DT~XL}J0IR0h5%P6U8Gz7tgwh}b+KRH8@r>r=9QmYHQaXx$o9{6#^_bUCDlwXu?OVh@d09I%nEM{P-f8 z#6OV{RFU;}f!Nf0)3v&f_@e*12A6N;_#a*9r=DS-cxzg?Cc6c@&YlZ6ypv)9tE7fh>y6ZxcQ~@CWH5`>uNms(0@hCdTUj1pdQp{9g3xBR0Bt! zkU5qR)0Ci&y85A1tarhCo-s$APKRBBUq04GQ8JUml23@@t`?7rf7W)r_axV?BDFA{ zhEZ9OuX(;6onI)ynQneBI2k$9u<5teqXy zcFC#Z`di>+4`~s!0t_`$&`MGWk=Jfh9!Z;3)+ItiP#+y4k~SlNV@@p{6MM~UOfx8M z78pg^U0NTWsO(=m!#YPpnX5I3VH(ruRzW1wS|+yVn9Rj8*KEp)lAXCIL-BzS zY$#%EzX|Mm*3#ekW+?%x0zjLZm|Pkq{i3bg6+Ybs{EV7|UteK-&~YcOWxyrZ4EFn;cWo~27N1SN2-N2w z!+rx)27{j-YMuS-G)Cxy(a!^hi#1|a^s1+SHLt7h;N_72qWo~4HjmSaodq>Jiw<3% z(q55A906mb-CJYZ_1#GabZeGlNZcA78{E&^)(7rC#S*PLx_yrFgR4N!2I8VPFfc2Ex?rC3OqeJI36c{_Znus&tt)!!z!>(9!oa~MvI$~*Hg zD}u7`>ZaRu-ciWmm~ox86F3J+UMxR4-h|oYR_3sX6-e9W_`UIIHn|Di^K5DVoxcPp zq0n`Hhe!$U6gNq%6v1uWv$CF#n7V6mHJUV~!6Oh5bJw`xS{vA#w)b3 zfACshFF{`7E{r9su6wR0{{F4Ys-sZ?7vyDU$Y{MixAZy+tPIPNGYcTwIl^NSH65%D0Jlo%%8`Qg^%lXJU4*)AJWP*>IvPlnFbm7&Wpg`FKt9DVeWwMV)t83J-tmgZjbSX ziuLWBb?n23@rX071G7LYF{H9DlE!__#N_bdmATWAouldA4gv2WDu;@d(oU~H0QXAaYpK?71b=NJ2+ zzq$j*@s8-8A_DBtW2hI-#&8GOzlZ8hHEZs^;0l7@SZbdFZ<>H`g&8Oz8EmY>t^43n z77(`djDwz1H|~SDZW13|$MeWgi{L~^vb1_^lHbqp;Y%{ADd+v%fJOH*Gsn?7rD}pv zUl|QDlnI(>KWBvz5ed#GBM8rIWN$H*wpexgGw4ufQn0oSD_8G97|#$@Z+lNrgF+R zF=lTG$L@12zt}oj6OVi=VP?i!KvU((&Z$Ema~UDXc1Wk^moqJtWV!_#rnb))Myf9Z zLh^0`7yfH+ERiQ@9{o~%{K>zY9+=xmX*hf6as8e{JRqYRaC|*^%$@seU6;l@1ss?k zG+Vo8mzo0UPCIR>jX$!i-tDaN7=9blX=Q8CX_anz?zd?)h3J>4;Xj(@(h6Ota-cYa zQ(y8DlfLH6@`{quu-}Lj0=EfT#60VNBlaTmD2O?mlP|Gg3`WkytBIV3wm^%p3?QI_ zgxUkW^Nb7W;>NZ@g6T&Wiao7HRa*A%<7zpsYeUoP zBaltyn+@InZ-I+#QiF*y@vL2EOuPHkVnk?nH@tR9d=8b5CkN{qFYrW#r0xYjReyUy>2|uc+d_A}0V*r=Dl^DT1Ha zZNTP-#z7G<^7b6)5rbg&#Qe79+smlbk#^yxcpAH%SYcy~Sv=0ZO;prfi=z9Y_LU;< zP*=TA%hG7@vm2Ze>J5?~23P5K;$;2=WX||yybvIjc^4)8<=h>Jc@cGM%RRJgA&qrhS7TC7uiC8?Ypz85kaQeo zPXY1*qhDi@f3s3B?RB*%zE`*UD!WG-g>w)*&{puDZRF%P{KNu;MS;dbNRFs>g+{$v&e_yg@C{mQzo9~F zq#Vtr!0}{g|1_kF9+tuq#T!}uA>ZSE(&aEBuc0AjMBj_bV?~}W^qwPo{?oh!9oUWv zh9CcFPUlK1EB~+PPooth6)$>_u`G%VKOpGUI8w2lRRkmr4%F|7tn2u=dubZ`F zZY&xgF$E_WVlOBG^Jm5J;P2dNS4yHAxwOBK^a0d-P8HiM^P3MrCs&!5Pv$~}hBbeMvvm0nG(TJdiz5SRo8lVL1o2Gs?a@=f1l`(yy$$}P0^fCqsD0Y#)O zUuQ9q+Pv*?#rw34LAu6HR4F^}aaTnQfvy*&ezaRLHWxOSeCvC@3tR{$j*cAD+ZX&F zbnD(aMQz85U*jt8DBdxSMZwLZUGZF^Hb&|SL4V(40cDq$&2fBN1`ArRTd{U54Yk~GG3QT}GNE|=P{fnjU0>CeZ7|wpXsDvBr z)6bbp)e}I0PJc8yA`R(|c)X$e9?)jAs{k*N!!nW$zdL^wz;JtCr}~w;d13S>!ZU(j zLifX6p{BoXs@SrIq~RcTh8{9pRPLwqPqRIQbvII~5NE#PIU${l^dQ~981;!vzr3bK z67hnp-X%kL%)$%XUbn+e($os#7!W}UQG67EJY-4pg4_X?@XKj8K(uK8mdDircRO~}! z4~ijy1cnLShvhf%4z+M(B~>TVSJ7>bB3I>wPV<_US{BIA0mQOIZJ4(+){uSx{JM|AG<3hXs9uqa2mOU<&0Enf zKvx)z`SX=Kol}calI-XHtghabb5g)VNm5j%;-7Cj8S4r`uZs z3kN%DBs!w7fTIAu`Om9O(pvjLs|3gLBSd=+rjNQ0 zC$ib=X25A=3&MH$bUZgeCwSm3@3j%hR|8$}w|H@zaz$P5^5O4$ywsDIxoPi0&PCy@ ze%bc+ms02L7cRASLc76c-sp&{9tuya@`E+&I=8h%ylyY#PSxZY@EKH^%|`svw1qgjhpr2! zpl~z#%GVJeDxxHq@MAA1Gy zmtMJy@|f(ys{kKE?laEE^Ry6@DUaW^1vTXHsSZOjots<3j26Pa_|{y{!O1r?$yIuk zm)_Ix@o{q0Bt_=vBZ_$*3o8;Rp!CpBh@*3YuqEo2n*FO8euOaAXOF~{DMWHfD_9$# z0M1!*@d3676&gq!{i&I30%_F1Z@!HO^!?ySv9S#z>Z*?GM2So_AQa>Iy`rp*=jUC^ zV^u-%w=y>>>345$^Xm&R#pP=hjLo%)jdTyr5cyM4?z#wk=bH@$blqy^k5Y8r!A*M$ zftG`*v~$%DtN2`$q-mfce|@;1ESPm809AAk8F|LEdEw8I2G$*u~c2^(xJC0ngx^8@;hM$?oFNW8t>szFe~(-qJe)e zdT#Rcbl2|jw>~3b&;l5(@WuEK^`}^?yIG0&%DA3#+19MuSm@!mlOvoJzk;Nx-P^-l zm@;y|lS8V`Yur;QB&KFKpPR$IpA0uoiz8T5G(S#kYD0PFpP>3cZP$lKc)xk|Z63XU zLw#MRM5cJ>bt~q=W$I|}y6YwEkLUd2j`}tt&`CoHgHYULc@)Cl+LXPmjmuf@lJtkJ zogb#UIBqLlrX8A8sGU|tIbVqGFdb(62Nt}uP11}N!`aCZVG{&sQC7`u1TN`wg>$sPC|BA&9;7uh39uS!3oBCM;T1v#o_=z z@4D(Ze-N_&DbfvnXAyoUd~`%tHsO7zd&DLkGQYHrirT+m+eqp_+4{COGbx|>E(LZi zKRVP)8P=)SF<~$Mo;U2#-Dtu?B~8YsD2g+NNBB2QuOAWQII&*oS})j*?@z0^)8ybT zu06OO)R5s;9mR1P;3{^@f@7>#hQLfbvCez*)YWQ84YJWOK8mq%uS~w337kpGS)g6WRHnXJdr09xEkteK8b2)_1T# z{^sXuzNMfElBx?}|M3T-@`C^C(&K*jE0jLC>i|eD#jccJjqo>?32V`dv*Qlff;YJ! zh=Z(RQMk+Gzs$4GiDIkOt-Q>Gws&{d({&VHapNrM`w7we8$PhGYAgwViqd(Z&M28l z`|$Smzl@jyBM?o{=W*~e(0%{EvpDfFk(Eex|43R9?y55$1QBR^^P5BUN2om}b->s20D+$JkvhLrYB`Ue&4FL_t6Q|Pb^HG+7h2>w(j&m2WtDuZc zaPDq_TbGuDYmlkQq24q*M#IMdv%pm}9WN$&o9kq+w&(}>1k5ny_ME|a!+qX;+8U$5 z4)mOG+Ldohx~{DWI|porcI`!jtnJ{8n9x&XpMBF@@u)gWVDr<)-N$TL8C{+y7jNJs z;?c@A!z)uu@-dc_C6oThdYW)2P6#Uv4XuN2>GoAa*WSwyJ`h4N|p;qb0WxlJ}Q?&rI<4 z_9f#6PQi9%t+nFaLUN%3QTLWp_g$ZUG(NslzU?}~2yCFae| z%Q?UJTTtC=X(8%_e`5VpkFode-I1t$?sjfoNLV_vvrf#*NZvb~Bk@_hyWoL=inuOH z6EjN~@|S*6ido0!Yr^1L@#KA$&Gn&sgJ8ZY=?gD=Zo+Yb*` zcD*u}DM|45CGy~hLm$9-*zDQyt7ORq#dh%@Q@>#Sv@vLocL|1z$B%L*@E9&)V}kr0 zz2RUMCr^KB*^wo2iUop4GY!Z)9UJx7;mlR9eDi(A7!Ndl)6hf~L9nUzK`asY)#M9* zW6m@F<%L4(FWD#m9ipT#?{k?rf{T9#LKbL895+ahzJ1sa&$xeo#@z1h^PGyRQE_}I z9B;Op=Qrx5nVEg!Sw&a9c6skoQoO2jd6zg?@n-)Q`)+@~t7FF<-Fb!1EOQbnrT(+0 zlCk7ZObk^FAXTiZLG!C|NIwa7bn&=SI7f6FZ|%%=lM(f%cJkAawBRWeE>`!P`Z{{3 zO-6Rnf^2HL+c}nOIN>GrFtnsV@mV~va^k3_$4|0iv@+(*!>i&n_F=6%EqW^Q z+1XC^ezvF)&4TBBeE23wU4daik60?0E1;(Gk{ypVhqmh!_4-L^p&Jsu4bB@$_s_c6 zr91#Zq;g{kOwpi}BnDcPbN6kbt7m$p%3!ia%nCGwVqk*c#+~ne} zYC%0oO(?wXNd>F#XT7j`|Gs8E-zPVk{SV|*X%i=G%pSEl4$x~EeA$F?E7?hYPbbQk zG3;msLbr@RfMQtI0-Wg?tfl(+Hg|DMhC1Uz;Hx{kWQ|4vg+1ZTNm#{&>|eLGBT5+2 z)s(^cJpUguI9)XNwg1W)UY_2h+5 zGML;hDk(n`5iSvOX;y+r7aL+uogp6|3ID`I_2tH5SF|TUJ*sV-k}fu+seQgN_a;8X z5GhK{v+pvq+~8khdN8l}n%koelOq~SY%g&(KwavK-B8c9u?T7tpUbOQh-nHCWlEjt z8M8MnwWdl$ z#2iX+V0Tbsfqmhl@J||t!QejBU?-K}&{5a_qQQ0S6bI5gF@!c~`G;Qcc?7N{uU&-5 zHi-vkiEsN9Cei8?H+!Z9H35qg=HU8h6ZHp@8R?J?@_s(7FW(Klg0Yt#ds~T8msEgK zorj}&?teaSdCnT#)bXB!9HWAR%4&z(GG&#m=P6)m_7vOYf>O43ver;tLAXW~Ani~y z%MDS1mF|Hof-I&)QHuFUvaw4kKwoyC_#Gjzxqw~a0>StGn)Dva>SQX8>VMX4! zWWZ${uJf!PHZ?Hs{TKI$nd?F}7A|`NNGEp*vr*|FmNbTWZoN^EO-(;3-G1|lgIw{E zTr(`vmOs)~H)P6AuF{Gb9hfYUZNjv#xifaMvCf~4_zEUK;NEM*s846KmMb)a2<~u% zIot!=aq-%UrRMXqt;okB<9IC#e={RW!d@-KZ*jQ!RW z=(3o$X`SQEoZkp#DrtYKw~?*DzNaH^T5tZX)D6TV(M#gq7g zz9Zy~BBvZyv5fTwjqI+Q?ME4|YdSLmyVSUKR!NSOuL8SfT@wc~orNn>ZV61NCuhnGUelW0>UkhnW zfR&D$VUaY(X<1R?6{2Ll?|Cl!Bwyt6PfSE)EbX#*%jU{|QyQD|1^VvX zfV89+*jJz@klRR&M=@RNKM95LAbwJs8?T3^ViD6-kyUYJ--bzQ?p?xNg`;CiN;<61 zAHUkYKZ=h-ndUvKnY1zzWGltV{tFiZWxMEUZ%{bN@WN}AP;_01+ zLysI(5?Q+$!?!`+%_KO~dA+d8jFCn?Gn8t$}O-sQ4HJrH}Q?SYJFMp=z$UK{k&5SmC`U7d(S z2?>#fEOdTmgj?Xd_&+*G8f;S=>$9B$@nqpC-$Cc}8`lDk21N7nER} z*{6-?fAz=)ORK|6fE)5ER&!CJuk}joX!DH$l^VUQvb~rx+MzCLQVb2sc;~b?_JFJ?C{*zC470Q&Bn9b1mRGx^EW4X z#bcsiXUd~P*fco9OZW<@%5CZSojVi|WfIWsd7vy#)zx-PpCj~CNME`MHzMtm6T6FO zMG~h^qRTQY_It~d>syA`R!Dg#pS>}jdhmT^Q}UwiP~%U-!0wd0Ag0=3<(gsC$6?V& z&m{4MQ%#in?qoP?lQJ~v32Qq2qSH2+9>IJ;g)HQafgXg8wI#5yG^X&Z(@j&sl zA6O@NE-oK!K>t^Q;~+l{D14`JqQpBO{zmppg`kzTn|s_h!ddemq=4VDaU`5(Rd=;b z*?LBZ#cTJ?tmw1@T8m*pT;7kf=C`RROacw$^RZ8*xqe^ra_${L!DnP3eNFp0>jb|{ z5}#9Q5=pcXqk4Fzr!h}3`_&snkf`O{>)}+n#@SI!alDuQKy}^X6tpHNr?h1_J?nnc z#+4Q3_VbZACV3wmU-n%X_em zH@gdqdVE1eud%lR8P3~ntqFGci!7i2b3u*|o)E2UrS;c<0hx!^NzQkvjrJTO!D563 zyN?#-xxpJzC(0;!nW3bZtt9gfuHBT@#wmE5RLS?);olI~zHCrQK zH5tv9ua`xXw4l^eCiebK_&&a|eHc0VPK2aPsXHp!@RCuRbb6<$Kcmo`y?R5KNnI9Qty5+KNhOhd@ zyf&6elFXAh0 z>(qj4t^Cr0BKc#-+))=H=Fh&LZx$0CCbGs5G5yMx9OzhF?E~g+0^*&z7>I4Zc3XpcXuHBN1a&Eof#h)E%zP096Tc~? zc0SYQQEWiOKz+xi1tns}3$KUthdK2YF?)N@g;cJO|_@@9HwvZhk||gcJv>2+KA`lfj-5O>OZb> z!O}*{pc2N$y6-+NI5cX3xw|%j6Mic`^C9=63q)>Un-FexsWCARXw`vHMEtHXS_|c@rM}s$b5LBD+}aTomr;jM=;pR#X~`z=ZAA>xItBNj zOl*5RVPgpVd+o15^;UC!#FL0cA)&bT9|g%BQpd13y?4@gHbJEBhU^M42)+bhlbKB3 zs{*=rZZl}H8uFHq*6H-u4*d~+$D_vOpk%+Qh8G%Vx6`k|lZp~LsuE%M)-^yt&V{Ll zkihAc#QBS>R=Z!Pggbb!MuY}&0tui{j!SBJz^dOUVc4*7`P*Y*_v0W$t|0Z*9GNu$ zlX%N{5O#21X7;Tt#zRr>HnjRC^V(qFx*#njSohqou4;m}-|QgMK>uI_k&ehpG;4Pt zA;UYzak~Tk)!esg=98IwjvAbg$>6;;lQcA8NqTqNP^uOPJ?njW-SlZ6oq`WD8YHy^+V8BQg37Uor^7!&FA6j2LU3-EU%p|#qyKY5Dg39){g zQO2TssX}Xv)xt<>Q5=dBeb(=#51(|1gxh^#A2w%o?7stEqz+vAxQ=-9s>O<_iwzH> z20zVMHYT@AslUfdmW;aa_xc^lO*x+w5)neiw8##+M*JSepnz|rsSttkz8`JdJ!M(K z3t}#$=GjNh9+n=@jIAB=*{P-Rg+MyuI1i!08Gdyc-F03Oh6^hB^@ZH;F4M2NRWav6 zqt&f3M0pwF$Oz!jviKaSxcfQzv4&{U1C$E_?Za+-<0O`J>oltyoc(Ebru@KVpLhr# z^)4EsY0aN+qN&nl#zxuR@S#OH@saES_k&go1cKC<*|-3&I%quuAVfO0^^AX(tkbQI{r)ZfC9uGN?y0C5#+9y3Z$%^10{vQp+wv{v4PkhGvQ*y{ zDb^Siq-GGe{BP5$sXzsM6k9!rx<{1s3@_~DqYl`xv|*ro?M+Xg?76DIK|qcSrbPVW zwrNVG$MjUPUIN(%=mXGYypX7`T`$i?v7AlX*_%BDV?*uI0XxV&mZ`Gq=+h=> z6o{kZ+HUOv#D7}fcRqgNmSbPL!Pw$Dva9O6)V~qFX>!==ApiSj5$0rmh4^0I)z z$|EQ`J_JWuyl-Re`A6|MzrSkHQ;lfBIeYMt)}N$@G#Gd6H9IC2b5$F!x+Bgwr&O7b zzD@iMrF59sjpXi0hYQTcdeNfdIwx3$s_jG*T7Bf*vSi;ajVv4MCit{LLRe7TGgMB+ zL}xmNbZLimv#XVIfob;jL}v>t#<v96cx5=15<=uU|cMHCS zfB}2jaSd?yHFZfwzGo=-p#S0KQAMV}C0$J;Uy~9ay3=M!JPdzr+@?EsOkf*~gI(rh zCN!;{3wY4Hx>h+ZuES9`T>}w8zXbUg@b__fh7E4IPO$@_eNM02UuVoB)2BUGh9bpl z<<1Jq+oaocYO`fMV1wG*7|?T!l1%)$!?}35comViqSs2#$HRH8D1cOTu065j>fpJ~ zkd@@hIZFJ`qp6|Y#xIx-R2GeUEkQT%1}X?9S)lR839#RLCHdA$KjXIetgA6N-Fe{* z<=l7XxKho67>Ai;6qDJ%$bOP>nNy6M*D5ulDA(qo*_3NeGvQWg9+yg3>|Q~h;{|R; zR!ejDY(9q=D?lW!4^)mvMZ4$Gv$d)k%fdw$Tz1kYov^NvF61%SRJxrj=Tc`YvN|1( zfy`vgyQ%nAmfO>^IM7~?36*1k%H5Ur=u%=yl?n?X8ucR zOuqrR(}BM~0F#cWgnrt{jO!C^YCQoq*ZjU#w?o9-CfCQdkWFMlo+jg!zdYB~#}P%Q z^*FCA#e097qRVYSHMhK64Oz2)bScKR$K61MX5njoYI_gW-(OzjXV?F>O{s1ZODD!7 zdrKm!xpU{Y=QC%ghACpVq*${zb1n{UjJp{Wngy=eyE*S77JIBuG;;&>clzhZe-W59 z7RF@es`~6DdC~{@nfE{D?NMKBn=Q6gXY@ycX+cX<2O8=2H8IZg?)qUdM;> z7k3;ZA&r-M4fteHw(L#>tWwqn!|;nB&apL5V|I%+PC@05LyCpE z83(_plNpF2${nO=gia2V3hOYn$(oX;Um1ey@{~AqaQROSuZyq1oDANr(1E97WGuYW zY<1r9ynwbHk*|>c>)|5BLvgY2v>6Dn>fwo9@!>T2S{tA^Gqu)Ik|dWAafFP3sS`5Rx7uk>KQf-)yv^;6@6eRu$h6F!H@IpSd$HW2X{`|{z8k!6`F7~rib6YXy^Hp>9{awkl{7)mh0riA${-pGmRKBlKO#Kr$q=X7rF(rnb4$Co$7p6# zO>yFEx04ke`k1f;6?vyx&r?80Id0Kw^#mU4w>YxSr$;OZl)uNJ(vqL4(l(q+IF%Ki z>9}#QJls;Zj7hSjLvsYcl-9>S6>$zZT)8;koVs2)$Ic}ScH2vQy+RtHR|-cEji%@k zrePmN9vXqFqCmoDgV@LgFL}wOQFF?RJ@%sU=MUVsn@SjxI0{%JNw61YMW&N&Gv@lm z0sW>^5LqfXVHz0u;wo@x@T3-7@v$xEOhC*`6^5+fsbS7ldEz^)=u!D=Z+2R*o&BHc zZ{W+fP?k5PX94-n4SmF4aPL0TO(vo3wi4c)HVhnpJsszs*r0!9O^aNaAIQ)qGt6IBzL3wraMO} z7xuOO;Z`%257S@C?Ejbe;e1(}PbfN!(YiHD)4u8c4BIWq9bRQxJ2O*y#SR6&OeVj9 z6B16dILP=@cNe8{eawM^_>TwiC^8GJl)8osGWq=K(fsaq?83ggNSu#+QvGdl>TntN zZHmLyK3(={2xrCC>9%OmS}N0H)xodX<2bI7n{+6k&7n1l3x7(R5s2xQcj zt}ezp)R!guFwZ&Tyt2wIbs&v6@6cO3>mWE_N_QW2S}uP8aO6H>Of2X#^eAuG_9 z0>JF*dQk10A1ZfVwx056+UGWVk_*Bf-U4;$ue_WRLnVyDt#PAf)pE!++@5FJz6ah zw+E&qxOo30xH{BbG@;fc(o1+WtM6t~91a_ucJtGiR0)t6suzhoPqM-I8Sj`H)W4*A z+v!4xB8aUI4BK+2D7eeMQb3+}!XrL++YWN6$Q@eL72m3{KC4D0XHEShdI#pW3MEQFUt1 zTy!O@MSd}a;k5ux9I%TsV)b}NFulG-iihsjDVOmBCX0>wQeW(E=Z@j&nEb_T)Yt@- zUoEm>G0LMhVb0LEthMfBxn*(M|L!nv&Jugjx?bPRm^T#GOe;Ykn5b#c0%*??^Tb*& z?W5Ov-OMZxp2tK%M3JiwK0utK4q;g3h$bX~gt#+(`V?%x&>5Kp5#{cs$aNP2+VtT1 z$!BamF+K?L@K39ga;CFc+9ayf&G&ev7d+vt0R}x0w9Ffc94Ufrej18=n`PF|dzMU1 z2EsXjBc!8ZcN2)*?v-yO9F_dPFX9kMf6!evhj<>73_Xtz<{EKl+U@i*$%wOt%R4If z&r`=cm7A9OivGx`^TGqc0_qyj3=@I$mS()3^8u^ROwhW#q>lT75%M^Dra@_{Qr!nyG}@6Cp2&QQD^;Iqep6)}r{fISehZ2w6ZMUZ#T?O85LQr^TmJ{{ZvM8*Qch7E3}-B75|#S$5s{^P&FOAA`Z>xh zo^m3$zwIq_U2|Ey5(EXgKkY#4MIssgkTAByfk+S|C(&`vFz1POj-@y#0KAi2k%bHCrW>OI&JVo|Og72Y>a zk)XoAkEF7TDerBP6IKmAl61tjM4w+h(6%sx1)2AYNnMs{nI5s$zcP*XYx;M-wbZ=@ zn%vM(1_ZM3UX=z8ZUE!npTq7W$+cGW^w?jXI7YA)Yw^Zal4FA}a)u^>0Q;IdftxTY zfyO|Uo=*T-;=u3rriZAdOiS*fPWfkU)%EAg{QADyK4kHASEroBmh#(W=8L+N|D)j- znb2vH(J$Jn+nw|WniowYQB~ZURdn{$!PJ>o)gY?}o_vBb8U`8<@&^;xke4~Cg=I5( z@ne1a?mbHx5(-~%b<(q>Ss?n zmMBVHr>oyr*Z2O1VkMRLpU8*<0{@^_Xj6p2_ITUdT$&x{l*h+nPOIk#@#BntiVGp| zPYm|JUb8KCDICGOo~9JeXD2N=i`5=gbqaOxPaZ@g(D(~>jdxI0X3){s6CN6W?VJCW zTp!~AAe%MaD|_F)RLi%fOuS7j%0UPlFbOgD%5Wn?s6G6{s(363*=&rs3kegHiq(&H zj(@u-xx+u2-)pj&Y_@olOEXzKCKjOI-w(Z{{0$OhwQ;;QHWbf>b{T^WXQI4}qs>gj zYqU-L;zqbAb&o})+T|a%-M+?0nv)h-)IEk0caG8DHELRFlXr)*9v*c7+m-ls;{InZ zFkf!o?;YiXV-B=?>$JTFhY@jn!dp_J%<~(v57-9wEg{o4Wslz!z~y}pG%&|3I?)2_ zh7jO1n-b}89FgW!R^>ZC8# zUGjDl9gCOj!IE-B<8ig=c&x{%auxv4-^$0tG&6^NM($EyZk5FAju|=RAF4kGNVc!&0(nOr zOV*_^fuPK@Dw%bc_??REdJ&NuG4+yYfkOGYY{gc6WCf`c?Tp7{RKDg4L-%q1Ec>E3 z{Zu=pJIE=e)9vTzS0?r z8l}07tj}@V$32Rw>Q#^ERxyi_csJU}$=I&zvR)}PWx-yKv`0-(dF2)>BypOlqBxH$ zt@YFsMz)q66}SI;_~9+QEz-J}-`hBWI;%V-CRx+c*aBsB@zqyfn7W+_!%@mRKv8Oq zSJy5p_lg>_MPC)G;alL-?0lyT*y`NbW_CP7W&Qz0>6A|N(}Bl2ZxI^uZzmh#oPYZrTUyGW2-Y+A8gBY$5s^kEfj2is?ZALR#r(BJRET70*FH_>hm3=8l$^41hxw!Sy0>Xi)8b7bdlJbN zHO6K9w~h&a+{~@oZ7@#Cb!(v-w+; zi7_d;Lr?FdZ)qgSqp3?!eYZ6Fd4=8)rd7aqeHl9tC3T7j?vc%0`Kz9_edJ=2#0v5< zYy!W9MLcL;lN`xaV*WU1%0l5wA562tVy8q}NT%Nm^DcyOGDx~$H6F@%F;9n)jgZ(% zvh3?(q`&udsb&|NMNQAFpuWtyx!@h8|3d(i$Ew(k=3NNT zw9(oJ#EKJrPGl9-qK^C3_UYsN(&r{=-=~(dq9i5IpHBUJsfXY5smxDjdm=4@Zm0n- zO=QFfAB*eBJc$4A9FLx1!=RD{^|FJt8`HCAzW~E?@K1MZ9q>pANEetbzrg=-=>T4G zn+{uZ8P#3A*<&Hv{fNas7ysA!(eMQJxQ*todecD&xc+bSq6?hjq7)QnoB=d*Pk7m6 zVl}X`ZOO1>gN!(ee-V5iPv#65jv+XX?`dqo>1kEJY8$4`n3l|IzOUWE@+u^$`wXn9 zE#vA+@}SrQWp5tBoNcA=H{y>jF|};ymIK&MO<#Qt6VzU96KJXSJb;C4mEI1LanDSH zA`8atIU$8T{ysQy>m!llWD6LwCB|DG4!*8viVqqIx|Cd7yE~oHR1G8m?tYt_Hor-( zihcEJfc=f9{PCAdtm6pj+2=ODeGJ0VByMB`vN48;?Q8r}-3ciFlq-*JbNSp-=yVm7 z6iv-}o<@6XTnoN4HR!&I&pc#&p!+FR@%SOj*~l5SV%mTKMHA=H(o>-ci&$4+*i%3o zIChO7kfWgE@LJ_Wxi;YY9;;_T&Y6scOjwd_T(LRn-M6dmF2{;*pk?y@D(NL^U*s!O0 zJ@vG{Z5U5$m6^Ycq+FmEKakkR(8~-Q-8|9SA{(DuZLVF6;l>|} za*J?f$jU8M4Jy9%MvAwvgbXbw8r`Q1qZCC!7mdHT$m`vVWB-D=#ijPVAN?@iu6ruG z93uWd=B}}Z19^SdsDzu7b-(h)k<|9i>~~MLO#;b|>onNXI!m~51|y@5Z=Vs>({$dr zJW$I%SbjF)Zz%p0eX&+O8nV{Aocj?%i)r85%s<%dH-(#g4O-gC{>`Y6yTN09xZ&Ne<0ED_r`kG%{&)) zgJQepSP!3^RB&i;EH4SoToTklQh1eGR>gk;&X}bsC(z^(*ZqlMb1dtUhJIsB>!!_B zt*$BI_UATh1w#P47{rEkV-E8(>FN6SIunO*6z47+$KIt@iYu}kGMi(Gh@5;R=Dh`V z-{oF;*Ll9VFqJokGxAR@O^ZGSR#E?UzJIlRTOfJx>pn9)6IrsN-V9G8Lkv51f$hsj zKGWVg4iWhM@zlGFkBl1JM*Mqdi#;wL;BN5=;FzK5dA2G%0vPsdOW3n$%fke*;kByU zO-k-HLtZ1H?=nEcSJ2IOo4cNdx2{ejzDC?lwVqE;Gm1EOqG8XQugaRA##$YHW8|Or z+&=%XJBdM4WJ#2%mJ_#qI*iLVk0fIXv9rGH2|pvzJh2-5wl_u1Gb@@u?Gdyas~Z0z zkz@b*%=JJ~oX)#Q&#{qY?&ITgZ{w&1E0;QN-;a&D$d{XH^dN# zgqY_vMLARFcGe5*9!E^lx*cMCaL_w5w~4z~ym!m=&@=g*G7TZmZKnW;=xwuXlzcda)bkU%6c(7tvFtKx_Buu-S8)Q`1N+coP*SnM{mZdNl6 z{3mPr_$fUHm+L81CjKl@X_7y1ppdlh_RCQ4^>ZUOM=6@R*NhGO&F)mWn}c( zOV6%w_&H+6IYi5p&tCsNd88uhz2i)hIrERM2XxWMmQ*H{Bv)?1POykk?Z=1zrX<&n z)a&Q;302!!2dJ3K7}nN&XJMW;55%Wd2PA1yG5iP~_Q;{&97}xZ_4`o8cR&Pon<_5V z<8*^-S8|$hqIlV@U(ONG9L&mxzc%SqJ?!rn)Y|K1$k@|XT`Zg zYH<#J>5Wyql8sQ=I_;@P(aMi)RA&N?IhP?q{koFOh=&i&^z~pK6sreeAyq#_hklM8 zGE>hoJYn%4>F*g-i3H@fb%NwoUj03)d>q`a+EYDjU!YooB|7Hq*!mr7@Q{!cj%K;d z-TB%+pjarXE6LFk-b>JBxG^m4%^5ytxb8Hf?{v&)%pzrKb^3W|V|R78e}VQSZ-`xi zGN6V5$NBZj!oTnx??}0a$4`0#SV!Ct<(szG!{RT8cs-mr)^}weem2c=Uk}Of54{Y0 zOa3!&@?}QUL$v81C)9Q@ce`>3;T>>$xzWVsdpVUb?e%|4 zTON(aLae2Z&yQZ=;+(u}-Xvc7)6gK4r=}=<-6K_cOxZ-Cp54OpW~wX#W)ud~3xk>N z2cjx-l;RiCX!XS2!AJ7X058z=W>DBaQ#Ke{KA_#=YF*b)^B3MzI%=O+9u&;exnK_+dHdF z+yu-aAyf9yFW9=1Q;&+EV{?~(p3!|sTdD`)=S(SrzdJUyE zf6W+0fbRj%`fmxhT@aT2RT?q}NyqVS4W!s1ER7Y8HVq#+Vhi}@`<}4=f&( z?CF^Bp`e6nvz}?O^+yROm1{^_DQ#18zMlDsTuWdMVvvZe;0HbQwIB#hFOS@J)k7w6 zU(5@SNh@*jaxHf`txvNSutyBSDrN#MR!@Q>EC|H)7sjr>)usI!;hn!aTMKnZ4=D8I+} zAzl4Z{By{(-?(|1;PJYsBGCTlCAhEd^MeQXNSI!zv(fK!!g{RQY|sHO*<6%!=es&a9SN_q>p`KY))%>) zrYQKid&cgaO^8L%ox>IN^2Ycfg)D}aDa0xtt%t^(U=>q~@cM9#q_VweLxeJlqla=3Yk3%Gv1>PxA!O}@rUlXr^y6VKowk(OK z3fOub_E^fT3$)qoisU5d=_?)kU3UElPN5h1bm<#8{eoVjhzFX!z>(A9*N;V2hW6!L zl*-sy@)@7J3w3i!;6KSJ`R#&ziN`PZpM_p7@>?_Z!kF{Y$i0_em^wHeODrqSJ^Jkz$|^YDqtoGslE$3%byN~9pOoYOFX?j(GGZ4bH~?%sN;xL}yDUKJ(8 z`DU5S>PUF>*NetJBl-!yr2-d<^jPzP+@SeFAqvG%sCmz|D9VaByynGRh|}T&$%^$E zRJ^V1Rv$~&1VL?L)vIsn^Xp#F9OOvMeM7Z)hGk`h``7-6%w@k`8N5r>G|H!y@yQMw zU2br!n-ekS8uo6!vd|wk2o%sQ2@fKLxF}Sx9~-LwQYJY=JX8WB>NZ+(2|Cw+ zilQ0QPud+uBQsoI?=BEVkU!J9S{v?BhKeU2twJ+-6Z{2+)8ux;TciaRs-fvhfw>5r>5}fdp*}?dg204tTjM_@feG=c{4aiXLlH?es?TSD3Vn27N5!vZQ z{)xWVW|}V-bo7kci6OIMX7u?gaKzCyNH!S#HlERiK5<1;2Rc@Hl184tKcOrCfAPMCv^zE4c$LtZwDS0~EXunV0S-y{Ehv@7ptLR#@%B zwmX*B8Xm7OOG_*CU^^U$o7RomA)$gx=L)JNsh+S9S4qyL{47l5^}hYx#6+Be;kHj< zmL0+7o0tNy4&PrWE;I?c?@MHwyS626PPVT>MuFFY>L%Vuibv> z`cS^4)H!k@q1SOe=s_!Ohd&fcRE8veJxfsek(N=ilC-^0Fvrz;$A2S|`%$<>RHJEZ zHVMz2F>fQ%_umQZYkFfYQb)Nbyhj-ZRi%o7Pzp(IKld3&sICnJ?KJk;2yt?cr$1R& zTAVQ^c=*E)?O}FH;@o{ZQz(hRqU2(LSNuOZM-CMNUp=UW!tlw0>cVl(&5bRsdWU-y znjYNRsYBb=C@4?P81qCT{)?mcO)4<>QNqiV%J2W#{n71iU$x+8R}MfufuB!vtv56O z%Wl{82G!2s`8w;<)4{10{M_toD2&N9K?>%wno&a3?x6C?4%0x%+Pqley>?%~-r@$WD z4-1`Mkl+K<+7Yc)MT~o;tFZJMxhg!JGm!AYVD@HcCT$th7?(9dCl#zQM@}G3sw$pG zE;OVEzS2kj>iI&GMvi2_5Wl$YeINU*K(I#+zW$b@D?y_0+VF>2^L3x32#X<2;?*@_ zum*8(p~9FU&p=@3>w z>1ArnU#`R7v@Z!1-Co7l{ffI$|8d21B4CqIZm!DnqOt190fp57mVYBe&z2tLYegISH=5h)!!VO$ao7B)xxiFWNL|dt{7qdK*t7wPx|F zYj{&5`jn0sd)!WNbSxZgCi!*AwOlmUZys`;;dL(rNufdj7zy_6#Inn=#U*+E zErx4ELqZA;6nCe9*;INj{4?~TLum7e%P!D11qb%w0&9bfxO=p}R4aD% zZk@0TB83sUQO4HeX8Da=Ju4$o?##5h!4r51zxXc)&m#>&pkONHmUw0{>o!v|_W`** z?nzV0Y$c7CLwoUeNQhe~zEPRDfR;L%Zael0s(b%Vh!N559Ur}%6gK)(p9np8(=b(P zx^d3CYrd*+w&pl!$z!_gHaBA0eDOdGOyfEUO7U#|fcs{sTa+y7ed+^c5Ut516?2m~ zF~JWG%!DZf5-dEWwKlzZ+t`M))Lm>hh-ce_4~Gt2>VSlI)RW>Q{@M)i(-A+?qv{d? zCy{gzLI2&phi^a)7zW2@+Wh?*dW8=LsF!0CvH>m6(QU174Y`4haNuk{3X za>v)1vx%nC>Pv0BN3#u1JyfXAw1>?Tu(*$sPWcea_`=nre$1?FTNE}|B}D8kD)P3x zwdbF$n5$-9^#Y7*nPvBbeCg!w2O6J14yyVs)=NrZ6Eyzr1~_7eez^Ik(@j|NA@xqn zkElLmNUb5$Np9-?vzeu1rpQ&My%$DzwyH1+8(OSO3KvpU4C=V55!!cJ4ix{G2fZ=- zVz<>=vO?fF$pJIT4QPrwaLa_yDhddDI_E5CFWZ0>_NFMa0&@wvdc~Hi4$WrlmRv|iY}BO6s`IQoNT5GW z4tFOz;WO@DCR?5hsMI>r>-Q8a0a>kg^<`qkY)X*w=(iiJ)-3;xfxlnkpAUD@CP}&)NsWs%*RitrAimj|KA-$bQi(lnk;1fh{dE6_jOMbU ziC_2GnpF4k{l|VW@+e+A*oCKkZR}S{p4@`Ho+^6lu&G zSb6P>phFgPdpW3>8zFrAmxeh`@NgyEfRmODwNW5_Uiz+BX>9zTVyr>NX)bUcbriPhO5N8%- zB-i?PC{0;u@!%nELagVaMOYTo4P8f9qHMUP))u9#MOC2USLZ^tXa9_&@~%H#vOQIw zW~<`SvkVW!zS(&#YC3f7A)u;%`dh6!g!#K~|I5cFxg(x3IT<`W`-D}mN1Uw{WAO(? zt{ku?jDW!HL12F=El{m{< z*_r9uGlSN@@CioOEMJ_OI6HaL^gj4zkq&k90Sy1>!%<{&(KVU3>yG)dy>^$mzd*j^ z816DFXC`i9_;th!N#jCCz?zj34tY!iK%& zS;`ZyC(J+Bsa_NUErNV`OA^}6Qty9Lx4wh)1cnYT&t>Kxf_uY)o-e)*BTF0T`=!3M zYH<1H5(o3d`aMSB1%UMN)L)(&$n&7bNXY;fiAdWShdrw#hL5C zu;jvrI$gCMST@E&dE)cjEV!Si*#VpMM)*hQ`zb!&;X{(Rd7puvdypi?d~WM^o@1^y zyUH{!al!t7-MuAZKle_B&8y{zik_fmESwyHbLG06{n z50@S>%frorb&qG{<_QKu-?metTgKx*S=_iqIXt?)S+OCEoqGniJ&iM45M zbP#cB=231Gj_vqwu1R>bER5`&Cj}nIkzD`8i%<=?w*UE zBezX5){IMjGXNt6%qO&SH+l0#+)wl!&Q+lEXOnK3*k9C(P{K-4ohH2-YxHE`8Z-4$ z&I9#Tsrzve^>|!w3wwUbX3vII&sBQQqP^;_f9!)k`oWGer{Jr)TdG~MEm-#?mT@3L zOL!a>M5f9sBviI*XgV$!H@S4V0XH5&Al!R8d4XFENkV;nA7<174=aaMFR<1jKM^9h z!msdJ2K>=K-{;EPE8_>_oD$-KOIK&L{+;_51PRPSDj@#=zv?m11KMy0Vw!WMqL8&a zv9e~|J*1M&Y5~c0u;p=vS$Kn*YniVu;f7cu?dSOaEZI6-EdW2hr-pzo$8`YnJ>o=T zhjv`UF4X@(KVyyLoNjkRLbGD*@thogXOUa=n)C|vG;b;K*w7zb$nyXlg1}cF=azYe zVrNj7-j-4;AD3i(@P%fbBFmWixy$A=1>_4Dq(YS*31DU9!ltTrS)HiV=y?)zBwGH13RP*7>^Tve==W!lma;;Zl@J*Jl-!x+}1M$CD1fBs!_L^S#to# z)8qK7Dn!;Y5ndXdop7{gaOzTJh%8@B{^SkcS@~#7!5atZ-n!o=pP}v=Ua@wxD4beU z>|b}T{SMd6QwD#BAVe9pn{d)9h0xdBng~AK;CEv{H@~)a+&jUou!1#$X-esYV2EFN zeynFO*pO#Ysry04jRRw*5Y4w{3PG2@^JQ880*iI=VL$)I{mf1iG#M~5{9Tb+^c3^>u(*k7fDk5T zXTdSjkFdw9X?N)2z6m_Q?F5+Uv#9b_2IMeKXv1(xU;#{i68nV-@bdg9#YAf&R0dbA95On@p<@p1!Ref@yg-=39bUB?* zA%oTJLL}|Zt;(v-QDyO@)Px6mI)H`|V@IE!9j&GJ1uI+|vitHHNwvCfACCyQy`4k8 zp0a7&UoWfs0pt5kAqDii`8ISbPmPKyrLMDEo`r z(c`?A%K2Q$SqgcLC~Bw$-8v&OC%IO&SeG$8-5p?gW}c5qKQW^hM5Cataki!7uceRL9r=&-@aUih zpcos0kUjoB+H7CLT9;Pm|HkX!ikOEdI%W`Mn>Y?6SWl~WrL@Eyysew2clkz@w{ zl^J?3C0R#Qw zg}7J@0@98!R=^m90+=<629ti;{s&5{s2->aODp7qs0CXr;Nj0B*`pNVxDD$YIe=c7 z99-ZvTQ1#Nr1b|qQi1l__GE%& z|9wjEE}`&Gk<=par_pOq$(>e3Ys8xQe3#Y=UmtQ-Zbd zs{;1yf#J7eGrf?obL}M~QNJh*U>L5+EGzX&qHw$Sv^O4q_`c(?gFSr{X!dpcqKUOH z46{QsGHD~4%)V&N@Mw_pO&+Ynf222l_dRVo0)dJlX~mw%_sJ(zfXX*>6uq9=MUqK% z%n^=wETAZH5Gd2xAzp~wZP$*v;;UMkTbtg)w&77eqW z<@>7BbYN0Mhk3Lj8z9J~oMT$||G z8RUa{5%>7#+Oe|K0Gu7>r|EzA+%|N;Y+Vn(;-~&D1RT3=_hEs4XW8+`zqV@{{|tqEPH{11Ag7x<{OHJz zZ>?AQGATY#^>YtUvBMmsKB>agNL?dX->!_-v$G55ZuG$n{+pEi4urmY+bw1{|F}gK zgXm>hFIw?M;P1_TNB0A>U)nUq{BRSrUL1@}YJL5W7id~BH?3BxxHug(d=)TySjT=3H4)d6nf3$eY3@6yo1m8!{5)~oxIog z)fT5gZhOp?_6bo@=N+J0(;Cg|_+pxMFvn}o&(BOdQ1VGJd`D+WFQ`zOwZdH&c z&#I<}+#oXfx6i#R^L_j)ahaydH2QF2(Py}}4K)PW>t8~0O{BunRB>OV(f9y#F2GT= zuv#|JO=I%)q^Bl0h`g;f=9{EBNTGTdtadsHdEA8`|EM8G`F%eXE31Os^MwdPl zB-XyACgpObyh>S(czho8akCur;E&iAwon!5;+7k z6lh4>mrqqy!mzCmM%TuFMMXIU`%lxmQc!aRfQ#I_7Bes4ao<(7mJE9~jO|Owz7320 zK%-_!0yC@n-fxEoKEX5-x4-le<2sbdN#(PNQH=z*OE`!2()caPfcp|1KjvcN4UH^C zKZ!Nx&fMW<=@@cUg$HZ-6yr71O0!7L3T>UNDZjVd6X^^myMwJpCXHt5>3oiz&R*P2 zyt=nt~oEA<(i((dee(q#M|zFygRTba>Gg)DgSmu`K*6k z{T}zQc**iU0oIvIYMg>j0XcC|!Y5Gz;X~aGyNF}hYpLBlncZL|DmTjUpCF3QJ*nsn z4%-n`+Sj7~Css9|a%T zvE52^W-%AWCY{;~MX#1T9$^}hw%YF=>;LlVz0;5bqCI8{#!K5X3^eVGf17#XSrvud zURkxYt2_<+>N-?HG?K0nG>H&{7LR3M?L!1KrnFIee757WL1m4?I0rf3F+eTm=Od2i z^&|HgesA@q`%FY5R(fF06($9)%6R1cO~2(@^YJzb09C>X!X{-);&jo*kwQavhF;=k z)xXx;3bV&u#vQ=&8<5jOGPL5yahN}THn>OH`{h}P8>lm5yV*phq2`0W?mM%(4BRRUgH);UhSa*IEJU>N$>pMq5i1EvrCpL2gQyi-(`IyuadP87WO%`oYRHp

-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%0A1Ph!Gltr`j27!siqnX|N4X<~o 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

!QQ_qvI|S#^)?1daL78IIo1Oca`0QQ9rW={j1?p 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 +r}IPoB-0G(8r2=mseyzGU~4$_Wwt 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�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

=o%6c4XIiV3B=Q8WQu`pA}ws>{EF#E9Nup` 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

jeWCODY;2(g*jBq#m;Gs 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

XUc>N>%*GmA!?dkx(v0?G%L``eULCH;F)|@hB&( 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

bgSWTgRcfbKpd}sSb~k_>#A@Gn8!HHk=F; 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

;%g|ht^Lxt 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 z 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 i`8#aux`F>8%Y^9#zGW9h9EKcb_zd zPFdJxml|McxQ?|~R|b0xZyKU3HLR+{L{=M%EY=r_!?ngn2(){L@;bcrKJ?vQFtnN< z@J(F14B0&wA6^^CZIk9J7{3!;=tMFI&HOdN?3rGYH9hp{(oC_@Ie2mW%f=U4vZy)# z*5lIme^GT-VNq~jycQ9VF6k0b;-kA~KmL(t1wuMwJPL56MAFrruVKicf)!Bt5%HoDdxGM& zwQ~V+_jFk|H(Yz6|Ju9iM_X-G_U`tXP+>ybBc670{L}xk&gwd81%QbGd*SG{N?TF@s4yPTFPy`_yQD9`)`q9_LkdGVJ=K%lD@BG z6?M7m1(C1oBit*!-$?9gkX?N%L)rIm<+P@VVh3K~yLD|pl=p6{{=E{b7WykUaryQa z*S5_-Cb6`QN%4nAad%a5(OavjFjO|?%Il%fAXK(9LA>LC7W6GPKnQKgfhDJo@4&~_ z@9gbc(jPml`oE?-JjmTU>3{e6^$%%)7g)iO-74J;@mXi_5Z2!i>{0=bM`4=JYa)IF zR(MzK;jS>~V`m~rnP#B65S{l^D0n-=J~03_*-wdz97MJqpYoT8oD*fE)Eb@`_J5My z${S|f%4afn<_bJ(|8k)q(}uGqFpR!wvQMIEgD%86*YMNW;NM19xBX)e9cNX0|JWpV z))T1zxrJC}IIYBWEHE%dN-bj!<>Bxrji{a%Px3FCmlRYve)FW=29c7x_w71tKGp~g zB7lJ)VizzDURLgpCN#`7_`?vEg;L#|bp=Q2r`Wm%K&z(0c;fs28OwAY7_Z8AyfPM{ zdRC3A4=!^r(b&&()GDp|l~}eZ1!#5d!ZZU|T;n_$1(HuZ6LPst1xG+BE8hP_DW3yiY^?KtB3oR zik7IbCq5FmOrgaB?!=Bn#8K!R(`~58T)74J2Ij*o0Vqaju1}wBcpzP4{O^kEpCy@g za#GkiMgB-&@Q3Fq*VpKq_xTG_H6^C6+B)$XJ_H^F$31W~{Ccck65r|R%*Qa%{$53W zkJ$jCIRfx0OwYQG+`g*JQlO#H{un^I7VC%3^iuiD*2+J1McX{jM~zza8EHs#)JOvO z6%F$keMX=6x0|Qn2u9Wmk7-UQqsYwk>6c=BMlL=m`aeH+`Af-p8qpsu1-8BRs>JZj zu~#yAU1x>6TC&dmPrbbI=X3fm#YbEEbLgvL`Z&2C0-yM?aR+0q(#*NZ;uK!Cec}f@ zFg_CEW){T%iE$J>z%o`s0(f`&fx)>!tN=$qxWD`wH$1ik6%|wcQa&;DhH;O14q6Z`UDE&n{(rPZ=QiTCLAps_I4X6;qH-Gq6m zu&$5l(V2s0^d4V#%tsfCP&34ar!UK;j|Eds@2rVzs17x|KxOn9MmlEd$%s_%x!I@a zC_WEb`+_Br0Y1ze+MC?M|M^W2HGBH+qQsJGPNk3Sjdk{7Hc|u4j}lc9$Nv4KU9XY$ z*R;61rPmLB>kn!Og$!D13B+x=-66MYxUH*LTwfLI0>p0 zD0Yl9lEkm;&RC=Td5(X+wpuahU{6eXdi0apiYb5WVbJfS#74;zm?$_ibvdY?!l}B_ zm%?d`F%uTs>?N+U3UwsFKLdnec{YDteBH)!nXZIpn6yP5Qi{F;l#^1GLb7n&`Z1Sw zN1%(BIt#I^04?6~5?@UtvJ(t{G zJyeOta6VEdTF-{A*7pQ{AsW)eLeAb5KYY9Rbq&QP+#HTffkO7BT5=~O?&M8^UA5a$ z-5hj>`NSu5chYqB5dbd(elwMj+9O;ee=vW<9unS7V5npLz(vu_)LTRn0V7SDAOkMMEu_* z`7Hj;+8agwp)QRpuTeX2*Ss5uPX2HTO71SZleMkdnl(WmKyXN*OrL+;??B zCg4>=0Oo5^t~~(#FT&-Uy?WDLbn({gdz>7~#s<0J6-oZ$uFtiua+$|!{O{$`=+;_3 zabfOL?)9B+9&D%vWUPI}3PZg6$rGd+I|~aOUBTJ}25RM95C^^`pUfJM(M~z6bT`%c z!PKEG)$Yh5wV#TG+=_GS|F=}17keeY;-*PCv|;cFKVX7o_q7L5uZ_~T5P1-oSsN2) zlv`B34?ds2PXBR}a1$?3btHAZFJ+a{7liHcJ*>9HP9r90zlDt-+;@A|(K{l#Ss+7q zGhT7&{4`;evkK`WO|y<=)Bxl%9XszJoe0OotLjzz*r$DYGQItloCYvP9qgtOb!M7> zfbpff@BB5AxZ}akVRm1Z|F%)@dZSpR?t@F zbS@QO+Y$|Wzo@^bx6Vjiu0^oIhm#b-+x#JM zAbosYKA@s`99PC5&K20qq%(gyAf&aD0$T4k^<#Ul4P1qWX`CT7{S6{n=jBVC4I>%Xk|o4C+7YMe@>0b zrK%xUeZ$F&Vambc9`{!BLbHRGEVW7{*q9uA!k@^s;e2zrE&WjC8kFGd`xW~sCP4Xk zjvK^!+bES%nfcnIac0U!{m719TNS8&#s#MVQMgqeC1-uoFpOz4d7)DN1JHh*>3Qbd z++ZxP4@51l0_WQgF`HvW9vtFG=Uxb|ek^`v%)3YR-R?J75cCcyT9tvGk)V0^z;xX_ zr|43Fx8?kh{jm5;UcFw!5*5o4u>?2`@ms}_=W0cI{n7?*&H^(%q}fidY=e)V3MZgT zmVj6KtO(Hg6RgRUsf7yo9?=s>rrp*p*;8u-l!@^9=Yw2Y%#>8<*H|}Qm71AqdCCt8 z{4&L|#d!gcC3Z$l)Z*T7dlyTW%-S2v#zH! zA294byWiJxe1*VSAOAr+nv6k9KSKn9O$}qR3bWA|Cnxg3Z`yRSHJebN?Wqep_tyw9 zx0KWKr^1Dxhl@79_!`=#mwe-}sif%=PQLG)SmeGc2LBy!3gsfLFGmcPT9CU>U-zKt zj)Ub&adloX$xb`0V)^Q^cl{>&@Y|>PY-9cQ^#WBpnsGPVaW+rOhP0*RHLiurYmWOmqD6t5<+d-O@wTq1$hBN-*_+T+)*3hzECNLr^c>_H~o=1P|L5$(T5X! zTh(qUY@pQa=EL>3&N|-NK3LWe*_R7LW+&fK3hJdO{;j$6=2nc`rz06@rrW!kLh=xld)Ioqm`oZ_wpUVtidF)0@f{0i;|6jvM%AE|FLbU%RELf ziqqNT@Pqrzy2d)^JeQKF%I<37u>*(Rz z`3|v5_~PzzePKRoIBr7<=Q`liSyaQ`pq^~I95sjUS?5daQ0>R2K8a)_yJWG#+Vr zT3b6j3)3sUEoVr}pZIoQ)!&yOCVa!cvSs1PsBxr9{H+IakqB$x2Had%oen0S2Fa{) zkSg)JLWUE^z;81~_%Qt3-g-U^CTu}XA2*R~Q~mX!=Wpt!hVK$H5D6K2nUm=qChKul z?~OBe87Zt%oCn(9jj!o}>OPH{ojX9GOg9terWvn)<&neQTmmp)Z^xyuI`X;$Uw0S{ zYs?fmM-cq_z5R=_#{fWx@Z)u3SEBKi8GfZA+hrjpFhurXw5i2mGm=hqOx0zVUo^#( zYIYEc+*kw>kk|SKQ)AarSfmXO?w_f~Q@gIYZ^B$#uSoKN5g-*FM z@O&0;^I-g$iWgc6N4*3G&igfW`wecbF#Dwv zLN+$En8>M};+@Y#x>^h~06s6DDz^Wl>v@w^byERk&7Ei5#C!lE#0xcqrVX$=wE(Y$ zeML?>5&|FUgm^q7wLtEHAD=rs?6Uj{;A>Ex)#^?qoBL>Zs6HF9agy@6)fwezylqyo z+6~Ln{_2{S|4OtEBL9pG^swW*39xRvZ|H`9K!1Y5u==yY2?v&3wA{2w_ZcSW`cmY_ zhnr1j`mg9~RyQfGCiC+QG4=jos-JKB95Yhfes zx~>j^%#&yLVH%QYB8M)boa8lKS_H5Yt&eKh7W#`mMYj53gM8zj zPpA}OzsuRr!;!6eiUEJ$^0ehL8)gG=8$Quh6ibh4)of^X*JB@^%o$CyBAREc@|pWi z7TG9}8E0GoRVQMIJ>JfH9pnAjpSG-3;!^!mKfDw6fl>Y9zg=7KCl#FEj`L+BW4}O& zq^BZ3{xP|JtE5VP%c&S_9^5ZHBGrG#dgpxNQjPMy$1_eKYo5<7{U!&&V?q)##2F~j50m$pr84$^SI8^Yh1!*== zn;=L9G(kfFV=lq^R%0r>TJo;YI&T{>DOp0LS0se4C}etvKqT)lTqOs8=!lUC;y%C^ z3v$2Qq=qG3G1BZ0d5bs8k3IUxL#p}!A0UAguwS>EF!4r=@n0vutJU2*xt^QCIH~Qd z543w_NQll!05hvn3s8lCzsx1mVuP#}n+X^ZQU0c>2%Pd;eu;L*H!7;t9 zAsgu~n|xc4DNKHJMX>4FD{ZdIHt?W?Pr&;`rd%Y@Svpi=EwnNoTVbR@GDY&Bk(3#* z-krwp#xh&Ly&n&35Uo9bh&7C38gfbquByeJrnE^wmkFRY#ZjG5aRJ)_sazBJc{_7y zAvf+Cw%XtpQMUwl={LK@y2AH&b8=;UN9Ab|nAIBcfm^Eyho12$Ak$PMCeM&IP#=VS zP(0xm_gFw(JTR0sbhCSouD{}NBwLI1{q*7KVlTo6DfKh;Q4y@?T;CG<`rpe8j^3K; zT^Lu!2T5Bv@m`=)Ww3m9DeZGY9rv*W^gF6!V0GD52)fV>=UEf;#&hiUl#9R!(4H5PE&;9Y)_Mqdy80AnAXwW;l7zt4U2d3)QeTp7rk zo^x>=3S;rTI8;FnAnPr?rJfF{U;%xNa1Ya)0HMbbsY=9#`Q?{5CP#u$aALz3i1RW` zBGt=S#SSMQ`6#|*H6^^p!)Sh79>m`=Vs{~+5_x*M-*F&vAhr;F^9-f^c^LdKmJN7KN!vmG~tZ``>gqAGt zkSCV7o%1kQ7&by;(_;6&EYJW!(--^_#QxfIU>qOxA(0f0bo_5oejhSdGKT^n+D^Ds zI;<^!&sU=GjI?jp^yz}q>Je)qVE}x;bbJ%2SkgAWbi!G$bmvZ-k z2BBs_6T?7X?C)3hx4r-+>)sNS^rin&eUcCMm!aSNV3Ur zHL*=O-n@KY9U(cxHxop>cFDu^#ccTxlPyzSgzYC=rWz#oz+qsys0k{wvC#ct7Jrj` zKXQu5;M?Q0VNE5IQEC$DZ?xR%&FAg`U=fo72LfW9&xAiVR!NACpK^O ze*c)09Z2cBOJ@y}v%o(a5tP&5zo)%+*zuOF z=gwb2^l_hux*B9YZVGNC8^oVh`stb8nVO}d@l?1T|M2x)^FA;vP5lwzCUpKhmd{r* zqeP3)CPW(9-k!g_#UE;WGguOgYVU^!abLsYiM->VN*YIjhp9;zR_R<(1}dT(qo1)8 zEo@TOJ|yye7hLwiNGXr-!1^*MLNW^WC?5_Mwk9x&S$0!|Qcg_UW%_*sd*T@#13%=V zWkzot6WoLp$5Uuj&8C4p8Nb3?RGDdm2QOiMVy zy1`u%ho4`l)YG>~$&FcmUf@G9^DbxUBuihfC^O2dKkD47IC|j){d~Uz<`v?Q8>3v# z+R1+Wy~bze$pRd@0af^`11wvap9K&KXagW4u82^o|677mDO}|1& zgYnbDZ&^oDnXf>ab+L%s^}B-|kc%o{ilXrej*YEV0&qjmkp2VMRH*W3G${ zW(4Wq{CHdJVXUqWAy;N?H>8UnA#5q@aXKS;$Mly+vTm9>8Nnp1F2lqf^ufq>n~V~-rWq`xNDQOUVz-TM@w!A%A!7xsJwTh zHAG|UpU`S_ED0Fy*=^=T{M3Cbz8_xuHm40-hHA({40qQ_MT|>rl0Cl<1ZDU$ZK?cSRy1Y+zqUGJMCVDy)P_)~$+v0OO>-10IzLerkH13&S2NLVuqi~&_!$XB%-TG^%`R99@ z493RZ{#Jj)Kab2L(*!60?E?{Ora8P^Hh}#!==VbqUur|mhh#yEXQ}N#Ttple{%VRK z8!OLhEaW3H>WH+}WLn;FutON;q4gd38xbAU+KCuHT-6?TpBQ%hAwFj%^@sSfplT!N zh@8Xv^WPbQa+bu#rh&IY-t2qikA+oy*&ivZ5l=_9movpH;P3m*>evCgrk#9~N zWqbs0t*GU%SvDz5y#P)Nf7>qJ=6NOBipEZdw=q{?X5VbEMF{j;9${OZ!@p7+)gdTF zStR1T13#w(Qcpb+`E8CBukQ@dKAaA-gXJI9#|pS-@cLfBV3!FOU~wj0h1|jp&q~fE&)_JjXkCu`&Y6zc&@0S{MYxUoUgi1?O%>DUrN5OmvkN8`ghUzCvIo-;t-- z?yr8@X?a~I9BP|ymcw|SI+;B`99bpvNVw$J9(d!BFE;GM4_@I5D{7msupg)L(8k|oj%5}8>#cV zk7faPe;#~8sJ`ERK;$zlr@1_GKrqfpe24!UCAbrLeQxHH$~S7J%U^qw>@tdG+>nmv zIXZ~N&=4Mjyt9W(+K(sGeI3n<_cfA;3PwTCtHk6W@;P%;aEL0T8~Oow9{dY@movwQ zJhVk9m^vy$R^LZ6>>J6g^x8hO82j?MI2Moavf0lLtZIp#{bbV+C?ezusJ(?-lRj4t zEJNDP7y?VK_rHZwa#CUOY`%FSwqm?x)LSThpc`guDQQsrSxq40mlid~VtU&XUlH#; z;gydJs~fu;gq@i`b52O0gLVTA6Ch3g&!43{rhyjg=|b-+MM(kg$CZ+?t%{{TTj+g# zFzS8AI7(KyRxbDZw$6%nynX$Q#*j(X+n|<7`nEb-=!o<_-VTIXwf_Q{;ihtsaHiCR^*;xOP52GOV#yOC`d|`Nn)8 ztXt8tSZ8Xj+?9^Ov6h_2(2*=b)@679*N*ogVaiy}N}saB$c=RGT=SBq>`RwnhvTrY z8)a<;mp%KKbcN^boF`UmWd?Qx^8rx-g4Ji{&~^(*nw-8%I6~G)fGCjWyb$!EeTu&j zMjZb)daytqUUm0V=BF1=HcW_J_}Hr<-Lvy_;Nk60_p5u1j>k>r*IuH}>gOvi`JM4< zVvCy%r_D=}n~M`~{JG*DLa)a46kK+c4Ye5BF zK9l_RkU~FmPu1qc2!VJj4yuHT4 z|BTXMk2@im@DjH=Ao2qW|KC)>q^QXHgwbJbhvfrLelENQ*X#0fa!TkF6Q8ugl6tm;K`onx1vnXyvZHy6z6$2VGz!1-cXqJOOTKw z7IcI_GxLTN>v3c zXE0*{IGHs0!&p1!dMJYgeqkZwAGwVgi1Moxy64D+is~kR%>DGA z?^lg3TRY_=@~+;O`+vgo1O{n*Q(#dDa{Vby#_Dy)692vyaiKJdN{wcvQLjM11OC*o z=R$K16+=CpPlrA)RyCcttMZ9ede=WwKXvp#CxrO$oaiOR3bSg#!)Q$R&X@XS{^%Sg z@i2bs%=37{XRIRqTn0_sz{t!|Ku+Eghsg?o%eUChp!{ z_1*x@*7|1w z+^Ozto<2!TeT1q$E7kWdA&U(g`3;%2`dfpV!~j_ts>Rw{J9D**Z}a}N^WoQ&aYjF` zRAQU4g!=I|SHx0~ukzCCU)}p`0Cf_7S)&zIc)59uu<@xwhBdk zFne!;)kX85MTgcf%agjDkT;XQ?UWDh&@+d1e0KjLD`LkS85*`?Y zJ}#PXIM%T1zN{VzX%u~sOAYIQFnZ?lj=Za2=^v3rCs$5Ge7Dh3>6jKC1>}#N@jFuT zE1$P+md0R<0i7Tc#tFC1?KaQK*Vf)O7pEwlLFmf>o(z398>7)88{}9~IE{_g!HM9p znnuR$V6>ovgO|j9fIs16Mh>S<5cMVLo=l6F-HvIbdr7ZfUZ^{oVh~MGvF}9Pw-fxT zj;5w5@`|q_iU&&Qr=7T@e?sFY`eNy*uAGIKYe&Ba{eyvd91AVryB*voPTA}C<1kGb zoILvX7IJUBn|g1Z7)&-U`dvNQTZ3N(!j&H1E|$U!4qU|KK8G-H6Fy$0J{iz9ti{FK zRER+DzKVRg++A0dX~Mo$y_IS%f&6Sa%8_k?ny^j0YBQb2mmj0UuMEixuc=EBZ2iiW zEObca?#FAkO!)z@(!jX>`ybAkZvWA9PJsjfsFZ`8+=DTlpV^8AM4RtVTuNvRz&kWM^@2>T$ zKt~bTYqtzA%RLm0?3KUGW{3V_57wTB6N7nNX>2cOXkHWiamSaU?W@=^Z8IvJC1{n( znB0;5SifksYAfgR+btDbrOyN%Iy*-rUE zWB=GKxdYp3U2fwW!_>0z0vG{P1nZO6^6u!yhO`xA?#+p>M0(`N<*Cqa*UI%1^e0;w*d9B%~77r&Pvod}@Xf6;X##23uA%B8jr zK3d(~gb{S1AI5gO;I_2Tzg+8LQ)1Tus%#C;{K83oFEVK>68zyiFRhevJ>0%^U4LfP zE2h#Jl;u;NvaGZ)5R)&}Z-$&5}_<+oT-LywDeD%f_^nT2AQd_)~6Su7zHg|C#W-iHM{m-cx#p zZ*Bo^vg zsStM=x=BdWK|FYbadCx3noM>Qw>p8y@nSq?E&Y>p% z@Qih$?_cB~c-OvTBv=0053Fwfq2-;*8-&PfiDSH}x);dldnws$12$3Gl~zUJ(n^rm z#FI}gn)j#ki#zZfk*t7!Kb3h7+~Q4gM8Wa=1xN8Sqtz(;(p4?L>k-|(C6m|`ElwNJ zEye+W@EB%yQ2g2975K9L#H6{}i_!4|ijp5vWuUBy#eXQ250b<*@8F#q#J&0LO|H`0 zWwB<9^7vM5DYX>KR~7||LQWvF7(0oH}9EKuy}|B`=eI(3dLeR~3( z3-5k0$>jOwFlx&9-6wjxfB=*?^-2C_$A&Y268a|7;HdiU*3Vl`7w4wIK`fjyK4hWHwRRLd)5c~Y_~oQ z$}~Z>-UgX^aq>Af%lA*sf4oUldY=;xRy~+=xe%$n&(=DpLN}n?##3}m-CZ<(Kb;^u z?UhKl6c$LXq>dDIMM}$>ed@t5T&}|&YlBR@J2{^DP<1h!x`+rWX^POnm)MNkkA@z9 zd=?W=+_&L$AwusLy^ZY-{<$GTZ~cuZ&%<1v`9Lx)tp}iw_k_8~Ji11G$YsYD{fnzD zl>U0~<;d?&Sr<^r%yp1+80rlM>|<9n>X30Oi}8^nB~6Yv5A&`Q&)bY4@~VVlodO_< z2bz1Tkxsa8EARbb(6iRVjdi8FD?3H4J1UDVtVgKqcF00Hby&ZHhg!6BzH%23=!if* zWnv1`)3aWt7XRmh34Hu1sWbCV2x>CIJ>CrZSS0AKn6aK}bIYhSpW#;$yS#(p^b(G_ zf8oUu3L2;FO-|jB8P$y?dx2C8J_^=PsAtZH6egH$RU2%(O3>#nq?( z-Q_p^ZuF4>MoIjxq?=d2k0m!c)znD+Y3B${GIa(9 zxW_MS-s=l8V?|Y?O-W*F+HC%gY<+5u(>Lgcvc^0(h|`@jrApvvPzKT7v!Ehuurv1G za3mWX(7&(|-0iYRk4)J4ZkKNsOj@Ck{)9IjEC&n|!8t6%nN&)A<)|J&;W@>ru<30` zd=uum4;W9m*wFvf`hG5xB458YkFZVTuhgZ)*&%UWWR2Sc*c@}6(Zl0ieDGji>we$}CIE(D?dH%tY@cf)@ArBOL1OL5{UfsdUTfFC}AF=bV0uRi}cj%(of9={ug)BhcXaaSNc_~GJncS|A$K7nM>bMJYR zjQU@~J0o&uc*fbUTOe3%`EyF1H*VY^;7CdA25@aA)VPh6yy5r;AT%Q<{wVhX~Y1#PQ{RKX$%G;(qVyz(G<|kgM$u1>W;DN7QIu20Jv!tx0R9d-XMrO7O>Fn03{3%Q~KcS_jo0XxNR+JZNMg-RR_Z*S-%S2cTl{bHbq=L-r)HU zfy7m^Vbf?5NzGyb)A8_bT>>@P=Q35#j{0vcGJ$F2OG1w@&;p7419Lvt&o~CNKI9fC z={N!XsU_7f7_*me`ku1^Cs{YKwaAJesj*C3NZm#`>u&A-_o;wfsf* z8oUmOR)s8`X_sF#ew4wSD!Wo26pZfil>pM-CNWS{oUQy=m zJ+T40HulqxBR8Pkl6 zrT#FiOUAcDQSD-|*Oy?~Jl(RzZp7zAb4{w^2&Dx@Dis5oIsKkMB3&t_+x)om*@*nF zi3RP$l)ua)G+PKGyjCg zzO*WznzA+S>+oC}!E0)6$Fxn)807q4cvB5Y$C9Lsq)P5uV3+rN$onvf=sM@Lo*h*? ztGv(o(q`q{cr*Vki=TRq&esF`z|#NNcm3dcuAWSrff z=Y`}ES3WB9t>vHJ4F1-=daPS!r(ikUM_Jk}m?i%?DabBI^G1kI>%5KqqgpK?M>zn_ z@EC0D?5{U@dzhcAcE?|s`+h(@C_<7WwL~UOAeq^RZu^6P!lD_Uo&!V19jGB~QsL%F zbPRlY9yVpj>(^o6(qrmZ-I~p)O@wG8^Trq?^rX{qV~fHHT2FRj(o9Cm&b*yVD+QQcF)|QM05B5j@`h2AV#!f{h9*IQRdovqT`L zMLQ-9CK@7$BjB$dsK=f1JpP9jtZ7Y-$nz!=(R8Sf3fK$~a`1lg-)`cN{drc$w3O~R z7lG9sWJrH3Q@djST~F4eN1_0_T?f5+iG;+#U>9r^Wc@6a4?xP+ohxpGYNwcHtg5Xh zIj3F&{lYLv%!4{7)H4uVQ2!E6-AR5bzr=}ck{3L*f@Lj;b_)e7LESCaIHbM=`kv|5 zI-@n>VV%C^q7YS=wLk20k__h0;BV}gL6pDWKVJ_w*MYTYU`5u~FYYZ}q}tLw8d;sI z-u(Wx@y6zTD%*RnEBHNKt%laR`W0BBnZfYj##ACl=yvl<-aSj){kvxJCs}ZiTtLM? ztGt=W@af2KfcLrMMc=X9gtrY7i8lj}FrtPD@l!#65tX9k6zs`#jidS8aBs5zqPd#K z3(xpA;^5H$^U$F`?BgH3Cb?>r_M^CdZ~w)@$kZ16%1yfy)Binm&i}kl7?QZG0z0U3 zit9msuiL^C-yQqjylpBg^~c$?Fg;H?87RxpJ=6*1J12eadj|MZHIyoE!f@czZ4(Te z)S-^hMJvI|K+qSfj!NQ+Mqj$*PDcj$$ve#*kWx%m5N*r#t(+VdR%Yh1QgbRvBjB-;Bvc@$nx_zx!M9yHX9*5?dv# z6L8?v@lF7_A|KI7UbR(kaY%SBpN)b)EexGrwW`Yu8u6R+fLtW$#_TBxN%`ZX!e!~Z7Ti3;*M5Xgficr z7I2_#?z5oqw)QHYh8HSTQlX>ipO}9&<4thDnKd%s45Z7md;ei09U}Rt2J*Ogn|iW# z!K?4P=_7W&15aa@)F@<{QAfY(2t2Z!=Kt-*7Je+$T;A#s;3T5=r)#|;k@!0Tp9j%E zH1tO{XZEA}VPJ<1m_w#`-#1B_kdEi^B%xROq+2Rf7W$IrmGiE3N#%DDJVD(Hz5wn= zmp|*kjF_&CP2D044+zUS{1F2r}%DHRK?VN zoB>Udh}VyUHklUjPw+7bvaU%We^VG$l_8je9zUd>)%+!!E&(Y*63NPPaoLUCjm-ZGh1jIt2K)$)axW%AY5!2k8Y~0b{c7BxjD++($n-xTc^{Ap z?nHG+m4OY*2eK;zQkDy9J#KPneHwezO^5RE;OY}@6xt2J*`J0CS!4Z1?mXbaX&#>y zNs$a=wrHEZNnx69maj7Q$vCMYZkZ}QKjfrH?!_$}M_lFU@FbS_-A#q$jOm^~_Pu5J zRCOd3fAk%N&ld`aX~Nm#`miY>8}Q!-=cIki4Ekjq)pG*s=4dKHkoIKVpzb~1l0|Ak zunPw!BMHymey>#xli}1MkjE0B@;mkBcxAyBa7Sv%WG&jSPxW%@?qqtvaK)0iRnSk9hu5v+ z+*0qf#|(Df&Omgd#oDv_K^p~?>N4YpV1DF9*nOPzJoo;^tJ@{xwLEg#u4I)x3(le!XJs&$>Cs{d(hr$>n_jCXV8~)pQX??vPn* zUQ>RQ<(w+|L}RD`{X}tH4Ia7F7?4_UR-F9Q;VA;Dn2WDZ$>G)DhtaIW{78L#2W{`l z6PdMR&u+KJlqx~aeX~3{k~vvePrRc>Jhje+1*W&_Cd#$$=isUNEPNA`5+36`D-j8+ zmK+%O^*D|hHsCj^Fl$gg5m6fPF_N+`B0op?ELlZQJT~|-r4?l^@*n@#mw^eQ|A{6C zcDD~KHWgU`nu@CRlN>ySkb!Ctv0MMA@nQdb$lBj;OofR{0;9yyb}rpA%=3pDa=z1M z=#U`u|8n0vl-r@mI0l7iJj;6m#IFDBxNfw6%YInsx00?WTBH&iyk$Vov$Ov<)A;bWnr3L4K>#cOl(r>~+>b@U!kOR#1 zjh*DiPSt-qdwj=e*6#Yh3{41^lKO(K|HS z?^$Hw%(uX(?yCG$WoZ3-lxhqCad6{CF(A;_AtVA-g zFvj?{+KU-bRnR;-1NH3q)mC4$8G(ZbPEg@eqTegdO`W~JR4n0^{{dO*eCDFL{Dmof znk<_dOde}Vk!}69Az2g2s(`G~u$0Zu#3^@-^R-yVw+5xE07&}U zVh}5iDk@b^qc#;G2pR2T{*SGebuWzZ~P7aO4gCyV`2l&-SZ%65gM$XNqz65wLs_mJ5nl zgRUOETlq`*;CIs6--EwC`*XwvU@2FB_CqlCr&-n2DCY0}rCGHu_$$bE(3Utbl*%cs z%v|lL6AMV|#FKhE5P$VIjZkD!7NYg%P#}Gm55`*r<%n>0d@G+-a9SRDY+8nZR9?5N zY-^&33$vx8d!TiU^-9Yd`Oj%a=Fa*CUl+8>&!m=GJ7qT?V_83Em-Mn7o>UvSYb=+G zO3na&z(Hr^cZZW2IvqGC0LoQ=bAmBU6B&H#)r(M(T%2bC{6#xojy!fD8|=@&(~W2s z<$6RzsAd@!iLML3b=3DiUv&D^3sM_}*obW?6%ub_QRBnOJ#k;H6T@Ec;ECeQZP4u~ z>-OAu{{nyz&)V*3R%aAc7ZgYM=f7!G&whKW&g9xyRvU9)T~K^0QOrI(ZwjBfZyt_k#=CkC-Xc3OT*3cqD(CbvS>IS}8PbWUe`n+skz!iHPRtghF+odte$X_c z5Y{6`i8TMAemRbE*~Yv%GTe5(;n(JGu6qDRS#*cXYp#iu18;zeu*a zu_m!Vom0u(lUw7?>|4wbv;(TqIBGXe`>68y*E7+k(iTYY7LDcmOIoV>wRIkge}e8i z$ZM}${97>15eg5{*CKP>A)WZ_Tc`OV@m;oAVo*wd%S{y5Kr2`(Dlo;c9T_;H^P(BV|I z2i+m=w#z&UpcVUkAbbKVNuSE>=KN^s zZc*mMhj&jbX{GK?AJHkC(6tLCt)+}y5H*(RG;iQ&?5$zaM5leli@mCWZ$E#Rnd-NOLtA?+iod? z*5<_cOpC45zD5nW4Db02Iqsh6VYpB#D^yCqSSV#UJ&1WY0t}i;Hc`PMo`%QVSdU;% zlGW!F6!qftTxpb~j-{x|Q$j8FsA?d0!8zi2N(HD;u9a7k8Z7D_fzAq+oF}icAO|WI zpa4Zcy1&C-dOZV+E{h39u_=c0SJm{vY#4W4MJobfu3kOCEdR?|$WPiGjoU5@^X$=G zI=`ew7>*kuhF^Nod_%usKA zqSN!AwJ0|R)C&ZxHkyU)+i?@g0XSZQ!>+8B@h-#W+vcfi&tZcYkD30MSY(aIn2#f8 z!}$p$3-$xlPQJMQ$GO}0s@cx>rl|0T!N~BJ#q+ecJ{KM&@_`QDVzN%dUCDDwdY~Vt zI%IwIF-%a$KweI!B`0(R5x~ z5OFb%y;=X#yO~E}9V_sTXSv?BcN2sOzw}rhTd65Y>)ABL3#6~TyCk~vr+)I34TZeq z$qlca`f)Y!isp%CfRz<`68?CP%?gh$p}}#Dxx5L1=T9*n)eoJH-Gt<2UF6I_TdcK7 z_KPRN><+Dfe}!-a==ps(EJ?JF)=N1Kv?p3Cc@E$Wcj~=>R{CV|b4I^h-+zyf+9TYyiid~T?h>-<>R%}xg3?ucQujc*o?66(8{#f%XV(?)i#gTBTE|T5$;#*Yc4rHRKIw5;}^x zQfsrg*nT$U_q0cHf5ywUaC#R@9`tb-0RQW)&K;p zFk8GBs_L*RQSADqWRXh~gO6&~^*vK$4ViOsjW&F(LY*)SHA!lt{c`5MfMl=SK7{Y8 zazNml=;cYJs`3!MXbo?@Y{J+RCBm=!k9p^&50R4=?xD=9+i;AkS8-w=3}|*qZkR3$ zjca7>a1Z2vJpMEXyh|tk|H{5BI?ADBsSk+*0=|&}qPMd{8e>+P+9H$+ULiu6M}l5C z1; zxqjtacVTX~T=}3f%RJp&tKpWLl*s7`;`C}|YW?BuYU~uhYM!Iv&-St)=g07)Ry5rM z^jrAvb*9hKRo#XB9gZBWN)Ks0fr6ty{|&hqX^)R>*1WSo|3fN?l?r_yJZgqeu5zUl zw3S<{b-VxS5*q!JzaBp2(ufDB&@dgw}p}EiVBEy@wo;65qZ=#15v9?sAjd zNQN@%Y(PH!*B)M!23k+X+N6tXfk|I(ercLw8D#`wcuW(I*W#`Ark_-Z1Y8%G8$OX) zrZyS;4^R!p#Je{G4-t!QAY1JYg9Q89tIsNi>kcUkylx$kW6Ou#ISIO8x%X1?eU0h$ zHItk$o$L2HkVTTjtHDhVU+Vp?R?1LE2ZdstL6N4}DBo#V%ST80rKa39>O|CFETz

{rnH;c@yO^_fr;ld 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 z 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 z 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

xzLPd8rEhZw>8yT zktMN?l*h=l&8H%}8BEf4BYmW~uctz9B=AlKN>hMD zp$rriI96%Y;eW2)WVTPF{63j}5IjAGwzLCsP??X&KOZ+f><8AS zZ`TGYv-&+jWiPpkH3i7-fD~iwao-z`H=ToNm<^-jv=G;^PVkE(`WkPrWEN1r5Q1k} zvBO`NHsBRKIi8e5W>{8|{p}J(ewh2~Id5ekuW|=5q+8#uU>!bUzH>nKio-XBd>Ymg zGIe$c&bS*{OIJA^Z)XtYB7e;D`+C)$tVz>)#LAVeB#t=~cXkiO?hzom^EAA2F= zn7^U=&&&E!s^~&;W%)OCAu{jK!_rue<}hH4&8<=QE7KJVzdL71X2_R&#*(p4ydb%l z@Xnjtn%5&H-|}l$IB|Wx`2f-IEhNBfxWC-`*x2Rv8-@S7Y8ZEHiX^YZ!|VK{+8?sp z_%;O3;Y;fJ^*x|?_s(?|G8O-MHbgzJ}kQL z1iiiKA=ld@P{UX)e_u#imkoT!QfZse&nW@(9MN{hm8z_)j~xQ}3nVV234g&eaxp>>%tvtgFlN1v66WU8C?>r>m$*)IUC4;;ze^ z8G@Gj=U4=A3U9hFFs<>ES(;-?|Fj0oML7l?IeEuNb5)n)yP>-(G=glie%gnXI>J)7 zp2yb*(6pbt&$zaHh}*&KgV&NxJ`0-l#H#wFdh0DuQFvVpiPE;!;N|1ED>FpL=WCTq??PKE-RKfpC zVYB=yi^!8I-v|I%K&HQg)P)}0^Z#|mrhFfyuA{h~U}RTAN&aE!lDLd>2m*gbNG)-^ zs`#r&)EY@Q-*{bvYu9E?!G5x13*U`6!R|`2XF2$s>}Qok)C$@{E`TQo`q;kF8m0i- z91yH77FP>&_(UR^@62}7%O7lwY%?GpqiR?{u=5RB^V`4$#1y|<(qN*N-(JqyF3+ca zzXMD}&MDL6BK0`gl#&8u#W5x>&X(#;h+?EN_E6SG96GpkCF#chS``3W-P)sWEoi?W zd7ARJum9;-T6x?asYG|QP_#aJ{j1EKgFb<*->iRfzwk)E-4i4c`qjLBV*;br<{z0y z!!jxTP9ta?_~lv*c_$|r91{_!Q4HKVTww8=e!%AV?5H|s96(KAej)N4J{yoj=_gwm z)(%Snb2oOfTpCD5LgJp#RbWitHU2@i#c83^#+yz@U?{q?cDXT*spYB6Ph#RPftS@| zH&N&KKR6D}+a2JMR=x3a zGXLNh1gGoJJuNG@hhnV7fFnX=x)SON|5o5>OAMWSNy^J!}tnqjX6(9A1HFwjS}bK@n1P#o|L@s zfq5M9Rr(_ZQ|{B}2D~ShD6Jma|E`;;Mo9J$iyyc8=xhm&#kWttSR1Wa#FIrRVY9rQ z5B7RhkEAWzX0sTEZ$`kC6F{>9jBqfc z6|LSB((TFWq$^dTz^dqB;SKS(yhF1TQV5v?nB)|rVL`4$|AEM-m3vi?6YJuqlQ$DM z*kas|k^xBHA0hdmg#h%edx8 zvXnprEY)yQFDDRL(}-^fOG4D%{@$P+TTuby2#urMD&JYls!`6Z@PlEUk+%-hsHKau zf}-227)pAyjv!j6#*PA!LP6uR^I#E}7f^Y!cg6Qdrs3)hO359keuQ&d1RnX^DHVXP z?WM(L+w>smZAkJv41jMB_h~WGbgHOR*X-by17}eZdx`>NS8xzPmnCWLF@Q+sKzzVy z&v_(`THXG}pau0*MBCZAdE0}WtM|6UQdJC`jBy=V8B?SD7bY}5W50aEDdi1Y=mw%5 zRGp}>1)U7)#TKX?X(GO^Xl24ex1}>}|Hq!Qg>FXN)C08R$nm72;SHDAf%?_6+FVeS z@ZwM=|I0n16Dk3%p*5y5086N!~xL1yEFZciyr%JFGzaQn-l>0MccgEwq3PyVHffKd}a} z51tH$rX4(%DNW_cjKd!N=*B;1!*?AqtR{eDxqV=>5U!JqifcUyyYd^F;1$w)oLo(T zp3!CHVRx$&(r#Ur0C`DpHXM^*!ODOw#q_Z<_;`H;8FaPA45ut%tKyRD)OY4jl(9{} zdwo~@5%R0;)iV|U3w7#^dEy!`~1^t?}n%PDCgtbgvB;h zUm)E#ge=~*oj5LH1Y1JESfj8x^iz5Yv=FWjIqMVPOajLqX&Xg7W_DvYz`{45A+hHb z4dJx5(Y~5czj5EI{3{{IhdcKy1ODyb5k^8cCx7l6bw$)|ilgc)_8Izyphjay5x0+Y z&Xb01y;-JZIj72R=EVHGqw0Fgj$Ao}!eT}Gej#&luW8+sH?dM$zqE|zr-XO&+biM) z6GByK7l$sTvU6h5Gh@D0UR4^wL*nU!$Gyx}5R|*EGos&;(PsD|g`I=Y^jg=*7Wcna zGnPbclh|c?^Q9Z-5kC;vihlzvpYJSk()e$6%s|qjoNQvs!j47wZhEbf8lJ?pIqk{y zu%$NZ(!>UhkPg@8@b=8!liaS+SjQOFbN7MO-Dzau@i(wk|MhCronhS3{QH&{@Hf^` zZ{P=#7?xZ#pys^E`B&pac4b zZ$&6%f*U%k^zDt4yZ&wbE1@8h$buzfJpwauEr1e68`q|Mk&*c4Tt{&f`CT-)nh0v= ze;*G(Dh|hUVd*Y1wj}z_yXIAPgk!+MlbkXY zFx$OeKCg>#^;5FJO|7$i0bzb1E;q-buA_TvZ8*eTU@O-7euSP#-IKEQg&mF3@#`nqe zYwjf>?fp}LDk%?Uw*N7zeISlg~OElX>9&uXL#yj_^9(C|1Yl#g9IcK)4%KI z_jB}P*usGe17zS{@LlqYz7(Pw9i>C8$TV_&z!)CSQRx$J8eQm)Gk=~|_0RbaJE~{(bl>USLBe~N zC;oN^*+h_U&Ahtf&gw(_Vv~K1;^CwH3`;+rY|9~;i9KW)l~ga!>d7s7AI|>?7~5Ov zf`WTwUp5JVDE4@`5Oy_h`&YK|*D`g$x0gKk!G-u8TG_sN)7uQmU}$7!?3DmQ0Yk1d z8F`%HDARg{jlbFuXIN6hUw)jL8}AIO48o_+?r&N&5<@l+4*}`VjN^avC)&Jn`wsdu z#@-k~*Pj&DUejH8Hlqm|_)kCpeP`eo>iFD4c5%orc&l0f*rTO98%vcEh5daX&yrIv zymwii!|Kfb!~G^e=FKGkbF~9WXlyO}8eTIrTu9vfhfnBacC{;foexVCMyF!4LSmzK zR~L#NSqW-7IVP{_NjusRnIpL;emvpRh4wKwNxT->8&XC6!F|TMyWpqa`Zup1?;}aN zO_GrA{k8*pe9ekFOgC@2XJHedGm0282TqDFWiy>7t@4h&k8~aIf30^YvNd-q-%-~a z8}i4xfjqT+xFvvB|HYBthqbESwLI*7fEvn@OFRMXJzM0S>%{vS%))UWYFqLSukZg& zFZ$uAe%Hcwq~z3hk_`RSL+md* zvwHR+a;tvug3Ogua^3&+8w(68n3nA-rM}Br=>Tg# z#2kr%2Mo@_S1%c$vXb0FI{4f2V&|VmRJ#RQaa}skVALlGoL?H6+G0!R1xOhFcn0fwCS|cwd~FHE>8AB?+(8Q z_wm6Y{EnbAP&3}2N~Ol0rq(LAL|Z+U<*xvCR(z}-YKbW%EN-2>cocDXVBugdZVx3V-LiR{xl^n{X-VXjEW>EH5Z{;5MT z=vdnCCnl_S{)ST*dVZ{X#%#V1Oe~_w?y~ozJkLC7nmLtCwp)#~f8V)+g&4n-Qmlkg zC`4(tVSFmWfG=RjUf(NLP9BfK_MfaOOaIkcSQm$LXO~-c%I}hhdr|lw8_o7uKics- zY~@{l`}8GU5i-Ap`0)u*uhz|{ogp<-UaSzH%RF~O)@)_XHn(7XD9?g;9^jLHlF(*S zEXBS@SpcRt5b0r(h8s>ofnQHubq2pJG(3mQ7VZ2u>+Ju!)C8ZwfNGv8@Oy&;VP-RF zX8NvQpY-+qqPYt>^RW#^5jd{ zj}Ae7)Y0u|`Zr(ESO}-D8bTrnlq}K+`+!h#mtho_0W+{4KlKrYQcS-5Ep$mKBuh2> zLo(|hod;4{{(7W~bv-kU-X&xfH%OK~;2X;KG%w&ft5~Kw({U4PqnXr4@ z$!|Sz{NKk+>6_u(5324ziD@vg?5?%Hqmh`lJiPJViyopCNpj}Gy9axjRFu8f!-7&c2I0u>c^7B8Y4sp!RKq6P0H9PPx_lTNnd{3;IdSc7vYUw(~4 zZB9M6(YqQ`VPsLu*46ol<<+-krykwEGBRy!D@Ap{<63;au2CM^*JkboC=_D##xEJw z9&v5L$W}A9s=w=9PT?IGO@E|L97T-KB+0-u}Uy6FlhSl00R8auf6A_vMPms zY4d`y)tIrMUYB=U8lnqe|52d2C1$}&hb?q0l;~$U{<-bx#FJg18b6BhCO8#PPB@p*XK=-SDJBY%v!cF9kX*OMkJV%w)hsy&k(n`m=ffMKVf_NmPLr`IJsAthO@}*oJ$4hW-r*O)@O4t zg?F5Po%&O#?ZV2ZQoK@64C2$4;tIDJc0S&PW5bZvML!@dvR>uOA9rZ!xC!Z7L#wyu z>DT~a*{zmUvvVhk^g9Db#fHu{R`_z~ClV_)OKEeo)!LP;)6EzW%+=LF*Z0#=Dy9%J z|6o})5fS5^uF^hrcw_ptnUdVl{p*cNu;*Q!TGz`mz})JcdnE17%Z9Ig_pXiIhP~)H zVwwHrFU=j@iXT+@kG<+;1e->4)f9X6(zU=55s~`u2ar{R?^*6fNWY)z$9G}gWqg>v zklVeWQ|wKJAQfbn>;McZj>8mH&=3F8f9BngYpoF@COwf7;<611=;s(o{L5>Rl58d9 zx2rewbhB;ipa}#qGA-B4l4$Bec}YJu8dX&(X>(b_B%jB?`Lkgy$$Ap)ku&nXy37nw z2DX--b8cJiKU$2Qz53?vryE%FT47apU0-1rGAp5t*F1P+i3|>$77XRDSEVs3aHDxK z!(dC;Bg`2T9Fj@Yb0!st>>W2y22}+OO1fz#H_ z>kF|8SqY5PO%9XrsaD|a*?Wyg_`jodj=!Rc0)|Ea{JaBXsZjWuSQao!1>2qWl>g{! zng86|kDRR^0jAeEzfPt3MLIAfyWHV1>YNx^ITCS}K{9a`^m9{vMiPQz;oGF#;eHHO_(F`KGr=RNy z;y9KLRM~B`_uN2e-`CtwPosw3Ww&hY`*3AvUWd?Ga2R*h8SuB%L8AHPqQ2{=?0f{n zzWP51RRyB?vx#bKe(Me6>{_E~LWf)E&6kqY-CmUD6*Y_QRhqEz883eRRW(P z+j7~OM0L};T)8>Id+cv-S|imSn55Q0v+G?jsoOZWS7C)A*wO zwtJeJe;#2MOvO1HE?%QdzyKHFYi;Bl#?`2lDEK@T->;{V(|2Y z&`t=}`@-Oo1mtq!PR=q=u-f=$h;eo8Z@YyNF4}3})vdhqapjBsnalQH@X9}}@uw__n`G}pbtG;&T$=OhD#tlSG~WgmA*r`_jy27G8 zXC$w234Sv#li`0Z30hfP>IJ|JQI2FKQAc3fMQdM>6LHm2tRL)*7yfIB< z1NCiBUw?PIhFCTc%|_yhFJt;2NL{YBeN*b%{^ldIqQ<>XZX`4JyWJMbz=>yT9TEF6 z5bXgPF+IK+dTHo|Pi}v6^o90LKYpE(I?e4Vnf~9F}n%aJ=wP>ax^t}B(3J~`cviI z7G0lC_ZLrby5%aOz!u$7(L0Sk#Y1d#-5!{qD#4 ze+(EwU+BE|uk9ZBB&Fbod*gEYE$F#hAD`>z<6-G9m!|-VQ{y^KDZjGP%}`1#YMrp2 zMR(<&AY@_yLn`Oozc~h*++$o{TSz|`B2gn1-}?HQb3rX~1o2YRf9f$o)6H?rcbK-R{-+0e zN8Xa%zaeWk$(zZW2eSV7>v2P?u4LW%%u>4_6NXZyh)P=%B6~c-f+SxOZ&6wj z??jWqHkuiITt344ok$G1%Ll$pQ4GA5Dm_2QkG%YN^o5CSE@_b20?w1~E@AUBYfYBV z+6VL<)b0LOU)VOWUsQ*#1;n~y{-)Apq3dZW{@XeIkf%oof6;OzN1=S_IZHWbZ1L>6 zPxQ1S-S-(u2ehgNQEH7Qzm_Pgq-HZ(MkyYeF|0uvc4x)Ky4pfC)GNPG8W6`kpn(Zf z{JHlFrf|>F;r!-pBwTp%Ec4`;xLBs`B6*AQ+pu$Ttw;WEb>bO? z^=PT8N81{oLN`KKRIeeBJwh#H)8sCw!P@dF?M~>34O;jkXa3xrKIO7a^#{KGBkFsM zb1ycTuVGumaiFmMIe;q6j}LLRLCM2ORv-lmOSP+?i@EJ*ilDf<)dsKnwsgU*F%}L_ ztTq5m-i0`D^<_Bnx0>f*k@fXM`cj^_nwc??f^Y)-^_K+)r@4ieRBSAoNgjZfjB_KjpQ4@hofMX5PPV$=z1E z-RsHz&-M#isnQJ%kumak4R8!(;&c~XP;?>UK{HLf7pcwZO|ljhs#JEY z;P+=fweu)_ax}=lm;0a@)fQ)!Xgs~a|1!H)?7sgxy}fOgY;|e!`d>ElLCO;b>Ek1A zHC*i2uzsxci&aqg>}bKoZB`u3FB9jyO@&CY^(X`QzSd1=hG?I{-B+f zV#`;rA5xY6KfUui!v`$JH7%dsJsiJ3wa%ollwN(mNFdPy?BI19v++_#?6}ettmIQed*wqifd54Mi`3cwbEPKBNCT)Uuf5`cK54Yp%^4Jv@fu z1nJ}ZgOT6k&v+xvqgS*JAcr^EQDZ8!RInjQSq+ga*w>LUy?c7 zc-wZ7gzlIH;W_Evhj9iF0@ zYQE?(my@~Y@S2=NVm+YF6WPD%y*$wP@j=_srw~ik`7iGOk@9Xa2U$Lg6lN>`jS0@I z0vuO1!}|S&)P3KK7@mb-#ry0v{%LnWS6Vz zt>t^8!&HLWspTHsl{=4z$^F|LRIN}L9!L30_mGu_+B>p=45uD~d zYXHu;?CeJ(Sx;f`Y4g%_+>$WM#D7To45FnNM8>$+ygC2(hSzLIzf4?#9RqkDS& zXDy+3giP|TT-RG94qBPIp;lwt@j%ZELwYe!dt}F#{FGOiPA{>rZCqu5Bv$YI6R|*? zfTH#6ei-kTXf&zVcKiCQlr%M%z+sLoYvAz`rwfhB!*D9w)v#SE-u&A?KJMdfk~XJ| z!l0P7k2+`RFTJ8xgvCsI_&Ii5OD7JcwA028d41SjQpMDRGDCZ}FSFHO!E1-ZQ76Af-`)OPevmcu zTShQZV3JI_D6qL3Hq7fuQ^w^<-_B60uD-hUmYKDVtogwL4cv9nm0fGurHBOG9ZW;s zbpPVs36|scNqDZAIA1gxeH`@Mwb1W|ZdBEA#HIjh`g%%Z(twuY8@l%#)@fo&%+h>J zyu=E#i?#!1=mQK3FC^-~Js66*e>chA&iiy}O6PmiHM^op4aUO)N1qc9yeqR8hfZGC z*=niEM*H;^?=3kVtj-lQbeylfw8q01lbO+|eMdaHPVEE<;HX?!*%k@F*33?KQPkTa z@~^-k(SeI6CQ6|g5FG&(_G>woyuMeLc%}t7=uyDZq*gz%aF@+H1F2{%Msn|p9RQdG zu#{YKoaus>Eu<;+d!GzhJd_SCA{^sA**6cCjEjwvOsqc0YBko_Jvx$zSQO3=_GHq6 zS!X>RbpPeEy3_) zQ{`$(b9$PhGGE*>Om(`$L}z!{7su-Wmd4Folt=TMhF1iFRWuzKw_dTP&>(nKyjmY=n{x1@D>hi#n085yPDuKS9k;QR?lYG{M99@ewHDyI79=;--jBW!&`55x zQe6kq%NUx^Ud^An82{}mq40Fgwkn0|x8}>h4%vK%ki1L9t4D?$rOFMGen2gj-@0)2 zdlJh*a~YjJGil$PEAKDk=hsKt$G!W7ZD;>lV8xkdLcc;b2}e- zcEB#b2Hr#WuV*2PmtQK$YSnx*&U$yz^f@%vz;OJaz_ee~_CY;4U1MpcoTUOLc=9^4 z9Az5SShe4GEGH_RW5pb`1m0CCIC?w1{FdQB$gW375yRNsrM3UXj|>i8CpeRUzB$h~ zGHG+nM-Yvjf7#f*{x zZY}O*k_oPtA+gy)9@6V=Lv^JF?#zcMAq9j~M)je)HtE+1y{RHI)LXGWlz}@a&2rs4 zu{3)Bu2xvdvwLku4N!d76M;K_o!%8{%SY*aMJ%-YZW82RO}JS{f7JxHNJf6zv!m#v z)xTnqr9>p%octjcNBSVCE zw}C34{zcA^)@NOW2(oVF;6nf~TV&;qmkE(|vrMKs-GV53y!QKr=95f(#7Wcv&Ei$F zlx*CODz<@7<{Jd}wwdwRZ0bcaZH=CUPg0&_n*?5;hjytYT{4Q)=Hd62xr0nj6siA3XAthRz;((n10i`-v1m6HF`cqTNbhS_Y2>5 z$;1K@_E=jTraqxXQ*lv%Xg1|}4ZBoduMqt6MI@>s_cl7cQ8)I?NL>V)5wZ3(Rv0#< z7Lqudy<&;I92>aPzu;EW@*% zb+X8kclG^T)Xmc}Wx&xrbW`7^g0OPw(M47vaG&TmTnLQ05Gb5X&s$kOHfF<#pq^Ox8J-?yV`#H=yRYA;0&MyU% zEdGSIkvHAH0#?-P)>=S%eFw1^l1>pp+wmverm_TN*e?f_o@mXFbHc zTmR863aZ}f_}&d_3U07HwEzwnnGsG&!RRD@w@QpnAKxA_SIV%TAcv=`8&gM3ESz&F z<}@>|>Hwu!FuU&8_Ks8~=seUCZ_yVC?v~#_0>_Sk+V)>8C=by}>7@`wo!mxdRS9gi zuS5UJ_9qA~^&dU}&!s(+dtwNeh*B1N_KYN#xZN5Z(beE>O^*~CCDfVDpR z7MJqO_(>=rle*ai_8iBod@g$_VgxyGHEEPix=`6o^8u85){VVik^p5c zp(-?e-hV}0L*lZ@+Lk=~7VrT#vg@C*F*8H42lp9l3h0Zxq50(hq-Gv$CX7CZX^$5T z>%VUqwq+DAhn*Piz5;ydyiZ>9S?k|`kQM(%=Z6M(_F*7wCvq$2_1w*QRh%(*X2u6$Qe_mX7Pf1&j@Q)zcm+~+RTLm$8 z`n_$Ob6O~$c@COiFmY54dONfez4Kr_4w%Hf>fp>mi>N)Qs!O?#xSCn3^{rqMo*w<5G)qPyn#-eWsU*6Nye`(XwMh+s_zPu&qBr!_ScJj( zq+Zs_Q2HF`F7G}?w9fU@4S0iL6L?e&L}@4QR#jH2dD_+7t@v0OXw7mGwppO2#=_aaL4w-`Z9SloFU z#4LNQ8k%jIJmtKm**@o>1^NEZbWHas4qIIZ6*MM3$#~i}7{lTMF(@-05V%Q7mbA&L ziXk`PCN573njQRTzw@WwZQNJNrk%0Qq#MZPFm3yHFGPzc_Sku!=kMAmZL#xh#`Pe( z5Hqu;x*wK*+`cu@#E)iTE3(Ue<#O(Uk$}HgNzBn5ST8@zJ8gONdY98Jc|dA`8{j$i zkcfG3()eeC55yEu%y2}Xv6@w{dh6wgnU1a(?u|1NJNm_$jZ3)rDuBa&n24tK@fA5q ztE~f~SKigA*cg8_C9#na?KJuMa;tez{VO;rb)%q~70s}NPJ@UlDt@1z?ez3p(``r& zr%*&)tZ(RsEXnr!5VM^yRo}@tFri6=Jm)!~EftB?%7efNhk2$A;Q0RQ@#pxb#JOuB z1pC(O1pEF#tfU)fee#i`A8qAJYt)TJiRfZM{eUMXE0Am9Y^t@!EW)cUx?D8(JzN)a z&dgkmFi#Lt|L|yJqg&}ra}LE8P_Om&GO!<-t)BWP2Qfml}x);ZCL$?Qqpw- zBcPi{U*!g;;op~iz1Wpmf!W5vCD$wLsR1a>s~#s?Q2dZ}bXkyAM%`+Q+8 ztl7?}q3+k*XPSRatBhf-^q%$MB=}!Hzv(f zgezUIZiu3Zk}JiI$NtXNt7h5XleYgnkz@(JeEf6WlLA_}_=1u1l}w?@PXmQrli=} z0L!Pej8v;@VVC*0R^)5$ede61x)M2*Naxf$!{%&xU=72B=lDfFgMt@Gz_e!V$z6sr zvl&D0JGn-GwfJWl%TMve=E8?M8C4qs%x!E#(XEn`vz7awJm;AWzVGiC^=%$tmmO7o ztuBQ;{6kf#@BDygX9qgVg~3XN`@X+Vu-`-5^a1_fEVWl3-^BI}eoGR~M8qcYB;5oo z4Ss(f&axQ4vNj3wfz{bo4bY6$*zRop-G7zH6mU|Fs4IZR|7GuhDtf#yxILAkYLl%k zAg){^G_E090iJO-gnyI}`v>At80q>~X|=NbLi0wYMao~x6SeJq{mOm?Vmo!SGUiC{ zwzVvO6x{q5o^V=es3pH5tJUqOC+mAnWdJjk;jbN1!ZLLOtqr9uRv8D-E3{*D5+Ao; zAF1Ph8a*mooA^e;3NvCzV|FNI_x4+uEUjGOJ8Sc}*XLx#p@XP07H`7iru>>Bxauqb zQ8gM@x!KXS$)@g}OFswsFM1o!7#ZB@^RTF5wF>};wk-4W_f79Vx3jvG*y+ zeLv#ZFl|p^6j9V3N^ zQ4?Fps!9%*I_R4YrX%|doP`7>UuW~}w_b$WK2UmonrOu`bkxY>Wg^ytJpOWmHrfMm zB(?9g!BrO+pr1inA;lztr`CNUgB8_T7tIcHx6bNm7_5A-$)&lR;#R#uAfogu&>}P< zmR4hRbGNqo=P239)SLJ|qNF5A-~YBUFqr2P$5Mk|vMl#fBu}%xy_5QCn(&vu^x!)D zLfI?7_M1lyK+T~=_ayj7Jh)Nz4@1{Tvyo>fStj&G&(uE~;4C6LRy5W{KeNZVf02mc zDJ!Ul_loUE{!r*GfDHFbVE)F1T=eag-2W%$Qk^$jmttd}Rg^PZCpNRR^wlvx(+sh| z{m<|syU}&{^_~AGL#MBhC)A>9Z344kO*m(d&?if<{RY`-Fh>aa9dXrOv~x@q^1r2T z+23wGcv}XLZ^V~352^=yO+Y~m(u%&^lKr2Lg&PnVC-3>DbJ-kBH;me>rMSgj3UyVx zM>^@CY|~XMQy%mY(z*Du;g*hkTZ3&=94!~DsC=u8Y3`C!vdMn()^6GtPmy#{)gwDqze?ELCqm;WO0*7*T*bSf9-DCK_KH-fu1 zI3!I~_}?Z)Wlk&UIm?-^JyP2n*guqWd?Bj~X}v&91;hdu9?BOktYY7ZeVFLqJuyz$ z1-&7FMJ;~HnEQ$&4%i5Vq@H}GJ0&b_#Zv3lS)L9XV&F+3e(>_x`ny;}V${?aE5(#0!myA>)rncBIY@)(D`-O6bxBzzm$_;Zi5BVmt-amDfQ?qMal z&+I%5sS^yHlKmHDi>y2ktq)o1b*&hG^5_LoxfLj^tZ1K!jg1l=9sbEa0hyH3`AzKo zTPn2-VvFw*Azn*{j8j_MLX(SdIces>Y@aci@eI)GW7~-Tug~IVqoV$rfGoB~zPI-b&{Zqqnysee_!Aik zCc-fcIT|~RY__nSR4+SM4q9bPecJN3Zf-UK?)Oq2BRj`LuKYKa7g!SoJ7t2ojVa@0<>%FYqw0K7=y#v5e=?v4uG zI(dq;BsNjUNXE0eWQyGXQhoYOKehcc-Kb@6sO9PL!aL*3??S#M-CL^M_VW*ZE8ylC zoi#j=1W=e(;8cR?3iAC%8THWO8lUg!}=lb%(o8lE;!MPoXM6YJ96?AKDc zX^5>Ks)x;L^mJX+__G|>OJ37Ls^Y+We*m-@;9Wd9&B2NqQ#`KUyS@HyM+c^B09F^p z8i}W4GZSslpwc+24O^$+_Ex0r6Dd)fnYwHUy6->Hh+td4f1MR2x2t3h8hOU$~}K!%*T+-`dn*1q~dsIG+Ce`s=b7HKIB9L zd0|v6{e-DB)wf;chPZ_l2imK;A2W#|`K5kUi)+ZHc;nyen+Tm+#cgJ|-SXkUVpcF7 zI_sl)?_MP}b zDwPO)&jo0bb}x;FOdz9#Z%k-$A>L08FB)tW4VuROWk^S{$c^P7=tcTIZ^2h)hsZML zT~2!tl!&ulUI*F7M;?$M#@>`Q7VK8zk0hIjhP|R>$!A5(ky=mhCYh|Gs0TA6xTqj& zrn8rjN7**hSnXYH)wHW=+2pQOS^h2aKsd**Jc4s`Zxtr&?>UU#!@hy_%+uPPrQd#i72i7u{^U}Q}(kg5_>hLm2ph)z;uk)c$xOpLBdq;?Q1K4>9%az4d+$l?{l%( z9F1d3d|){B78U(XM&ze@V*drQ>Dd1n!eE|P45ax|$kSMr6!yW06!so4lsBhnIYjEn zWEdjgzaN8qim=1jBb%jEO`V_R0+SG|nMVM@6s=m6x`fLBDx~kQvDbiJX0~orTIZ5$ zx+1c3ItShmR_vbZPE|Ncm6h9f($?K1uqr3K`mt4-_m)4xiIqx^Kzgt4{%M#J|NbK$ z?(RLUr6k4PopmwPU8Z-Xr*ytP2lH5$nqThuC=FUZHjzUbmd8b@ryM|29Um3N>-&=X zAbXp;i^UExMU}?lOdSmzZ87$D?!7Q2jkOJ4&)nAY+jloN{Rbcpc{<7f&#M#%K@c947!&^r+;dp=C@Yf}+vCf!WB z8Qn0XJEdU*2BR6hjRAYUzvn#XIp^MUD`jppY?#IsV&dR>i~J&(3t)yosH)ix11T%b?~@BT)=-z6jQ z*t~-@r0C`ikfZbXqJ_k$mUB%;dJ*%JnG$Ha$wFezjYzlc4}ZrZop><*x;4CA>Wvlt zoo1iE)JNYx!oB|b^CAtY&|DPj!{tBs>YYP3WHPz}tKOXTULi$e;exj~U<3ova@Nlk z?pa|jyNLOgbH|EmKohow8GNwE8z-)xZ#82$-yhQe44E+$mJ*5e=`)i8_h-#}Q=v>6 zqFj7B|Iw%jxD$Kio;=4|rQCe4c^(aWu7@Ze_R5qs25~(EN^Oy2`+8<9v&l}V@#nIJ zUdhFl=B2`}?U>y1qqeN;|H4YSRC?=0@Gf%LGfHyrJa&KQ! z>;qMe>F?M!&D~Ijg5;d$(XW%jOOr4Cga?oxQu+$s+>}%0y!(6=-2O1si4Ld~}Qbjj@4EgLnqNN`m&n z|6t0db6%u~i@)|pz|`;gtgH>k_MM$e#o*DhcW!f_Zxm+>vFM5BfP7b(55Zmd+XKib z{NfLiHMYO*BU3Q>xnrF0*Fz=rVZ>3bn>6l9)bkHkUzl|>?1;bL?o|u9|66^kuvlH& zW!v6AiNV?)#Z)&>ExiuhRw_fmDj!?a-~M;fP;;|>0(>nZmuvh&H_{7KDysew_bGYe2@%S4+OsN9q=Mvd(VBv2v}NY)ysZ zq~pV;YPma5!C+!2WbuN>@bTb-M(JIyP{L-&-BBvp;X2@gf));q1PW9?mID$Y#ZUR6H0 z==2S)m(k)ZM|+RPTy;uF&U9~+%#8zgKsd|cw?^asiw{%DaWY+dB>dFxf_a^D>_#Qj z2Qx(cPG6VJBq-FdN<_bQD2!{G`E2uYs4!q6`oQmTe$eP|pI1#i02I)R)VYb}pPt$? zCHW$o0Typ%YithNSEfOg$;TVer#!K5tq5eyv*%!y7i)%}{V-=v|9J}EGo7^Y&ewEt6@O>IzaeK16jMxKZnU7@|Un3fh*ko$_a}VCx^oErt-t;xt7lrNQXoa%c}*~s4y zn+vs{)bY0LTNY0I{s)bT+*L&ohv>1LjT7@P46(f?5*R5G_>EA@w~IPyN%NB*D@PT9 z{fCMgotVghznv(&q#*~-=aH=3E#EkDMVaTg#II53_sjORu@=Yv-CaTJuzKDX4lay! zu-+7&GNqR}2TXD(JJof+%(V(R4WWx=*_Q0QS;c$M!%br!JFb6aX{Fuec9i>o9Ej3SE6-_7bCBy@z~M2JuL4T_5(Z1 z85y%@kspmz`9j!gtb-}Yp@AFTt~k{ZipJta1E+%%k9JvBt{J^CIaIC+Y!fA(G>&P& zN0j?(ibwA#z~6|hVnnovA|ACy71t~JUB;RhP#UE4#+kXw&y4h)nWqQfMU~ID(wW#k zUorGQFV=#QAvVF3!|(K&eT(0lKIPELg^O#qQOzDv&m^h+y2??D?ROP_x>slHB+TkN z@(?y{7hTycMWG%%8F_gmW^2x9r4?`7#+&XO|msn?xDVL4A^A z{;uiYU%`2=QK6RJaBVX#jy-Ny2!jSZ-?!O2Z23s5;NWhyu9_gWvaF*`v_op3NoTd1 zi=AJBO~_flqrAayV^R9?r>xJO6JN_H2nCyl-S6WHLCOU%>fg?u)=3~5S)O8PC$^#B zFp^LYn=~kN{-?ryz>DMdHzO@mB?tQ46j@!i0hXoa{Z4OL(_icR`Q*CbGEB!oQOm@h zA7>61O`C6(&g4=b(JiLP_?F)0fiHXGuT+>0fLq+Y_VMnor&d=uDgAv5)%Wqula6*} zc5j;QEO24l3%F`Ka^^PEqxsz$PseCJRiQj5bFH$i2AJlUavaK!JB`z*H}%QDjIJm( zjselg(A5^u*UV3v-w5p5{MFWB$)&@c(ALk{k+<=78}FI?o^A^)^PDMV1}uM^|A{)~ z%}@@mdo%`L+gpPD3;1q-_@az-Az6I#M$6|I@YG}EO@N10=)db+Ywq!uqNrI z+a6W*2TKUwLW&)wR996HwxrH9nBQYwjZ+U&g7Oxx6zI3t@&hi6f|?V%xt<*^x3!l? z!r(fUaQ`z+*CT_cve}q?pQNnIf&c zWr}$W<-SK3D=5_LiWw+#Wt%;W@aOV_1{S9wR6+(~S3=UL^Q#1-k*cDE%~ph-cdlS8 zctiv&y^x7Q_4pe_JVEl-D|fbam7o5lBP!Zc%%$D<7PL0!yo}O_v$zfHP+;8)BcB0Cj}|9RaTG`m?70I|##dYWm`Pb2}cyG13@M=4jxN{EeVS_}h;=O1nYfO$>UQQuXA!T&SS|zl zeQJ_D$F&=+d^`2v&pKlNA?Y)&9t?tWrV6oaL?>R8VGG%a_@CAHD1uST;7op$4(k#mkB-T#E$HQiDo%~?8aKug=s zt4b|b-&@Vwn7W{zMP@|rVb3^bv7`c}SK|G-%R8Bu-}6?Jdur*f{OU{>6u$x!D+FzV zR)WQx+xptlF(V6E1zr_3mC|nx>lDix2ci$UTPRP(^59-Y?Ofn!Tp~#6^*hOdw8rKz zTh}0*Vb{@)wEkXN=W7Mty;%ia%{MmqCq5MmO6SZj+pNDYU-q2)3wC(Pdyh}2oX&oA zqszE`ZgBvyrXirV?$Tc-_i=p-FHbjvS%>G0-H=t>eDkC8B^w_}jSBAyYAVG>4abVe zki)w!UI)XPbTwZgCfycqy%hhm8ti8JZ*Hw-ah1c13VVf?LiY2M|SGgRmtZjipL!woqFt|-V zP9-QLbw`Zq+zHYD!5FrFvl6jdlj`g|#b!-5)Ye6*@%asVG1-S+8wt4d)I>Lz14!m++ZNT-e$`tVeYpmQLCsVXekVHU zlt7=VLVqzpg;2Phgo;tB+K5)Q(Y6FhG>Pwx&xp{be!Lm!F!4g$P7|GDJ%$e55M`tz zgYyIJe%}Si*h=DyfFqgWJWE1Bg{~IKscKF}O=b@|m`*q(Og1htX2)mNCTr8Mtx$bu z$F|{j8i}|~6MDqkz`x2?(4$pk>%#o@TDjKc9o*fmnP7LbQlGLM(t-SQv#49KGF*I= z$@z!hz+c>KCYVZU$Qz}c6fa8dxiH*X$ZrQWr{6G|Lj{?wr&r5QKca#lEr8(Od&JMs;Ra&X#Lm2N&|2Ml5?t z%wCIdj7{nh;i<(->N5aVGC=oZ!ql_Je7wv{KOZ~^6L|ZKs#*$6uUFAGw?Du^cllaOm?-JD&B_vFSw zS7f!U2pVi#8#U@nx#Pi~-}{nPB~S(wh0UZPO8Sdthjhd>UK@Xn10VUe%yN#NWZH;@ zD50Qbb8-HG(6N1G&xq2)C}^tQr@*H(5Z}1L<9558?ErwN0z^tY-b0|~Bzr~U)Xx#x zj^{uSRd+P*@%^rv>66E%wGTGy2N4w2QSZYFT`_4XGN7AGo3dUHK}a!(J5do{<`Yh2F*z%Mm& z3mJYPjm}T4W81TDt287hg37)HFr`yn=Qg<%xowYNb_Of|*7(TUG&W`O-EeWOiF@dG zYnn4%9!Km=%f@}(Wi@*Gn}%tQyW*o@4NS=*{f((a|Nh>;B*;W&!Mm-PO5`4*v}+7m zd3{MpdYffk$2=czKS#ogVrks5D^|GrCG@(9Av~nDX*$JR@UdKa7oag6Hz4Lhx=#bi z@P`QOB8rn`d31Nq+?S6{*v$Hyz4dQQ8=X3+z`DKguNCpw?klZ_ez}fj;&D^T?W4`# z93~skIR+A8eoYrY3E+Ilgz)z4ZQ^sTVENo)C*Sc(;dGA=Cyy0C3IcNfXm1#>*>N5g zNPT8%iGbk542b3{vDRmZKSCY5b83 zW&ZGIdg4WldOodMvn7{~J9*p&b}5ls@*N>5S;x{*NA{!djl8K}DJ zv<0NQu~kMlxX6>{d0k9ibfEax_zK6-4ScyoIT{wi1o8MI813=i?k^+($M6+ZjReQm zgK=fcgYTd;E=*m4F`f$1;kv2>CRl6BVd^YH^U=!>4s7u|yJ+$%+K%Y#kn1>1>$` zi=?_TkFKPz-kg#D(ODr*aY-~jBjh!wDl3h;OMoBW*oF+O4tl-m6bk6OJN`1o8wig` zC4ROL;d)W^CgNPKRN{NpkY~IXQfttwCI5Jq#W~Se0(2Q-3G??NoCm!lxw?QMyr24E60pbH z*DuXqfj?|?8Fr+G%{&u;wNIS${iwPx$L>Z#opIIKl~j(48{{GhDw!I1T!VD1t8<-`~N)yBIfv3@&l=x*Uakz)jjOVl>o z6G`N2-2r`Js;MZzh9s-y_{oeV`rO=q)%!#Ioo-UmGUMU`V#S}k38FD9PTHKxlnStaF-q`HjM(88eEU0kX_x0wkyem z?cq!<@`C_T>%gUsLfj9({ucgdHVI-S#kDAo1f9RH!5!Eb_@~VX7?cshS3Y%;jxUA4 zJes6Z*}&;GecKUFxXdb3LM~LzXFk*)DTKy8`bxJRw18;|-(aJA7^d~3O-dVRy-E_S z7#Qx2jDX@StBEBvZe~ z$P#5ESKciQ#1NcjJ<63~`Eo#sSt*c)b^H0ByBk_qM#f^Ua^~cibS;_G8#!0a#~Ori z)s^PV#BVhxuJ0|JS77hNguczzdZ%_f4i)=#8E|6sC78;0J1n??y@eY?3e#_z3>Kz) zQ2qu5aI%}jRxeL~030RdNcjHg-gZaEedaD2>Dgel#kT_HJe>cTRmRQj<|$dDH2AOP zlrx?BdjrHH-8&SZOb%9p2*~gG6^x;EY}1+P1DPS9WqUH2Yt=qbk?M@&55eFC@>qt_ z{>z!S(x!}y!I|#9-kC_b+Sm+=%o$?^3QCUelUzT^8eW#BZ>!0n-)5xo?|^CV$0B1g z?1^lMP{f~2SzWrM_|Es$l?yDTfd&~P#h0Yw#27Cwu0! zPzqov^QW4|C$9Tz1`m<-jnb$O3wF<1v@~B~=#s(dhtxsFaRY{B8_C@#3?k5V3DPG| z?5ek#qfun&EO(ECNc-1d?^P`WUA4cJsZc;`dAe|y`8AhjG)l4tHGM);DtJOu8|J|x zhkiJq`HaOc48xCpY+?}Lm517 zy6B^gA-m+YmRkyOKKa{|O^QQ`eJT7Y2%d*xsUhRcTV6x;gFrhpOE%0tzWK%BU%LUG zfF!hoiI09_@Mq)zSr1YY^cde<&l0z=@QDXh-LNfp#nPE(aZ8W7;DM)SqyiipiFrBu zggWC90fYBG^wZb`t1{|+7h8?-w3hqm;OCd*RJI|{X$8oUZm1nhU0x^sO{aoPzyWHq znWoCt<)<7YTa!#InMlrnj#99f!;2+@fXkth;7SSL?5`=C8$EW&#cLDeRKJWq>L~3N zRu|)w&^mx$107(&vOPV5#!VmFvafw&o4W|L>5qmp4qaiEa3|uR+{(#OTxR7*RbC2_ zKDI&@uXSmHcT4NO$~mLpuIk!M183JY!l=|=u2Wd49Gk!4!797)Z~&zi7dfEvE@Q)^ z5w!GApOC}@kh*K6kI86RxwrD3A}W{7}mrzZ|gYUU)0%3dn;k<`}% zN7|Iuh??3s*1vf(t`r8Z{FxiaAi9X+yUB3Qe@tSe8KjBmfx4Dz-~|m^DXuwRQ8!qP z*X{1@1HbXlI^vh<0adyA@>Nw~VufBMi&yEis!3I=MH_*1jWri5MkgdA-lAd9wIDo!H23Ax@vWmc^OXoazCqGG+Wzm(5vje* zz_K5^x$t52NS=Yq^p0s^maac59VL(SN*Ubim})cRY@~oIf+iDo5cAgq)3j$Wb_0Tc zCs2a*Zb2F$0?#WpT&Co%W)g_5W22w9LIJDxXlnXQCsL8pyH56mk9}2-0akrgU!nJ) zlDRvm)huvf>cpiaVF3PS0YdNpM+2qyNdmrD_%8mjX7|}|kKZ@WJ(6FHqdKB@z#on* zm1>yeGJ;rOqRxo~7p1=2qkJ-NC2@)=M#)7ik;CZU0z&1Rz}(Z~LH@J?cY_dJTU1+i z-!DfFJK&AjZn5+&?3|Ebr5I;}QI=up0nqiNPJfZ%T$NoD%+ImXT15QG%YDHbq!GfAR%DwQNln5+)Xx`aJw>M52#7LoWBM( zvNgwCCYm@97m^zwH`7nNFK=-{w)YPi4^pl18Xvh%Dq>cICrpAkCyktoWb5KDADz=N zjmm}w-W-PcejER*k{M;y>7N&(8!U+WPi}^p_$C2#n$Cmh3CQ_YH^&eAu^Ys0+5J^u zP+>f#k7~1xK@JSFQt4&*p?yfW$(+s6q*Gm-uZaT@{l5+Gn!XPL%}8<-ht{Y^S$yoN z6EB6cK}9@UbMys8__o}H;+Pydf7Ra|jP5evd-Z)1*EP7-_93ZMnqz)c;S3$@fRPzk zH4f=gsCcfo^EPl!nN;87!rI2*;7v!|{L!R6h*lwXR4T@yd_8>f$`SIpZ-4lG40$tOnQg$i%5mzwq^j~jDGYL{wTet6 zv!wYm(w%dXz0Z3pC+2zY9byW$x+XX<&Dz_hAEaW_KU&3U?&>62!G2-3hSa-0uA2&& z4lI!wr${3|4G-B9;CG|($@v!j7ni}(`zTA?YBhiC8sFo8r|6nVrggxq#TUkb6TIn2 zyk-3ZKik1n$v(`l{&&BLex=qfSe5X08qwU{OZG;Cc8My(Zro?lMdU=%1Xwe z)1hcq^=Sojma!1&C8Szv_Rg|76nxa!%@Zg0B_Dw}6O zN`#G7d|@ruVfgF=B+bne*=@C!7x3bcllO}x4`c^{C5Y4##B9B|{uIK0YKdt=_w92* z{mmc9ow*5ta5f>&gM*n9WOhKW3A^u$_>0F%4&!I5{eal|Rz;~Gk>XAyB^_SO3(=oF zR~htbjz1<6UQU0^FxEkMKVFuRs>8s|KCX%TMV# zUfUWrP9>t{miYgzI`0x+*qNNz`kWuA%~}`w4bmGkg&X{8l{>hnA8BxZ+vh8H}q%gxOWfhOg8R5NZ)9pB`ow8^k&W^iYGcLU(4Y58g$~GB{iCSSoii3 zEmr4w-12s7{sy=Jk#ZHPL6I=pCV!p{ z?R>X^()!T{TZhQo)bY)36n_ffoXYLdF+BiVpH2IJ8y1BLG`ulw~Zk&Ey}(y&35g?kKr- ze=RIOOwoV()~Mz(_YM9}Sa6+0qKke+>1S8RR&v9Xq8hoAN5|M}s!30)tl@l9Z{sN> zMZLx-bTi_>l|?DKhU?L;bP8`pTh;NI20KB%_RFo0F1aihs|v=r_?qPk_#c=|ZZcJ; z>NTET=u?{=xYDch$aR>=?;E?6%-D`xVuv{Fxi%EnuL{*4MU>C_7f4(^LYN>rD#(95 zswWW}>C;&ai!?58z1Kg%uYch|NE$gVq&1z5pkMh_SCDI#-}#?9K6jHJfh zoxJAfvZQnB)NN|fc=$fwk~GI9v;m6{5-bE-U;lMDy6*KHx;pb^Gx04|-P1LQICXbj zoy<>Mm7t;Dsp?or9bcRxT7a&2SKA1wFTr^80AEDVc#8ji9)OY2UVv2~oJb{UW%!x(Ik-TTCanQy~8DaeyYFs^E)B6gBQd6l+tV$2+h$%IV~AHU3)Hl?A2b zfuHQxKScS2#slOAJzD+2twWeNJjt;L0(IRbG120k<7AFx01ULXU=Ni*w2kvzAwRFx zf&%#2eZ2lO*a;!LJ``EBrW@rSj2bar%w0?WcuRCnLCVa{)5uZJisZx&l-anyJJ*_x zA^C;xlwi1xD1LqFnB>+-(R@)~XqaV<3K#R25XX!Sa3`V|(@wT^N zslzOHo{P{4N)7N2D~L4!aWKIYeJlEumNm8*v++Rh1?4V^D@`T`VjPt@}QTjIJ%B~!sKt0Gh9qo~fYZ=%k}>0;FaxtKO{O1jx)b!@{n-L!P)RiJta!H0Ox~5TLSz7++ly%?-5}&|adsad(o8})7yJ2g{ zseYdQIKtMjRlgd6XIsW6Hv6t~{m?&Tg4U3w${)xAap9|0)zPXq?m54O+XiPn7{6k6rv=Fr>t6BkOpIg((AjXRjIUH`El;5d9``O=C68MCQnEh4;7qfenjp;Y# z`Wf%C!7BQ2twnGwQsCgQyup#H)gO7FSKD)6IjwfeAuPn{K24PS>&a!r! z$JfCsV2@N#COd-V7c-M%PA7OIO_J6t37=ftVEA}}s{$AHwciPq3tLsTk|&x>&vv%8 zKqCI_8n>EEK8d-xk5Xf!#S}fFTaAR!;D^Ki&A%7wL0g}|Y%KeS0g*DB>9W}uNz40T zu%`JFv$rRty8I4?TvHLu^=CWTcVRRPA<}BC!qe{x!e+KZK5U*coOPZb+|@`JB4-o6 znffX&)xnQ6JF$u%-@2OjZ+vQ2*{soE@V?z)S`DQYSBzU4e9yR&dYJ#D!k`wu$m3$BWZY@isYTA@Wwuyt8kdi+xA8oKn zrJdl(O3jNQdx7zL>fIe)8zs6|LH+6Rujym6j=18a1h&9~E!s-S)weNU7#8{p6yr83*;Di1?6p&AKI5gW2xQ!~ZWAeK3?9s9O z<&%2&82=y*#2>$J>53m}NF(5KyMQOtmj{y=w3Gqjrn< z`zHOLrLeEjGIY~2oyun=)HI7}erulKxQ-9R?<7|*&@q>H(M4+y;$xdjFmNHy_gwd0 zi_9{Kio>7m&PjY9u>^0+7XAHDR(zcLcDU(C=q#OXM#@5c4LYM8qyWxqxfa+bfumnyvaL%vbuB2 zFUH(y`RSuRdF(@0+&)ej%-q<55j`)#&^-5PS8abdf{M(0p!ow1T;N2Z2@ZeZhwA;R zPLHf)O&0tc@6NCV{Frh)2&}WShm!?O7w9&GOHE(j8@c)Fyj z>L5U?d*IQD7SGCzqAZ47KKIY~dce9{a7|eu7{2>i)Uzxd2i^p z<8o5MzBveW5rJ*uu2vFx%kO~6&hARfT5FEd_=9>GIDjEe3wLVd|Q!UM<+{S1$HTz&jnbT!CVfVrs?Z35Fd%y(n1-e=ce3L=r-sUB5Z3bCoZ0)1yk zMOn}2*_L|Ce=xJ`V(H2gm4&uXfP(dw3XdwgvM*f2*1x&HS?jy2c6$5YMv49G6!z?| z5@x=V`gD)T$4MnsGaz`~%ewv3=a-jr`ubf!57tt(-YWR+A;YKoPs{61nxfUf)VX{j z4wC)P@2DGoK0SfP)~D=o2dZv43ii+Ptn&JYj{I|BFqq%3xpk}Yu779gnliP*o7>W| zJHa0G*jvAPNb@QtL@D0Oe+cu>?DncjQR75D?{O?o2W4_Uu0vtXxHN(dT2k5`++SD~@VIqAl43**Hk$w;GGF?Irc{l0$ zO(E6P?qm(5{tI|yb?VC9Hc^5%cT-{e?HzfOsOhDP_gfM^4wbl!Kdn@_-UR9%_>rKu z9X2qLK>l2Oso|UYx&$v(VM^+4XZFR7gUup;?tQ;a_lF6*(Q;pbBAHDCx}#dWR3XQE zq7~!{+4jZPl2-p=_YIz$`C-{MeRJRwg*Uq%%$ff-5J5wO??a~W0-t3)mO-5o6`_2Z z2>usV&(5Fo^?#iAI#QPCyyF>;VH;92IVF8aLsrk}e?}+10Si&mmS9sOnaT~exC)B_ zym9-18A5xV2B=qR$_2}>hbmlX8QGD{vZ*Y8sN=gbf4^`3n~T%;k5{nzB5S&`UCTEF z@Z$vxqBKwF0*qiH&a)%x?ZUQEUU5ObOJ1a`SNql0&#drdvWOdOWcvPE(vVe?ihTlQ zjFR3pl{3;s-9+79uYsW5nlX3k_TH6yF5_LQoakX^E{$IsQ0;t#Ekovs^Up35bBjiB z>QH`ope|6T_~|~9sB+F0Fy9){QfwB~CTcZQ;&31vV?1v*gD{OG9Pi6BS zw)+Bg6}Q|*`X?m#C!PoCZ!=9(n3<03%KBhm0Ps@18|H%Q^GeWjug)2h=wz9*z0U^D z6$P)|paCG8B!G~6KJv%Wwfr}qZLdFUpD&awR7t(A9E5ZHG|CdV-lf3xmudw&bI#$3 z?=UUzIX2`1IkA<$H|XM9zE%z1vpw4LHGfcHdJKkt%;KG`iISTU9_PEymKqXTa$ui~ z!G1HbW?Qk?$1RGt5Z_B2*3U4`%BX%C{V)( z09Z)rXiptfynWM~!7la)6^5V$QNHfY?{;HI+f$Vj=j4?{`&`E#ea2}szcOx0S~6C| zq9JmBZm*Zq(*29m>@A4KlIa_$9shAMIK?< zsYCG0N5b~#<%DPh9J`X-0JUo%cGS}&3zwi7yX%A@{nx4qV}#uso!U*`E46x`zsm99 zHzz`~e{V`k1W{T|Jn2oVl7sEL@t!#sZ1AvUkX5Op^u>?vub(@df}Mj4pMxnOY?7Hh zRueMiOBFW>191#M(c2{+CSnBOf0P{859ntmN@)JWX_xDnfWoL9R^Ge3Qi2FLnl=d- z_*|*4Y_|=>K*G6#OM}mDKWO&^gDr__(H`UI2?Xob1w zpP!D7z}oar%-9=}-J;rih2W+}?6%jUA9j~Q8Hw60UHbAny3#qGb+A(_%BSrcgLmOx z)&Tffkw~9TYVZ1!x=8WhZ~i?8RqSn_o@bw76@10lc{0DdqxOZ=SQd7W|#CaR1@L?tTHwt(o%MHu0wS{&PZA6c9M_E9j+dJNBWA#O%q7 zq28D_3+C!o(~+m|tOs<$>P$YOU-*IlTc>*^{G0cd!KLtGxa{ zY#hhN#=1v#rkv;r5^yd*uGx@Y*Sskyc%t3xYglY}Emvhi_=(oI5U1OI`xHK5-r3i) z)xoAp_#5Ie;zx!s`UwtyPI|5Mh;gNHbd^_eCuiMA3!j-zyf$1frs?RphC5g~7+pC} zo_vA7=0|fxk;c(l$%|Rp#By7+W}JLEzUexBck}=y`pA`$aCd8eZd$rLrR{~+QU@UV z5;^tU#yRc_kKdcq2zKC`(`a_P9q#8nS)bU3o9bJ#2u!VY@rU(4WoG7SFJCPDqEBNG z*tNZ#Nam!XM3AuX;!lUq+;20{6pf!p>4Qx_z6AQ`BwVGR{kxc$Iy*mQlML@KZQy2u z&a(CH|MVC{6Q_LQK}fMa<+?p;TCG*vcBd^LcImQMKCoxl{=^r|j{#G|m4ElnvA@#~ zvN2Ss-7dxN0nKrji=+;O*BEhPXEla#lky<6SiMaoIN;z0iQO4=!s~3L6Yh00w5+AS zY|;=%p&Mb zQ?7+dy3{f~%;dp4X!A`aWuSO_-AdZz#qapg7V4Rr0y0lo`{ik(GU2!M%Ak+) z38_~_ho}u~RQQbIn?P62-gtn=WeNUi(1OA6^r0ou0<*YJ?f+{gh@KD?x#1D-u+=bN z8msXI7fMf58neiZko-vuIUaAJ!X1<7Jaw8_c%cAxClT-KrZzlL^*U_g_oJQ7Z~{+g z)6Ww!;(J0&T6LCy3#gjQfFYLDaicE(5_D(HRaDwNLcCy3$~l`1n}hV|O`VzX74`9t zH0q#3kSIMs=!~g9rX{w;T+8cBA$UdJ)k-zE!!9pRA)9aqB3RHFR)5KSJ!UmOKq#1;D>lNr5jXBtencPvGjbnRfUCh9Jp-#1 zXIU;Rc?MM!61mb;RY4OiOLXpy>N=8r-~33~_6}oGgX*fro-JuGhVZZP_&g=t?9@35 z04gk_1m^p*?a{jyCfKO#c0hB75|d;xjw;c7AyK@U4@B7s?Qia{n7iK3yQG=Q-DtDA zRMYgD*a1OLNA~)E14>!J!guW+PQ8K-TDLYUTXPkrpQE$lpQ!45Pn6`F7gz_f?bUo)cS3L6 zg5@eck;)nyxorMKm>+a^q)40C>$4=2>aW%G1M{*Dn+5+uEn$0+Wx?)c@K||Gj!vssWYso?>>s`BSq+7!6;xYEg)4q62;KkTWUDv=*L|3$ z0(k@m=kH@HP-`G;jN5!!x>?$+aa?OPxV!A;s-E=U{N`aTXK{5pShci2$@hlx9yW2^OcLiXV6$rWKuBdI#ogJe4FgCYO;ZSv-mG|hY~?@s1UCoR`+ z-18cTY;tgwq4}t5^|uzSF<3kvft%1`%Ml*)mjtE1AvWr+=@1z0`ozV%(k^01T{du{ zJ@iWLR3`zN)i>A|%izBR*^j|5jwM^Fg2r0=@4JXs&U|_$VB9k3PQCpBThFVoN&VgY z)t~c=aZXm=1ms45Oqn~KVeuN^&wH~{@%ynJ6HC!*y?;#b zWZ$=bVio_1Oz^Gd!7O;>7PR(-rEag}hn2#-HMno-C0lPECR&!@a}uv47AJ5rbmQ)( z!Tw*>kd~HzD8+WW?$pJZt7A@D#E}vtUAUptI(lWAv!4%!FF=`?>Ibn|nMBz(=os|CI?~H9W&&0|)^vgE~ z{X5CK)N3tWGAof8sxYYEFC$Pw%QnU!sOro5YKfhdTKng~M$XewO3{Ix_Ve_8+dXyT zK->08dv{&%e`SE0kj5)=BJDXTXlQ39dGee5%sq^-AWL;;brUUh*Q%n`;p{7TrQnu$ z3T^Sv+G=$F-PhC#V}5_aZhqaU5h#6QEE6bzness;ZN_&0!a6p4I;H38F~*~*8W%5F zNkq*0WUg2&8&>;#5fXMWP$bBV;f#GsM#*JV*y>e*HSGq~wOxHxcOd+yS2GV|eQY}M zVMu>_g!sKy+{)$CfRu^{&XLL)O@=w`+QrH*saER(J*zDU z9c=Uu3&tU`#HW|^ZeQ|DgO`VM$$?Fc8MOc_Xc!&F)8KkVMn_{s;WPC6%@cw7ls;&0 zpG~mBx==qHm~lp)Y6S_0*Ehk{%at1(=+&ermeGjK;NpiLxzm(!YnYChxj+Z7|;e?bLSvt-)z}`bQCP*IJe7Y}e* zcKhrgRHsZA6d7?5FBYrF}9u=!&P$BDFs<6PYTjTc8iZ~0CZG<$9%{M9p}?d@7PzKypnp;!M|rjR|4fZcUS(-<3Xi?X$d|j-4dyUlFF7 ztpnr{!#^%7d4&c!Sh4j*cY*!d(zoelWR5*^VOuwo`R2tJLt`TsQs!5$$1uDwlmM7! z(Ku!D))SWY@@fh{{#ZD{^0K;+&?oicUJjlk6TnRrnmb`E)7+YmHiZ3^XNykmh_u24 zRDNa=fly^Ajh2U^r$2b@{*m;X43@H&V-bPI+5MTH{Ty&J$&Vu;{9}?`BRB5;_7T~0 z;;)ftcR=$O?p@^7DN{fnl6NZm-7l^I*?ao8i{1X$cgA?Pq-7Fx^CH!bQTvr)Ka0a~ zbNzO{|8mPMF{-H}N$x(bG#C&Q1(~?4NnhsFR_eN4CNJ|@bL8|vWtGr`YBL#5DyqJ( zLJYInla|9~?|l>-g_B7bLZXJ9bc}l;ZO?vvum)Ecx}K9s`0ts^(8ghmN~^=p4e>9v z8y%Fq$koU|2GV^sZ(mIakJBM)a!jzaIj9@5uEbLNwKN`{Cht1@zcD`ok*k_iPg-2hJ)tL1NcMCUvgf}`LlH9zRIU`7(O}J-}I3W z!O)y#k8>VasANh-UaM!*QbPizTAZl@SYoa!A`<4tK(uCpQFU`C}* z<}5v^^W4iwXW?3MY4=?(&(z%0jO7r`$b%o{pA}B*9qT@&JDzEN9NE8y zs*VA*OeV27x<*%-Bmgpm>sgQC30Y<{bNM8Ii~{5$C^j2*Y}nA_`Lc3bV?ax* zj{mBoc|ZPn5`}}AQ%>6SUZ6-NlCi~ICV8TH^t2B+6jmSZ*xG0cdXkKEr`_42m$~K6 zv--0w%EdWw2pHC+(Urp|?wp!%0t4Gyinl&WafwEA4j`!y9RQOp+_>z)UvP&H^j8!n z)F-!O9JECwFoU)Hor`H-vC8?_#7vkQH0>0@qQ3PhF>e@hSmC~ukDa(IIt}7#aGZ$D zA$|^o^qVYPv+&%W&p^AuRaqWQ>^?MI*qfg@KFiwtiN69^2FEB70yxy)7{GsvPfvyI zD{`?@CvwAN5GG+sebIFbKga)8XLXfU+dC4xKCY}Nk&nAO1yorb_FdmDVXcpq%*i2a z!S_#g24_3LM&eqNhb7In@^&>fJ@#=NDk|ALu#ReVswJe!U2(4HLa#{r+@Pi(ICvaU zjgHoBjQM*z03j=^^oRdn^uq5CYz)FYQQ#HR_jV zzJEEWxHsbD=0gYC_#lm#HsTHNLq~)VcX*?+**miO*Gw8!ja$EkbQ{{NM z=KO%O2YV=s;aFCQa4yhVx@BK+t-$qJZx64!+O}wmTU$jz%UK{z!>f$5YxNF2*HYoL z)vQE5fEGSsR797*-g#rjhQ^JGNH+LshkUa&0m!LQ&?!+OK($A4h5mCZQ39aagM?lk z{gIO_(TuZuoXY+T!qTqu=v-`JdL%yDVVY5Nz%|n`AH_MoI@;o*xIEo)NYjwqOJ8uQ z{IB{*wgfn@gTzR@2<()0hM(W|6m5kCQXEve)cchY0$5;AD8C+*sGB`QZ^qoMlR{<2cW3izOy+r=E~`hpZ?p!%Z;(_M1Ga}B zHbLlM9of9T=MI6`ziMZzAH;VNmgxlLqIoUZ(S7+g`^5c{Res?9tBj?bXH&izc#wOw zdA1^E(v5I0qP?!Jg9>o6FY2wqV-IC*Z-4+pK)k=~yuY4x@;iTGS62ecNQ}1WJ&RYn z9b``rZ>e*S`gG3Q^u>NiHZIDkv~$x*F`5wPXT@ABpV9LygSdDmhc@IMmsZ~T4tSRJ z>U5lMpYO|jKg-aD=!WX$%qr+SE&c;^>-K%^F=mMA!+%9fY`@oi?+^wt3u;8St5UwU zpGUuy3g)$Hr~E}U1GCp#iME#dh~tcL49ICl=#g_zV6(c^5pCBYl_n|=zqd6efEL4H}vUk7KAW2!ryNj zQwA<`Ms5x7N58fEzxaM+&NMaXm-u92Amru;x-Ph7aM>fx{^^C+Uuc4YN*IHo_w?W! z6@9$L91ql{*h8}e^cg=Q6=nWz`cKn$P{EEQhgApwURN6OsR7yJi1a^K_-c&Ab>!5Q z$@TcR$WeHYE1m5Z;`vC%f&gwmYxFAZo>rnn>um{0z?%>7U=H$VaflBM!b;cHHiRzw z@Vf<~vwVI`#Q8j6O+l)oJnZsWENu-5;Q)Qh#9~K8ua*SOFctle$*mh2E^mu|2Nvo1 zw>MExVtEgpxB#jhZ(@bEkUu(bm$knh%s(*;HI+<8Nq(G0fW9sJODBcZeI12ObbAGZ zpR^wMi^{;qeou`+$miUjkRc(ulAG$Whrj}m;TVyu zkd00~ywvSO#h1_AqT_NtvRUcx}7?se72H9 zZiKvdEW-BZ#b3bwi7^U5UHt*EF$tnPpP%4I>D;=qwA zmcB&g6H`CmTD;*P)3-cHJ>^C#!eE@BaK=Cx- zBnP0+bLODd3HG)C{0zoHFd=VdqyYWm9%wuF&D+v=I(^WiUk?qtHUwrGaL=(e%JINMIu=QVC$U`Rv{!Mq1!ZdB9PY z?TPWgH{#mGT5xaw_WKFv?96KLyzE1+!PL)oFr9h;IRHL&pWw5t!`Mg(T1lH#lY2T$ z%qx^}{Y@S-PuWp>Xde&$dDLmzO1jIk)-fD#>Fy4ZZ0$4^ch;FSe27@%IH%^^x zGra9BdT8^m6nEiCaqtKe!(q*9i)y%v-Bxihnl zANqsA>PeapBlGvyGfMWCXK?JD{MyB9uxo(@Qt$e`ee&6VadW}p87JE!zC84iVKd(Y z3_rHB9StVO4DjDO@``d^NQ&2KF1!kj=8OZ!%WX4@O|$Mu{Bn67)&ffR>Qdgfy#l{y z-Jcs5*pKMHdl7lG-zjKI^_e4Q(@jy4`1Tcjp}Kd|k|I13^_>ZFmT@L^*!F2^I~hB| zF@}vU1mA;{c>aeoYP9ABPOg0UZ)PRs`Yu0xD0SfApzsK&3i8}J^qUNICh_AEb)?F2 z0UPK^e&73@hbrbXzN{_!uR?Hc>2P)h-UAKqLZ%UfmfT=7ELzTCI3O;NeL~fXSX9&@ zt0a%XfYYx~Up70AOY?M8{^;Zb?4+7Jgr{1>wdF~M6y2V{lUvoda%|#1^M(#(r#;8Tpz zElVz!xkVOreLyMpsd`q(_-s4(4>=Q5r@<7K>JKJSE;bJ%_goxd7qtJSp)-XNX^42- z*rc?y#3z%Ma_VPvd!H>jKkvuo==haO?I%r`npB7SZSqmnp5iCh>#R+j9DB$9cE`fe z9ohDpst;pEY=1rFH#_B_6(K`XAx=5{9ixUqDtQh-rIfIcz6BE)hrx?E#Ay#d-UhIq zS$-lNzqOtpVOZ^t&Ch^SXO02o##jz8HCQVNfW-Baxeyj{fPcZ^^UnLnC!aE_NezR^ zG4m~Kg9%f;evgUHc*dkh)n?D(QtTie%-s`i5)M9y{gW%x^I!44y`y8R$>^_laW{F7 zJ(&tf_y?=Y!U;MS}t%l~S^x7Z* zOgMRbQN3U6!6?_b&wHU4o^W%8T8Rx8#>^%NP->UBX7$T!NHTeOL1L;T_%XG(?V=lI zC-Pz*GQ9d<#u9LMJ*J+5Tag?OE~zZw<8_nbU1C%fkB2{GsIS3WR9t<4ErMoLPXb0E zvVmGn_97dOmLYBoUS;9of^-|RNM2;3{$BHYzx^T9GBaWza-N%N@CyXmQl?5ub&MR_ z_^nDhUKc@<&P(oTYQTouh>!X6wvCb?u&O9SenV$^CHmf;rEq1hGfnX!0H&>N$14Akkz^SqHQCp3+0~g>Fw* zS!mDUG?r4Cr*gmcj?q!`<)m@EiZ)3gT zO^4g58*cK;o;vb+b|w?tM6#Ck;@{!$EmPav%DQGiDJ=2TKNEWuhr&3jo6j~A_1bp7 z_sWYJ4Q2uhGUXWQRp=gsoW)RFw%k5QwS!vmW@PYUg?mE_il;zJ8ckiolv34AC+%&K z5FGC;1Z4YuAl|s_>TRdi%|XdkWZIis(0M995B%fG%{{X{+3ig01g-7w$TU~Hr#sb7 zIg`&|$Dj56R5P9~j)8`9IL#rEM!b`1+pB6)Uvaaf7WV=T@k)XM)0A?g4A13AWDNRD ztoZqerh2#StVUu9P*;_>sBI_%J&ad_xK3U-ohQ6l1gmC*Q7rw(IB7V`py2l|=YxFE zZ)h6+chJX5G@+-?6& z@fwFm{G7kPG_0Z#LPu!ijE;@4so=c5bcCIg4Mbdz=ZE=~sM&Q~R4c9M;58DB=R+Gy zfodls**1z2b~~Lk`S-32?o-zMN9bHEI?4>P5jzT7e>t}jF((>`YTO_-I8uC{+uJ^ zNyQcWWP(>{S}ILWPCvNwdq59krlrioP@OJHw&6sh)4 zG#^rW-@*IGL+|^e|3V|2k01Ng{~CDOsZ#VVZ)~sMm0BvY%eGN66r3mAib&NwUi*n{d=7shFKf=n4J*Da;{dh ztgAsm^{z47C{x<=;zhOn!2W<+L%q6|s3dV78E?%E85VKR-{lp*ap4=6%_d0)y28?l zRzm~T=53$n)Q0{U!QJx_mI%3j-|?-{h{g1P&s+Cfx8*u^95_Nz6K-y&pDGxA*$6aY z%Z7p4a||eN9tdmG>@up>GvlSJtQgXU_r^eyzatAvCBa=BA+Xp|pW;tfM*Q=#Trt3` z%enQvjDm#Uf#8CIlO%-Z*m?ZvSky3$bOxI4dJO%1T-0Z;5$kV$a2rew+g}fQ)`^yZ z<LUnbhJMEsl8nlER_E=yu;6(-&PWHlqb|0{r?t0B}qq6ZM&zZMr6+y zZW*NR$)pO`#@~WIfX}p5vnlK0>=$90FNnQHxm%oXZuDu2l50a}QyobKsxGA8+dX1* z_qUtI40OaixcpiJ^mM+e0IROu2VuYej~%z3h@bjdP7n~!7Tw}#0#?yZdD6*k5)%{^ z?D)IyP7pa5A&^r+pHsd)%W7;Ff7ey}@e63sLAp$yjoyBaSC=1!f6YSZEYkW->*Qj8 zkSF&==@p)>Irbw*^n68P$`_G@IcKaIL~wMlH5JY1tNe9e@em>>HYRsr0nwUG3u_}g z1nXTC)-nP#u6G{#utnZouK;mQtX{?{WC2s~4O*6ptW(RS^^hsp-ZmI*n<;cUp^w|T zw*~zj#{dVD`_{qSF4D_a&QlL3St5#g7`Qn(J4j=I>uS#1sV+NSJHKFNSyr_j26D<5 zF@oEzSYgF`xbZbgfERVOyRrR>zkY}%CjrhF%~Z#l8JhUbjCeOxJFTMAk=n?>Y7 zOVNxxHu%DQ*i>;^EnD%?LR4Q9x?Yo`*I~T*Id1}-d&{mbERzZqpS~>)xM~(0soe&w zQ%kh5n;$iIpM~-fRW{ObYB|!Je=(a+FiB1uZ|MadFU9D>voubRLWf8sV{u;Rk_Iup zXl;O(&bCzS9Et(AI{J{ASPTb!uPPmUgrI(*;hkOhz4|J4?s8f08MuXX)nuuqOg zlQ_9W^YNn}Ik9!viIIH%d#h@WqpWSHLnGFtvEf$^Zi$QqfGcgc-VoRo*qAzTzC(!Z z5cp)ItGF7P9ZC241)O%69hQ9ZlaZ?>qQ5n7ie<}flh5l}TH1e|Ewmfqhr8p0vLjcs z2{sO-nukiPn9zhRtoiwJ!C~CqO|=1QlC*fKsj_sq_Y-NUjT{*+r|}imd3b3Tc)lxk z94mh^S;W8uT|Da6h-RL7T+H8@A_`N4Lm5`+4yhF{vI;M;a5&HtumhVAld|Br$Pe~< zI6n|lD$7HZdWNGsA)siYC17v&&Mxw5Vv8plC|Fn$BFK?1Y~5F#d{x(&K5B3;W{rY$ zQh@YL@g}RA^A}?-T8EE*Ak$o6G2B3AXKo;!S?8-KSCKPQTRh_;$v}|FN`S)=pivbM zv5>p@u$zDJV*>qu?|yApTmn`7$!l=)Dn%O751XdC{l`|1?45=OCsDkQlB9kcFu1%I zb0C?324qKl?zVLeGujGYILQrqB|`BjNXhQlz|KZ}Ou3`)`pKJcLB1P}xdX=*Q-4#Z zog)_MS*zUzBCLOA8_qB>EnHiKwTa<6V=~ea-#G0*J5M5tqtXe$|F!BX7{xcHQ7To* zqT;4#|IeJ^1Ej2PSpcRph*bM_jN0ipz%`r|xk4N{*ZSu=g2LD`|pfOh(@)ta5 z{i!{tv<$gM2*-jx0ek-n^4}hwC$gTe4zC&u)%(bebwj&CMkVq%I(-I)o2t#C)#2`2 zTOEi#?BMCo8uD%Li$i6NW0zL*n3m7@a4!%B8v8^PMm1y7JrY&r_GRQEU?gKNbMj*d zXXEFWC*7JEpcnoF-G(G=U)M_)khpBFcEk{H_={dLg&~8C+o4j+k+{$E%LFc&=5j() z!alp{#9wYk?lR90Zud<7n->*~#m0t|m2HD&`d5t+F@}VRun%iUCRi32;E}(aX?Kdj zv(InjtL8jg?DL~=IfyiiyOvvKu~hUNk-2%jQT-Pp@b2vK&j76YfKAD95{2X^&qTdW z(=0870c;v1b<-f706?8wP@Lc{A2gUVEPwWL&f=Ns9en_)WQiSnJ~tb}JnpqEe+5&fV-PfyqoCw^&)GE#uCVZx@vIBUZ|PD|GL-8%@a^ z0mDAjeu^sDm6eCY8aalF(kNN0e>|@<3^65{nvWIG`-^$+MCoNoKK}8;&Xi4@;@9wdA&|HbmYj0YCth1(+m0nsi|v17YH)SHCe}6& zGIwJ1VvwSQ`UH&td*g5<8icJPrS z8X3Wp80UO6zffdk5UawaHP<_9)E(}_K18h?%$kh8?M{u!;x=)PaAFKt+?et z*)^4Bzpr*`8c^Qu`kV4=)51~~uxr8c%vEvA{S`vI29$Xh88r8<^}s8N5k@}D3?m!f zTr_77>fl4h6F=IG1Dipm!(&tj<;_<61^y6QREgM`BtOf5B!6*ZuUl^ou-u=0i{fgi z#w_j!RU@O^I!iNkD{jCsO-XTuf1DphGo60l%D3Rk#?mOgqIKKtz{*z=@5upud3krD z{IYX6SiQ;T;n_1U$d%@0q1{CLs1JRm!KtI(_(;{CM-pErc<&!rn$Wy+|7xf5QLgot zeHqGKWQpwlHH#h!aKr?{Q!dYYsv2zpe(4v)cij{0)7YA_)sgfpWa?%m-5H^OV;BE> zTjI~V_?15#ZOp5P1k!8+@10mo^>eqLCP3b5cW#z36W zk)Xpw){(;)8ghMy0fvf@dk=hOH% z2bx)2gNM~vuAGHFInd;;k)W%JiaF!;d+X3SveZc+Zv6VAb@*8tE=LEYUX^gk2t8i% zlCG0WyreG*;NO}_!{`}06kj6p!U;P!x=VE?U~G6%Rw9hddbZi8>bOl65PzAIdg7Xg zcm3Sk*2ktA)b~#x8QTsH0WG=Z&vyL9I1%H0F+GlKNSyl2m2U8>!wHR8sM6beQ2sp- zIUnN(FDl}DSOy_ME#75Us@ti0gBp#OE;=36yAHoGpipuvzIE~Q1XG1)Y_Z(;^@-W` z3@I^Xt6NEt*m89Jvc;*@qGH?9=P`Vk=jlD)h0L7zDj?-o!X$^JZF>c+1P#y2h;<6d z7<@vAp8;hH&>ka_t5>TCWtaTNrfu<8SbK+gs+C6frX*iKW!3Eu}Wx7`tKYqD95E-wUbaHXt z$$n2-EAUgmu#fB1`suj=ba*%bwD}Yzv#5V`Q0Af8vS#(AV@}|NYSl&K>Y#%ELYfEj zNLdhxsgTgvDuQ|GrKWhS2;BJSvk7?pH~(j4Q<4`%8r*YycQZr}9!l@uK(Z5edE~I&+beyLAC0R-@N>=dR=pkB*dX1U2b)>ZV;m2p zzDa;berc(=7}Wc3 z|2DwXEr#UM;pisyzylCeDISPX2V0gI zk4r>4I^A_naI9Tt4ZsRgN>U+YO6Cmu3p??%U;I6o8365)DB%x91`P8*urqlXz9jWH z3w@`~!aaSWF%`f;Dn_?SSF`aK=Le5RpJBXlfrn2Owqr!bZDRcwo?3l&&OSNYeLT^+ zmUfJ=n2Aza@HFCN0QLpjf}lkV@oNK3+`yI`vC3>l@o=9FyuZnbhB<6d59^&@zpbff zhfsw=v-bYxoOQZQ=g9U#9`hY2)_y&)vISMgU?c{VkMW(ZK131apd(_5RKjlEKA1lM z{695t)oQ}ilwdDCpZ;)h7yPWUm8-X znwq*kk8&rJI8T|sYebKNs^+X8R&Bp8YikhV;WRoUvYe2YxuQl5WQy3KqC{kZ^E;z4 zz)|6sY)RrdVIh)rRCHkZ>#b5cXj^z!01f_peywy8l)l~5>NPUI0@~viFKh$w|D7tZXVgnl)bZv9z;b6Z)$&uWxmLtWuJSY$dP% z*-Femt>`y{(X=HU)a^;1-EyYC#@%V6?;nGlu|n(0_E#77WAsYI@xn@H0(P{-Q|qd? z6TuFRI_l@^Bn>co>gXq=h5}=9A*ejBk74*wY8_!d0+5Di&R2;;4a)e9_Hdz3TP@XV zG`|UNusF`7g#%nqkHK+0J#4}Hr`a4k*A)VG%e+m=L5fS%2(ZdB|I$yG%dIIK^)Hgi zA6SlsCtMb$g4jF<%;K-xPwWhu<3h`o7Jj;@UgBy5P3I{5_v5>jSmdb2n znz2Mlra{|#dc$)Ytb)_tr{}-;!in{Hx`4SkG~W|^sZv_@Io8}5P|nlqz0@x8@$xAQ0U;k_hM0$tE*Jd41%=qt;_ z1Xr5Hl<~Wr?ENK$o);_;pTydosf0q%%ITejKw?GcLffKO9}T zpZV3>Y(gC7M7#HyLL#t$OxG;2q-x04>|-`l)&5pm>vTy~gYLX>U6qQh*_kSf>~^Z+ z?3OCc;>(O}$^OQlbb*o3e2$-R%*X=jPbH=^wk@ z)IWCdSep67>)ckTTniLmP*pE?Y=)BaVaGEBcjJUE25|J?ENZ9K2~PXF0Y>fz3!z^|>v;Y(@_Qh6l3>bRi0Mg*L9CSl#oHEs9f z1`pJ}y(Tl9NUqQ6qhMiSrEejt7Z*#2Fm#X*(p$NE`jrlp7WXtZIx|_b7;OGJJE53XJS&K!+ZjXWJXRlnh&b{%CzCpPsE_{)} z^HQNqW5N-#cZr83{C ztt=X-2f~*W+c%oA4!!~n7r|C39n0o^GC|e}jLXkdirE8Nk2^uoOYY0MN?qrJu-Zg2 zSuf8=BbC)>ja?(Mv;e^S*^Su1jcc=ZL`kTqn8~6yue}99#xEh3|&AjZ>`2)p}Dkm9@){;TEho`Koa78hnXjZlK@{UGusmP{w)5)qy@-Rg>^5fnNP@yv zc3YN*m#~@`R5Olvt$iYyx+KufB^BvCM_$BOL4EMMaU@>CCY6+6je=^+gSMZI7eDr! zICmTdGcZACoNuGTYfbw+-)Egxs6MAfc50=y4{A*rY#Pg*`2hC#f=k;Nwu|>hiBlBI z(Trw#xBuu4!7}FCK|fB?f%>)bGS^kgD^*BO)^hEEs1@yWkq_4NPa&(>R{<SndAnBBu7i zJ2wp*)W$t!C_*-RV8e*R=Uy7kS~~vT!MZ7D7SG1o$2kMV!>}o_OPig<_ksWc*=!?st@V2P^CvXlfmUjOjex057I}j8<%oC@v%^VM zYnGVF`P711@Q6z`(6Em<*&RUm>gay z7z4(~I}M@mECwqTJI{0uyapGT1$pakH4xEid0#lcef-$n^XfDsG*`Qn-muD?Tu8(x z(%?m+QoA5-Sb6a;9V{%|?#;wEDgB^lN>_;f#YpG+ZB<=Yq4$HyKHsdV=! z9}OP=x;KbgxmiX^CJHB}e>-HW8@KB88pj@Xz;FJ~{}6KP0);NKjCbJw*1l@p%H5z} zQ?%+6w#}mjBexCO(c+QKKADkCqF`O6lc`9a~Pp6|_33SNU z>IBg333+?S5R2{_&o9vD9L+qJ1rBp?Z^jdSnhzHCL7CRcJ&W|oV$vsh(B+kv#?<7G zWp$rYuM(5^kbo;rzi*qRrzb&@oU-*6O*5$#%@dQxyA!&mR0%f5jgRR3i}qAEZq9>k z(9oYyYrd(f=Epj>1M;b>@OR(O;-I;HdI=T3OvP_cBKdPvUqSi{XTqPFs`Qdyx!LO* zD^IN9g%CMxZW@CpK#uhCsRs-(8_b81UiWP^e&i>vpFM7m_}6(h=3ZkWTdY7^U7|DxKKs^) z3%kwzzeOMBV>hNgI&t_DeP`&ql7=t(tNIjX-V4^B7!Z#n^{muHuTt?hFVhHZEs4al zbpo(JnLrD>s#2K3NK@AGxxjdur||Vro7a=a7>VM*nqs<6?6Z?X*e>Enl`ANW0Gz%t z^9I9Tr+$ykffWZG4&uN5yU%wp`Rl#wt8BY5j?lYH(3di}Ci!j(tnqV_Wd~nmT~yna zOr@yi+xT~&LG*ueB=f)8+88>gywJ+Fc2uWY^()%1cEFgN@&mA1+JW;=GB{NsPk2>}&wq#_%pc67#VC{M^Ou3cVb zG)srZ+_>w zQZ*a{nD-a@N)KC3Uu9JN$VFoI~!~!=hYUwe_hZ zF1Ltn50^U!HCmpi*tMHGTh3Xp{nYf{49-&T8?yEr|Ly#|E(7CG_-*U)G0~_o82EjI z&MGW=E8$7~kqDz_wHB8q_$&cU$iSTh8pE8Um^?MsGKE@{-gWmM^4MpWF;+HH{P--+ zhgu||7exrSzOO$pas78jQNt%RwLqkEnlX|?b#&Xf2w_I(we_E|6$Ui}=KPMD|E!yT zLp)e=f0QGzV@x?SD3TZdl13&@;JyH%HgQ`LqaDWL&hdj}!eopEbrUWq+9QD(qY@#%{*&Zf1Y$gyoWm5FL-}IV`l_ohg>g>ED-ym7VYv=LNgi zKP?+24X-*f2R=en(glYzr|k;F<*hO-ATH!@`&!@aYEav69PV0bL|ZyIEy>Ci`6Qrq z_5(90{H{MzR1~*NA{NJ}&Do`>V$MHesNiQC*{mI9!t}U*$lYN|R1Iv5%=lyF>%7;q zsrFt#t>@WYnawk3A)jRV4FjK#)(0GBHh^93Oob-CnPHkAe%F&;83?n?_DpYa6Ktz$ zyEV;USkXuMDx@m=7Ww2$f)c>xOuoKNx|YRrZ&yjmONX>6>K_QS^>BVnc?VtEp=iW_tD)PkEP6Ch$x~%xMH1=qI0-EYx=#=9mk4dw;>ej#$ z_3;4YjFcD0*LS|{SzLEXdmT_K=RKm^;jZusK^Lk-B-`g}BeuyQWViGOfh~=i9b6?( zc7u2#tE^8;M+@kueW9BroCS#j@dl@Cv*F15b)-SL!Nl=6*UrlamDJ=y9akC@u<}1a zY*QV{W-V`X4g-q#9gYItr~cHyf7c@FgVEBv^j;s|!PzB$ubT?a+92ikZN~!EtJId> zUOR|2EpS-$2?n42l-{?^tFv7Hb;EcqH3c^Fy6k>!40|4; zFbq*4x$q&VdcECfvfwMVlS|F`=|vuMJhah5U}Veyxw!j5uW1@qN88N`Jm0Hz48%-!<1g=n=9cbe-oG7$|1^Aj zo||;_MG!wUw8OLpOr1L)dqO5cg%hh)#ExO)WwpTLS2v zzD~SUnAY-*Zit2H^`zC+d}^`MhN?szg@0+@-OF)SyWHE_^Im=YU8!>y-i%aynxoR705ICU-CQX z3nX?J)tD1EhMKlKYj%f180$>{^#-?e9pU%EdjBGSsHYbQ@*z6=7db~d`_s7YnqgPw zl~aPd9LbxmwhW1?yTaa=*bU9zM3&M7agw-iTwjL*-ll}rgQLVd(!|=rJ6MBmNe$Th zYrBw2&5l`lF9bus*5~r2!s_I|(-yBl8g*KzLfuYf>%m2Q;^rM}F^rcf_L=uPP0((> zRSeAuXPzR`#L){XmbpfKU%5*aSjzPQul@cJq881U|DO{P-r?T+ylD0rE+ zjm<%p@Z>KzP5}kD=sy-HiYtE+&}{qA(cqbM4OSJa3se*wfF`w8y={Qg;AwUG*ymWH z6+mVQX+3gD6rItU^nl0$ipCmn>BQFdbN+!4{v{y0+NZ?u!HY4K2?OZN=oRC2CwHs) z^K?x_eW;h3-7~icaq6$swySsQ8Q*y6KM(rvYUTa4hX$?1YOzm9owmbNNEvUdW_wy| zgiK4$v+=}{dIY8*W!N`-0pF(`E2G|S;FwzL*Y0t0D>$?+ivPtA+HQL8X_qDD-S*kB zZQ}CHNaJAP6Tb>fA42usXmz9T=-jSX(CBiIrv0}kYdRl}7d4JcIdG3FgdhyZf)}HE z0h6JY*vhL1M*AvAu!P*rXx*fyc}&N)SEwC_@0~N)%3QBcDfiAz8h8*zNqoL=ZngDC z=*G!$pFCPT0@mYuXyW4KChiSw77M_Yv};_|3Gy$LR3Q5oHoDup(Zgx>Uis)!Lo2U~ zVykGrOTRyEm8yoo|jA3>jUc6u^?1tevNXznZY;S>gl;% z$&Ku^IsTgkAx!hZ+Pf8hamTh_gwwkhHWC+wlO@!j&qh1+#)bcNtupt8qaP!XpOGAh z)Rw+b_qLqh*?!`5RRjSFu7vxc$P8x=XIS67pDH znNjzju|oPTQPr?MaB8jwBcR8rZ;+~T{<2zcvfW-nd3vc_(VR#QkISTfD+M75elR6a zcYF7AJb9i0l_n6?eak3tpWZpQ-Jt7olo(AJ{@*$kE52|pkid$@uQaZgH{TeU0MTlI zAGkLyIVXnp>Y^d&S43i_?VJ*snzf8a+dbj~^t>K;B=)r?-f>tr9O7>tl5YHDq4K9Q zyUhz(z>8c%$^3l|xokhf{yl{e0(%qoMigYa?-QC^I(hW;5T}y8M-kU7bg@wSs znC0WGtF|FB-gH!wUH?qE|>-di-}Sr>J(yEa>lh<^Z~0(AhH!{8KAQ}zTU&EJ#iI|ZuyhnKaG^h$w^D+of&SV3|(71 zy2tJ@j(U1w5;xu`Jhp;{vu9mm)D6=ifUB5c18C$z{<(n8jpLAudy%%xPdEyYu%F?dsli{$JxQ&~yP zdQ6D-qp4)=>Odx0v^{BFJp3^xOW{dte4pzif)YZCUciGpW`!1`!myr{-nuzv1ljnz7_a;uMKA@c$6ipxH{cVqKT{WwvX*v9s zVc;zg9P9`3scPo2I5#FZTkyH*;Ge%pBM{UQsqz7lFRi~^15EmuEyF+jq5(;KclW|7zv8 ztshlej$hG7Fbmf4!A!Zp+Pi-wo}3Ba-ma8Z{-z83+-+W89|p~j^_xdY#)2ajp$CUBH9zYKD?ZW)nK1z-F@ZAAp;|(yj z1>=)Sg~7G}QUkJ57kv7CmK27k3Q5-DY?~Er^%Iw})oW(-`FS*(V`@4dU-b#v*wd3_ zQgdlE4icUsXUsWXx-&sNDV4daDL0U`;nq1HwP}~O1areYOclji)DM=MtC+38GM%QS z)F)(%&j&`BuwkrkQ-eY^oO#;h+XR_=s&ZINzj^_l%u(a|lB4)ExeNWGl1|;5(8u)T zCH=nhhYU)-e@(P^j41*E1qI==9rI>d^Y95@i}6ks=` zH(Q*djQR?uoxGZ0G|RS?pYCz?;JWX>>HQKk(ZN@HhiWmU=+e@Zu-&9DwcRvClT2CP zS)}I^!C@ul%i5pA?F%(1`~_ehUAdPM`U`ml6FzGcOPdy>JU^40zgRmUpD=c?txI6H z3D9jWxYX_Xn3LH*)rT48^KUNK4@l4-GS37qjq`xXaJ}wXy8$q2^vF-Yg{Dfp%B~Ab zK6~-rcY@~~sNe%qxx)w9KF62NKGY7aSiJgn6&_XwW zDKs$-M#5s{M2Ehu6R8HjMK;q1cz%I&{0=d``p8ZMK$2cmyS(^#g@$Y?nABv(d_f&& zGxDXgyLwI<1Jw#7fL1n5ksuF?VA)|m+ z4*JU;lbt?kL9G+Y3O4qN5@VU)?poh@>wbhO3ys zbNZ5fUwgbYpd7~ct%`K-=+ct2MSsyS;04DA7NQqSeJ+_diLh3i`Hw6zENtX+v{%ZP z`2{2Z!NQJ7i)#U3mmb{gXf{=fHrC&YuRU_tz=B}waA>;r_ zK(@c9F_sSFAC>KmVqtM542@|oDaraH?VjzTzfKbE6dK$HBFsJ9iJMe$3VvrKD<`MQ z5|W$#@}=OLW_WoS!1{A*$T>Vf>Vg@bo(?>!`oC6IrJTw7CGnz1tmGAjH5yx_RFLyq zc@9+0ffmqti)Oe;4`hItLqz^x^&o@zd_e)+9YU71W8+&yU@J1*te@f#)Yjr!k(Ngj!y?Ijj!SpTie zG&NYGr+HnJTBaAAOLH&mVOsbn=kEx_Dds?g$f8n@(BFgh(rAF7!VGuV;?HmfUiSib z$6uAY0T^y#BSJ^4xgmu_1so0e-XJDcVXbaBe2e;-sRx<6xy{;4xqP+A-;z9onr=YR%;4tyZpR$VPuQ|YDZ?UVQ)RzzOS9dAQ ziM*Se(OT2-fxCUcE9!hh>uIb?wes5RY6LTd)JHLI+rXN#Lcc&>*cS+@=ioenc|8)v za%Cef^|0}%3=acrWy{po|eCyg-hd`F!aFW~?AP}yo(`S;_I zlEl*5@P@`<2lXO9J(9h8^nCyIV*A4-|FOSkluwqFm==$U$D}cVw7S{ zIX(pZ-@l6GM-wT9H@b30Ao`mZUP()*q+I5`ZMkg1iHi|tyW9XMIKKdhL2|qH_O^|U zu^8{WKE&N_3xTbUzZN~aNfCq@AFCKMyPhCM=smb^J&e`#;F4DcdmP`C4;8*4FaAh= z9o7R5zPD6MAiI*eI%T+WfWaS`Eaw%(M_&W~H`F$)ZL~6p)+W-~-Tyk>CRkvYZWHj+ ziX%rIH%?eZ8E?rAmSDfb0e^LtIstC*{QGCfW>d`^e^HzG#UtR&y_SgA8SuN|g(mZY zMZRal3+z^J%{}e)d~;jZzhiiFk9r;BBs32w4JWu}90K>C78p)|`j7Dk4hlIrg)*-? z2_PF5*$3Q}bL)Ak%&S?AEZ;y`Rgg7CX?Tj($=4iO2Pu{dIh*>YKG9X!*}~hSy$csg zqxNb1>mT$v*(ZsqMdrkb#F-oddnGB-x_OF^_92|NuO}dLyz1j-@pe@2TcaU+ zi!LXtIHT>`Uj4&@-`Cnm58nmBK`5ETPu3tacKYB{&8|YC!u4o{_bBEPpxKl_M-E8` z6?778uHux2Dh?t)?e`1vi{Uf_ao@hcdkZ~j~Upc{h)3uSIJ!(5BN%*k;KJ>>wiw*l1Zxi<fJ%oA*)xLfjHjGWprT1R#vO1*7 zZM$CDiv6R4$$Z0h;_oR}nW6c3uq*B71N>YL2aA5yqNLQ^$Q=3$EaQ5JKO}afKKf!olv*-NmrF38H`OH1 zM>f6O|HT6Pgf7hQx|C8ZPL)a^@@9oA+Y&&PTW^nGVV2-IBwiIjd=S%87bWCw@A;Jm)idrD}-MngsL0KMkAPg7h<#lwEw z9sk!Mk?p2H)E;VP@df#GmFk&PF6=OCr0h;{2$&V8o2F?q)ko%1R3lrKe_JX-p#UAK zYyhZ?9?Hnt7kKjQ<2QZ^7|3X~3$Ym<*8K2flaB4= z4pOSR!VK&QkgulTrY>N!shrE-l1{YKBZ)T3p`s@7D14hO*8-eel7nBKiybp*-*+=U zJ%noxaQtAjPgi&lzC_2JJ#Q|$RVotfDu@=&&|V?RQN0XWL43tfTt-7S#aI^~s=mf| zZF@WY?5w4(e19DkeEW04=Z9n-X*mQ)F;Pzxz*#o?*EPGOUe$A8L-{^Kv(6%PaURj| z)2_Xit2F$iV|UR`*Eu0Za{F}$$2HDU%O9TEdY?C=c;fE0SG}z>;uI+HVJ9h0^e9U24DVqIP=S#UefDr*N^#5fZ?*FA5-iucgt^XG?DDz&- zUYB@^QJ{*`4ZWH^WSf|zq68Z_hPqR!*Gu2euRjtj1+58P|C~r%(8u&j64{D)gI=Wg zx$yK$I-KkE42Ot6<1*lWLFazDZ`ymWyzSR|%K@(FU7rIq?Y))4Zz!R=IkefU`~vbz znLoT)9$8UI(R;ef+S%(F>DK(xxT7a=JmdqG;vXW?YN@74i{jGQ7QfEluV*Z0 zx%(FBXH@2?R?IjAmxt)qL{f?w z?b3PQEm19w$Qk=qLdmK!0RPax4#19Y@Vn(rVmns1=0;LUOyW8i;JI%g@?ewtU7=bb zH?+CqcfntcwS~V7I}Ki)9mR{8kauu%&;Rz=E}=Xz@9fT2_iK2!H}|GHTpcQ*P!YnM zo_+V&riS!C!xclDzC#q-uRxzY2vjMwd2TnHFc0|>&;0!ao_0vHu;p2#Q1F>_`*LWO zJdBr9^)pl*dlm(Lyvc~d^%pDP&zbW7GJT*n?X&5mB9`qVe|a>zae4HgbmmBY0$`h# z7MT6(ULAOnf7x}WaxF!?Df;MVa^<|0ja&Tkg7X0T{vwtT;QSgz;lp|j33Bh3B3XfM z<*#P^{aJYzO;cQ$VF))!jMiOMOPJt!FsEe3_vM`#O0gTWZFH}_MzFM80VkHL)UUo1y zy?gYao#S^Q4THKF3t#(-O`mA~fn|!1!|OF8B(N51oDwJLG2RjcVsXggcYCdaSUkuX zOD5R)__7MbIkH!o<5%)3=uLMa2G*@5pYWxn03OU{Pq?k4@`Xjp`fz zCITvwwk>L+{xHsNYcCb%TRmyz!K^;(X-4`c&F|XLIbZC`Z|1&<;UrY|N+U`5fwLLx z)Ay_G$#(S)ZXVJ4a#r|b?wDu8WNstt#0Za%xTeKQ+NhOwh+-+L=J@`>VQM zz?q=x4BCESpVdm}D zfqb1CL9O4eJB<40a}no^r}PSIMh#%kP&K{>b4|v3#nvZmkH~))69QK13dZ&u!weA9 zDJm*giJ+^K+vER)_@}~3vm2v)HYv&ebhgW&P%x-^kl-ep4{Q484AhM}k!bO0GzCP< zG~zbggT6g%DVP!sAitZlpCU}-Aak>~vv}3>?opjeQBN6ERZf6wt@S)p!;q(;I(S^{ z7Wr-65-yiAIi`%rY+?;rpVX?-5QfQ03liWV_E_@tZ8l&!&&|OfR_MfjBdlFccD+!E)Ftq)Y zWD?DtwAi2VxOVz=w315c>G%$z{2EwG>AAn$0;K5vXSE@1p=RvcnP5w1=T&3| z5&C1d;ohl%A+UGtr@D6MS>S1ahiTpy(vSEO3)k#kFyB&8#-o+4@f(n!`7ELz^8#zx z9d93-EseqNw#?9)(+H$FI7R*BkwOOR0)$sMEGA=FzoeSgbU&)5LgL7y+mEv7cWc!N z$wKt1$#gGY?(N2OZ!Ol6J=+moSg#61^zwORZ<~-bG*a2{p6UxL=n*{0;>GtdwiCXL zH~X#U{Jz6#?r`r|x1(c-VduDt%IpV2+R0VF`d{893xWr(^#92t*OQ$UoQKi?y?eoN z{J#NGr0}bZvC_y;-#KQs#c*gkjSAUe;wt@+PAD?ZVCdxY()ye$y3w^^7;kNJnkwo} zcwoFpd5?Gue!YDEqq2kO1UJBBGwK#jS3xmWOW^iR%KJXZtP@4FICN68Xfn7;;>&%< zxGP^baK*Yp^FSO-HntRlQylYyEI{N19PPVrGC&QwZVP2g^qY8-6yj>Su~sGP^v<~W znW#HpBu8+&+oRW+Fi`pVE-6hI?2I?q>}3p!C2Jv!xYbuvB(q_>@2zwEk7PxamGfIg z`zPnV!N@MMzGZlG>`xwWZ7_=VwP{Q%Y0!hn5v-?=Bc1O(HuO5hh$=#A`)YAzXO=&tI(d>+R456Zy0hYwsFv zr=P(Z^(7Z7is4#WK)l17u;RoSW?mxibGzJ937T>R_9WdXGrtHoug5nA9_Pg4KA2N9(dj8=>|Axb z`}z8$THJ!q$=u2h+8i)%)?onl;(&N_7SL}rso9Z~&SAjX-{pxP{y%XpCi)vY7C*o$ zC8X<~BiyWfBCxMV0@+*he{?KiR|<#t{Jb8^Kf)}hJsd}K7#Z!%G>z>8NWv4HHfo70=)l$hNl4!YnfDNcM$9KxDB{wmsHa%jl5Mtjp`~O0oNtunF92q zPZdx&`nf=;AW0$x+~IN}&EU5ecUtB9t@;37?iDwUf%j|xw!Qd9ss9-2Z=+rpZzEq- zT;LD8MjiX$`WeW)&P2&)+Rsx3Z-3SLJUG1O@7C<|#V>lBbP9KMgMV?DRE2CBTj7aN z2r3xAD&A^TyO{IsmOUHG$*itK`FeEXHBwM2I2V`I!6ej@D~*&ruUc3^c3Dx!o57iQ^b9Tgb|K2{%43} zB52N!6En~y-WAl#H!ZXJPMuABEL@)YAoRQkL=L@m#5O;!&fHUsd7ArFj zYL+XMxv4kNn?VTzDz}7o(3s9@vG#J-^*31S{{jvwrA60&ki;xsn)Rd(;Xt3?`46xdhst5x=xbk@6!Toikg-E_aT!cW}p{iB(A%g?^uOp zZFq_0#S?E3n_j|gZF^?unp{cnY{_U;EgV8{^!)ww@b>Jx*z#h3jh6eRM9Y4mbb*Yy1x znR_n7-tsjXi6E6z>6i;w{A&_|UZqBfyo(K%93+%ZrD44gGSK-Cg8Q~81;Oa`?FMN} zhW?cEJCMGZ;QARJD0Nj*_Z1CLwKK(?`uHnt)Hmw4;!e*F*>f-UaH@MQ7N{HbpL6uC zFgkfs5s6r&^-LbrDeqdrhM&sA+^t;#Be`KQJ**s+G+}SAfjtH_!c~`^Cl`Tb%+su^ z%A`Su0&Z14nsS{wf-(;&7D#hc7q{D&7ujCSTY{91ir#=)jR(SlpZyQzc|neSK}ML- zVCIMJ?T#LW^{U<^4k;R@n_XWC-XIeLT|soi(HXp1eXFRW_)+|$3qRist&!nU4=A|1 zlHlR~DuZ0I2MX&B>DKNEvNn8)dY>AC4GzZEwzo$>OH7v&&qY{B&u|AjXb?SF=K6=? z)H;1jJzkPVkf>WXCID_;T=o^E!|5F7{>z&sEsVwl+pFJo`wj_2JvGgddiV+1I2Iud z1_}30PQ~btBG`|E#Ef^p(()M1jne9a6nG+{IwYT;%#P_*w}+uqj#VEY>?mSB5u`PR z84-%PenNqmwwA2iN28=a*QAzz2;O*#B<$qDXqgb8q&A2iwBNJp;>P|mw;F8EsL5wc z`(v{_Jk8yN6q~Dw)Fu53DmP>0-`T1Gzc@Fg=QDBoH3XEDT;iV0%q6)```uOvcg}~DWd$h_1<4YV_Csn_`mjhtCGbkUWG!+r9RAkgI|9B*}eF`*x*%>LA0MH^pXA72YjOY4={`{|^G~49Q zym7lbAo68httxUZS?&ix@7Oimp!eV(bQi-TB z!ckLP*8>{Q2j&crcsMW5tX<3^9X4a;VHW?}`NBUJvkc`H?;@F2vmpmD{$+QVx9LCm zEVQLt?EEB62VDuPWdylKI1$pVsl~N>Me<>Dr7N~8T@GmJr|6tsUeY;gW$v~+*BAQ( zMVL!2gaIyu-kp`^-0_tsw3{d9BX_jH_eRPPV6Bxgh}W|z`Hg?h2~7IAHA^bv<=bPn z+Vmx88+R)k(rFTrP$d>TE<)ha%{T-Oc`WeK${b-XGBI4+MfTp&T3mpCBUZ?BMr5ci z>>)Bu0_umB%%KxV6xXOZGb&}5_K;MMxzpl%g0RPfzx;LP1@Q%Bxds*Mt5)|C`D^MY zhpCTR*GRzU3bIykP`Gu;^-2Qss7IpI-^`}H{4+(uy%jD*z_q2tjQo1)`g5qLr9t05 zs{Nz-GJQsVvA@e|gwTW|-8R$IY?�QhOpg&fZD;f7%Ud7AU>Ry0*#kht`z602+yz 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

ZB4D|h)zAzjnP#oGo41jDEFkv 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≦-P}7# zb&vAjWI0jEl$V9NT&^=4@b$haHpdK}vXD*k%nT}t2!>0MKrc@mt!V-NL3GvL3R!}3 zxqv?KI=N<5cazC7h3{M20Oq!v7uOr8_;>Mcqfp!9cju@KRtg`yThfNxKw{f~r?!fO zmVOD&9;Al1&wVEwcdnM<+SeM<*meO1sH}$kD?)eVyYK2Kh(lW5V9ZA6H>tSuaHYW6 zqK%CrBQ)#hW76AC)iGIiu_a_3Pkq{s@I9B*yVy5-H@90~A*}IG0WLPITrol?oc;`W&k~Y|C1(HN58WnkA#-Yc-j%5> ze}EeR1-K#rtqr(uKZTJjrtZ3MKmUujaGBoV~ zkb+5pR=#AiW$6(#+wx zB~{-3zBt%Ilk7;z-rtR)Ei@^cG{ZK&6f7GRrT2CLdmUVU4$`ZEU<&;$r|HQM9mn(1 z7e%vPSjnr|(135!bxo-mG$qo6lBvi4@u_g`vnmS!c62sXrTe45dL<-Y+#Qr~t)*A7@T{vF(jUF?_{dcRJJe>st9`UW(7q=u|YKblcjM|z}QiOG8 z*6LxYgj-I&r&epmxXZOU`8mhqgYJXBV6{e{iF!-c1^h@u;`D?{yf5%07@^B-QUwAT z_6B73pDsH|j`RWox3n>Z8J&s5;@KZrZ`5$F%G>#_?|VMa5#Q`=KiSaicCn`VXB{dn z;KoaQ56oTP=DL#rDzaZ*I0n4!>*{cd5Zkc(5Cb5LzdF#lGwLqS#C4ikt2)J=k=ckb zYjqv!mh*FQEuO67dr|+h?Nn0rezlMi?(^8_GI}Xxsv4&;zhp0{#n7EiwoP4OQB$u$ z!0aVy_oF$Y`23r?7tz8}x@1PCrWB~&Hkk%o&6rI*51%`tUdJt#8HHFuFP?1BO3E(L zYbOt!c2G-mD|xY%l=H8wS_ijXeKc`J1c9UwSNX*DL}9R#`@1U@{|EJ~KgZXs;b`Lh zKlCC>vC4a#>yxG4;qP>9KjF>9*Srq06Vs0LIPdPV&y$OLbwhM;$|!OBdA-Q?s4{NT zcqt>LYM8sV%B|=W7;zWto4oT@vzy|WcU1a+LAp1`;pSvPb@O#moO(T!jDdD?Pf%41 zWv7{%5O`--+sVeRXClh42eeHv@nT7Vwimm%7&&yTOLKklTAk4GCOZ`*9?$;1BfQ(O ze`aR_^$1a6oD*5>v`;$!lly|6m3Ca2q~Y08LPG-M?gVkCGUa zu8|z8D*>Oa4xp^D`RiYFD|1iGN|#e~$_q_W?Du*Uz==+BkQ&MUp@(RqoA5^W`@yzD z2fDh~j}}3B&fIpFNu$t5Yrx&-Os<2|ao%GH-{-Y4heGB}XoPMqmRIDWi)85-Qucd` zp(Xmo;~4DSqi$m0;`$L?m%)@n*M@}Io6bz<8ak+}|Bo!gMNNuZ#_80vUK2I{#@av9 zGQ}B6WIb1MMD}xLaTmm>cR#+|*6>`quboo+5J-IR?K)8nRC3RP$H8MUFMOiCvddY| zjoN8ox}9}Q!Nv6hx;IYOEN(NmwyH0ow&#8L?dt!m>P*@M|v!H620KmMtGNJ&xxq;59s-{LJ14<9@C^IhD!rV`wZb8) zMuBWo*?DljZR@lPA=Jz1;Ce|R1>72uLSH`kA_L(SWzYS#EcV7^H}ns@INC!?+TI<# z!HnT%N=53B1rRje{K+2;_(MBk$v3yn;hWE)e!G<<)q9oB(2}q!v#QTn<+;IgpGl!G zWus>b$dc$P;8-emz8!5DCv~(b774h;<130{vp3_Pa^8#Riw-OEU5u^@%ugtnnNuGO z6;U<0tuYB|CNLg_u9b!m-x+KQVF>-%$6aonsr48}(;t=mZ#L68&Xw4*Ib;Fij7n%p zM8xy0%TJ#E`Mmb7IlQNL{yBDaip^qK(OCbmG>?XJj@$PAtq7SBk~!cbBq^H?wsBE zB2gUD3F_uLBkt$=V(Z*;n~NW^)g)&M^3quRNc$`=JLqmZHdG&QHBPA)GA9ObFk%9`+&ugr~vDr{Ob58 zM)OhL<^K39;p{JTrly5gDenqI8gL$LUZf0a7%y6dKvJb3Xyvnac}XbrrDXy`eiTe) zE|%LUyKIf<MGAw#H=?wqN+px2SUI+__p@VPa&fZq$LVS=Q6E07WkoDMi? z>1lM?e8x?4ukFdVAn)}0^3thlxm|NP@e|N61oX+VaF+UgGjB}`=kK6TKe*vSEYs0z zgz*8yPi&RTM!KuTML^vrz^}O6L26u1tp#s-hmERk@No#0UgD zLY~WO{CsxdAQ-G2R&Le}Y9adX1~f?$t(;Z}N*ro%(!t64Bi&)0kc3c&Mf^`oo)8@Rj=(uzJ*I_e!#+}c=KOMuk#UE*Hy%nLt^`&OK+ z52++jX_LVvatnGnQJa5Oh8nx#hZ}RA?~_8j*)xk0xXDMTl?J1N{(B%Ke$6}bVQQH5 z!VT+s*TetlsFmlkp+(i@xI{3gC)lR-n4%xw@%<{11UI|-=z)77U2nha-YpdHA0QG7 z-};bBC%eD#@iNzd^jFzr^&2Uh*Z;gb zMj3P~aX!0jrc=J{z=H})uQf16ojxeMq`m>{CeBr8?77f;91qye1^pyTX}sHA#5t2& zmj3L13>1mo`o7>&BHWvIwa@uE`=ZI3Q5rKeExa+tBmKh{I9|4;0 zvhA!h;idAmTK{kb_{uG49|jb2oe?0Q6SfWY>OV7!XYyBtMkR!^*XckW;rZ~gD=mj0 z$CdTf8Xq-iq2?~bqNE<2Sgpxv#ZU7kSa=^4E0n!U#76mcV|ndauNL>U3j_ZQV$@I0 zH(KzZL$u!%5qlADEf}K|v+E*`a}&Jj2AUhVmQp}Vm5g=sFq+oB9@=>zMRDQb=#1tK z?SLp}US~;la%D*zX^4=`JmttVVVK+m7vuO{JCqtgZ*zdP zh-d!A4VI^G0pD9Q;rLT5oORU7yV`0S_#D+jH2vYAJ%inVNfYhiWKBuxbTZd5tmT*=mQI9ufasBInu~hk6~;h@SuXpO;v3v(_eA_i6vdOvDz7)xw22S8c}x{r?CGcfhiO+i z_%*!`%$wNnxh%Me<4%<-=hp}`iyFkv9OmjzZx+3b+uL3f@PmjORD~a0SYNOX7WLzj zK{ho#1jbo;Pcv?NLcA2I-7n-fHjdUhLQag#5((m0OiycyAM=>wNqd@5n(}LGG1$-;8^D4HQJL`7qh+s$%=8@-Hs6Ny4Z0fp zRJc71f;a3NK5R{y7a3R{(QdyY3KW-@R^%cF9L_gfU#tEKegm)4hYDH*aWoOepHFJ+ zrU|6+-&2*<8eTJ4BC$#jt`syD!V$P4`yXF=a>jhlqGd&f#HVaIzZ<;!-j-#n_`o_v zF(qPwnxxYt>A${zM}z&Rcx4=D&m?0x=wb=nON3jA_POvNya*|7%=|cq;}G)`EJp;66IyaT;GDQ^0UefD4lu!-xGOqjS4N$I!Wx|f9xG2XF#1_Yxj5?sjQ_%a11?lhguSJj#>{OUG`WrcvCe{+t-v3(Wg|Y?WF2 zyk^5{Y~!n0;~k45aL|ApSS0gL=m32lC3W}jO>gAYt`r6dcJ#gkeMV2<;~PDksN-F* zT+$74{fBi^{JqX2#wX*)tV%E0$nK%|WJQ^rBi0IWry-~EH~6L@f&VVcR|MY1i<2$t zo`rrf5!*cRPgoq&gqrbxF_tyD|3$XZ?!{Ok8B4V8Uv5KLe|hn-%0rf<)FdgxTJn1( zK&2rO`pPWQg6p@YqxfZqH2xVdlnAp`SS0=FYs8mAfikkA_rH$u_n%p%u0@~Gk(TyY zk=}lslO6f31lvetAYM;AkG#^Un_cb2&6f!>uiH3F|BFuG5f5&%>X)N&9{VS&b)`nv za9Dy;do|Z9pTh@icJy9I;qJJ?Pc;VTu*SbR7p7g%rHcdnBaQ{ZHZ%3ql?n&$Z{7^z+qM3O|A4`Ad{%lG5W z^ZO&yRE@h)s7b=_(~}>%(8(nF#jGFEFRMng__wc>E$&T&7$5fEQ0shGR=A*WqY`n# z3JkN!!NMSnu=Sc(a9)~X8JX&hh2#Ev3Iv2^)*Mk*V`>1Zx>WYgy&D$R=2(}*#^uzV z0^CegxepI?zF}MG9@5dLLv3cY+_pa`DVhh>gSD|21u6VI*cr!VUXKuPK&nUS=t zl442+1J!X`ik%;c$+ZXes*vZEVya8}ffx#t`DnmZGF{CARwrk^h~V_$N7~(q8WPx| zij@0pv;*E~_p81Bk<`bZy>u?p6+pc!I{o)PuN@|IxgkSJ_lp6?98NXOjBGq$l2qL` zEN`fh`%F~OBOr4t7jUl};QtOL7hpq@_hnIMxc4x4-S3l|D0P6&@rCT)iAP}Q`si0) zvuqaVtE-D*vU|(1A!+^FGqF?@+1w&uR4MtwHeRv{_47wPp*g)-9eB;fJ8DA(At6pJ zjcNFwu`yx{zomEbPzL?M@8k<9PA&x&Lxg=aR4#GUJ}oCK_P4s zGW?@yb@5h&EIxf^6MkvYJi&`Y-Vke{OQL8cU-2++`R*;==^AnzRh38Ye85cB47_?WL@a zZ+0JVO!>F}^PQ-T?-;#*Df42TMnOg)f!3(tb^O;z(f|7acTXMvhAqrD=~K5d<96|D z?APzi$5vmC0#Ta@Ot9WQ#M32JU^(*k{pG}h+n8ClG@qn=hP&L-saVTxwbJ$F=R!iu zc)(-RYSCS+3b@?AGa*IYW0qaXp5QaD^SjJNa~kgJtLM{{Ct2a48aSBWaLH9tMuL^c z%wdXqi!sODx_ETTo+UJ%ib}ym|F$qxad`c6i0xZdQ+O?~(yA@NE%8J{OX#Mpt*dFc ztwhsl|GtrTIoxF)TzDh%^>?60xA6_Wj6V5I6-?0j-?cOk44Rm?eswHym3mjCG8@m- z1aV3P$AQ;YxEwwbMJ;kx)G39Grs!AdhVLbk?0;QT0~LF`(7sp)6z=QPOUkDRNK4Fb z87=C2@gL-m0E`r8ObZ+r>53ssOj)^7O@6PlHtBj9izr)4K23)ccT?I9#0LR+JmT4; zdan#(c_1pD*>=kD=q-h~hr>b5OuOKo##r0qJi0-V*M#~`_rVN4lAcB=Jb#%GJFopv zT*?atGT;ugO>_iLIa6v$H1)JedO8idLcyf@Al-ba$rSH;c?KV8b54%aZb|VSn zTE?h#*&pfNWeAMY*lA2-I4(v4jGY*FAEQ~6aw$1a)jy=#ueeK7344Y3{16QkjCj+- z@va+q1G#zCiHWw+@P?Q8dSjh=!-Kd|X{abkr`ZWeJ7DiEiOXf+g|FCbR%9p(Y4I#u#{zCrg z%6a5#%_Q;>xlSJh&c-9d^N+*>>Bm3Q-(yckdI1<+3fbrw16%2nN9nACv5_>-8)_zZS$hWio;Si{t~6P;wYBphwk=6_Awa}L*CVAfB0hd zNzl)ntF};dLx5c%^Vp>@$m&X2c2AC@NMDX3Cokv7y6L4RJ8Q#*{qG`$@?-V8gXh4e z$Me)1Cbko8W-_?@<_Y(Y7giT9_2L*#E}Z!o>T|v_5L;Hyi1`0k_kORyD2L#3_8!WX z>b8HD6vSMyMyen-e>NkTbVcY26QWcM46PX?>g}--ylH%Rlg@u#_6_&+b}#VJ#h!R1 zsDcG)m!0C}T%R_0@8;*+!ZY3H|7An_Q!d5viT6&r*7n{%fAV?%@2?0-EKG(ZJiC4X zl0M69Jf%s4;$9)ULB=3;bqnZtlhReOU&(CumCH3v#k@@Zz29?bP)_bc(ecV0)bv(- zS@dWV$249zclEu~evM<`!%VKo%p-achVZ)W=!;hhCJ(Z$nb`|Uy{_N!YPryygmh|{ zuJ(0h-8MGV4ehVm_u6LPwC8f(ghWsRH3R-yy~2>)aZL;EJmVa8Kf}$<(=KRTIbH{u zjd`+W-cg*87Sca+$jpgxtbxw2Z+B|bwdz%n5XRN~1$0@Jm=UcLVKL7GFPC!;5O(a| z#Ce*RJ3*K~aU;0CN6fup=Jv5IvnaOA1E}S^V~y*^$iz;!Vm4JAAIJ`s#yV!O2`4~&_rE8gm)MU5 zcSfO8Pd~f`mXsVbyY>UsHa5=t(O)ggn~kZYv8HPyR;m$*iEicrSGUGiwlFzGP?0wNd5D@o~+$wTut7y)Qb!(=RMP81pD zO77d@YbzUdl1EtDTTn)8MLLM)_#SZc{ZU&5jdP>F$tB`!ppC~DZD`GFTQtHeW5R{y zyB?wBZ>>`ID+zIgZhc=3uh#X)i7_7-Ir%!r zf0YWkhHVTvphG+T_vm@3Fx^}F1wCiO+ZWG!_S@n0e8RDSAx4V2!XlS-cQuGO*D^JZt|JAFG zdZ^G;u2OyHf4yp|!`)E4_#Lk1aM(cH+tj$#yiW{c7C8!m1Hb#T(siYnaRL9X_9kgd z#BP6HXXOU(@82x(xUN>YdN$ID!mPaH0tB;dTh{m0H$sJ5Px@bUzrUbcG>!RSX!ZQQ^t?c~yk1Oo-EPzkl#kFQ% zOw0)?b?(~2F?9jzNBp$`HEKtig~C37w2|Wnf<)TL&4v1clpE5!Dd*&m20}GU!T2A!+fv6T_PT4MmUxe-fZ{=|bBkHo7GGSROm* zvFA1vbp*}qInEP=in}}gUU_J7pjDVKRCPYn&K3A-0=aXpXb6XX z*4cP957}FNAv|lvn$wZb=GT)Tp}ZIh;W}eccVOUiURG*!V735pFSU6%&b*WHpmS4# zyEJ62>K{;$uY@KH7|z#}cIiD5^d@;uBx?2B(_KA$KmZ?YXTF*lMY*_og~K_s7u*sP z907ak8vy~lWFVGH(i9bvSO!>8nu%MvY)wt+y(6c=q1mVQ;D+?8ACmo*pX{NZjLjB* zGMUMiBpk7C>q7$;JHM-Zy7I1lDDH4PhH^zChzawsoczHjka8Q5*R3wdTKjg|2>yv{ zbIh>XfHud43XW^e!{6@-43>+U)emR=*W!3EqOdL~{t z0XFkkj;Gy}{-VSib+Fz(7Di^A`-?edHV%P4ycP1NN)WwhQ7ieaZ=+=E z(wF7&>xQeJo0|Nm^dTGmJy?XRMPss zDs4o_ho4$mRet%!1ro3^!`Hn{cf#F#agN7T!SkJ`V$ z84O&Z?u2f+^-k`zl8A=!^`32&EIWObEdcVpdm(a*1f>#!&$V={p@g5S1 zdavxmCXvxd)W& zYV$*v1H{qxt%gf*5xMfpt3tgSY{C0y8Gzf(`e^*fa~fRrThk^BF`J3|lJ95L+@rD* zd-gII2rvDzvKMz89GVS^QM%gcl2)L&IR4SY%BMd?oMyZs5k7EU=X~tC=++aSX78-D zqMJx-zEF*f%AX^tko{lm1NAO>wZrk;k=Rd$XnNT95h2X_V&$^yDV6}l>KEWy$whUa zCQpP8V!Ub(FChp)nZy5`2O zw3=^Q-{y8Fn^$39EgyMkk4OmwF1HV|geWYRsYJN5kJ-&S&vgHl6Lajc2HYpToTa=*p4u`)jqU&0L=1P->yYffjxqQGURZFO2OI~9oGU0-% zm&=W@ONlmW`FaJI{F@SCzq5E^B60V4wuZUN=NxpB*M$Z|OKpHqoTDE#! zsqEppn`RmF>sQXZ5630G8*Lnp>f_!|{>NJwOLiX}&-{h>iN9_}kB0Wv^4eI|=*SUXeyJLG z$5W(P^-N`GUVU97)KqAqn@H6kap@;n4 zi*DRpDU0QoCgWG%KCN)ybh!5UZE##khz{azlC4OBcGR0dB)3)VrU8k$?2l)PitOin z{B7-N$`1hQy()I&>PHx93C(oq=b3uX$nZwZMN)83;W&h*{XEoKO9`;p9ulOQQgnwU z88~Tbxu%s-1676M`krKJ?e9pk_g0AiGtrKKXJV2{+D07Luy{ni?QE=I=6ylApv8KU zA8Q>tqd#iVIX&Uv>*i_4VcTx|v6X!ZC%y*LRtmlif=m62Pz~ELuEn4%|HUMi`Nblk zt0G}_R6$mVCGj8ckdfyXatn2|6tz_mb;J&~-V*9yBE%8Ort_z8TTpvQ$_}o0g9MJbWl<#UwYmu-_*6(Bb`Q83n(o;lf{rNlTV8L!_ ze~iki7o&6@#kQ&N+05_Qv|Jh5ZF*@22Jal@8OW>utpTP5nED5)`v%-~>%o0b{Z_7F zCy2Gw`kQ&^zQqc)G?w$C^SkJj%ta5@Bg+4rvE>k`u|MtQ0jit!HB1THYR@ho2Duy*Lqyjvw`7!m+KYR^=A`` z4N`+dN=+40(C{c|AL3c4l;IpAm4S zWZ96iYAUpRF7?}Er<)ORYhdG{^V!y?s0x<9L^R^?+K!Am<8n8R5Ak;RwQJZ z*1lEGp%weq%%nI~Md?gr}BxSn=Fs8 z&2fA)Ch;6!Kl9<7F(#Qew<-GpW=7qYCxQ20us`?29=K-$;%%ZuRyD#7?!F}$MIqmI z7`x@IbNQ}(?s5i>^n(A|GppwXS}Bb(pS2RTJ@$|2e2BHKP6=nvJCY7oP;=*>Dsw30 z$GDqo&AwIP>Q=}F9VF1I-Oakv68e3>CVpnF={U#Z8{UwrUfU?0Dg9FEMmI(Rk2`R) zq6AW~5x)ewCRad6HvimbAFQ}qYn!cjEN0Ra6FH6L_bZ7(wRL83lENb)%9>6~;HX~O z4(Iir%R}*mXM-H5X1-Nxn`MK~!$7GPll3 z<5!ESj68~@S7v+(xbM{faeq7hW0~qKs_EJ7J67bJBee0-NV$F{9tb682n^+eNqY*% zfMZ)O)$T6o5+n2!5c1MtqJ;4S$(PK-LB6ISqqn8tDdE%InD-2J1u3Bvj`&?oLz){K zqPHz4)^Jt|SjPv3Y+(wEXP5peNA;_GZeG0BN|!YBpg+q#U2}@tk8SJ0&iiIBxbuh8J*$uiWr2yevCzfWXBG{5)6Nv)rWwAG@Zy% zu>zT*;6qNctrU|a627ow1Y&W;+^K)qgVwCxL0xe6xD2&(wd^uL{4os~b0{xy7Y@N_jmL32kDEAUgOBeRz0{$$Chdo`BNjQ1BK3DSvpY_jaD=jDecc@VC%wfYu9e@i_F} z-1Z0)D_!1gA-F;RSRrL(CcYy2pTx{qUI$kl$d%^qeb2W+1fGmkfs*j;?35(XGImAa zVaL!A8`Z3_)y0PELd)$gx)@uX3=layw$6>H;MQ&i`G%otBW?b)4r2yQ+U{WJuPzb) z4kc3(y%af-uMv#fbc0`>_0|S|6c(5S;Ky<(DW-D%W4FG_*C5YU?v0r#_4*&T$IU*t zoCC(BZ%jKiJ6UdP+P3S~#`az9Q-1`d_sVAVY_xQw_NwQ*x)vR0pMbTXKBgncUa!*p z^G2BANtIL{hH`i7 zqt@Ej{~j}Gjy7eMvd$prG*6{m1+&ghG84I{HzKcQGb`d2I^FH2y@`-}krM@8MPNfi z(D`wNIw1in&bU9L@#~Tn{r|YfMem$`vsSV86{i@M)M_1IPy0^;spaK(a~?J75$N_9 zX?2J&b}n#98jb?9z7e@}-lbb7RK)Vlgl?JJa>UQPf@^701wpiq3^EQV@~+`Au#AfH>NB+89*f)V4mY{#LYE!P?oQPr42BrvHeJ2>L5!ACtxXS-g`-?O0D> zaumkHItRap5_G{><9itZge-M=E=ndP$xC?#t4eibj6nzSBe+?yVpseQ)3%?oBo*&Zu^*6ek! zP5NmEWW{gmK=%qu$*TqCE4zl-m|Y5xkQ}yu-u&3;=LgJMUlvT^6s{kn$Z9-Wvahl1 zyQHp8SW{H^^6?|na}#WM*JcmU=w)eQp3|W^4S=3KcPVhnq|I!%>Fg;!Hk`eP?e!Js z?=Jk^+E49OeH6LZdWNIOW?Q^o5HC%`0C7k1|2wb8_{rVa-bV@AFlV^msoULoFXj?T}L}RMngDcJ$ z6dWw4EJ7KnyTjo?VQW;jY_){QXcdKcSj`?!7Oy3HWoFE)1A`|uz`l=k|Fp}QD}Du; z6IY7>r8Bi5w})$9Wc=zA`yr^wHboqyZ13;H*n)5T;W25zkZBBavW|{wqdu^>OTxbF zYf6h8o<^%ZlG#nZBpJ{eaN>9XT9^8U1)Zc1UeQ;gwf-=-m6XW|G5YE>^m zr{oQ$OIJZjeJjm~6(0Ppz`kj<%(seskOdrOoFx7zF0J=aQ~kASqH6I|BD;~B`LI1b zb}$}OS##{?>M3X`;y2PDV4XH zzFr9Sv$%E5#mXSrmR!$#u2TfMCGXag8j{kZ?{Dq!W%yeSOK(g-S?sI1?e(5bFWzZf zYMuI4R-IMIjQT?Xj*6^>>RAfQOpAU%xzu19bDH*7!8-qXHIA#YH3Dbv2R-7{8~c$a z*EcI=?M8PV$5dkxK8ki8_m{MRuWrP&{<#5we)8XwGvq#RN*A0#2N8E|emVIXa41bwJfY<^6fS&cI?k!_D5_2>o&C%-k-3x01w-p1{xgd5#kKVPmDxg{^O~ z_c4Eas~5z!!DD>&jBs9QL!eA+V>w{X&17kr-|mQ#zKCBe-Is42pxMK8Zj}*WJz@{S zq)+wCxn}(VhNASf7;Gk_p<5k7`@7#0K*Mko4{CE)DVp2Jrr(S=)xICBBI_y(y~cdS zlJSGwetMP*6aS`9g<>@>7T_N2C`&?`EUBl&3GtMUKCu?2GVFB|a!2={{I-_-bJ^?k z!lf*0$mvrZTVQ!GW&J8Dvm1E)(P)c5NV#?i$%b&5VqCCAV-LFi@%f={#aXbTe)72) z+(=+VkVlqOZNn2j&-|LyxRzFp7zVH6Jy!`vhcm_W6-I0lz}U5UtQ+&yRf6|8%ctLU zlkPS@XMoK$HqWgevTD{ZxFQosdhtYz&;D|R<1q?s#E1MiE$W9&?+$*}@}L-Po2X!` zxqRzu8w!4J4{L5M2<8Ht=<``fL)10^t0aiP@HO1i#F`lm`ox*;dyHL3RQkdxxj2q4 zSKih)2skaJj&en`Or=`@!oK_%OK&T6iDumvM6*hexc;s)VcF}p2k)T7jFkxK;8SA2 z@WoJh;}vHagO2}7x&i1+H&8Kgh>yrkK7MfTtXF8z4KShTn&&jwC;4z~S5qs2>McMq z;?STDi4ONaAaR%yZ~1+cq69IX)I(Yx%Sl^fSe=C>-(B2R-D!$@O2W^8kcx+_AWK8L z@w~u$8*Ij_ym1N1=(;mOg#+Y;Vsj;9YeHT+l*1LNs(1g2Pv=yctW*10#AWNZ9$IjH z+!;TQ;C(!wq+!`0q+O?u!xP%)hSZ)PA@_i5a^)FiTO4|jcC7pVy?80jclZ6aed6YU zEXb8$(JYW+#^}CTwfT7V=o;Cg*8uZlNDw9bUw1w?j*c|`JNme4eMI@s4;?gW_xrJJ z-fU|fQ2irqD#wiaK;gWz>E&XP0maBuIcwU}%IbFv3Z8f^U7$Q4gcBjA1eK#8|5EPqGoK0CBQep+i+^nO zc&!bi3sC{VppjJis|i=cP2T&^T-vw2u6M>Y@-9tuii(za3vXVMw^8GOjW;3`=CEQ# zGJ50(k;ffTS2di(x608u)rc#=w*Og~oekBDDa6{bJU%rqr#f-n$cj%dI%#}~$w8D+ zbWp2_#$U;!4q)2XX$NEocfFZ9z6*L)6YTl*%U0yWgpu#ohDK^$e^QYFTabb&oK7{H+9ogw2t1a?vH&GBV)t5%c-2cx(GcZf1Ao& zW6$;UIK*2NM--aRU2MUO0>{K~*vFaQ=F9%Y|L{_hZ$zXecbOW@M1KTn)?2Pl6Mwm~ zsn)L6sQB}6R${*`n}W1kH{r@s>d);;rgYwqtD1+;X^eC~o}d)mL&oELrp{@1W!y31 zKU^(Wp;4YWh3w2%&%J!N*JpF?cEn)I&i_|)4qg&eu8Wm-Y}y?CU>D=H7g!$_Y$dj4 z7a++nxY=_IeC_d2S+ud?1o{~G^E?FN9rNlBM1yvd(NgW?A;guylrZN(+wiT57uiyP z(JnwH*{uSpc^&x@QuF@DwbXEhxetYWAt^iaYntdlbzE7TB<4yC%NCO4VKZ zYa;lcrk%pzYtPl4&w(HU zse#tSX)(oDPLB9Z*J6i}9pFeISRyk$F z1nC57BYLW_Ulp94^3NS@w=<0K0^}>EF7t09(|3KGugo)Qb$f;v9{*xqnAE0~Lbq8o z%@hJkU3FP)Y1URH90D*e6CC?^knxlM0|%a%qfB4jOiN;zwF`?NyKm2SEh%oztb~oDJe=d#yo4qvy3Sh{SmJ&>E+77 z&}S1QZFMw)2@8=~7a)%Ek7szimu;Plq;SeeWpFxlG4h{c@K_udFsWcr_Vr_)GtIQ! za&;PG8qPG=#8%xCAN9p=s5f?f!d8Vg9Ytl5v!7rxdAVsGYSnYtr(p@t%6w_E{s`jj z_#J*(=xvI#xBAQc6SjwU*TNX5Lzvd##tFV0xl<^IW-z1DaRbVM>mvxwriyaSDCEl* zRdV*M=)VsOsjqzV>k_pKgpB3%I2z5BXLba&@1LoHW#Q3123uj)f47~u?Gy{fH~;;b z%n7dl#=%7St!Hvx)=`Cs#$K@};g8P=_S@po!#Jb`J@utcO z%Y%VfBgppsvj(U>AKdnnu50flKHn{VWFT%cQF&-u-uufV1gR0d2=$B~4oMKc@0&OS zxWR`GRx*gB3;eHMkmGWprXX)5aU)8krrT5ZsATew_wkz|-o8weCD@}L_d zDc!qCgjeyz)QSuGR64MF&(B?c}I=XnlO zGviZji!p8jQnqfo!DDU~+dIFCB(Ha=><)J%dbQzK#vdoJRNs?=ma-QxMeZ5|uQUsi zIyPoC6G<6ynU1~WzZ03Y)boXAw;LS1-ZYQ6up5g`m7>ZOL_H4SDgZwAw5f;kU3`Ch z(n{5+Zb<}IyN!^Q5)+zSex#XUN715r!B9LIIS`(p%&w-W#2T+xgg}(%~orm6o0v{R`k}t_un?_UeE{2gVIy+dWBR0Pi{E3$9H-rls9*%N-co3=Krim(GB-)NwI zEgwBf^O!0jl<*JApHJ`YPJk9mxe67R|B2yj_!Z_jM#dV2P#diH*p^$(TA>kApHpC* z-XRCpvyDuNHc!oxXptY^$Z4E|-hpvFnV^BK4Xu{6w=eg*t!e*B?~-p6%a)H!XY1WP z*)G)Z@r%9g@U4tl-hc|)3a+mHcWzhor45x3qkmnAE_no6J7JWVU+oy6o<2*85sXu>rjI;r6zoQb7 zZ_Zh->oRQxZZtKshfk4o`>LJMmbjZdjV`$14U8X_J#YDZ5FBSEscOT+wphen%egCQ z&;5%>L-*b#gwlsw^0>0Q;}@B0l0@4qAYzPx6(ukk^(cPRGOlfy@^tjWR@JcDK_h!ft|gM4(u!5*J!naEro*< z{cxO_{2(dmL{{egj#5_K^{V8kvCm!erj@@}V7=MCFS*DIi`v;n-6jO8QV90Uw_EJ% zBZiAR6B(nKmZjl8)gRrTUtR)b6Y{L3PUD(%gC=pOO3|>)7{*Gjq+9CS$b`+xmg$z| z(R%atYKF1?wx)){)OsD`jsbvf+oF4xvL6!H#TbMj3ATDhYO)c`OWWvd&falilP^gOXsWl5wppw zIQ=zHmhF#gR{84VuYzWkH^XH?*)Q(LYYxoVF88k4V~)7@TtfVw)y!o z2#`R&zIO{>fG#E<2>PriDyz9Q?RwA2EDxTvtOUOSUa%n(_N?!!_5z-yQ8F|8)~FwF zF5#{>`+K}{#MxNT3aIDwDw|y(%IYxO6=Zk%V{ePDcMH|S7)rK{-t5X_B+2=VNR7*vvv)mxUIfnUD7GZ z*Y?G^pQ$;PZ$4_jZ^=Ai2z(nuua4o1RE)C4-KRoVMpW>v4)f$iehra^)wPi4{d=ex z9mSVOr}1^FcDgao(X=^aDbj6*9`{z$Sm|X`;pNdJ#$p7cboe+Aml8NGx}V z&T3bF?5L@N7m{XbHLwPKzP+)m)|T5J5F4akZ1ue=^r^J62L?0wZ)a`Wzsv!x zMA-S+cCI{wWxbBjAg?Vl@XGCJ;$CwzCr`iT`I{=gISwQL9r3+^5vO&5&Iie^e`eFwp?D#FPK^byHc5&C3+ih7JD zD?=B%Zdy`r`@6iRGwNUvDbU$Ec20caU%&N5#m_h<(ozWUN{@g$1@L($#?rHx^RR%Td^tcRYwrYi8~OZ zz~Iw+AQ;~A67(A>?qfn5?B4DjIsAaW@j*qv%T%V?0+t}e-TQS}O>z~xd6j)hKiXfW zzr}C^t5fKLemMf$yMR~!O|lzL*JgNFboU<-l6|4l?S~`0c zfAhO``-4VI{CdEzBX8ms8MwTUHw3h|Dm1S*f?6ID!IK20qaI1;7CU=P7f;`!pzl0p zVA-le)S9gf=2|4@mm}og;ug{btGm|mAA6miI$Xb`Bqj=Vi}%=nvXZEMylbpk|GY*3 zMwRRDkk+fk6O8Z>aw$3&pD{q?0?x%l{iv)4yP2x}w$OEM!?~%gw}=Ividq`G&GS+p~st6}x>&mN65|gT!j|XR!%UBI?facCO5kC0w6F$u`Fvh~q~zWTSBBAnV$NzG10#YW0J5GUdtbVkFCq58gpkn!WiH&PDXtkjs?EX4?WR3W_zwHLpy+9IuXV$jc; zTxP1|oYxd!Z|P-cpgYkGfVjgUrnr=o|K@%|V&iRq_I2uy*Mde6*RL{%T4CQW$qz_Q zsc&s>Bf+u3|fHy*lL447!YGeAIR6;>@PW!thd(T8f(Qr|_f4(;Ov-y1KI0}ZZe>s44yGyA?fEfJD8uf;cU&OMGIQ+snPH6%O9ac>JhJ&z z^!7s_JzOG(@w!XdG|g%S_qr#rsp>f!*;xN~rz-vKFJ@W~4-H_@m)fzI6V3c@t2#)C z<%>;r?pQK-q<0@X%&(A6WL|q~b5IoTt6Jf3`lv@ftm4Bp+{7wf z6=XJ&Q@HNQhn9)PfHE*+fF@~--=q#gNt(vrfpq^ZcKIi82xL(M+aC3x9v0F)Bt`ZdfOO6wy)24z4OeV`oEy0 zU+1fn=HkF$6FQ^00@XhLb>p+QVjXU>Tu0GXh`7A(Jlo*!i=ZSdj>qR^^GKui`OZCJ zjqtlYnMip2bq^^d@VLk5-$L6%f@zSc|4lIxy1qQQ3ZwGe%QSBtD>-JEvnll0pHGNtMrg}IFpQ4E-G z$2Yn z@>m%ACI^m&zH3nOW_eK}2sy?gjmwr^P$cSB1 z29DqJ(**WhP(UqG_{QTgGH*la&X!>=4=5iDONeQRw~p~i){G?XvPJNZX@VIs4;mU~ z!F(S+5CTpJ4RON`A@47hKu3)Uz3nEeR+^S)g||L%A1QAqsXbl@vteVr-58*d^)WK_ zf;kt+aB~59t-dz0;Xm0-YP4`#z^FxV{6|;>|6#hG?=j`MlbIg$<&i_?fbor+WKI1q zPSZ>CGBzBAi~Fz2!U)l8_scc20Q}IzsuBi|9QxwU%+r8tk6n0&6X3>M{o8WjwYzK- zyu$&nd&78dEAj&0G3QOP(VLL@P;}`0 zo(is9V5R5T#7~A-HnToV^!7u$Djb1|c{-zeCR3i%mf7K2nEzTr=igq(g$-s&uj)_v zH7N{cO)&#vS5%!<3R--#k+f1{jT){j>(>E=m!7dkE+^lHMW%@?t6;sxPwJ* zSsQeEjeh@pSis)6TrFzuH2@StNy=FfHs#k{?_Ld;AK<`1&2bPj|Klil?O$u@B;As)%$ZgPt3w2M(oq&1nBNvxGxhh0=^ohn5DU} znZpP;oDk16nk+QjYn_rZTw8#YsqCHJI9 z3^E)?KOa$ti!Efq#)bsxoPbrK_Fcb?qcCNBV0PaQuCDpOyePOueQ?BPPD*Q_!A6>b=h##PhU#1s$ep9+>~8&`g88=ny;b2Y40Dqr-4pZom7~p%IU@ z-k?D^k<^E`jb@S4Gp}_?uy7y^#^Z~m42G0=-qki$~Zhx6XlUiy-SO)XPW`H3Arfy)5 z?n?g{JsTs)K3QjUNQihI_LfPx9Tjupcc+R0<^Mj_1D{0^`!*3pJ=3;(x9Bf`Y_3xtEOqKnn%I-5c zp}ODJ#dPuuZAntCu?Gz`Eb;$lN<%QYNd3GQ+r$8_1z97Kh_26ryCRpSujO3dFA=V7 z7NcR4ObQH$*s_c7h3sMwK;ZJgDO$KQ|H0~hGxvtrR5)-GaJ4J5^c-6;oLTO|<6g^3 zjM3KD)7m=8eEBf9qkoXJ_Gxylsg!sF4K{xJjP=jVO;R0SCIw_JB06OymcjYeSXKdc z?k5(SAt_R-#7)nAm13Uu&GyuSv_7OlDtwGKvyPa1;7kzq_tm`Dil5rNuM_p-xMkGs z971j1^ZKfLAvw;^Kmpubz0I>kC_TDAq_Zgyw>BbafQWl!4~w^x@|JLA*x+K_0Q@lf zu-wNy8{E6AIEfpxR^f3jg)$o1`09T7c-3q9`XgWmk$Q2;#%{iy6pY|tNMcl~vW_8; zG%UFj5s8HU*k1i_-ok=e!6Ch;;lh$@__cANd4?i4{Mr}bQKxJ`f zr}(ML!e&htL))%e;UQAfKT>fiSLK#5f`7t*7*yUF5VK^XMHjq+Vt5dWKe54tHb8?f z0;YpUe6q2Un-r3+{Mhd?_?ulL9@s1CuOPG>)VJC&yC79JDBL}}T-EIL13?M-y<1^c zm+H)CRMxWen>!!*&}1uTrQ40N=P#sbur2afu1k53q-PB6`@-s+nE&p|bQ~Pp)pkU9 zEW<)D!K|#Hda!dFfWz!YV2-+wCY$#H6&hicXUNx0@8t0?j^2$hGi63yuK<*fUtg1X zD{I)6;`(^ayfX#Q`5XjQgyyuF$et&y?{P`+(4`5zK+T)+$fWX71y)Qbg4ejaib-*{ zBGs}}M!X8}xdKziuj7PH-v6ivx$HPA2HYDn=i<~f*=m$V-Y#UaUPAko1M{|)ICq1x zf@z!*mgf+6hM8hXKSWqT@5ZU!g$A8dEz*9v^DX?Tx(N%uH>?mhg`L~g z1>4Oo)7aP9x?$rVwzN#fOL78x_e-1njxc<^@qUQyJamioiWi=@Snm>%?w&e%P;TT} z#z>=L{3|!pCyyZDDM(6PTVHlVTR9NKj(fgE0UbJed~7jn0FlO`d&=Uav!Mzr^r?bU zeZo5d?UQ#DXYVlGhJJ%aH7MO0-Jliy5|o5~4JsVAFwk6=TB^$x-{^1{9HKLBb*S@) zkMMkt6c0t`TYLNpID4MmOW*|g|lwwZ%6?ZBj&E%!J%6CeQ zhAHl6=3x;dw;FAgu5Zwr8dgaTEtO3IQMmTi$xH*n6>3Y#*x6OoBP%-rQDS$}y^4L~ z{cBYSLvmty+)`Jq^|2ihe5=RQeh3Ksr87uI*9Rd@T#FV0`Dlvs-q$^)S7;JS9}j9B z{+GUxNNVR^AEX`%@0mLO%eBJRFa@>i{mgsk>?W`y?LgIcOv>+-HkH7+U8?VMwM9(vP!9S`(YmjtCVnW&; z|1?@c;m2N*OwkBxoytLK_4;dJe3>Ne<*&qMa>Tt{Jh!?xlAJ-u{yjEqHF6otxoVD@ zr7i3WnaTF*KV%gYUh8gIbUszty zM`aTwr$L>ch;7#Bj%7!wN99$%Wq5@^0=Y*V)$n^#?`C0e(TH-z>nGs=jRwb)TvR>^GoJub#$fDh=7 zCqtIk?FOpKzCglj6q2)G26eztXM!u9a=zQ^th)!(Q5;pw6 zQibB4XxRg}2)oYX5!CV#OfhTtb;4h=+l@z@h(BF*Y?e^#Po&rg{5B&tSXB0)rw3vN ze+2%<Qhs0(AF3y+pF&_eRugi@>Ww;EvEx!*LE7fCx;Y3dU}#WBfy1eP@o#(Sfa_5 z(!GKJTt?jSZB7QbU33}GoiC&n{wr^0LL3$J;J$q}IZV6YQ+tBKNV5g6KlaRk@o!8R z=gd5$&xq&rxsCe1E-ySHa@Kai^p+^hMOjYMdMT~tE>^3C^1N|FvWehVfYCR5X||v49Q5&6-I_HrO9Zu3+!wl!#T zPFRx?!0?(r@H_1xKUTSDUb2^2MEQ!A@%*DOPdGua3ZQ@ny7p~ z83(;KoO+zLybc!+U?F{Yd&_qaeb5hdk?E-#U6nf*e*ef`A0o_XLj9rPGc1hrFwuG! zI&^>U+Z#sqZkYKNK6BFaRYO;$`$91hy<~DlU_ln4{C!FHV=A#*me(k@6o4o6*8e9> zoGyo1HciUR1b0nB;(+kg_7795iF-FplOZP?hEy!EYJdlY{OE=a~^?{ zP|Z_ujw6KaT{bOLDl0dFdPb(HUFB#$U&v`twjH^wdBjWw1uui9f6B51SIMTlU;xK zge}OgsPuX7_ZLqbl9o4_ht2mT1@@kXrulBxYuEmmr}t>0U2y3@C{_R5;L4k860aRR z?gw<=*5~@Y;&(PWXF2Y7C*I>^eiqU0xLvc5WHjnf-C=?xSeRvLE^uj~ zw?Mi)yHuFiIM9JM`6gDj~9t=QX>ijij*n)dl`fgs?3~;PS zy{Yn)Sy;TGC~<@8k<^^)!OEuZgZiojSr6ZhSWd)7$rE`qQqd(&SW$}#vb5*cRi>}g zIb|<`zYKU~YBN8|8D?$i7hP>&VYOEvESkEW{^FH+jfn(oKE1othB3}{Dc*{+`oO`kseKn0LWoC)*;i=FsTh#`vw$6(G>hZ#zmnhTcis?~A z{jxk7@L;M+M%|d$9|IjZ&R{&AMMCk357ebh7&uEe9ZInFs@ft0~ zvs5VJ!u?foPXBH{$a;3-A{ALGtlXFfR1R${2PAB@~~>+>+pgK`nLpp&mvchm7Cf3=8Cr zhX84>Z(8f!P%&}bXgyPHozIA-`ns~BvvuD(`x01e0wXQGFQHkv!pU$aNJcfFMMc|YAzrc6ZbU1W4kRu4H%&W^j!EwByK zV97L9IknBZel=_`>%nQ@Hl-R2CTS`} z`2SOVB>iTeubyPNpvxQ-NPe@akolauG4(v6UY2+Pu$nM=)yWeD-8} z$8voGhZ`O0#I{H9eMNz0_R!aJd0=O)KymWb5v2#;XZI_5Y4$wo3)NG2$?<2Js9)uv z40x!{pk8afbh2rtm0MUv?clNsNBzK91K$^-vrh&VtMFMYAXL-fu(h4@FY(Q(tMXBM zS@y`gpnrOCz&wi*vlmv=2yLX98R^(i_q!my+ZECFnP}Gw7Spt8L2ydty^cgzv#+Y| zyWJ69(EeAw{2a1c^T+n7ll_Xv_6y!?LrLjf63y|btUqER`pVs$jJ!k_cYR75@!mI# ztb@1#5z= za-Rt)0t&hTpb1#(>kr0l~O||BFa5qn7?eBjqP+6HDF%*@Fh3~6xFUV;4khyWSH!M5NW0hrq;S*U9&zr+M33Wut}t43S4hrHC~9X`4)sj3eXH zmUj!?6G9MysV-D{+l1)LLq;6jAgX(Y{k;=*B;=&bFd|sF>|3yOTgLRpZM*^bNUhLv zFx^-VVe_(4g7?7dqcV`sX~)xG9A^pix=rBL3bi8xc#Y2rKQN(d_g>iNJKIdaG_asW z3*l!g;yO|o-M0U8jc7e$p|0nnq=?ti^8CY;4u60%e8B}S<_^@F@zM2fYj2te9%UFq z_3r1QPLSE<=)kxmLj~04pS*^UH##0KBs|CF8jLH!yXIbF%u(MfU-@#vC~zB|B*$TX zmi|1#J(;BZXshV7{)bk*Vm1F3BV4!qHra%R!qUsF8TLlVu}5~o4fF&YxmA(uV(`6& zLB;;O{1uWM0{63<9sH3{de`jpQ|-q0Ea?^>R$P@1BfWO?hmu525rcm(C9fpw&9jE$ z#&V^i$YZT|a4u3qWInQMc1KS2XKT*U`)AudEQ%}enopnNGUrxvP`CZl2+W###7l8w zpQ9Z)(s|QFqE2b8rBw^zjZM3ZCgxWv{u+`;F;5fE-?Fp{DIt%3N=w{C_kQ2r0hjNX zZn-C$aN6ZC9ig{va}Zpr6jVspfCz1}FmraxQId37X&QJG?hqUMmuY8Q%78a^;;~vg z^Cym&bbsMFSVn!+NP1+Q+XxuM#PZ)6m$RwjAyk~l7IlBc-|g=N zkp|jcNLO7UqLn-hzjZMZ)I=qO;gmXtW0kW0MzLk5^fk4`_pWQ}n3HnqIpF)_7v38`yrSXA3*;pQ zRGL)_^0)MW@o2KFwdSrKUKXSZdyt-elfRnL{K$Wo8oZCf}TQFFgxSU!BNV`zIvXZ>u4L9P^huY~&y=N5n8 z*u_&|DUb0-!f6`B*#q(&o#FtT{m~5dB*r5vNOP` zs4FLcCfzXdv4YN`!pu+nAx&Qv2*AXIo?qr${g>zIH2g%vqYFq7EHWO7crbu{UgyF} zj~z5z$2u>h6Q!HQ${fqJ_pmvOhV5nQ^GnNg8zlBD1K8^PXf5hl%tp@y$%B0C6~~CgVz6#2 znS|FZv+tZ)sVrL*l0rGiy~bkN5}#ExFAqC5?%&ZYJF`4WxD*Me%3c=BV7WYbFLS01 zO_`}|9NstBU=2$ooZ_tPx5A%dyIeNki4`8qC>D}};wa7%%UPvUeWE@;#N$hxAkmL_Lo4Gdt zICMc;ST=2y`{)kua*?+J_eIIuHD84htjPOgyW8mGs{qjqaZ}BsTLV=Sfi!7O81+Nm zH=Jt|iiPy%#U2aij5G78#jC;dMEy%1qHS9+m!eq(m}ij!fOGO-R0swXfk#6h05Np; zWRL-Vv?4eD0%+!0Fh-n#3WI8%{&i}=W9htJLyfw5`}ltNo_`Z09Y1x!Q~Ke7G<<6c zUi5VXx)LxBJI}ZlUeCrc%9j2*@-G(gAYgIc4^5#@SRb#2n#-`c>TW)vUcnzXN@!JD z&%{R&s4suwCU7hc8Rq|MRh@8S8EXzS&v{;+Ct03XW*-Z;i~VoGfh<->x@2V`TXa@m z#~eM2-S{+2Igj-P{TashyY9^$FHh$lt`8X=_mM8qX5cqvQ#VsU-!EjYU6puwOo-`z zYL@s2dO|%?BjjDuTt+k}v6{zb_rTPgbJQ4eB=GTYV}!k-CW-D<@8sWwoutEu+n%u* z!cp5ywqD`OiXY2E>)I9oQ_&00cr%ZFX>08-E?GsYa+qoS?BUKsOq`#Z^M+lw(F-Sl zdT)!u3`VXAz$Nu536kG&-!tFh9j{57;KLt46_}<9ZZWPJ^C4cg-r)r+NGU)w1R{cbG+mp^L=F!#UFs zh74l=0;9;>@VlYwnj^}x0=4sHIwUtp-7BXQT5kE&a*g}D*Uag|;~N3}op>br+O@_e z^XcaE>UcYo^Vm-Ms0vjsfip{9hLp>h1=|;=MzdWy&DhWMdqRZJ$;$@2po!X*CN#&S zjZB5|6NNml>hbqj^&*rJci7aop!9Ku4^A1)83*M$hm$(S^vN37WU`;^hnJ2dw{+9X z_zwH2XqG&1;?8=enxk+m{1^O{F2TkZ$tjwYFp-rxpCkRkts~z;!m(SoNuu~{<+OO(3dssr73?eXyCTL9M`tU z78W!6(-tk*nts%+Z}d780_K>4>2iQ{tCGRRx*Wt!oQDa+e{VO;BOe6-m0`(XKe=&i zc_bIf*HS1z9=;{@<4=!l>_!hBdO~HI{Zk#j6xC`KLbj^FwkM2?o0kHhu@RH*82z5k zjgS0=J$fGeESbSgi1WnwJ_YKjPy~Xvr+lRy`#e|O!Sr~Qv7E7 zGR4PMCf&craGlE#ncadJ>eFhLD?rxU?2Ld&>)k7l#A2j)Ps~K zEmRZFGC!OU=^+PMTH~hwt#f$hE@}sCD}SGo2XBhzZu*VXdYfon%B{(TA1z?)fG1cakZ)JN$r`Jio7;6Q1TM0 zvwGpR{P)|9cn(wuyYDSQ75L%o1o+}+jcm|14g05Jr|OqDg5%O7%lkcp`^48hzh4&m z76xO7X+bz_zw;~@W-RWi@@Zw}99k9O2dqLSmqAh*DfFcxQ=->o9l0MeQtFltE z{eGLszEz*1tnU{_(~NidOI-vd^&9xMCGUvnKCFV_u6kCV1Fsc~zxnPWEk^JS3er9^ zYrX2MH`WZcUUwC^6wQETsXeNfqS+RLlI%hMn?4w656uHX_+pYHS2$yV{EJFW6<~Tn3rbk6)_%I`BMF#aA&h zEd}}nSy(sq|Bg971XjW+-u2AfXK%B|fHrc!|?=ym!KuuB;22GoaJ0+W%j|MAL&f`M2 z+-yPj=UDfwebQ*6ezQu_K++=itB+e#8 z^5A{yf|ae5RHvjI#|~%^WluNHTy2Qpxc(ED%d%aZIX&udxVz|Z z*cPiZK5tI8GW2}h*=qSmZ~~`|vsTR{xly}Je*E+nnJ4Cx>%a_T?d$IUa>DIB^VUOC z3a-ZT9S&VKeRA?IhMSwrn-6ePYME51j)$^&z^fGe(ksh> z)&tMa2AjNRRuw>58-R6>?>LA`gu$Vv*+y#LO(%z4DPYpqto42gvBN;3G)^SBwS=o~ zMnXS>_Cvzt&jGt!KcHBZ?rPS}ZDThP!o5y*qhIeshd~6Qr!gro7vUShC4s3lHR$_= z>@gwRX3Z)@c9s

VCm97v9gpw?G-nP?_%r>rp%wizU9A6KfrIzi@>k*gbc1lMII_p zjWV9@7sgk5VclnWw@tY%u^F0ROV?0_mHT=nFgtuGV8rK=J?ZTHS~)=MI+gkgm_=fXagCwQ8bO zGWPQF$D+%L%);3yzDj#%>A=H`$H&}q@8VVpIwzd_D&P#!%zqAgzHxo_zI{f;*}d5v_%zYU z*L;zAeyfGt{)>fgTj!wy>b*(GWM62OrwEUBzvf(k4m|Fy#7V}1+~(zWRd{j#H-9$q zgh&3EGOV&L_qWqD>!E&HWXii>iKsNg(pQ_Cd#2jCjG`D~ZBkRT)OwzsSuMfQxss&2 z?86TcqA?TR2nGs&;a=isnYRsJWR=V=Mw^FT_!)C|(e$}2qNTi0C)g$-NmWCZP>`*@G= z#{gDCq?Bzf8!}7de6*N{?K^Rs9Qv#p7g<$90~-q}WUY#fqs^Csyis4%yes~FqCCMH zn)`QCi{h-1y>Co5;6q-k9(d+h={H)1Gl zQ+Jjz*R=F^?Ve^`%I46Y4SR$y>ni5#f{M?d64u0DpTsa<=asSge+)>xl-o3cyR`BT zrS82y+93D;Ui542UgTi}XXZthrnm z6ol=UZm(p-)_6~*dKi44Vz~z%8eJzGbptB*8{O`V)y_edo)sX&qQQ6K$_qm!w6p6qtj+mhO3v@X2Wxe>{|P!m1=B6qXN zQ}Jotn@1YAI&trb+@H2@?rCn`?WYpZvlSdgN+PiYu`cET{p38elf8ni$5MM-estGG z88p|Px|b<4|7*Oq3U7Ywn4$T(Rhe}{CJo?4m+?U-3)x^6x% z<==FZ3l6@g;dsTL!YJ3PaOu}#n772Tr0gH86^`h^+E}pvcJ-qgejuu(@wC+Wkg^0~ z9q-ql6kY%0zQKpi!WHWtBeE5hO6PIPYzcf@<3Vk-$!{4Hm}#ER?bBNDz1B5ZHC`@;FwH5}t^6i1m&a+2dge1g-+59)5N??~{m!IX7!a zoS7TP`-Mdklt9D}qs~M?Oa>RCQGPvJHiO&IA7vsaf0g#Ux$|`VOoTTh&QwgdEcBboZo_{satD5+0wd)&HLOw2)ikHj)1g@*%+Q<$GO@~sCrSIbT zn!Q_jx9TyyTU7dJOdV7G))K~9h0vSaW~vGe3znX?tnmz=+4 zQ~n>?%F1Z9-ed-yxD+BF_D#-6a#=mcbys$&?3@J}`a{-rGQV9%z45Xr(MqgI#*&i9 zvRXHKiD(Z};KSx;@$}}NH0Y+`xpA`N2{yGbzPReN4bW`nVA`4pPf8ijun9QAi7aQ*PfhPrC3tbD0sRG*MxmFB&~{M zOMQ)olJaFgF|@2cpH`jEDE>K?$+FlT3lcZq>R}899ms)b%t-ixOTV2}pRlLI9M!P`FXw@tL3O ztv{Js#Wk|aVJ~(3>T6KbZIc#+70XQf(@bqY;k8fc1e>rh(mbzOEj4h9IMi&6Ro0rQ zaU_;pJ&!ouD7&Ys-*Tb9v0cl9*}9Bu1zygWVDMzhfUlED$9+1>;$Mx=?8I6AQ@F(l zut7wCq%A#;@*v7w&TV<`CMzto{ z;q1Ll`;rm$jm^%Ht|U$BO~x-63-%jMMWG4T(RuV zi&7>YEDrt%^sN>YMd(PH9rx-vTm4Ldi7h=u#N?yyF7i>|NIXqs{ctZ+E}Ms2=a8F! zD4CmG*roQ(@4bk08&>|&YKrSmbP*{c-j0`j0oZT_ezPZr``EdU;Y^WzG=9C#W#lGG z^@iRE?44uhj zof^65HSPyWW{jKg`ySL$`5uIU;@0ib;T}6v{(CcI3w~YUz6*Q9%(usa?zdU?@i^Z% z6lHl!!E<0%(-TLb>76oHeN(Q`2UX)MFOp!rzQe*g(CuJKno*WrwidRbRoZ2mAx?^$ zSbfXfS?0>T&zz@jwqeTN#ond@ zgF7TPSNB!#uD1KWcP+`68W`Vv`>J%^Wji5WVr5PL32J5UBt{`?y{QR02U_jD=^D#F z*{>k=Iehw%e4Yvx7+${N;&0vPybxY3(hxED2Bvqq7S|p_?e)9!e>?Z#zTLv_PkB=MO1Etxc7_X=3wRutZB)}YD=`CIp zZ!s8<@FTIQWNGZpvWqA4wB7Kgo4D>PlEwgc1d328HL59%!A!w|=36 zg(}jy@q=k+{b-%(&(8veZx5TR)S9Pg*|FiZtr(XMihW+IO$^^*1badZ=+h`X1@ygwb9Fw z#U|#p;qackf#Ig=uh2OQ{+YFKQTt%7hyU_zD}xT)P)Xi0Pqz8Chh4NKe6cJRPtmx+ zdlOD?JCtGP)8>>&^?HDzti$kY3OU!HGR3h!Vg=;8f%}{DI{xG}eZTPoKTwcO7T4;JtTj?@IW?cWw-+)flp|7}X->Eq?hL z%uvRFcnkDqXcf4$B)`52G4~yyayj<(81EV%lJ4izeat z85*7-nE&cQZEC-d{)gV4y$17*sNGtjJKl5Km<9)s=@!T8T9(wS6Kt#!&#z#A*j>)DT>At8qj`jGv016u4B$7m4)Gszre(wE@_1_=!Xr*W6LiEgB2135AS*T$G zk6)DD=|q!AwGO2is)w$W{(iObTKA<%T?gUPr0gce`(IXP^DN;epS`_uo#*Wd*CxTP z&7P#|z%;E=b;}o-b{6GpjoMl*@35FCF{^J;~JHHAJMIT^F@kD?cAcN zqXE=>jl{lX#p1xf1D^y>wYO7r7v^C(MmQ*PCCZc9IsuQ2Fu*W;5aH{+cDLk*D@Ag3 zfzS-y4U=*W++kbJ=#JfCEclh+`RF2j=ey%TZk;cYvw?^bdbR6PRdL0rsmoUSI81lz zh2ATAdcfJ4FzU2kb3AGx>GRR$q)a7>`6;AqN8_e#_5e<3h+1dt%s)Ovk%LYK<4yGXw zIlD2O?%00a88v*v+d(F-RWlZWV*@^C8Ic-G^u!zvd}59Fi-OIE4VOb=Z4H(%WU%lM z{|ov}q1s1>EQ+9G#f%t4#r){Ez4@!kE9Yfd`0?TTH@<92@q>>Djv9T8aZ9r36?DyD z>js@}b=w3<#Z-Xw$=M&*D1l6Yd=}pH##m$lXEap92PaXOr(C&=w;|pQXrE2aXiJB_ zhY?*VGDsCVrf@lLuNikxNzQKJYJb}$(FoBmNRNsA{M5uVXV~U~>BD53LwUh(DQQ}Q zi~lmOj|ReVZ8qTb@jW)~Mcd5A!)H#>JipXf@m6k)aFy@}?(;Mb5c3|QOP^}ARbHf< zsLqgZveHCSy4~U1(O=SXQ~58qN4GXCn%dDxd^5^@?2lJ5YqYN^6JCIX=+Xv2+We&q<-avn3D9Kt3=tp<2gei@^Lq&Rf&j0&2m?Rq{Ns-k^}FGa)KeHjEoN%~r04Jra1x-|BVro-$5;498^~>2`YQ}a=}OKWIVQ&V( z13ik6z1!z^VjL!3=G^62%?e$jzx9{SSI2um{eT^0H^;+{oLjti+_-|vVnhDZ2w|(w z;(S5(t`-8idxMN{zmt=cLQs%m*4y(1gz&?As2Sp~J3XY@<#r7pnq2n82R2n#xaS|@ zCIo}h^M=-s2nFzUO3%ZXp1F2e8mz)Z`&)m#cuq^2L%!y5VsLsb&lj~LFG(tm@LGq9 z9Nm?%-KA&|NKXPo^Je7!khj&?y zTW{47zHpTLt5NLsn=5nv{tv5I0Z$Z907c0O?yYH)4DV~3pVE?KP}4*mGtP3xkP}%E zU$7U8frt6o0K@NO&+Ao51x8PX+=Qn5e5BSo!a@)6(00Vs1BYlrqaFezY8W;pW*@(w z!dA^seP9hf*02fsWD2yIFLo~zt-0${>k3{S=!zL^H+I=PWE)3oF>V)K0M|-XyB`!S zj(Q#pUY}{6XvhQ~Qy|4m?`wv~`)~hKkO?$>lN>Etqb$vSBfxoc`g01((h_jw5R;*7 z^QXW`lI=#|X8dTRYOCBrZ%+D2tMkT(5#gi9wL_l|QXpT0SFn{E#lWR@fubf24a2|? zMr2|snIIGwGWa;ssA-olg$vNi;376@h`_AJ~AdFx&S#4zdx7Bd;K zU{{%UsL#-D-YwoMtGX2mP);3lGyKdc=prcm@sClR+K?0@lJJmeTWNnW!#|j|D%gYC zV-^k}b0eg2Gk(xB$f2TjyAqBO<`!Jh{p1$hiAH`$aPZ9R8De~!YOdoio97?LD5%#4 z{2Jr9NBcLj+>Wh@AtVo_%nIGTQKGz=WbmshGpS?dWySb^oS!?BzhX=^L_o8;X6LGj z8&!~_aw9P*xa#dOvuWAvTH!SxLp}C+EmmBr@CPjXE>-pq?7KUWcx^taCh@%m-Sk9OM)RY|euz_l#tiNSD7wRAr?m>yYZ2vImsiI|bJH4+Lsd`^(4+S?p*^%Atz9a1}p59HrV z49VVCe^fWm%Gs4jX%oH>XPXs^Yn;iT9O<o;bg zfBH9Vzm7NUnt`leB8CsX?0hJ0_?b)k8!fC6W)*b%J{FbC1nnw?Oe#?G~nM`!siK{l81oV)0|8@p0G_}Dy#<&t!pIYNC%GlbRk^9hZLL%&`#Hd+fb-$P#7m+CQKph?ghb= zHP1(p8A|H)W9{*i;UA8_u8^5y3z{!cde;x$_XgC*yT%B)h zzkPSU&zdveoqy+$k(vNK;cR7leB35hxnQt#fr~<=S${Kb^4G{1%Ab*{{55#Yv7zZr zl(IVG%-`qD@Y;AGN%JwQ-7J*W`onafI@$*4!6&IERmZ)DTYKG7a+lBRT=&@xiCKsa zKr|bKNly6T$(vaDMBM?wn|GK}4uV%9M{h1rjerpHYxS=+k`c#UopUBwXspP8Ik}!W zT|omXVv>c%?j=p7b}B8Q!8R?S-yD~IEJjK|-PhP*3>D29NY$iy5lS#rV_(gBl5mXQ zW$cHoz9vXnP{U%r-ij1(pLN6fumLzjC-0owD(rpGE&XiAX~Df(6x!jH_<4_0S9&-> z;@U3Rdw=K|YyM3o6eU38Wiz(vo{o$0U~DaQh+M_FS&*ZMdFp^>%P#XB&fD=tW(~ z$H5pwPjJ7E5nt$d!^V-Mv0kleJcz}--87?3V7{flv=c*jH^M8fOO2tiG{DIrw0J)h z>F*I&a~k><{)_7uo~a^IF-_C%c%QiQ8JMSDHbb?%+xSCO*l4B5==U>j#MrtE(zP!E zl###ggS}|6SC-}l9%9EXw`}BKmZ6yXnqs~y4xv5`zIc?J@75O^*Vfr~Pt3RFN|#lD zpfssA=x*qSeQutKJIM}@-*JMi@oAi@U0#0A@?k9RurQ&aORs_;0xbQp&rYuzy(C&x ziak=Di=eI`mMAAK5iH$gC1;%%x*(qyvV1v_vIRG_LQ2TB;f4GiB@XuYO603va$h1c z>0Bl9_!HXDP^cba#k7Z*Fz2XKD)fPM@y9$k&vaV{CyLgBhveSz=&s0`yDMvbC3!a_ zm=?Pf48D?T^yuetmvdeCdH3SNIk~4udnLP=BTP{JNLfY;RNW&`wwPjbcpEx4P9AQ) z_?L;dKiO^tK)@E;vE@@}7^nuh(v2PUBN^Eyfv)AOq@{DY@2FjCC(Cz}O&2FW8~e<+ zFg~)w`p}#?_GE>IR;JF0R6Xb{dlyS>@~=V9X0vr_C%~X;+b~ zc=3;YPc$J<+ba$Y=YUrJ>8mT?9l#>1#>U-OF2ap8){wPESL9qauKXP}DI1pwH1l<2J>4<2nnKpoLN zC&iN4RDBt=&hus@ddV{10~=Jjh^q7ZFEqp)5f#vNobPEk_pmvfoVedx4RKiS8TpKn zTqi+muHv1^lzHd=@gPP+=rlKQ>r@d{^s}nN6G3BP@lJ9tf;i1?kNc>M!-$9=;?}$U6Z9)u)#B5u(ct1Y! z=6@}Kj#y19 zUt5%NtlzNTmp{x`oy3YrfZIKjkv`tS^E`EV_B28|1f}i=`o22>sYT&YCMchgo=i(i z?t<}lDZm@)(aP7Wv*%yrA!azT^}>( z)#x=R0?uZ}t-FKzaE?*|$irHHKEeA5jqbRDz|3G3fuKy>%W*vytJ(mHOc$BUOJd~+ zsPv^gMX7E5itT>(MUkzrr3U`0Cg$8}JNj7Qnan^CRXBlh_fb^t;ku*SV`TVsENc|? z6Le2tn80=K8Z+TabO>4w6ldF){<5{ji?lytrFZNblxY7=nBCxZQl_}@p)9Au*`Al` zZ%sqR6Nn^n=s!VDjF|Ors{PFE^kcBP<{kYFYc+ zHsFB3C#8KhGpD$=1IGf}o6D@S#+FS74A7LMuHhahUAQPGS{w7C$(bzu(FS5Y&AmJE znYI`>96oH&~;VnyK?+7m9 z`%BOT3%Y3*h!eTf>8m2`_~Q~IO^q3i@6>Wwc9zn?&P6F+)-Dm)K^B`j;4FKZfvI4j zQ;h@@h`&X-bb(dDT2oCskz%g&zzXid?qv>m-@)1AZs#@UsS)h--N{!tepPgm!-k8u z6jdI_h4NE-`j0GGT&E>}`W-R6Vb=sb*cAa37ocGhuzfole7Bn@!UO7GI;w4EhinxrUbJpQoHrB}5_ zwfzO3oR>c=FiF;TXc4k!OEKiAZ&^1-5&vGfM*n?5V^6uUxtTdPX<;ZX_Q+N&l_2zC zUWBbl&$vZfTO(-ZkxQ-)at0WyPiLsnb~-LdJEH)euMnC<5}0(j$sHjJI4Ms$UFq~$ zUve9XsBvHK z((^0c^{p$ra3~LD= z$G6KU!I6at7L&RX;kv6zm66YSm%Lh(Q|4HV7Yh-2fkdss)ilUY=wz+}a~daLM* zw{LE}KkAT)sp@fk#|05*VSVf^Q`{2S;6iVywTh2da^;&okAzXRlo3n&{vNhIy$ItT zJd5&VitoZ`r9WMBk#i^hm!9R7^F3GiL_$Kc9Wn&`c=k0(6C%_%+rrAl+5W3yEj>_J zXHj;tgr5zh$I;_YokL(0aB^1dNj#Eg(5$bLG22z;VZC7!{_H$zW8o;wLqBt9F++*p zqA5i^KXc$4&c*CsSH_t#i&4T^(qkfI_Msevu8LOy@}{8n>kS&B3cMg&1D?m*Yc2;D z+KfSi3Vr5{Mh*xKUrqBZ`zD;kcYv1Ug5B%q3at~yJN`;qfyc!vRVn$-c9s-e&^jdg zkH8G>!7AnK?hnn%j8Cw?`#a?Y%__?voswhY^4pg=k;a6_-=edp_H--Zl+=F-jG3Ipw#4%Rn$)}Waq|HOl-aM=5fNN z@}fr8lx_gRx3i)qrKfG9e2SfOU*B0cO|QQA z+rg7Rd@)Er*dVG~@^I+hMpY^W@=c-VW*!W!<2ak|TEEzO8$5aKsPhxfc0BlCy=imT zV^dqqWVYWqXw0n$@5n0zx0!p_-$q40wbU9s(z3J z5??OHhesK-C+s!j&|#dn{glsv`*eVXXt6o!V}klGTK?z`v-3vi%{b?#X14N4Erji1 zQ3J3b>P$3T*~>5{qReHfN4b_J&fWv(dl2!gi|=w>bAu?@$cQ!JH*Ec7 z7_wflvM|1QY>agzX?a)5M)hBu1^UW3Xe`{-%8YnHF-;eTNh|h(jKOp6!l*lT;)Z=` z=!Npxpu?rJ{zVUla;I9-9E~gZ=*T-fJbLnwAmw~QY7zfzf^b!)mNd?d2;ngI6K3uA zwH5H-oB`W*+8$dt>}a^(qFd?ypYVarAv*?gf(=G-=s49fJ4BDmXr(n^6NT^>E4o1$ z`Oga&m&Of>g+_79xi+Jov7HEfB(bBoQTvCJLweG9?sS=X#;y9tsHZRk#kwUxgw~pM zpz<%$Dlod8u5Atd%q{kMM5+#ojk}PRTc}Sn@Pl8MD%H*cKL#tF6Fp)VEGPor9z7_X zn@u#DdzaTz>*!M7U{&2!?ZtGGY0%s{s$+-SpXO9O+K3^jab*vdrQ0xqK9Hd;A&sfWv?(Cy-W(6^@lLLlGw6CRn& z=*2&uI0f)5E+)}axA5{E7AX^{({@n!vob$2<7pdspNddGaD&I++YfJ|C8uh8pC62{M@-_vY_Ohc2@yZ@z2-yqayd&IWvi<4D5?-D33ea4(2xbAJb4!j6b``>Iq(MzkDdyO1ysYuqt=$6}6+Czu& z?pV)%>+o*Fv08c|E+kx3w4uS{B}JJ7CMP+uwEc0Q(hd^lBU7+)`}ahiSKp9O+tJjL z$t&vd-Ax96XdY!}2Irxg;lSn&DC(YT$IvoTE|;~93*?~;&qO0=|U$0eR^LS>(-w`7RQZ~(`c3KE7^l85^PzRCL~}vhMG~7 zU#=NT?{{6ETz>gBEf(_Hg^?_#wyN`FaG5;wV=B!Rh|M!alsIHABN0irLezWp-)KRt zHC|4ITa{Zty9z@kJ_36-3uf{9sV1MzdS&=XH4;I_Y zo9AQ>WfOPLhXuJf<9+)_UDM^)WCwJYvgi5@LRE{2IDO1m1jJmD=`Kfuw@W?=Z=wdS zcxZ60a8BL8l`AaF3hPx0xqltLfAQYxss3GY93}ZdpnL%OAa>BUlc(&eN}sa5_`?3V zM}n7&Y`R@tYkUWRC`umwAdir_H{Cpx(UHFi@&DTKtFA+aQuw9f?tA^MXX!s1o|w%W zFkGcN1(znSeD{}ph>|Aiu9*j!z${C4rM-SM;?54bFf*n zoBiL#&y&_GAd^^#o~OPTgGdkYTJVJq!_Z+D43KvU=4>e9joS|0fjS8myz1XL-y?>H z+@B>9f!n5{oaSp!Mj%2TUDzDbje06ClEM-W+tdydF?*e-oQtejTmAaXWA5k2T3j$q zE=l*??#c%8hHc7GcF)jo@kI7AA$|Yh%O2-A0)z+5-4?Ikk*oI2eOy{&?&ta5BfW;Z zLoOOwv;pCVcs|h{2NC?e9W)Sb9}?xj+BuboYTtkoqIATx#v7_8gA&^2+xa3cl(%0$ z84~q@JbsZn6>_lgc*=Y7H*}*`)iCVQMT#y!BF$c$r zNeKik-MU}6XVyK6xR4)u3u5J9!3i+qort(I`r8D8Yp2N^vBXS?@joDpN)Q8b=a{r4 zjKM?605=lB&2CaPKYF8qli$dVEM(^~oOJupK#-^>bI#az8AiJ|*0Z-T2J!qD2UvJ; zWi$Eb-A6Zek6f*5jE|6t<;CaxOAlI#$n;WaC7Y-caQfo0)0t2qj7|=nL&Sw;Sc<@Z zx;s>cuSjOE2zkbbv%0UbgMvi+{r0b47>s4bo%@S~*qpj=#58n`Pz0!!<@MHZ zR3;caOX}x8n=xpueQS^YcdIv%jH=v11M#LCJk()`1=xQ%6S<=EiYH?k4FyhAs#KV{ zoP%n4%qPmnkuXB1KkHg7%S^@1aavKhPTtoQ zb7A$&q%ZF>erQT=d*6%D>n;39c<;iknCeHD@SgRLdJL+$ctdtCo!V%g(7CE$=6w8B zt6=?~4?zL7eV5iL)p)Z9pGny(aKZe(qA4Zct$1}+_8wR%17(fbFDS!Wrnmksf5kAI zeOz>Hi|0dIP-&iIpz=fmN@kkicF%+FrqufwM}Rs{6X_<;HmG3P1snb6@%fZKxi2B$ zdk$R1Z@XWBbx-KSR=NA`rVy!$A$p@Kk>>%!UD}uU{T}Bc6@4UvZz^0I%}pG!y^}?| zdPrzht$cFDrhq|+s2om&=$V}p_JD@)qMvTk_B}Ai&DBhyi2Ov3z^LBZKWYAa-STH0 zedtl={Sw)PD0H~CVa=GoON)b}uu(Ww5pY_YC zJWhe;`um+`!e1%F41f6s_^Wn;wbInl@{*2*2FTS?{d0ECYp^EMj8vY(2fth0>d(W&ETZ28RrC+q;YEJQbK4&blI7EPE2bqsM4mvMm(L0${>10gq z%=v5e4%LYb4%H7bD!jA?EsG~x_#s1)d-o7?&7nmWAO)A zr3`L-;l|9@&{vMlVbMI9=g^10CojE$eayzoD9_?4Dyn4XxFJGB21rROT- z;mwut*+q%xEtsb92qj3iSpDP9JK76el!*FI3jO(RcVGM@qDphmTg=LzbfbkwLF2!q z+>c!A#A-w-7I+r30=4ZU1=+!dYhS$09WEA4siT$*dKaZR^?a%&2inwqowW&X`wOhN zH<5dSGMNyO7-zeFjki@WO4$U!Kj^wpUjFA4@S1h}Hp~4it)0Y~mL>MrT4lGF!iT`j z<4BEPdB5i5x5cbTX^@$d)Xrl~f(5GRDt-8;s+Bn8hXCFKpsdF?mtauS)T>*20 z;nd%a@k1MN%Xkun zN3aU82N7Fn^iQrZnxkSGxrF|D5#I1^vhCZ@&oSOH3CTCWl z*pU=@zgjI{lxoj;{hx72V;6n4($1WNE5tV4Zd9RNKoh9rbuE!_taP4-OVjeR1<@Zxt}<$zJbJaX(#8R5nz$jW}l}0zgAYjKg0?|K9>k6T?Y~@K!1mf&b92ZokvE& z+YUdF!AO0fGC88B(Q02-3BDVMpdx@m2&x^pPbm+r6P-<&0QHHt_ypbM=TQ&El_9W( zOYyH!M*Fpj8SMHFrUsXd>yk)$f_xi&%S^Mm;lS{s5z{cd-`=uiNHBNDdVTe$KQaC& z0PiBR;H9Kpb7CFO1h#3biMCjJiEUyG`)jA%e_vrS)*gY8gFRKcjMpB1tMKHE`S0?%JQ#fLoDtSzV2qZIn+k-}%d2xvxLxV^ zz}i!6Pw*B5aauxs14DC%9wi8?$~l>K-NW$|O_xB4S3cODpKaz#pt{aT?1uWoRbXCt zf8YORU0CzWmW!eX-Iy0ZIV4<5Y7OLp`NxCpiKf1T?bwM*C%tPrUIU=u45zR*tocM# zEE>)o^dO1t$<{@}8D2exh=Im;pfv<6tCEn&HV)*USNFP;oIfl~XGY4g8==Udco`lH z!j<`dTe+-dquK_N43_ZQdjB%SywwLEEIVW z1UtFfGU@pI&v*w?Kx$F<7}8`6MZi+B!3Efj5${@q<1`@P0NKXuU3ghq0fu<4d8jM6 zs;~K=a=S7M>~fh1a?~5rS^P@gDzp~_8ze7C!5DshF-n*RNrig8KNAXr_7EcC$6dHP ze!{Fq_C*Fg#Esr@ZUfKh=|GtKN1vX{%LbRHE-aV(>?IE6q?9D;mlfke^*hRp2s#YA zH7Jt(Kl-~TJ-krs(S@8W?LPTjVhOZ`Q`Kl{%#qsjV&_m(f7+eKg?1Sz|7q9Rm=#5l zSN9Dtf`L^NYRmHvFco51{WtcFeMJ_N^trvcB=dvOLN98>>8J+jM!#lB^o$n4!QfCs z^{t#gA9seG5YKEo!};#xTl^O#TbEze)(rxliU_(moNaf+#iVa}|m?Q=Q~_8(o!?lNH-z?G5g^2ZzJ?bUPZW7`kI z8avdh5!jRVVojDT``mo7AWNa9SxMiM#cU-JNzv*OA-<3oF8DqGwVB-u{=z(;&Kb3h zKTG<9sH-;Fp!Y;}S67*a65z`gN&G>I3$2a!qhA=pK#eg- z;Aqt;B!SYEsb{bg@{Lm0v}2GE64Uuge=29ghk69uom=?ZR6ycAQ(Kg@pjqt)fYn{U zzL!j%CfxnMQRt3&BzRRihH`UNu!3l|_#oioL{?1`JB+H9QqJ}sKgMS)$s_upD>&037GCE=;m&EfAv&I9th8E*)MZP({JKWln=WGC; z2RVH#b8DINzmP?!soB#x#x?LX_%F~3y64Ll^yy?0UG;i~51Bbli3-R#=4LIL!k{#Q zlWM$04ib)Q2|TnJ!NfZFH^05^q#aEOr$x7Ws#6sB?ba;SmEY157)!)CimniVlC4m@$ih(2b`bhc7q9CNDSr9C3Av zO<9&jMDPm@{tkIv=i9vXm1R+SI?!RN?oc8*Pv=vWtOIC`!GhZ5B1tz4>#<^!b*08N z$>U4yAu8z3JG`Sm)|c+djrkKX)vXQqiF=f>qPz5NqT7aLN8A%@<+PP&lT{B5w#Z&q zJ8?MHYc7SAN-loPkYVAb{{)k)kEDDCw!$+sd9cRR=Kp>OD%|lqp*YD~Qkwjjhof3R zV&s*d`@Z=95Tcxu%tbnBLh^4+O*B1kY{yfo2J`GF#xS7uLpI;bi56&s%eQ+4G*ghe znYyJnjPJ$xEoH1`NcL!DnGl6*YdOvy28=A{)%1-4=URTzA0N~;hD5Cfj_{sb6EXa{ zcOv2BG7EuxB0qvZIW)3 zf;E-@9XR-Cb9>Re|shZ zPe06taxpw%aFX;Yez2#~3!Lv65qG!SRUlkB;l zJ)U>V-xs?ecpiP1BuRjpxjyBQD00Yg${{YeSKSvn$jwNf&6?GbK1(V17?@^Xk#SQV*A9?##Bst7(YF&b8V)_jbvK*yh_1m^(;@Po8rbe*DT5b z(wcP0GHuP>Us%bV&b5?ML_8HQ3qzbT%;Ar-mQd3kj08+4R>@_?1P3H_gIWFRcGt{z zJAU;9oVL9)$G;7DpguPu4z_R3-DDi;_?n6<+3)_qOxtx=uJiBhA=KFtH@M~y`ecP& z^(Z%T!;j;v$cXt?jmgA%Fu?dbYt@E#4y7Q?L2BaNtp18m;;i{iI-j5B4`PWw0FIhx zRBS6Bfo;34Gws}~%d**$-CW5N4Q~S=|fD#@hn&DiFE+sgT=d^gR?)) zIIbnS_rLS=l!6HA?X>qor6l%Z*43I@lxWYVn}VbZh4yI#UCLe)6c^QnlykFp&nE*R zfr;>)z~wLGqcqZzrE!0QdB9)Hy48n#AlgX=OtlAhMLvUZJ)V463Z4BITv}$7J9^Z% zlPz!4O4fdj+tGJ<4K2qDOiB-kH(4ip4Y3+hC$Di#wre=qf1&b812Nmx6h0_kl~rx| zsN^U(Fy#FtK`k`@4Oru)d}dB|FuiU{ZVfG{mYytti(8a5<1=LF@(D*)gjFQb^whLn2c{fI_&`pwT(KYciTqtK zT-B$I7Dv&Fgmh);KEd8&@DDXVMVvL3M2KGx<>IDf&bHaLP`>6Bjux}>(JR<(y2~k6 zzF79rHb*P?FVFUJC2J@{kl%>A&`Pn***lu_R7i@c=No$5H8-`o`R!t|92{m9lIHF@ z`o*V;II6lv_z$ z%htsb#?4TTzT!|3h>LGiwS7hA>eRE+#w-!T052LEjIPJycMddXN$>4c&Z6p3!Ew`X zi<*W{Acpi@BhdJw&rf)z+l+rh(GoRj#$QhwB0v=mGk-I1yE8x5+k%rX+V5=(?=4;FMv;L^eGs?|^!2k5 zqT84CAn$&OUW%E!1Xkh$RqFkEaGfYntd){o`mE$mYB6N$VAm>!?#}s4`)h|4OU)Kp zGc}hiBX6ghypoC-ZECWPLMLRs28!ZoXIgVW{Q3iZa%QONBB(*>|KH8HJve=qg6WB1 zfAjr0Olt&C+fgTU8a~exxAyN}&Ugq1rQkO=($1Xn_4Y`@L$5S#kP^7?r#n5f^+uZaZF)9&+Fa5^y9fVLM6N@ou2;Yil^8BC zU*ar(u*b@6V~cEC7*3Ym2JW=6?mI<~iLTddcqoQtM1So5&fNgpU86CJ+YoT=v0>L2 z^R{3(C`cd55YrL!cW&=m;9(*cF37m&Fc|m@nlHns>TwK^RAJV(UD&-I-f?w-?|5BA z!rUY`+V{}$it&7msv8-(r$^GmxJaVTeQ}CysT;0gLR?Q$o{~ynkUcrCrAExN5^! z$raDu&!ygc{@Qa(13coJ_!rsksx?!4xE3%B%~(RHe=&B#*B$g zIL@LbxnSn=|4PW)Ais|+8Nv~}detgC$~DRCIC9bm3wpUnR%2e?8AERi36wt_=I9Vj zSO^2wk;yQ4f59IqZ2Rcf^k>IoqkJTu*Eyy>K0cc13cbO16Wj8kqgo&8iruEuY>x@F z*mnDhKav}lpXO*(chodhfY<+hriVlJXz5kh4s^7wgXn*H*3f^8`frMhK1z=;lFwk7 zP%5QtFjmmLs7}gP$K{Nx+QZ!p zXS72_Qi9uP0HS+X#&2S)3mv0LGl>70NhESTduXmnTghG^Q(W-+2?FoY->4-O)Ayf< zjON&&N6{AfPX{1!Iv&eo%N30J|gjnCOlW+X%GQ~JAmDP12 zjk;Q@o#uz;*X+Sm$OG2bF+?C1hA&l_ZFMlOc;(QYYh%%!%0&vZ`bze7kZCQ>^E{biZl4p1^d zs1=##t1GNFG9{rLz&;>8RBwJs#v`D8x7R#^7G<=@k* zUGMFT$CQW+&e=~)>iXXa10xC|NtYIb#X_#OPwdRo4SDMx%Fw}Lp{-Rl|9jFpck3Nb znBrP%L04Th8Q>Lz3$qmj?lkxWa=rmx#vVDt9H2_ejut17FKB6jmBmX4tOL;C&56`U za@G=qnd^w8IS3XAbGm!`UANLRI9YSKIjI_cvdsRIYqry72>f|+VhB=C(Qsv7K3(}+ z?Iw8&h^c{U);fSWkM5!29U6|!WIj!2#utjK(;$!8IwPFzs7&~;M0MB}TlQJcSJQ^2 zE5mQ2D5Ziio3{zpc=qDfa~D_QhYwXKQ%25{l5?9Gih|06!0Hk{LphsiXs^Sr!{LOk zIbqHs9Wj?ZCz+x;@Usd1L?Ys!1B$(=?@UbUwk|j0_441HqG9WaC%D#}0J`5&CO9Ch zw)%#C?OS}Bsxq&--+UW16cnz}ayz07q;ZSw7Tepp>Q+Y{o%ea?O2SPYgu(wt%Ndhb zSaAEA^!nQdQwq=54P?=j-DOZxKJJk}bTuwlP>&zRid z-aybW+5YhI3OK*j@zNZkIXk(^{A&lv*l9knz71?_6a4s(yZ4;L;8^a1zi5_JeK;v;doTpFt9GA!s#=4Xjt#zQe56P8^LC zAZtH^HQQ@Rg7{iZM(K)o=0$dYD#{}t56{5q*N-~ltO7j_m^^QZvF(E>+B!=fq5j&r zZV-_mA?9Yuuqr1jOfR|Sx*;K6#(u@;uK5x#{y@^!J*Bzy^2zW?Plj!a$fq$K`8Dl} zurn5u`dbL4xBP+Emp$2ihL_#A3O#+VHuI zUbUb{oX>KVYCDe=*}4D0g&^zlk!NJ$R}kArN^kbz7x|vjXYlCx!NvKwD1uCBjXLNo zML~lDm;OJksoNTXn{UqrNIP1d#)_Zg$6h?YH6ff4kjqW{rb&%0m=roQpt{9Jfl!v} zV4q^Pwsk}3d8X3Ul~*arvc^F_D-G9LB1-MSBLwi#8T;^v`zZ$PGwVPG5kF^Uh4k6=kw@6XU}s8Zfn7E2u`C#YN)$iQpmIzPC7 z6qU?e|LB!G??fif(BzkB4$n0smd{ppxsM~oC8P3Q4>Fsxemn`pm`~Le0=@&? zqHODSZ>nlzfo{S_i=bx@E3Q*@#@rU5_sK+zS{9x-LD?(+1)-8t&}*Wx2~Z=p$<|-> z{ksl1LH4Fjxil$8ve2G?PT-_FQ5kCIk|4~Q=pZ7&2LtuF7o*52^D6i^i|qK9;{Acv zgBXo>&}%Q3zsLW2LSXXeom;=u6lspP5jt^JGFm^|XZxq8=0dlc4!Jx!+U;LC>DGeugtp}bEb3l8cY_H!LlanJP<5|MfBU2TX zH!ut%MN_h`$k)Xr_HuJwnRZEL;T;?YEN(x)sQ(oganXPqlip*|*81YH;k(V49r!_^G%^c1B(b6KgQYddFl`ds~@lqjn@uR};A? za-Eq@*)(V2TT+>)8IdFP>$#V$otgBQtPb z)Xf=>*~86>2|USo1w19uF$WLbsaVIG@ls}<4KnU@W}fi)@j45hF65^~)h4~5XQ64A zl=tQS;l7Y$~!54wOhBOwI=Pz7hM`i;v#H2;!3BWO{3)%5;*i4`FXO4t?B!hO>~9n zY}xBj>ALF~4b99UwXTgq=}$q~iMpe)6}7?1M16|xetO;ew)GPwflj1K-CSx)gFR-iJv~NPZnCDdeR`u3&E!>Y@jJ;_^Vhu_Ir+BfV#s@>vdz}$e_ei!<7;k;U=*D8x-*C%X zzmqmb0r&6VH{%B)p+$ps3rYWH6&Xx3n zBDeLF;RmsePY~8GYmqN8Z?^kdA8cLnkC?^2A;Yta|Hcik#c!<^UIlv^kv_f%0O*bG znS$=Q7cHbuYqk&ASG1IT#JjpPk_Y>Oo*>`dE%C7=j{N-Jme}4%C;zW8Wla>9BGgleC?S)7F`wk5pwCSR=cN}ng_60p>D&9Y>!TJ( zP(PdAT@asZRYomVewK+|tbAu)6%$zVAq&N<1F}6Py)?r=Q|yMt1(aOmhL0{Y6ST+U zs#AK&?r-f)#QI!|+Yfd0 zFQyZAaN{g}L|JcWAXr2!KrPvkL&_StWybccO2m_---g!9mkRDZZ&iD4;WG7$zz8Sw zT*bcW=~Qv5Wr_TiH`PU~S~n*Z;#d7W%~1DniJd9vr|&}pNtnb(&4IhKvAf9YYu;J& zrQa|a(txfNNS8GT)Dwe*S?ukgUlrm2(s1s-{iN>X)z^ffumS7si~E9kNZ@|vse5H* zastT9$b5Flu92;Y>))@}DYJ?%ed;~QZ}1PU(Iclzlf#n#R@=R@$a9!(a<7ePKA(G3 zRVEd7FQ_t4cGXD;hiYqZJNh0(epi4lHc@|9Fp-W<^2w(X>}($W_5b71pU_-D!BNS^&_@)1F`aof7OkH7FDT-3?uOAp-pHk>A67bHUrOy3u)^UgS@1 z1-rtl5ktCOg6}XAiH-rcS{xs@H)aLs8bi8SJkqft-ZvkHy$k(Pf$xryhvp*nLuwG> zM~w&hW9s6Yv|!-{4(ptf*NygTc&Gnqo1Zs&L?0Wx$iqJbd0j9BeK}O_u#lPPkkDvq z%vtPsE8(=r=W#jeG~OMuA8Jpoqnw|7CJ@aNFJW;WJ1QYHWu4tB3nz0$u{s0j$g z5qkGFeP($p3I10qFC z20BK+%34`<03`vP{wB#;9Ox$p*vn@XF9Qh@A!Af1!GhB+Z_-)+=`I|>$b{eXph){$ zJI95XKjF(eC-?#bliLV4!9~}7+BW;y1BKN>Mekv|%37Sc1efxS8WyG}s@|@($CY{9 z$1)pDk7%yK$1dyR0u;kZ0eGlJhGRF6>oCfZi!6ka|K(!jOF&seR07cui#Q`p-d^fa zV!l(N{K~H@gxr>QqGPZl1BW-v3FPh42>t|7NrfK$OIZJ&K!5(qclTn|%y)O<;2DFF zx55-zFckt6dwrWB?laNR!=^LNy&rhOsWuL$l1rdt$g-QP%cmNd*znA4=dRAeV@000CAfxp;3q3y&(UYdsR5aQI7}x&QdM- z*C>GT;|A)b9892FKx746I9Yqw0$7*_(@3o#@J6_=8Sid_Aomy2?wT+2n^e!E5!4~D z2%nN_W$5Yc<8_7sp|}js5+ytj2GaMNfGUEhu4kRs4rZI$v8F7i&x7+F;^CeWlpD3L z8N3jgZF8k5bEQjN=P3sJ@{3~!d0PKl%5Szb2&v_yI9mp4H%I0Ng%DDENu-_MR0*p< zKD9CO`HKCNA0}t}lb1|8Ut(1K{h<06p=W|8!&gQh?$N5!Op)rtqt^S54c|j%Uoet+rCeh=5 z=Gf=M4R+s)Cfe>Ni(ObzA>L8uXFNW~+pb~??dB|v!fMl86AMl9T4j5t(& z_C87awZ>nlA}v*-LNXQ1DrOWEwXn$R=q9D)a6>L$MNOd&`ev(*S zKkboG`$tG&ajKFG-l}#;OOBMlYaku~sHBt~h~hMT-Av2BkRLt)tPGD;+H&VroQdcK zZ%f;39Ckgkd6D?V-b%Vx#s_V0BMDfXH8kh_m;;v7<}OHb-d!LQ@*Yd2y}!w&rG?Xq zbvGzH;@#fL9-oj8AdA4#pB~BtlsJkX3+pa8df_}a7FWpEGWUi9!*9gTN`OahNv2?p zSTO%Wh3sMs_{g}dL{s^pL4zS;{fX4IpYb)USwq6-PZa?iDK`HXvOdjo+eXB-XvV_q z=JcQ|?%yw|NmFR-`YN;m+$2D~*AMw8c9!vZV@TX|f+}GrIKrb)06{>$zcMg0kntZC zjtpmL&Mwhv);jr355jvbL)hz}jPY0QVoydL>G^nkx?hIY!jC#A?@5`0(H}GNo3ZZd zODvh4Z0$YQY7zYC-#TuPJ%;Bw9~g;^d#roa_>{M+{AWfFd1K#p=1p^^uN;=(f$OGz zs^_yN(K?rJ<5d4=b|SM=?33X=?XmipxOH+EVoU-FCMakW<7R* ze!Z?z>%Ey%x<3auvp>h*0;9$^)M$GVRV$A2<|%QHymuW#cK9{8j=W*^Z%A5$BA=Ow zE}SBPO-4T5_S{yd{D=SgMT}pe5=Kcrlqu?RaEGUJ2rr4rwMmy5Ix%S#H>-}NCXii> zeOwqr2C(vogxZa{h@578tAN@#bti4!`x`~A`n-{f9bPo#ekpXr8=gtUGLu zM98$HjSVK{i5z%gMt=9Y6bhApl1_L5VI>vTlZ4+y@3RL~2vj29L*9KZca z0(tG6cXG|9biA{F0w|F-m@l`3Sln)qoI@PSg;JPehi*eDcWf%FceO)?Yenp;wY%};#`S?s4x)xOzG3ESf#2+BRD5qENXMXL zhA1-wXhZ3l8iO=aa@Riltf+((Qc1S#A@nyFtB+-JSb;_ytjn83)Y|V8y(5NP=;FiI zYm}>`GpI^uX%SLO?{PxFef$YHA^!!?wL@QC4RTBmnRtwbO!kIYOefB??2r%9-3cd+ zGwo8AI`h|4&?<82AOnmI31?};q}h_igh(CaBky_Gxh`+2-mfcP%Q-yp^s7HV1SOSS z5+#*^3>ZOb`J2|!Fe3S(jZ|t$_KBSx37fKBk1n?4RT+H+I?(5vt>u&J-U1Yxk;7d; zjE{WWwbv!^=(gFM<#yn=9lvWzLFV|rP@*9l#$Ty64C;-SH?~J=thY2K@3i;`EeV8syd1klp zkG@f$xN*YSP?+qk-VYL$+q^_KM0&ba%R zC;N%1`I4D$g-M2KCts_Ch?YOw*5eGNv4j!Ob!w{w+!TSaB4gh*M(235fTX6pjK~6M z0Arz31XOMg`}t@c`}77YdWs`VUSNig&OlE#fue7j_->=2&k9l(|0W1(3_PW=JH|0F z@LXG|D6J96`*PYuc|L?YUNz6pd)l6Z4WM;F&k7DbEb?aczgIt8(Z}_Px6S2Rk!WlB z-pgJ6k*rnEqv87iy}I!qZu%_D<{H30xZBy>D?AE=(^$Bmac+cb^kk>|!?bGw=8 zj%_8EW| z`U~UO95K%yF8_4NCqPrTrMX>dU~e*SPy#L&OD@vqKN{iB8_@7PmA% z1DP}`J>L|r}oRYgGz3j6ACCs>P(zN9`x7X7Mf6Cv#A>~E*z$xW)0SctfLSnfwYz1YfEJdf%M+HM`%f%bwz2&pLIDxe9*NK zcNk;`vHS@!BvU1LV{U4Xy{SeD2CSFIkMB1lL8OTpzr)z#lluPjD1vbwA`~xjIFbM~ zvI#}ct3?mH`)u9=f_hF(yj}-x=x?emRTZT6^DsZum9-bdONG>PhB80c&%jB8+m5y$ zH0>&n9BLB}e`4hTd00W-rVg9~&u>{(dq`olzS8 z#esFU_T@DQ^ADKHo#XOk$7@{tW0^=u&}nR5gt}feuO(W@;ky6fbA7+wUjj0adkgL= zHo3C4`5m*{Cm}@Brxj5-;O0@dbKz067vE9F*|AESUrC!8I7i6bzF4AjCS+Ac>h?av z6%qIYa=Y$65Cji$cpVZTnKp))=<^qR+1W)0h+Zb}8j|(|2h7OrOu$=J#W_oAuA?C; z(=3ObPg9KE76>RBj^ZoK0{aX2{91PBuC69phX>ajL`9gkI^_rc+m*zeGLu{5c>}gJ z8Z_`AC}xoYi!mB-omW9b&@e^;fzXRSH$VBBxO=AnLsRw|gawYxxcH2>EM;Ib3cwto zfxaE~+c7ejEYtYfV$5qI)yy^v&Jt3J2G8Y*#m;Ezixr>2tQav3`ihY~6T^k2q>`&> z8H=H8Lc_n$FZ>%|@tx+W8Kd1tny{lQ4*18VLZ6&{NLxsRD1L)b0WtVDoOFYjZ*msA zQP`Y8X)Mv3FywPJ#x|G4*RK~O$ zB5&_i^fPgc3QO2KItWa_3pROme1}swgYb^ZvE3_BP9q zL!3J;(cWm{h8RkL`b7Kb=+=pV@xb8BN_GRe%3*|qt`=k z15Le01+w8g;qMZ~8&-pdSAL#-7OT0hNv9Q4lEgo)eyD=`;<)@+&1LOla*X;Ni}n~f zIz!h)R&{|(F85(tS-@?NajX{OAv@{Wt&m_CuNjOxI_F;n04kdQNoGpLlq4 z2)yjN6#1ELSSm#nODD##*^X2kzn1wM5C2wX2j60k_W$ybb+~qAH}}sDJ0mb5P~{3i zT42??B3Jv)j}kzH7WNb=ivv3VO4JW^CRM|bDGtlJK7BGT)`?7FQ+MEAA9(1bn>ac8 zrzrFyWM6Wnq$XF>F5zU&j`w7FjWJnCH8$kRbx%#`?_&<*H5==QDxPJ z(EQuXe6dtpIeQ1O6u&|bn=D#I=y1)$bs(5mT&jJxg+iTULppOT-D~!7#0!yo0y>U9 zgB(HKQ0_%oi3+S69qiyCvi2!@oF4avDKl-lo$`c75X9Q5%as z*|HA#BOc#s>ASXk8GTV!g>;hOb;o|-;nP+dLyLL?M9I7-ZB313Wwg3jXhD8_WA@RD zy=G^6ok()hN8_K;;ZVN?rGUUm*^azP;RJ5GO|L$7qR#tXLV$um4`~iO>jHO*X~w6> z-}9s(Rbh+Xy(T5MRpR>A^*A6hV^;PsOy`rP0Pkl_FNJfM8EkT^%**)Z~kGDSh9@$~(DZ?cj6 zEnHU9^A}7UTfrncK#x-2{5!fL3(bBY-@CWzb9Bwp83}9bgF{*TJ5KK==WwHjnNzA6 zLdgShMqQ4^Z|y($^qf!a_Cl7%g(B2$D;s#*>VM5W=6tlU_^mvp{yWbtoM{ZV#|UB2 z`Vo-R3&?ff{G>rZQe3S(YtWGOuL+1}62*r}Uy1iVy#fgY?{_=Q(yuJa_1#;EyO1j@ z3^PbQ)cJnJo-W4?n-W?Ge{F!t?|80Se!+ST*vw>op2{NNrLUW7rarj)OdQN}M~j;G zzkmz?B`Tm%ZYC%_sg>3nq7C7Jr@cL4*ISaBy1#QhHaY z+IV~?m+D`ObDL{R5&gCTO5|ry!-Dy+JyjXwt}yg<0rs zyL7~Hn3MxvOV{@mvrB=sTPF?k{a-z&ymO=r4FeNS+p6*gQIB&g+<5+l3@z@)Wj=Jf zVIKM_JJm)DdRQhUMoeb)U|6 z=EoUQ;ix81HuQQTfVZVw=}IBL^N|EdUTtZ+-f42yhnRJ>kf}m%vxC3Mj#+C==4RUq zSc;L;XuAGk3493!h{^!X94y*a6YTe)s|B?UtIw_w>&7}%B#!C1C}Zv)n2>%YKalTt zs%Z`&%(Op5Id-abCP4_A9@YM?>O+Y&hD^ALIA={SH}~6(fLx)nRRrl*>D`Jl$##j? z4!1FviZ2Ejcj|Z(cfDaadyxCU1feslqX6~p4}7hebrlYgFaYQGvzYEibvT*>Th)H)Qn1rry~^lPF6H+M2(do@E?u8e zv?f^^JhgqBw5ChXWIcHILO)yny4Yy}758_XiGJMKk>35Of(va4^-Sja=Od4pn=xet zj*&MV_E!8Ea+o?2`y8hik;$Rk>_KI==KLA57~WV+|CAdn{|(PTXf(|@{5OAW@W6z!UQO?@MR2$hXReY{r88h3Z0nzxv|ogM z$aXdpk;zgQo|)mW@EUbbS3=9Xyvy2lSAXtf`Ysz*_r=6;LTNhTcKoEw|Jn8ziPo9d zvLvx-J+)z6iZ;#1>AUXyG`sC?f(nL_uO(n6pBcknwAGY{h@<-VL}-~)eS&|m;UeZW z&xqgL!AOiXc}cfl8%*d3o~s7E<@%CfT-GOFzZho%Vn?TO*-V7YjudZJKb1YHjJ zmnHjuA+k#^`!<3&@-CyOqy6wD_}su>xSd{!6XhOpfI%vLzfT4V!VVVLObRhHU11ek z5YDv#wfY<9o$ge><I|-R<(N5N^>_J4zQC{q2gz zX8H7=cYXV#xi;od2d8s~KM2Pe>dcd0WsAifJ9j5Uo(_U_xsIDl_E5~;4TRd?dm=yN zC;-^eZm{J5Iamy0gW0WA)z7?jPiEzJ$cy#N`ZuJ)I&1#pM0M%C$j9DgqNfl_#FJda z3iXKJWLN)e2DVo_ye>3-*LT80>%pmO?~0OYUL>Tg`eAY=esQ;R;V097W;%qBE{+R; z4hQRsn1bup-d~kyVm70C+B>m=zy5K<=Kh@spB@{1-qweP1KZF)uj^E|-LHH1tE=&m z#+@eVVFh7!0EU#+a7Q-%}&V30AP^ThwcKnQJDxz zAe`?^hvG<$>Z}Xq%7hryT*}Rh1P+dpcf&+r`_rU^!9cM~`Lq_YB1|I7WyN66V_iyhQud{vYUCfzk4lcWzcwUB26w_U* z#&x7M4Xoi~6Mecagr(a!)yzOch+NoeblU(%1Btl5MlTs90`v@3qs~RA;JJ%#b;Wd7 zru&um&SQCZ=;6~lH3LF25x={1Rs%5c<&H3^HubfN0ASQRWeZY2*_g(N!gS?F8Sjuo?;L1d* z@LI3jA8G$0gE>--x>DMkrq+JwKRS|W8S@wVoH3+LXf!&uR*9RkUG_}U< zO@-zMY7DjS4QAsXl(1{vg&c5j^L2c5(@?gjX^PoMqo znvoRu))Q_i3YVSZ%oeRX11X9F;X`U&-*jQ=J ziJK#B`?n1i^&`sY`P8<|v0LG#qCfQizNKq(o`15Q)k;{`cE{V#&r0atBywZf zDN=uEQQ=&i{w(c9>gU3l)n-BmbGB;btcd@kujQde7v^Nj_a}Xsoh5*iX(=$u>etoH zrlS=5(#`@fyPVzb-R|J4w!Dq9uhKH{O&+cFbpj0!sJ;xo9p@#reCo4S(us~=;5p4J zyteR1%A66%A8d!D*Sg)dG<2-{Ap&P{_7`=e+5Unn6>r;L%e0y6s2yu;SqsuGIl~d! z@~}LDk>kc2IGNmO7@1Y6ete$(bg5F`wz{nkLXc_wNT~lL=bmVt;9V=}A?0MrwsJP* z6<`(goZcVH16YW*i_KcL-)OyhHNF2$I)H10WPQcVwVQMPAbSV#--$RhgihkTO<#f~ zvLJTjor~AkrtI5(rZa0q(x8Zoettm2Qr+OrQAmYSvE50>c6W)l;$Uh>d=mJ_jEnV5 zv`0F}y1kLp8IuI$NX|PrF>!ClZ3mnUVl{S}DW|Od9h>MN&|yxG!c?g3g{)r`Sucup zNS-&5)%fwlokj_0+HKb!;vNlxhmN4g+N11~x) z|2d4o9cz1cq_?wri!#NQ_f&gV=FIfQGk4Vz&?Ka zcc0jQhv((%IK$X50YUKUm(#Z}qUzt73oaw4?_89>QKm{NL5P&yao3GL3o>8^!^jf` ziSv4-B6v9yj$|;u&Z3@oTNL0uSe%MT+CQg|G&&XeP0=f*Xl@y9mAL8tgirDh=-?>L z>@FD-lyj+uj*_7}kR5p>U%u(7RexnzSDN=lW|d!Bqyh78jAj=6Zt1D9I8W@D%9;f{rmVGRa4=dB(Y$Zsm41x~ zz-Tx$*8e>oB9fUt$6@0J$Fhslj+x}3wXnylYw%GEv<{u^DaVo)u1<75_mn&`ouMD zXY8h8x2w-onl1%V`W&TzKa@8KoE%ri0|;IFJrXICxmk|mKm1)YD}mWY_RIcKO%}mw zIkOcLdnnVx9~wG2EnldLxVu zZNoE)RSCU*HW70WR+C1aNSgot=AfaoZd>^llf!Sp(o`T}ALoj@zEYIb@hG~vGuyr4 zFqsh!m2HSG0h?jNlE3O;5=&J7rEVMk%msdxl; z=;J5cf$Kkqp~n`!`RoPRC(U#WnZms_Qm&WpB7(1n@M~wk*KoW3<#VrBysKg4+RkNm zzZ=3Yf!(}b&x;2a*k0zBdIY_AlU)!II6=ttR3JiZe;@%(Fs}H0Xzb_tORu)}1mQTZ zg1$3`M`Q!VZdQ^(;`}0*H6B_;=9r>sDDG^ueH9P4c{s}zcy9# zE2Oui&uaAxJWm_i2D98~x)^$FwpYi`B`7!(OvKLQfI=8B{N)y*lN_YygVu{U$W-?e zTX)!Hqu6@2D+OYEF{zt0D<7t=c9+;FwmFcND`GtU;SV1!#)3Cho_qM6RGBWXtQWY0pKhDVmq($VUj5Kpx7h~ z!g=41ikpD*^CGqL{p}&USfv6SaH@<<;HN7{4K&I}^vkjXZSh5hYbJdC&U}o-6V?t1 zXtDbo{{CS7Vf`xSj%iKCvwx>hCX%iki;DAlO)*B2)EYihdL$6~x~F5DK zcq`Wm2l+lqSD0U|-q5hs@f=sAU@R2vUrA_09W48i^EQ>Yh8PhrcVGYtdCyjTfdxbl z|F%9<++3J*cP#kY!1Nkh0}YPZ zuv50qoyDrT6~hZUdpL=q0T!#bt}}|&q?0lMkMo_|4z7PRf2#LuI7!?NUKUOs!H?(g zIlSb*76!!Z{4;lYiB!GGSotb@#vuzSO|T)JD?8#Xt-nYZJB%azuo}%y^cC`y=?Eck zKzyFxx-GR6@EsELy4Bc1&kM$jE=RvE@uCl!L|~FCfZO-I1=jHIZNuyTwZSuI-!QB$ zy=gJKZtDKLVgQ~Fv4W=DzPsHyFB31$#rzhWG8$-DNp>&2_iW5X1*!*&gj2pq%^c(V zZZr41VD|Y=JG>sA{%1|(_oeaK>m|RP z{8E@-_6_#~=`!yfN!|{ zc=+sNXXGl*d34n47sC4tLgaTkfD^6p*R&}4b=)3?tDzyA!;`N3$3#S_|KK1;#%| zW1>5oFQDGRqtQ{d+CUz&+oetbu5^IAz_t2#d8`*=DupSG)ZjEQGi1-kYPC4jWx>Zq zO{%|h5qG8Ep4M-0D%%mj2Y8zA>2bToBi=g6$)(T}BHneZer68;+;o0*ePTX}Du;kr zM2;7mb&*21#mty)UX=Dz_;AC9`0HUbBGDRekYOGld+}2j!Fu5g%LpCdbTwbkBRFn- zjK5AS2x8X!Px61Vm{-+Mnl=9GaiC~!>HO6Z}0Kvlx+YkQ;O$nqr@`Wfgnb?5Y zCw&R2p1I}@I-L$r^7?L9joxm9cFcVisrI?w(mpdY{Fqg7+Y~VJSAKxSX#9Kn^+Q8z zEqJy?K;AdU5yXHjfBv04lGqZ86axS0Yb9w7Gld?FPx4)#{<#WUt?>{agL6;D0t7~; z;)OTTadXCbBq8Sq(aJUlI;-bjLcgAF9n}RMf{HHz)ueM$>yrsbtCJGwajD5+c6tHn z$gDPp@t3C|KI1DN-3L?`sHfZG&)u660SR7$4Xa`@Dm#b|@i3Qtr209nj6kiHX3u5N z4)V}V>@{SXer)-7m%xhT`u4jpxF>8M{0qteNeudY=1bXcgsY)E5V*=r&H%gs-HBjG|21!vunuKzj*_BOWQ@(oSv8# zz?;}pK`D@CqpJlw_j@8keD{P&`C$~axj@Aa4<}LI7tFM6=T#I`s=8k4yLk0>IPG&n z$g$fW#hjVnpAzWQ_C6(?utC;&cH8>QciV0>Z_q_cay>7L@l!NGe6<)o)CbrxwH zggnrXhS&aq$wx_XIM5~lgJEvyHzwkhg%aSt5EwY~7k?0Yf z|FDbZSH&@sn*=*$TKRVC*P9H`MP&ZK7|oZU;zCEp(18Ab+9h?FdJP8>1u*rH!UHs| zILs>NrvT&5cXWtO!XWUk5v+A{Qc~u;L*z&CS>5Sg=Z~##n(Ml2k5!l>-9&A@!Oj&RCW5vaDzYuea<5!0vNSGyr71&Kr<@X#TAkg0*+ABsBBh<^Qe+ayY=RYS(b z^3bnsnX3CC@f$8u8_~$GA%o~moRR}GkjLfg5NSn5mE(O2>a5j=jxwe@=Aj5>zV=-3exUD&M5|?bWvZJPEM;tW-6RopNPk1S zNff|!>=UHAMuiWTIU<;zdxE>}$7oI{T*z)E`Ef*9;7ZqrZSA4FZTCaLaV>A3`FCD# zeLKL38gBKM_- z0BXoIfx|NCc0rT5bSipJ2?lr_L7Qyd|@fD%#z-;@Gg*=k@@jYaj3MtMl~Jns(@hY zgkWpHf7t7{sUC;2fQ2+(gBUTcn&jNA30M{H1*yDiaagq>ZGEF5VKE-1%-IRm^T24? zFPm8I@yIip#jZ~ocnnWmGi%n*rcu+uQDrhnuFd)jEU!{t4F>p z5PR1a`$z^`ehlTkpC@rroD6a8LIYZBHgQ}1_9LtN&}2m8=*+u7p~Wv4Av=)}t0l&} z(BsupvKHfeRYj_UFs5R^`Q6~ivnZV!dQjTJ=3V>CRr@My(y3rv{{{UJp(@Y0UyiSJ zpH7;&j+OVEo>US}B3EFOO+NM#z=a9PcdX3?D(osiNkZ4Z6e3$sj{;kT2K0IYVo zY6Ycfm+Ns%$cXp$1u)tof~rz~I;Szo)`H!*L}&-lrvmj1GF6 zy#{p6wb_nlLerhjg-B8^z0{z$#kCG{pr#+7! z%Nv0Pjte^(6lW)IEt++Lmb!XH>{@fyjB&21n6WP>#78SRkoMp(ihmj#QJL`@zEx~H zj4!UFA7Ev5G;MGB4h1l*)@RQH)p|Emyc@#W217*%=>&-n)_=N91s|ge_kNQa%?)|) z-)=EVEl8J&4N0?c3`yGyj`8~ybTfE~5QZdYjh~bWeZhDj5b7y|=$t|H_O6*|mFZ>) zf%A-Am={6-hWrc!=9%k5hdH!tGPZye4nFG)2Rmmu!XG7TH4@-}PciSAFwiUI-uNa>b4QZWmqmIdb}e$f9&mI9q`2d#?~?7doz4GWeM~QX zP_+=I?HQDDV8E~aNe1s0QOgPpFR*it$Qe7x$fxYoHCoD5;9(dX`*s$+SI`0%+n9&09jFwJ*R^MN-}N^*Lg&Rh(EhgW(x;wrL2xtw|`dYdRq%n=PvmUM73@|FHPCz2y>sw}nalH5V74yRd7mT167#YML$}Eb+GXY$ z+msBomOLXZ7nWhweQ$wPIV5wwq-|9 zgz=vJZ$(pHF;urUdSqIFhZ#|E-fw=Fyzn&OH2?TS+O;MCGG1FK^tsu?@t%!yBnwiEK>A zMJ{SAaj`EZIv$5eNIn0wtQzSbQ>y(W-r3Ed=K{!9_F{8-8|~d@1j;-r)5jJDEz?p7 zUpxn9dF)e+mr3})=f+_@QA4iJg6-nN&kuo#CXJQJ? zyHLIli6m&1$hEh)HqmHWJ<3fSPg{H64?g;Ry81GC(f-LI+xxnfhVMH}8sqSZeVL8k zD{CQ<{fovnzra!RsV1x0Xdl1hXPd^0(ZZzQv6_(JMA$JewY17>0<3Loy~&IJQ(R-x zozU6#)8F13>-#Xgi75h+Kud?Yz6J`=1TL6uftXGeP+Pkn!gCC>`M2v| zmbtibXZq@Z`NYUcz_yqbt};2NdZiw+P!6J+ciMhd7@7dv3)NT)ndCnwvZVXfSqfc( zy@yB7Y17=jYw)k10{PIv7kD7}fTIIbnTgv?K9m#ek=)3ITT8H2h31o_`a90gr{zy! z$G_$^`BevRX~q`~-^qAzv=*9fK7T5KG$-=OM*i)R(0?x8Q_8p4%m*J<>99xxcQ>pC zZ4{&t(HSyg>!*9gd8uI`v_52!$a`g)Q?Cz^Wp@79jf|By1_Mjs(*mdZC0DOX@$=N& zd_ShGj{JR$-|zy7d4%`s-E?~f=vt@&xE$1;&oB+Wb=LX1@#d{e%JBZcC?aJGDv7A> zbrG@+zE+C>-_bAwXN{P7{#3Nt(Zxx1fq3&snXbB&Ytrr3Po{P^SI6mGt&Pf9)oV!w z>K?v|U*}b%GRcg0cZs~L!;$&P$$gzo;N+b*q5YEa)$Y}+kKw<=?^y9l)}OnYn{khD zT;L#MD3K|G_q@Y5Mxu2=^vj7MGIi?97E>uw+Pll7@~hr)t=x0epWGQ9Bl4wsI^`KJ z{7O=lPH2M}2LA2}=lQzNW_?UN2r-6E7KRQM=&1|}>wP~HAJPobDHwyv6gyl2NoJ`( z0k>}}yI2oGApZ_JdrgxdKy7mL*c3}^$l;s)@b!tW$$$mI95p2IZ|sGicdcJw;a(~{ zIaj(US2g5-Y2x9WNZ+e7X6ZsYnUf67-RV%~)^a6fV$Lc?gx+H^(PzCr7@~cS5-js^ zls4(}?$b#haX2)4XR~%L5_y=l^C{k!*rwk&nM4KmunnjfHT+3Rn6>;Xa4+tauCe09 zYpT&BvbQDo9PuZ5??|~Rz2+Ss3Z?(mcWWrd@2=%0gZ}iu;`47V5U$3?C()=7a7X%V zngY`03>0G{C#*kB^TeX_D>0%(z{xb#pv?^Ko~vDTLrK6<$Ufj}QC}|Fl-(S*-1x+dqf1LNSv)(!Y$2Y=^-G2Q>zb#x%3wEPG-0wNYsQ7o+obPO*N8gyyRxKp^ zlJ%t0jyiNKn5VqNj9bV4lNQCxmPTy~%Hj+h!IO7SeSj`!fXR>DM$qf~2Wg0mrTye` zol9NMov}+@#?4yQw-h<08zTX)UW=OqB?S>WYO|8CtZSXRN5#Atqzpy`$!3GaZF&74 zq$M=)!^oTs|GC0CbsT5#?aOU_68y`AL7^ubvTX!zrq9r4|6)U3&2r!Vx!_Kvj=tAS z9Y(c~s4m=kzkq4tcM$I+}9t*{Pl+4s1uqe}j7|esQIP zuYW9y6wHp$72vFAky-XH8zPsg9F|_Ut?d) zGwib-_1iP4hSn9i5(_%nw_UYTA>_;8e}YX0?B>>w?_|rGF(M&h4&dmMQ@a4^gOm*w z`G+cl(6MKs$-zF^jS-DvE#~dVpBP^NUcAQo;cTqSiY4B$v^0j+iYXdN8(i^*hf)T% z;!saMg)Q)!S8Uanhc%XFX1!qie*jm2sDJq@4D!eM#~F|QF3PEM8#rI}cDk0^7~0J? z$QM84=Uz+kGO0AXKY`y8`fuJ)IVqLLTjqOA8L#n+CB)?A@g`+KE6*6X|e7G zH2$yJVEzHc$AMorj>5PiET0_CiTEkXJJ?RWkdFR5@?BUnaPxvrP*zEl!G~Z zP(RJ|TgbD2M66tHyGRlCunyA2jKOIv&kn2!iz9H(%lw%cEOwGie9qSCN0IT#t+qx7 zTi5Eq6Bkd4X&7sR;itA9LH>68Ilc}VlQGUK=K=Eh+E}V)rFFL+L*`*zj}s!S2b+Ha zlViVb8}E*ow7gU`nV;K!-rkB?X#-KGn89On2ewU1W$R!CSp?e3D{M_dd4bhg;incS zlt+1FP=J+Z&&@wl%Y#}wz1!q%56B@%XFB;F-3{_WEbKwVFU)NKGOK=$sQ10==+2+1 zG~5cmj+ToLeOJVX?Y>1oixSd;3Ft%h*{p<> zP>?)I$y}HR(WAh;VLs}PeGZ&s9pFKJB9RN%mxyRHgX2THa?CkYI3qS* zvk$O()9N;w_Ug$>(=7C9`(p{l?h84cQ0A7sY(IJ zeX)m#qF{bd=nMXO5I6Ni?k9zDiNtR?K(-o|3J1|Y>;v9@5JtCDI+SeU#GI$mT0CCd zvmNaqnO$&EtF7DE4kZn?`%2X0>(*b$^D|zLM)YK73g$jrLDg{qO^=W-sH6B9wV2)O zouHPO8EFGCUcN@(g8s4J6ZrwCgZNeo>(!Iwa6Yr6@7I;1jx`~7Ctb-_op9r5yj_Pc zuAO`H_r%>lkt{PT5^C=#=drN|M-lfs+=mj^bP4K9?%;lv2=^W!7X;UITLmA3qGsqm zWzWa9!L`$#L>S(El^|l}$;NEoJ-1XipP^YTHR2#FK9@O6cL+5Y1isi@RB^!uk z3*e30kRsHMX~P|TJgm)sRq*?y0&dH(_LXGIJdFDQd^*~6TpV;P^=)Wpg0M!Ik>nB9 zR+~w6TCRXHpXJld4&8Pe=MV$s$eO{a?n@SO4a%@~@r-?sI4_>4OvO9b;d6+S*}y36 z>k=og$L_L@smWD;Cr*?>F77EzHR&N>ssEou_RsxUo> z@n56J>N~hi7~&AxzCKXG?GG5PZa+*dSEsQYy1M?QV}H!PRGajOFusHrkihhdug{dV!@V&DeWVm0^jWGEcXv{MB!`xoWH6L!=pB;U;QIF$>GifW7 z)%A;yK=}%w+vtCdu{<$P7@h;@Yl~%>{uJcl*&Xzei(|PC5${KX-{w zmcezLr^RY&XZw$_ee+hO>1&7nEeI=&0nBuoxvSEG>o%}!TYXD*Yg!vT2rX#gIa3RF zYV%(EAo}{V{A|nMY&8SzME-A^H-z}cdBe&po$f7g>~BCj zSH^lN#$oCQ?L>z0JK8#fB5pMhy8Uo0DQHC7|&54f~w) znL4%Ixi@!Usx@p6mi&(iod@RT<*SUud&g~wU+Z)lT%I9iE z9n1~m_^yHR6yzuZ#$s?!iz2(vMG@1u{-n>RMRYBU#e?yG(Oz=~^jX9EMcU2c9PG5P zGmhCx$fUh5{!?5OK{xC~;jhL;qJ`B#a|Vp|VI z{9lpA;syW>L7fwmx3$>Z?0F>5-xBOQBBSkH{{vmVci)M6=K&!4f~9oFH%oM2oxEvBO>7hp2EJxuQF z$?q4LtUGr|Dubty_xY>+!MvGXLt7s;>Qlx~>i1FVxEB69ul@a0C;AO%1m;*7k23E$ z3(5c3AiIIz^?;0kvVsy}u%e9<%LiE2KUMh-W6r}KRbWoAPqu~gJ=iJE1xXZek1g+| zbhC#i3MSa2+akNJug6Wm*v%c|HhccR5I2FvJAn5XcYy7we9S$TBLrg`bfLdxa1b%x zuO(HfQZq0|VIAyo-0K*(pS=e@oNR*kUNyr7`&_BwYtDEF@;$YD`lqz8pMlTasM;{z zkDf=N>AvM@*VD-dW7A_Sg)YX1z7eDGyfW+1M1-o z#Y@i3Cev3-fmV)D%()^_n504MeM4GO%g>epAQx~VVU@1t5B0B2|2q6!wL z$fVF4G5!SF!v%9Ez+UJ1H@vW6R=iz;gW?SY7 zlWAcuFKvQ8>!45M^>Mv$tZPVn-_B0@nuP})c$e0leN{X7Z#>E2e@_VfCv*7gHiMz? z?4zv%!nGdOpkS;a{kr)$7IC}Yh>*I7msq!2+cTc^WD27z&qbyxhv4i7oa_sDj{6dG z6nS7@wu^OwvHM`(dN*sahqQAJ`8wq33R%pYi9$!d4&%5ZJ*Z%`0DbtaECw_?V=*qw zN{mm(W5e+CqLjs5WOBk+=2X0saOLy-qSfblJk{>z&19$_1Gdofndxt}IqNxWueE#VA8IG3!Mpq_AuQAJekG)cgJtZcMw+D zIiFqdo*nsI)K{%INcGs4_=kA|gEr(nf!_>~S3An8$R9HptS@13csGN- z!vld<{cv_t+5iA+K$O22i}E>~S#R`-?^DKO8soaUk@tI}PwVZ#v#@jP}8krQBj>i$|rM+n8#1-$Yb zk&3t~P7z-ptB5NT6>-I*inx55A})JI5jPnWX=kJ&?TAyP563Ff2Z@Tb{ZU2QHcgSX zKBGwP9N?efZ}G?KRBk7Lytg71Kpppm1mLxe!&7#T7iv9n z+EIGK5L246pR)IJ;XUwjc!yk*_ln)5z`ml#sNXAEgf7Ty>dNPd`R4<}FE;p9LBM^BzCW%X~;C3@c`G!uW9{9c{>P4AD`T zC$c|zyH0&VJypr$MOSfNsP)JhheP=7GW`rq4pvub?R=^x|JJ(g?S-4^i%N-f?Pf#F z4p3fX}+^W((eU7W_B%$0FQGi#(JL?yI=Y{*)PqjDv=h*CDKc=CDO~J zL|Rx?EI9$Mv-69kri>+N&YlK&Fi|Wm>U|dHTt(VDOcBjA z>@kY;(snP6(b{JDIiDRskXEw$m)DAz9JsnfCIv4UvM)Z~)*tzj|G{^b*Bx!+@%g%*d~ADRUEOc1Q;{!3o^H0HNZBhCc6WxpL_LfO4fdn- z=DPBw#M#3X@;nRrC?n3sV(7mg@EHKFa&nrWd|yyV((z6}FPnw>vpvm@+4;ph?r$OL zH};FL9wMv`u!8(b0I~Q-q{B1X+Dt7>1Y2ds7=I>!}b_SkM^8z+Mz~q&`g{;**P(HnVdAGOq z3H4;F?bqxzA{GFh1Rj60WXM9h(6u#YvU|*E^0p@HpdJcot|k5NjsZfikyY;!Sx(}) z&fl8Aa~rd}+4Q-ce0jUuZ`J+04DZ}`{AE1mSXCASPZSRP&`ZS0+A_^`px$U+My2#y z+YASsYTR|zjy@sm%sBP~b*=Y`cvk#S^gx<^A0v+|sbgzVR_O*##7SEFT-OYi|N^Xn9e5V$UOJl#A1GcWtbEFjr&#$yI zs|VR3^u#kTR-v1Kwz`xPZFgTAm!zV;ANA}w=HR{8-P~te8Kc>7-r`REExv+i-`xb~ zJnEMMwZE+no68o}7Mg$VJuo2nv~2ilciM?JmBlpn^8eT>EEXi}dD#vVATIy(B- zZN+@+n!g;z_o$3i;`8q$&aD`4+UKLo*VoYspPAHuY$l}!uQ;Na#BBC{L7Rl%xARe3 zHch1w(;Ha)cPx)I4fS-$W0dYRld@mbsjP10=d|hIgl_%e*m%6a%L6T`fU)5Hi5te@ zhW^n94`a*YSXo>7Cn(01Xqwl#JrA_84B99Jo^RWP(WC+R)T%SY+U_17;JjMT@f}C3 zcxSjP&fBH04xTCDEzoDmIofn`fus8T5eay}{+phJW5Y~j#`{#&(WYA_I(h-zjqs<( zcDwurHFXm%L8*t3mkhfD!>gwKJ_ znf$T6{WaQw9&Et-_Zp^iV7&jOYSwRH+!M^c!VUQ7itHS33*!UpZEV3d%;(zLsJg)0 zXn36E4rIA2^6T2giRzSFykop}&DKu0X~6sB&H0K*uJ%b~@c$dhVsVm(!TAfkhO6o` z+LZT&J%NxI_p|`@1OII*;e4OJ*e8*cKB?M$ptZaE1h$Uv_3k!?WAx58A8U{NIX;kW9h-3(qB&^EhpdI$`@^&gjR2dpD}3oj<@NJjdazgHNVoRJQ+Rymu0D z=EoAN2Vj!_!C%I+GOb0d4BEaiI}&H-cX{8d$&+xc(D&_(nq=AkN1G>>mkZisgygHo zm>URFT@SEJi;Y%u^hG<1`<&rpv6ggSD_uWXePbfj_0h0ZW-?Oq6I1V2uWJ)h@H;qz zzqrEUj1|4l?OlR)xNBacOg5COcucXXZ|r!N5-JY|$E&oRrFcf_W5#o)W&n&k9mbvO z6VblnH;tX}_$R-nTV>-vc8QOFeTVTAH?^|ypW)+=h4C+JuV4So@oh2!zaHPF;s1y6 zZM5;O23YHGXZ{K>UOncKWlDB1-Vx(r26&Fv2%1f5N6_w6peU-cM_zgMBr;}q^wiO;;BFIvWVloBeq7RH+FQ8oP20Ddz^=o3!FnMqQ@Jv=LM=B=ZQDILsMcwb{h-=o2<5b^Et+}UcYTw2-{zVB;%mw?^ z&3OO)6UCgc=a0?BaQ{H-t+@nvUQ z9#_1pR8KZAJYao(q|U&nE9)|rJ-?ubbs?0 zki-59Xv()&%IK5uxz|=k!{4ZPC|2T}X;#D~%SjfV_e-83>DWHfhVY;F@wQ{tq^{Zw zPlfvX)tL_@dBx3|e#Bx;WPbBKSUv_me#}SA@_RykMsL)5{`?lz1_(^AO+PI87af+= zJpr4AoK3^_4(RRuET`dp5Hcy;r8Cnu5FDv z`a*WR&j{t8(6&6A=?{ORt{fki1$T^3Q!=^ifqTIuuNNZZje>i-nRtNT#k+=O21P>O z8{omGcI2rBkoN@FX*1J7{xCB!4f&ka@EhA(4fu;~;@w+!{@^H2>AsI0I# zzl)KNbe@ph&eM{joR;tmT-*cw!LPCV&DK?inV(JT!#sx(uvFG}Q7?Gu3T6E7r4kxe za*Woz_E&pY{zd`MQTBeW_I`T_t(o&zJM!5z$lGtf!rE>6*Q;%NF`QMaD2yd-{tb(_`T&Db!u2BEj@T2UyDb+bf64;588a< z`PNPTD!>)-<=8g4nAsbs>fp`f1oI10@A|z1_+)ktn37(X7|(L4m0A+2?b!bRrfmkt z>V*!>Gu_lMI}P*P;u>LWarYfVi7N-zWz^DCjPc)e6yC22*kVxjcv}Vff7yX}$M7Yk zncE9|dQTdDHZGD$>(nnCE$p6NwV_UnjWeZ*T3i?Gtc?)=(bgRY+nwh>2tyycUc84^ z;fv03ar1tP99bxneW3)Am`-1~zE+vb|B$>#~xqf@~P`8M7l`e9YFq~US+HiOp zx2M+W6T*$$KKTQ2G;OL5mb@Fe|_p#iL?7Y|&aF{ZR zxy@II-N$c{zgVC10*>G652vqJJ-8!#|mCHK~yg|upBJ1CL zlv>tR+1Y;WdC8&c1+Et#V-lWekDlarVu?N$SDBqhC&%)8FgV}L00;AiE3_~0Vhl#d z&T$w;Ug0o$<_cZo{Y+ZxeU0U)ULk)bEr&A+?~IlyKFOmT0sJ^3u{~Q=%Y3w3XO{50 zqvgep>&0pg9e;tmNK{4>r+zMP#@s41xj zCSk9e$qJYsp}@z$J9pwY6yx^wyFrdG>m|qU9HWRm`pNO`!)Qk_hrDiBA*4JOMJgiY z_zz`}>yLqamk4WN$QLTsT8R1o@tFS&A1DIaAmclv0a17tuZ;zHH~d`&b3(lY=B*8D zY11hUhv)cR_lMDA7LSJcZ5k-YXTHw$lseq?c$U?8m(Wrqbj~lXpdXM`Z^r}c(g)TB z$FsFgeFA;Vx7NTXtj*RlT!+clX6}Bz9^22b^)LZl56vOfkv^@~bxLDS@Ooc8>F5i; z8y-DD>kVEJV<8@uNP77+uUK~znL_U1{-w*{_sOvsuaN68mtSt<;kcgb7{fQqdk&ii z%Ah^cvN)d4YHOTVDmMVlz(4r@!nZ3b{-bjzH(Q<{qYv zL%mYdM6YypI?T=agrjaKz!~i(rX8k!c;^A!SZ&bCZ$Cr}&}Jgt?&xSQ)@}{(PNi10 zEw4H&Ry|5&zwa}QJtFskHY#!s(K488MVyzSzSfhd(q(|d4ZhbzcVdyayg$HDVVOPgmeMl}=>5^HUzx`!8+l|Ekvi1d@(@^#z%e z^`8*Ze_V(DuNDPkezKSY>%G!;O&{Npey~04+fV(_Ujy{V_UK1I!#nU5%b;!SYZrXF z2J*Ox%-)eIq6=Vi6839dG2mFSmu`hJ%fIj1*BZ(d|;7QlX4t-)b2?jtKnVc+5GgL#Yit^nY#)9Tsznw|KY z?eEY+A}v(^*3r&KkAubb z>bWa)oo4g2N879V-RTck#583$$nRRdn1L9RGq;(#qewd51!nI^AnP7Aj))W#(Hy0S zeTTvMG!D-7Bt^tIHB&{pMt#y{82hEi6sci4%;B$!RJTZxa6cv_!F&LxZXM>OfH%_U zB*2eijx%AJkIApyMNchKlb8&AQgrBWLK^}`14_EqM|KAfobx)(uMYLaRbd9XC)pwN zSfI4syU2~Sskh0#R^!6~K2F9@I<%N@*#>8_CQJ6v>?YLtTJDV$gOky=XZ{1{u~*b> z8r0^~ZSs4eA&dD90ZduUz7>Cz(1u5uYzW#fHcvk+74(|UY_B7tI8T5!)msmcbjA~W z4D=*|=ci*jxKkC}CR_MGyVo{Yf2+ODS%SJXj4$#Hi@h1X?jPJQ{kuTYgYewwyFgJF z#_sU&?k^u`h!gg0<5O*O`j}+1v(v3Ufp#kHg1{3&*|X|AwHUv!qb%$8DFWuzYd7{G z+Srq~v$5wrs3u|D5L{1Ylfn3mOSEZA5BqPOlL=tvu3RRW0AJlz@Ci8Uz676uw;10X z$AaynzE2gn&zySK76*@if6ak$V%3s>js4Dp-zYcl2-w)#8X73e?Hx&EPokz5#@w1P z|DbQ)e4b~Il~1g{Zux`S{ivGUY76BH_G|ul`q_I@vkOp<{=(upAWgm4O%8&dx*yzy zX501rDKOq5!bv|{_&o+6$Wa!f9_=oXj`VmQ_~iMu4n=J9xzzjYsf`Es7aNbQ z*4AC@wXW!YXkVK-Z7bd%nB)d9gmp>vVeod=X{Ph zUm+C)pL6|oz@f+WWP1S42Ohscdu}Dp@G)B1B(04x#90b^qZH1OSJqfasLrI6ED|u! z1lHmDlYp(O+_5_R^*%es;ZkP?9LnhsKUXWjC%49dHot2~ia_oHd>en1^hMjvJIa|Z zc3XdvUJtTV#WOXu@Z$u6u}{$c8)J2%Un|;@1?Sfj+F#J2{bA647IC`8&j{WHxS@TN zlU&d~%9G20mvZ;=3Mf-zf9N|i{0it$Ua42xNDO0_XxmC;%r;9c$Y=izcrrx<4H+pXF<8JsSXBfNs^0p)nSN9~=( z;9N{JSj^I%5d+4KV&#MH&bIJ()giFLJ{m8u+-2+?tO?qY>Fe`hh~oIR8xia3O_XQ{bAVYs80$$&C|YvFyh-z7ZGM30sotWK${a9oo${2bTf zKtHbVJcXBErHx(W^n~HP_O6{za&vRgUOuQVGjxt`q{shSdo#xWI@B)ymmVh_ZOlE| zzC${P@xavHE&Ti(ZwT%^?%&_cpT`=4dyhSzr9C$q*xuv$ue4`Bx8HlE(QW&UmAg$V zS4NySWgHgegTRZKy}^5=5zJ2IFw?7sJ3nVRgE7Vz_Pu$GB9uW}*bcUtZ3bTC>@`Q| zeG#ia_Ykii+oAp)UDSv31?yq?c4P1!q~TR3+SSK;Sby_)zOJnP)N2ksei^%ai@Sad zGmCqFT9@m!(f8Ze>xpX|hGROc*NGo#(P@IiHJ#-z714Rt2cVKP>InV#Dh3ENb-_ ziNj&8Nz2>EKMdg^F#jR)32MV>TX*^OOfhhd%q3GymlTRQC(0&~DWP$$(N6^1==t3H zg1Y5&F!v$yIp}kyt~$+l*x+-mygL7Mx4L-j2Xz@;`4gh80n6j*Ch0gfEL#vm(!2Hh zhH;mzfU-Zs=V^6nFfNHc<}0Th?auRYr@9{RkyG9KmZxa2SVxzPTqkoF%`m_J^p zG0X`mgD_jzc3y{;Rabvw>lE*O5 z>i2jKWL?wy0<)*Pu*`A2e4rxiFXKRk!Ko+uVLEx;&^@fnDC*4R4pYf8k@*UpE20G> zNcI4YkL&JkgXfhHZqp3>ec>dYWr@zztz8$+0VMetc=9knR%Y-(G6f#7|f=HtZt9PcIa zQs+^C^CF6PZQR>HjDr*5%s_lz=D=|v9K%sR5eoZpyKSNC5sVo$Xtzzb-wc&iLhUWo z0sq78qF}#W9Q2n?vEbQ#0gMsj=l6ttgm>x~e+0)DZiI2o^w{uyGQ7vU*|q5RXUG?p z42CjVu68xa)1F>>mx+C}^(%`Y**ZOE>v8U9s;?K~1Fj9r8{gqRjrl_28YRER_DK&d z=Rt4}!Jh27Vi8qmo@9A`(dYju7LzDnz`L{Xxf-u}*Q<`u9GqRo%6ay+F5^vgWiP15 zc-P}*sXebbOhCt2UW`s%LLeR94fs*}MH^j9 zS18{3;M^1DVBCKA{8xuM00(u)7wu{HmCw7G{};b0Uva1QZC`XcKSI~n1CpnE0>i!hgOIgbOtl%5~Tu$#U&KR@rMOsm%PQ6~P4Hgp#bHKxUl&6u#xH12GH|4v_ z%c1A}=r*5+d5dtp_nqzo1fK(VMHZ)w+3IsYZ)?YXyNhq$RXkO7`G<@@t~z(M=Z@~?-qrm* z!w;n0t`7JyXo*AloH#we+au3gKlG@GzW&UgTWuInf$>--RG|Mqk8wg`Z>+epKPlII zcW%S=4VQ&-&3{Li2hhJ8^|YPfdCSKPp1dtHYYW>i+N>t?KF_i~|Ih6o>Hd7|@_e36 zWCj;JkNdvjP@X4FjKxrf{zqE>7_XvZ9HV8?rQG*@whpVa1N3+hF3SO;Wb5!U^O!KY zFZ=v`|2I4w)?(A)ueXQ&b`JF-_!{IF6!|D z4S0`aP8QCRuyHG-!kPrK=~3ed9!nnc2^?c*Z1~*g9e5Wt>Jj5`X2bdC0W5YI{2tL` zSXofUW_7&W=Q(^*iKEB3GWNaQd!>?wk128Zr+evujKk9EC!@%K+{3~A7driCI%++q zv~7)T5{%JZ!~LvHFjnNnu9q{TJ-rN2wDp{Svms{w#sJM0n7tkIjb*;=XhT``HAS1y zj&`D`#|WQ0kHy)+dw}rFQx3(+@2>|E)Q6PQXd|49(If@!6q$}dKBe=W@=UXrKBe97 zu>22O>g{X3Qm1AUMVxJxIbQf=9^fhuT zeL*gkUO;`#g=N-fC9h8kH*RpSdz&$abT}idvlWHK=s^F>f_q8&?0g^7TQHyH{)Q<~AJ(TB)~6WO zrx?cod`+dI0adM&Pz> zGg7#o1@B1FKY-nxKF9qy(cV-2m(THzW-I>AV3J+cN3%uW_^o4iu1xg!_)D}{r&tGV zw$&Xi4n1F_daIhWYuE`1V^Rd`XMF3xJb>yg9tYktKb4{|zEk(jXMN}GV|}CT&;WKe zt2WE{57-*LqUmKuF@Lbb?5uI2uYvh6ZB72c))9ZvUPAZ(Vs*?Rb>u^gM``W*gRY~M zJ(aJCEdH$)AGhOuLF27R`+jG@7vfm){W~NWK{QK{Vn5c=MSU=DEeW{Lx10)e&+9sG^0jE|IupZ zuYtZA=)>WJaXVrBPNyPe1C3&|{!%g0XKNSsg`=*usSd62mfzDyRFvP`j z59#D1qWgoeaav%UAmbgtzADf1c~*YvK%XCFx0*5AtB7-fzRby2#HY7&dKKFL(=fK# z2uqm%T$taSF=#*0c}!?0ZF#;ht)st#IsWuc%AAy>ry%JHGza zZ2f1zxq&#Ft>G!tgWlc5VDA>;+=h7s^PfG_buMXs9$(>WbNYElUYVNAo?X(O9fD`O z;Tgtg2HD+}@*f($e+lZSSw6cS`q?2;P^t!`vP;#7b%11 zCd~#Tyz0MMZZ!~TWEPhy!%Ii?f{MBVvQlK;4I#KpJF?Rkw$m+95wQxco& zr=K`_q-+#AmC3(MtG+ajU}e^P5{##(9xZ2nKFWhcMjIcT1D-Vn;S|o}ViD#d!dyg{ ziwJWSVLl?vM}+x^Fdq@-BQ9iiK*jBH2ZrzbZ{U57V~%OIkN*MB7f?gYI-!gX2Kg5A z@CNta3NOWc9s7}=YWdiq>^C?U0xlOVF=XMh0K3m>btqv5`6A|oquSVos}7VeaSs%{ zU`Wp&Yp@>Bd?>>2_-_aHiM(Vs(4xE%+-Hiti~euskCJCrlU{-`?cH&h4gnacQT6m@ zXlszd`5ZlmNceZJ^72)IB*c}?n!QW7{InzQw3>V)#vU<|lrMWI^i+lVL~wi=UPqo^ zP0j@TJqW*FL0WKJy>W!;(iiECG)Ja_TY1)38VKE(MbCH`?f`!;U&wyibJJ zLnIyBLEkrZ&>?nb_6e3zTWvR?PjX``;Q#w+r4zj(j=xr?b5*bpru0rjdm?ppz=rQi z1&xoM`yI8&z0=f%0h?Zr)miZqwTN1sj6kP&!VVVy;RK@xjJ~CmQT@)1-Lb*=!!6G; z`orjf9?xNR*D*_?hO`9BR?0GxYWPFeGpO^oPhPPxp z^77TBOqP2@rHmG=0$PyyURp3eJKEF@I~L5(j()>lgG8!GhT#A#ge_y8Oi&2+f zbtpU4nZxxpA{VG-#Y<_rJdLp|EK9fW-z-kof7(%|%BO_1gYDl^!uBY8cSqa1(0LUaRtQ^i_;{FZc4mnU zeOJ(iK3d2T(Ekx(qBaI>(YcC%akisL4%K6~b!Bg~gz&pYgbBhUx{qS1z2_+D@i5fy zS>nLhwwMDGc?#5v)mo1c_uwe9#E>HtK6IQk!1MY$;5WtUU9JX|Z2k(aubSN#mUIRJ8jF*Jw4qZ+xOW_1AJwb$NfJ!Ls;~wk%_B0Snj~>wX-O%?v#2GzC zp##xo;E+Nuj(RjTh=WijS_RzM=w*5rSG9$ppWl#EK+hiBN4v9e>&o9p&#Qp_WBUW4 z?UB7<-IJm1OT_68nfu7Tim(=Bc=Z-9)33QQ`x9oHf4PQ!5a*+PvoJRvix(%lS6aw2 ziKG`!^U~4v?d_+TZ62I4`na|y0=`m3T>gdnglQP3H%#9guFz$^1X2O*9sO8+qR$m| zD%vpjfi=c_&Te>)@$}5_8~a)|@GPl#ax_W!Fq(Kj$R3Yn8=wvU2MMg~igSD%UFIT~ z8DPFGxIeqY5B1p=^e=XH;(7P9cB!8$@RE3ze*eVg0i zCah0sm?FFd?W!C1IWTT8ti5xsv6#q72CJ!r#NPyE9_XnE34)WrZ%JQ2_1S$a&YLUd zAW?*^H>s||7bm7<&mDD9hEu?+7h8HB~eiPVb)OG zELD&m!FwaLh4C!0t@kl+hQi;w;C=002gZ3@tIWhP#>XBFvwC1o`Edp->+c{B-+X7U%!jR-4}bO?~(pt9iiNcwsN1es&XK>yL0O+8bc=M%d|n{TBQ3 zAgt_xHds~er^pItpvQ(r zJ$yNwi};(_XliqK8s`i1=mT?BXSLdJJeVhot*-<4ELR|d=fiDssPh9hjP;D;3(my> zb7}a*f&2v4MLQpy55`?*FbXNla4-eR7eV=0HN$P;vB+8Zu(t9nr@a2$*!G<7aqYRe zoAxI``%|HPZy)BdvZFt} zDLaRv|GMi1;yelU2MNUT7R-y`< zuUo%kytt0%oiV@O0Wyp1e>@^yDaTyU7YHu1TCzFwRzunq-+GIJzp+m3`J4SZ8vU$e6#lfN-CRcUkPc!b3%gt@S|R(&=ep=BRsk7v)0!85I0Y^z|eItyco1?TU<`BR4;ud5voAKMnk zr91fmVZ&m<%y&2%#u#E6K4_tSm|y*4X9@bOEFVqMU2!UPPb(6aMRLDC_I)f#cf;9; z@6e|g%hoJ;-O-)RCB_jBg{@I}Pe31_aAtc2JUqtRNG?xB`5|naaRinfVD3j&pN=BI z_-gAz;;X$0^UgFlQ0Hh`0q16=IyFqtXb1TYXwPh(pLkFA{`>9cpXOkG`5#=R=*wIU z^GE*Jqs^W9%_i`)HYMCW{Xct^2Tm*=#53cRyGoiN_J{J3qXo#`$Bu0Q4uv0sCE zJ#PDj#ZE@ted`61z6QqLI8>z*Y-h=!r7lWhxW820d9Ua{@1<8^4R=AAw09v6}>+7;%B$<)MC1_u(8Q_@p5vYEn&JfumD9djU?r5+jY#XY*pweM!Uh zhe)<3|1k5xWc=*}BKNrpG%?Og3qGF3_6Nosb;)?knN1MriX5 zYB3DoJFn%DW_r!RX z+alW_SD$x_vw=^*{ex@zaU#t|xEjB@+ddoi*CgH6d$2GC#tXct4|q`@@S;B8MSZ}F z`hXYp0WZpR$#`GoRfrsldkx1uECxswz|a4oN35e2;O?&dN&Xs7GyC3P$h`ESM`}mspbhc}vBnOe)=3EOIPI?&<~yNQ%Ze7@dH1v2 zLFjv0bHZrH7@Q2xBY~bB06Z^fO+!4v^|-Ggkc{P7*y;6k1uki_O@Rw&N1@$5LxpTTc;x;hohCcu(Fd2s9ESCb7*-;hhE0rL_nHi_jUL}4@PBx;)-2hUaZQP0c~%CTjUv_k`V)93 zb*C?4xDzwp&d#2*s;y)ERHRX;pWg*_Upc0Tu5-oA{;QNY1$Ab#!#$-RY5XvX#UsSN z!i*#{Y?xQ-PVd)Ue%Eg_Tc2j_oH(f2{q%q{LC-h!<6R@{On06DJl1cxTW9w5z&met zUSW5sKh_Sm-wiZBTu?-8mp#iJ#M@j!tYy8B@4QCQZ#-Nn5C%cHA4-0(qprRT3LEj&Cf5E7AVEiOU`2H zWw}^d7+Wk&zb`;1p8=3hnIyO&UJF`+-%+x&?z1HSLQs~_2X^%J4+mngFLIr#fqe^R!{ zD^|k!a&)LytN^*Le7YC!K&eZ!rJ0F$*l_;Ng|l}KoX1bYIXoNA=EnPC?KP@uVdYwi zgvO}@>}YcexX znJ9Vhqt>U7OpLEH@SHg12Wa}!B@^Q#!WPl;m4@`m_&jcdP`=oZUi0I_4jfY>;=z*! z`Dvixv!QQ1cRpDUyhh0Htq~-?B2E$Dv-9&D{=DiFD&u_w&IkAn$(VI9t>)w_4(98y zqt#}DvlGwKOyZ+#U0}YAJxAK}o@-4y0B0%QDK~Dp*`7@d@wg6%D?0y`9i15ebZlZg zdj_$b;e9 z7K(vcpYDhx2Ml|JckrHdP{4+`>S;A(xkJho5GZ#9{d5&NnE9}@+G?TQQY|JSTf?g# zvNg<;14-=n^S9g8w_9vee+(o|*6#1IEXLYUPX=tWFC@n2j}T<^W%%@R5iLJQv!8_Z z**k25koT-YZ^quNq;n&Ib51 z`>okj#yvb3`51ux3|Ir!SAJ8f5^a#@0G=Tp%*8fgjD>s6WDblI@fO?O`!_Qwzc-TX zts_~pq3!&^RDRZ+7|-w<%J2PKBzfrunmrrv>D%6l-~`y2|7|8WPgkU@HeGZVh|hG#br)Gct^w^x8JmO4vVEL7A@7}pF)%L{8|bDjfz zJ}oE47w+X_D+C;xeFWxR+hSvLDjQ>09h{$Nx9-N4S)cBTB%5Jh??wD*Znpi@nkYoV z+C2I{hV)2SgGc`YpFl4j?MKoh&~_5$f$0Z;pSO&|E za724V#Ooj&Q*KPl+Yapk{BYfHjnBZ^7UJ4QsR|JKqPy1r zL#CS`O45<_FM*aPTUW&=LV8_^iL$SzN75f zA7sx_+|SpzJHd|j?LoQndyp$r8`6f<;@v`p*pXlU{_ba({I)U@WVt&?iaw4)AD81A zU<@AU2jkRjtKqWTQ8>fuQI?y}pLjAwa9-X!U!{m?JqK;0sa2jzfMs27Isl7CS- z$crZ(HGAH2w5vA(>SdD5PItx~?(x}O%Ol@A@}5_d)VscCHi<^l_SEauV`aYEmWp#{ zIv>QRQ!DJ(tAl0O-NKF)c3n2@h%ZcEKKG;peIyvaJBG-UVZE1QP8h%i_%5-#q?}{o zwh7b5<2%%S<8x-e>}>Pn)8`ke7tUny4eQg;rb<1@$G~v^;|7lV9yR$r#Qk$$w&8xY zhmJzrAM*{zefZ6Azw8A&`W18+-+c{?8Si`6=9G!Cc?S6|*soRpFfdzMe<@8j3B{t@ zFiB8WQaQr5NX-8;wVJLZ#w+hr8F2yQPpU^#aph&y%K)zGW!%$XE{Q-FFz4sr)F*U%W#jXuEZ+>;6uNTMSyT4}lGyVxqCFk>M_Fip z|ADX>_#0q5umf!03We?aq&;l^Oyt-SVjZ$2kaQFD9etgCL7q#-94Q57;z(CGrEcT= z6r006BhnBji=JssLVa_PrlO9W{E&t^_PYSLF(y@Te+>>KS*pKJQwIcWRWNq-3BJD~ z6re@#v_7HhzuZqolGUSIXQ|EnJ&S$OGLpsDH9j{A&XZPNzo^v~nm-|QZ{c2>r0Gpi zZ{v>pN?g6(D;hT)cZ8425kE;eOLmhJq-NJ290jOXSpPMPV~FwkHpQv5a9WZ03F_~M zlN9!SFiH1Rc}0AO@%n0xzQFPikfk&w@8=GBd$e1{SY`A7ovP>i`pq=zZ&Yr#ev_$O zlktLs9Hg@D`?LkdTN`_lVh%FoVT{fVJpbMygN%6?ObW4Vid!Z!yqiF?^w_p6XD8Vu ze4qR0R5C6>yj1q$thzL|gSM?B#&4f@BO_ed9y1OFY{OgH2Gh`gUx4=tnDj(eo4 z4doJ^Z8dk-r=qNbd~G(~j~;8F^{+oH)h&8W^3yV@srU%<%cx#-gc`G7NG-s7?Ouw2 z@jx0dC+FC6v>x+P9y?3x&buX`QBuRA&!qbEpRqh(5iS^49MGo4vf%jz_+>Z;k%y^< zv#?;VA^j?xgUI9XT-{#kp2qIkB$ksdg33yrf#;;FF*uusww0}WJVNq6Hd#WOv%4-7 zOD4eYWz(v}1~@k(fS+4Ftx7WOGLw2ZH}U*D3T^hmy3l`L7*_?fiR%c@M!>TXZ2k0g zMSr@k)^)N$Ha=MC_$@vhsC&Y?*w-YKX@9NlH;HWYA9ehi|448je$bj^nQ}2r{TJUq z!RN2S^PRP6YA)0%D{)C9n-Q{;PYP?O}4Esr-(~irQ+ZCp(lhcS?(N7VN;a$-IGYO+`cF9COF;o#hpQwnH&_?(lBgsyyA+z6$ zhRn)-igaz9A+zq;(PR_A2HR140&JkIsh_CHEWi1zemG9C&+bT~?y-<>Zig{UR3tCd z^$t~})6>1uS*l8PNdSgbONlpEDDLdm{xpb|#X+81JW};obM!GE=Yq2e`>S zs?B(5h#hk?oItrmBq<0hgm>WqE|(kwSeL_GQCIW<$R!BVe*H*hCBTZ+`&yleaAS8b zxq-H`yAJk~^?aII8}iHt&&I$r*he^j9RL3X25jDYG=F%xmCmp7NzH@NfA$!CUM^<7 zp?_D3VLukbUMz;aSPc8n2m8aHq&rf0)`eOJ4Ssk)KKbySXLF)nA2 z^v0oH@t~X|;@MLwduc666x2E2v3r`?FjnRV+Zx9FNuf`eM={K!80Jw7^C*US_+TDB zn1>JM;e&a!`Ih4NQP<$VL5@d#!xYTx`n)Wy8@54UHlkk;D;aM{*`5JsJ@m7zYLU1+ zwj`)S+YW2e0PeNlCQ3(-Pn7z6g6)v_3SDPBp+6}vo+x=U4Awqji&(tYPl120IdP{WBG)J8PcX>a z0M9Ev?`w&b z-y+AeIuBN-qMqm|z`Gp!sKmaCxnA|?@ix8cz8AP&b>9J!H5uB@A4_E0Fgc##0F>YN zLL_#@>*IMJdQ%YPglw9bgSi`O_bEL{QNww>r4Nt=}T`XTwnTo4UbX=+11{# zjzcxQpAtw`7q;4NLcQPJZF67Zz?C0h9 zvf?)VDTCLN-d*ZX5q=C_W4>>Lm&uTZIE`?^HNy4$_64p(-PanJHQT7^P%j6j>M-pD z&jH$fe<(aK|HBo4ordG61O3(zn1eiyuJ^nd=79QQl$SzvurAcW%3n}R>Ywdu-xixb zNA*Xp4@KI5wh|WdY+8H!pa6XVc%Y`i7(cU_;vHmxQL#La_AWqw=K=kF5$NrF;Ext) z_9~uft5`hmx2lT8LaUIz*+;Sq0a#n_T_tSYPSX$ANp``LtAv8@XnMil;4@Q5FMMc~ zQ24VU9qm?hA4q1W;^{F3&lczh_*OVi;7o!3MCeakP}O#ZcxFKT2ZeO^Gtl0r>eNa5 z@ILq`liSKn!2b{I&vHDWO$XY2A@5aAfG-7@=dDzeCnb5r{K4UJ1R?#Ar-a`Uv)7oX z+B_1podxrNaeETs`+n%>QRpXC>t|Yd*ZoZB(2t}hN5rZ#Ctq>#wg;&;jKS(zxk)Iz z1Z}>vNhl!dRAbD3mM2ObRmc58e-4wMfPUte9HFyOhP#jD{Sw{Ncwe8ccrYIOQ(hug zjDdu*aFb0)Q>KJjv3%IWUTT`^rT1h02lISdF-fw7_KE{eN0P?h%R=L4Dw9b<<&i?=n8@P$0{`!MhV%dM zDdn#Pd1Ok7Lmk5L+c>6#&-HFU&rfF5<{EVycEd+ii?~CT-Y!*{zk8mrj#Wswm(@PPs{rZoar~VPC^Kw;?)87I54o*&s*6ayiw*;_bq-btHw&GpB{cVLt$K z{Az)hMi1yuqT!4pcN?tpoLG?g6vG6(GVR#u& zi~2=l_VhGeE@$^A+P=j7r_1H)EbYDw@4^B+Cer4e0Hg87k#5mA3Sn0CrUY)BLE9Krpi_H3~kuNFC!d?IH*5fPs^B9J_Jm~lAjv9Npr>RFFmTq)B*ph5CYF#t~|BE4!CfdmiI?DSvFW8OIkn2K>Aa@W06xF%)Pd;Cs=Z z)Fd5-x_(fnO=@nlEgN7K2Jm`CyT3!f)~2IE8hgL3$yR{6`u@kbuKrJI@>0~*kGUf-fWPwsY@&ae#3p~ zHBpH($d6(UtMe^%1oSs{`hL3j4KwKnbuCDHZUA}Od0uoMGZXjVL}LEXOw7|u=^p_f zCZqp`p@rf)qduS@2k;x-FGpH3a5O1g@1^ivLcP`Ki|SPD?+uW3AG;aw{D0J0&JD1p zKfxH@B=Q~5_jAY1JV%!1AGq?8M_fMryjb2Vk(f&3m>r}0p)j(-aF&=sRxO0_)O}PF0DCT#Z8wu`(+-MA<8UmMupY<@qa85zZ+c6eh4AreFv+_d zNXFmzhj7s8wE}#Ig84PQ@F&9`lrN}yO~kmN@8z2b=F;j1f05c8`f7Q$lo>>3`(YZN z3(f<_j&~nR;tq-HiSjggqxq()>`$rMi z8|e4e=11ZIdW-f{TMZ!NiqOvtGG$vNe1C2qtq0!N3upY+fpYxzIN(Lm&nglAfNtjB zNo0@0AX&UEj z=YIqI48=9uyq(1gZWkLH+ppO;!htx;^x}r|q8H@R)j1oavh~K{c>Z9{wZb?1F~7Z< z-$jwd{ri*67(4x64@w8#f3TC?Y0XBb?Rx%CHRDD&Fwa2a>t^Do=h<0~`h?X6msm5? z*{z>W&_64T$J|DH3Cv^VT4^D@Vu~L%9x^@Jwf|KseG%lEZ$RF8eB(jp7C8~j8w^J#bnY2?O7%b^Yeo%sL<{Fd z@*2z4L}zGsiK<$XRyWZr&e3A@JPmygtTi+G=>|G>D~tvA7L<|TJ@5b2HAe&VUtg@{ zcN*#ypM^2}6~^-njAJg0qoLePDh`{8J{~B~awX~WsHy!g$83U9-2sc5Z|?U|LA9c{?>?}C?Q-HEMJvndPJPGTZrZ=qGw3 z`k(BuH=T!b588UXC-7Q}O6a76>MZva588FhzlSy+FF8Y>fU;(U`@zo#H zVs>F$EZ*Mg9d>+P4Si&VylYyx!;bAmL;H=?M@`WFZ}9^T-4A%5$Lc@mRIe%MlK$Gz%@^WHV>yoB+_>dwC=;(3=JL9D1Bc6B)K zTszHVH7S*_9G+X{=hRtU#Sle$^!>ptsX_n1%A#PNPnHKu^E1-@i$ZN2bbBd0$1x5j z-eoNR)J!lACEiIFz)*4tn?ZATkq2ee`84d?zj-cBRH zu4++Fsl5%-5^+$_25E^{M-K&UkWK;r;$${ROT?efFKM$u`iW#7mCy!hN&9<gC6c-&wE%hfFEGzwsC_4m@#IH)vIN_!~Z(xE0}#zQLCf7SRxp2 z6XR>%19QO`nxQc@^}OqtbA8<5$k>R7vE;@o;GLS!FM+e~AR80n zu4#`tD{r=%bT9OAZ=;!@y>2@2UeUHHItb47n@$%oTUh@@I1lP(jaR;(H6H7(gSu`t zFlQIi1{}xbwtbEKN>9Rl=kc5|W+ta$Zc^qa`>~p=);2m2UvSM_r?s_+Ewrmi0UO4C zF=1@b!3O65;Viq8iy;3^8~;6+ybbWphV?{vybXOJOb}0^8_ex&8T+1C!f+Ysh-t?X zF+w;L^rK^Uqp?JeELkG@z#H1Fs@M;;d?+ID}A^y4GV-Yun++q-R1HT#}J;`jGGn3@gv*gTY^ zzm0a%qu?F1!R`!aLEmqxGtn1o5S{}AT5aw5OGQ))4c0=2J1Rx|$8$lC?-^>RqstUCMnuKPFcBB#}{XQhVFw)b8k4NBgd+r_?0>P_2ztVnsj0h@=v+56B391NT`$ z`3&2I=aMORsZ@LPQYt%hHia>I9`<|@bw&|60qtO(`2k}BOV?fpnddk7ud2hE9hiS` z;R!W~)jw7ntdB7iOfZ%@kP%UTgF3;1&_6tr)Ld=7Rus{NtF^k*Lh5S%-C?Qw=)!s0 z`}N)FCLQq?mZ+uuN;zIln+S@^AAed&Vy2;=Et@d{=P+BHsEj7Tp~BZSgQU) z)Bky`HJS(fo0Ssm-zE+;%w~arB(lJkY~Vp<|_vI z`PhR@H;wu`SXVm4q|mFQ9&q5j(>E*!A%FiA@ROy=CFX0=4q{ z*g1)_4Ewm(ARov8*zG4W!VJ&PtBqC```DPk+ecr1{N3yHTF0lk#!-0AyaS(VL%`(~uPXnI8svK?89DGlw+ z+4q=R(ukAu>v~LAWBR@J;8cTz%~kj@5}$-FXNTlfJVZ(%E~{VlBVn= z)=5dn#reQbc;dV?zmDUh^3h+$*UW#!alP2=JU)vr#J;{cwPSzn;(SQj`960aKi>zn zofoRg?c~sI&gjfc>(tH_*joTU^lR(%?uicc8t@6@xFha#jCUW(pT8W-eX3(H-t#ZS zx>}3x{gq~;i!rlnMny4Q5ZceV$$2s6J1BdA$g9^HN7fAmT>6;E?@U`NGJD#!5616} zf<2+(#oqhOWZ)f!%zKb;8|J0!G+ViKfV(#{Jqo}jR*v_CDMG;(lH~`v3h15e->^ii z2l>f8LBpe0(bk$jTMlhEYydohcOGVEy+p)%1?x#>H1x4%n>zKL`H`e!To)PS9RH%8 z=)WO5lZmw^Z!%k3*RSx}FUPj=+r6IOX8#s=TjVe5CLR?1(+`S;z}x<_$xPt46qtUH z`NOx1>*D$}4bS~57&FpIrte070+4SR&SdsV%bTkvvF{IxX~+ZIqxtr#_qEAy#xSK* z4qnvfssjQJ#Y{3yfD@8_8_cF=o}IVF#sHVUcvb{0&%Vyuj@oF%Kc) z0?NF&hP^Ho+VQ==p6fySvivL|{wE#$!3t5QZsK_<3lkNw-~dVA20R_c_Sgk|n-^d# zL>OO=Ogt~0WqQ)OGn()3*htdnGm^d4tHf`I@l_a_Y5gZ=Quz+aYM@?eE50ON2cdPR_Dq^iFYxeVZl_MM&_lI{t) ze<>%6q*CDDPICS`2%}IwcoX4y4|;{Y!+h~E_kkWmv4?9B4M)BBr55BFVq9~N&|Wd? z+WAg|eZDW~4{<=#S+YC|J$W7l9GiX~XUHvdp0h++=tR4}66xBE5({ z@>OX2S1i4hUo5?>6iWqz(az&CyGNY?b9joyF)x<#FwOGB? zyz>q-0x#tix54v>1BRHw56;nS*(WWB^=!yd>70C@^dXf0z@RYw@qr6odK>J=m50sb z8K+PBU>ux<2O>$f;*$!1Z<_7(N$&M3hB4X-}`6-=z8%q5SIwn&6dcdOpPXuU`KDv7;WF$>F0&`cD7@ z`DP;5gUs3h=V>S`&mIXRqg>oD-7D6Yl!})(mWr1yl!_Gq6ZkFt1n_CdEfwoCO2x6C znF+j?u0WrK0QbUk-^1Q86LW=`Kpp84$iRP%Efzn3cKx}fQW^B&&nRW*@1y;UQvg3i zzz-4dMFboX0Y^l@5fN}i1RN0oM?}C85pW6iI*(O=urJm4>uflKwgC*Yy*_acoJre~ zyy6@h2P5(y;8MMD)##7LaMSZTt@x+OMuG^MzAN*W@?+j+W_1X=V)zW z`^c+ZuU*U!tZY{^{2MfwZvdFDN_JpOZ@>xhQ_Q8}^oi?sM3Tqh5910v4u3Usk{tzr zKWG;^ya8#6LS1-glYc*1_e>-)mer@C&G|~yPwej@FRxl8t^nBJm|C6z_?DUp{Fc^L zEs~5YK1|)7q=Avk~Nltt{tSwt-!2OC`pXhxjOvW~RfM4ERpX9}MGkQB(U>_*M!sSY#L_B(GV*IgT zCE}@)91-IjRM>LG3Hu_+1ehnDP4j1(N!hfp^uDBsKHYOMt=MZJ6^6xhIq(7Xqr$AC-fw3db{t3EQNC@Os=?n5#x*Tu6NnT(WKu#L(F5x|3fP$!gFH2@#qKrNF;nd zMln8R6uE6*6wAeAt|+2?Ne*rBMYH>l3fP-{NlSn1`>oxu7K0ulkKdh0`jFwm<9o~` zJTsC!(0f0{+#~y$Khlv@WvO5-gE?VNZY#@Y;gyVc)TLscma)BERLK%#ToYWI8E`h> znl#+c*JU}b%hm0v2y-U?m}*iHRv*CMW`NaE_`~O$_XExFA>ELfZSdxMVC^e6r?N48 zcR6)Cl-~yMMYy7kJo1&zb@1KG^C8RyS~CY@WdJSNeg)3B{Xk2fIZ823ubD2UbAhHT z2Kr-)33I*@LRaR%TzWmfG8H~W#4|I{mz#%@tTKV0DG_LM5Lw+WW+cO<)Gt#TV6X4P z`!K-wdZaNMtqwNc@t0H8yk=V&tQqpWW>_op&`Z!pG`p+Ed{@gq>PPy)TH%`E8oISL z!}y^v4>1zf%?#^iE{!Jc!+2)}u$j<6%&>NDpM^9GOe9E~SHyW)%;LU1WWgLzse5k} z>H7!Xj{BIGD);|oJcIkDOR2c8>yt{wS2UUtqz8x2rYdd&qX#-Is5zPB$b@lx-}iBc zdg2;8&)UuBy#N2d^ZC3XI3J`{ZSz6uw5GzizY0r(X^;Mm$3 zz(ZFWGPeW%6=2M#i;?UZ{FXj0$&m^G*AN$%1OEkhCuIZedb=)?%!j?~97W`9CvwDs z3yZ`m53z28`q|^m1b$1+v(01=)JK|w<3#-Ebv4bg3FyvT1;^kM5zj9{+e2P#P6Aww z-wL>00q4QdaFA(dHrxEuwRM;dV}E3#L$x&p{R6*WnC_^@J&rhsG<$igtpaHA*}pX> zsls_jMYAFPc>e=r>OY&4(4N>kkjNF#2inkAVkygMo>~FpKl?&+@~y>@@ErKH z8IdHiC70g%RP&rOEDuu)_q&KCDf+pH_WV_NZv*@U#^^lyy*d+lh|48Qq+9njW>mpv zB(u?LWaCA-SsixGR`Xh-LtTE&2DCxCc$+^J&vm2|xCb+V&t&KO&z{t>T(5{{{PMWN zBF0(7wPSFAJ})-@$o44S=lTIh*u5aojOsXmK?CpazDEK{+hHv}fVr7~jtzXuOmHp7 z{ur2r>x_IN+6xuH8mq$swoT}dkOX}3ns@B#$tK$z;CtB^U;8ojm9EB^;z?bR%jrbq z(8J;wSchkzyt#*$!guMS?Z;I3E&dh82yKaDhQc_#FwR4fWcW}R=ayz0<3X}E*hBZ4 z`fQ`kr0E#c)r~gGgAZu=a+>KpvR}GuoFS&M_#40n1!SobX)Uu~KE&*o-QkLWu~cTp zdg=33z*hpFIbT70jQt@wk2=KdgL9n6UV=Y4SAuq>*}$iwjDj)w)Q5jzI;yu*i4*t= zQF)(O(Y9Q96XZo0Lto$#p9VgK^$+I=)<-_3{2bn!?+3YlKgfM0I98DRfQJFTCPUuO zc$US4=Xx{lJeZcZNllV-drFf4hw|2{Nt1vFn;fF&$Xl!?;h8rH%CI^sn(ZjlvG32_ z#ALc&G4H49{Pq*D=W31$ju{$lSD*cf>2&6UT%0YO7co}pTOeOg!ZSO9$dgbP0-rTM z{=uOR1clm#`A;yIP7U$}g7u<#ajVZ^K7}NyAzdXksL} z(o{rmh4r}QuZkG|m?D-lJF|YILW?_HjVB9gckBnmE9fXkn#8wrzX$LG4uWGMX526)+S zGbzv6AeQA^5c|$8qIIyg+ot(w;Yu%U(Bh4iox3R3!CG&FXN4bNOynryhv!EP8%4C+ zT>;O{c!t7RTE6~*Xu2I_M&AW-Ih?0@TysC#_YNg;`MHf^pGyFj#UPsxRv3IRrYPzz zM`NDPoo2wNYSG&t;1CD!d{xHSbiwy%bK#Mz#e8`0akhW&itLbo)!82ZJHnuo{nLsE z<4u51nA_1!z7^|%4p#Us18!{)+#mO6_8ypLJ-EL*~_My7X0&&FuD{B;=q-(xDu~@vUPwFk2M(l(4;`Pt|07j1f?G%h&3xIv?j}CyVWGTlf*dj@X5-swvL^k z70^~iP6D@$F%S`H=hj4REQuQ=^bNTPWlLi}rz2QCgTvG^=Eldm%4dkS79C>-t*J5- zldwfp{zT-px}WW^TJc(+M1uM!_xGHCM!QSAyEj@crs8|F8^AaXqlE)v0?_5ca4wI+ zZwY=&*rxxJu5C0r$0KZ|FM|y5Pr!?BFZ@XVE@MnWpR_O*^8gl0^U%f(ZQsz&4djId zAS=8CvO^jATgEElztQFm&c-|~MkKW@TL{zPS#TeQk6V%dVkuqn`<2`Hu^3ziC!WTPYQhYRM;Mkm?>l-ooEKx4bOQq zoELrJkK992)E!NZ?Cpv;mw3gjN-v!W@G_OsY`s0?r`-LZEwzZcp)FGh$URgMV|tz? ztDya?+hfR6xtqlMcPL^+PgzJ_rHIF3BA%}W#?Hq5h&l(?zp9X0^}5(D=JDyJ@f+%vt1M=q=gxVS zLc@E4=c6HHe?LXa_A27#VZDYwU8#u6!_SgRI8R>(ora z8M4aZ%%21>DR>{A0j_w~8?yY+SIQ2a$7c1JA!JMsLw4C)cU#O9nyaPK|emsd(#JakW1QJaBd9~ zVo0Cc<46U}$$w`oDFb+_XIpIQ=PgM@A~MpfTC&Rg&*`I zg9<#fkK(5Dckvt{v+vS!(G|7W3VxT^{}{kv#pL&ev4K^Bztl`Fg|EKRJ>q_1?neZ- z?`Gm2eLumwBBK_^3gui}TXkH(*4Me6HY^}FvO7TF!Tfg)BYh6R`U1=_#>Xpn#*rl- z#gVf6NjA!#jDC_|sO5QcS{U#c>Jc6v4s9necZ4PD_i32t4E^Gl?;S$s0nXsQ!}~K< zcg4>X+kxkjrNEpvfaT0>wRN)Z)$Gsi(rg%5jIq;bTf9Xqu##;5&{}af(EVsQ`Oszw zeg82ZHMk7fVP{}Z~rH)Qw}4Lr?5P; zuh8r&mIEJCH5>Q>;JudNodWW2cxMWHigGWJmro#B`whS!8H+JT2+Q{!Y6p!xXRm_) zW_Hq{IUMjghubA;3G2&a+aJ_m>208vOMUpW9i8LdKhNxR-xFBAOeen!(&Lq_W&Xma zc+8pSF@`#g_r#WnD@Y0Rckk=mM^XN%h*Rh`AJUBN0^^kyE5h=xCQ8dI;qTBy;BiYN zC@-z_PL!YxDM4_Fc%N>9edC6_J{TYEI##xqxOLUUzgCF0qyc{h1i$x z;$k))H2zJ8uRKN#~59%cClL(g@*LvRxxyK_^%)^fF~ zjgA?5uFsNyLrEbr>eEB}!{6B7Y`iPN++7Bj0H2a^?(J!HL-#YAZvXWC?5v01Qh6ka zNB$6=NxF@%=a~)SvYd+|;wty|+Q9DhQ2(muMC_Hn)Db&`$RjnIXuj`$pcWFr4_w2AEGcs|cp5BHHwnndPSXI5V7l5B(g{ z;xXg>f32zxuJs;b`HvZ_w^vhR%)M#Mo}~qC9ybJeY~1gE6oBV6V2lql*uG4sC62iy807pQUjJ-n|KL=J<#(2ruk zS>RuCjiUx69cQ=`p`g6HK|r65K4yj18OV)ctIT8>@X4NY)slyl(1@g7qxujMQ}O6k z>WQn7T+R}@EU`w??__((#ByMSI(T!6kJcyKh~Z9hdciS zvn311xm-F+UDFPW;VS}Z7+<`{+)eHC>$1FKXKA>c#PU@6Z|*f5?{YitUzXF@uRak< zdwKicGW&JQ+#4S2=%2;tFvxz(K+bCjmuUt39i2_4EMI?-{jQ$|-$A}x2C|+0zJ4;9 zvMjM$bWhtP;%_&`&zeA{gwC%F?=Dw1Q;^HJ?^4*`I{C90=U#kFm*a6fJ!3a87;RZ+ zCOv@mqAd`%b@kLRo@af{K8ktKg7nH8;5L>aHqmH@f%X>#Fs~QU&qZjV%kg{x`3_?j zyL}f$C+4S4QKYBMj6Y+vlHn1YJ(yz^$B3~y{2PqJ(XY4mym4d|oRdAgFeW3nYr2{| z%%SWySbHj)gxY_?c+Gsg?Ac(xb-nBCWGuRhH*ax|qP={=m5lhAM(7LX7oMQ?Wt63>Q=xn%v5vg3Q5*$jF^58_OJ?`n zSCin~PGZ$*^b)|6DmZUm0bB{cgSSz-R3=vkK{sox*Mxg4}O`NAkg>-IPdPl9CD}+Ta5W4spS8x*GL@y z+tBX|f>-*rd8k8vVRo~|pT9_DzBj#99`kI;-FCG1VKL6;!}s~B?Vy&wp%nENRh1gu zEQ9kuocqaahc+-a+ChG%>-29atigMkBpczf8Q`*+j3zAq?wcBq3^W;I8TDa0A>dzL z_?FqyR1hK+9PTx8@td4y)_q{>fq&`h9iwgf_&`cxc>jj*6JBpt7+O={fRi4?UP?jQ^xb$(9Cvp%Dris zF(f|78$HyXHwwk4pxvCv>!?SywP>DTM_GlfMZ*LZYuNI}=(KL_sgG?EF)xk>XfoOp z6~NgMDnnF1@k1KpC!hU=`NpubwhKF}Xk5z+sx2CM`BP}W9iT6ueJ9?B46CLXXJwuY zX9Lss_@o!n*3;XT>lb6n7-JL%#+nNs<`whb0A6|MQW0^4$Lps-n&rv4Am%4hc|OpT z&2UB_JwX2v^s#DsyV!p12Qzta*d{Sqs1_f{y}jTej61^tijblM( zzeKabfcCI5uXEbclo{ivb-F>%|p^z zzCi=>stE++YgT+N3_ZJ7$EwWMF8q0tiT0f61NW9wWq!2iYsdT>LAG5MSJFwgMP02f-x_09r;Wdh zq_cZPWoatFvhq_}?Yf^ynT3#u zF_8rC-Q0H$ASj>XndBY_v|()&)7@-^vuF98c#e9dd_|GA0bKE1h3C>%C;IBb*|oiy zZmt6U-5lBJ%xdQkwOxTTGl!OqC0S_0SuT+*wDa`F0q=KbB#TYqi6GhUqHQSP=+>$p z62`jFWde40){DsM!)?#nwU6&3h*i(8+_8)s_MzsRBcq+RC)P*vKbSS%bh?OrV%bm~ zTBtq?^CuxZjQ*R`jE78IpEZ%k8DO%@=RF_om@m@<`0EDzEqIb-t>!t;sd2&5)W-9i zKQ~sLwliPc7+Ak<&NWuV0+jqzH) zG_4E2`cQxRx()k**0kN3!EXtEOPD9q5;i<7l-`EgrK8O87Rx)=pELnY)pPEt8P^<0 zk8~T2gdf#e?5^&;#i_wE_qCNl9X=~pqRz@Yqb664d32@ehv3_JleELF<_&Fuqrw4vZet;Rq#C1=IB8{KG-|fI} z?dwPUXZpe3^a>cKrto9DljiZb@@A{as83z<5=lq=>25!xu66fVl0G+s$If^<$xFAx zI3lQ5s>fJWxiA(O&m553SZ|r2v9l!hD?9FAT?Ws@d#d%MTfS#OejD$@ z;0gPC4eakAtYClVeH~!)abu2|Se~yA;gku#5mq{!5N7C;qr(sR2R5b!|FNSC-Y!1& zqiT}nx&KbX{c17A1iF>cY;tVdB>O=N0WJF`T-*@om5P<5V3KMYso4xnn|LVRQ zBVfh%n@Wnl>CcZPo$S54M}ki_N=}y@^b(&{rPR*xHpDcO4ClIOvls{u<8lN-|E)&1P}LHw-bo;* zuu((}%B;}wd46sCEy$cp{-=f#)qg7Sgc{r?jJAurvPoHikS#jTc*)aXnOEN#BLb6=1UL937 z)KJueBI*>aPDs=SZeu_7a`A$H6u|8&UP3?nagtT6+h@7v_Hmcsn!JNO^qR8r;hs?M zpS~*~Jixq3>?JJK>QX2~t8*Q{zasd&Zl+Dmq$5sZ%MF|ln#bq%$AZOWc{mPHTe0A3 z*jGeCE7>#TvOWh@_j`mipdv*#2V>LL{VDv=oxg-|*-5yzQs1>Qy;6_<>1wCQ@~ZoP zOuv=&PMC>PE22%EoJ`x0n+&-uy0*ZN$QHwUvg zoAa7{)N9ORwRO7r6J*?D5@gq;UyY}HoUqY0{9)%(eaFXj1^L}i=RH((RxQpp!F`-3 zL1b6}lC>8gel@MPA3%BadJun;Y#&O5du`#Hp1o!4Js6HbbgIfj!appu>Af=Har02d z;NqFjHidDjxd+<5G$7UL=K$CFLB{UpMX_M67M(frIHky?+i$D+godDsTpNL z<>n|fW`8}IF{tBD74*x;bE)?Y6&|iMU#5xem0l0u?*@IooXWTk5Idq3rmiXYZJ96= zyv~otL9KiBxQW|FkcJFvxNerINUG>j;~jV|-`jnEi9!)>?FC2b)p5>BXvB*OG_KQb z-bo}wyGJa=BQLX#r|*71!Tk9Mj+4}zvI)l045K5#o=e3Hp`JT404=*gqtGusjUD^ z$K|UE^>Sh8&rE0WGxT7#-2DK!1;u zFv4~;GW3oV35KOp{fS2fpykpv1Vy3~bPi!TrD`>=PP(-uSKmh!epxx3jRzEY68z^7Z< zAR&;46}FM-Tkyx>-?c>78rWxtV=A3f+C5z^2XBdyiKnpN6vfLFZFo46pXKSDH1L0z z)ud96-TJH*Hg|E1rilI>D(%r#dDYy$C=~5SqSKve_30I!OL&()&n-De9(PV>ETFn0 z+Q|LR&f|k;Z=bIq=rjn=Zoqytj7OT{+;~kWNfj&DRq1&q0g6%MnlioL+!c{E2=MTp7yOhBoQ9Sg|yGT6<0~=m$83u2#BI9(C%h zVn}UwL3PvOCF+v@3Z_e~0#b$!)fLt&`+G1^L`l!@f2y824G;$T%zR-#*=Q{JI_+P} zJ$OiC=

s&yrP}|XR2iV}ts9FAPsOs#c?lbQ;1(+qdL#&zTzb22+w1qQ z<&{*Fd)!e-ac4CF@s#g^##bEp zVo72iUw0ZRbWPfeW4P!JRuFzlp6NgMUTB5knvYq({VKdV8AqQfE|^C+`JP5=hYPJ8 zT?4Kj)V*cQ=+1mJSo38{nN^B@9lWV5)x?b)k6AufP0p5DV8bx4f?!DDZq8{7ABRBM zygl+Y4@pTO@27I>JGM7TfjouszdNv%7GX!oRY-a@(|ch~O4BlTmLQ`=3c^&SCifEC ztWhwbNFQ`{woT9l`o?Ljz^2wh{HL`_Dbc*W!VO4Ux0fMVJMWxl;P9 zTSyY~nw<_v?z1B4xdPr$2cr%6i8PrbRZ^LcuI9sRgkiSqH)bO0T$KTx-RYKYoicQW z7%;5wWmsRy-26_v9e$u2&5+p2H)PZFTE&Uvg5lJ4>hDLa-AVUq^WIDbAYf6SkEdJH z7XNaVTw)elS8b=6BoyV$wpe6M!(nVr*Dmokl%yAe@8x^{Mt;!mmw@f0y()hD9=77m zgD8QsOrqkel+K`QoXuTD3q%;-YI`uNAg=O!zi)#Kl4 zgj;Nn(LXA=N)&M!iEp+thjWxlLI!akl+@_W8Q+|0iVlNkPC?hgd`pXx_hLmu=~zN; z6ug7~YFUNkSO1gPn30(!Zn2?F>!3iF_HN2FmPz{0{x&LsY662`mAO=*9yl z&hUA$)A3l67?;w18qR_~%OU%1Wv4XKmS^)F3qkmTN{+#X#RBl7Vj$CkGNQ63Q)ka8 z$;1>WZIJD$X^`xvX&`x8*m$xgj}_d-4PQ6ZjtL7;pJ(pl^C7uf@U{8=Y3OG6-LdDZ zM=OFYV8ToVh58Gy?>CRz(mpYh3`6&o&jy&_@NN|^ef6r{Y#lb1wzm~7k)KF!UblGa zJGi}d{@ob-XMD1zSJLX3f1flHM!3HsmXRIrKJ?qjeD3)jh=(!%Mxr_FaeJ<-K5KNV zWq(2Wo5p+F3vEu3+D?dCX>G^+-Xxx2f>6|4v6Dreb$>e2#{ zT)8fB`(ux>g-p{`?C`$l`ZrtycOqFU)UozLBM3LGcjB|$Dus6B!-gAR7-A`5TNCO2 zREpx!ZaTdC*jl=%4079Q$0IrV+#8P0WlZrt?FNb@nN%0^WQ)Jg2wZ97rMiiL#4|PRUe&6{xjed30l)BaV zo+g#h3Hb5Wb{~bZhcRgaORq!&M6T0S4_L6reGI=2LgnX6{`=*qN>qMN8#A$CO^4NG zZ4Pji{}XkhF~JeY^7wg*hD6?lkm-GR!*(S%`$ttU@r)$+g{eFK{3?a~d&$}){Ewfu zn~n7UkdDBr?%Y1j%r+6vYOoZ(`L^FI^<{a0*rwt;b?Ljr-g`y7)bRcgO{-r?|D{#O z)3g25b(ck+k!coR;~hL({BS$LaD}%oj*jTIocw0kjJW!m%XP_;YBrU{aJJsh@k`7@ ziY%)>qEO?!qiFNfTb=5X-vOH9$6kJ0u1ru7S>sWO7Yci;Vn0>&Sv z+_*Ae(bjV{B(r5z%^;Orda|-CP_`l(!lE%xr=*<DBjddD@rP9quj%lP4jw+OwA&jICk zMfxyg9%mtY;v}SD7>0@k+!aa|HrcxDpH50RD?WRu!>jGRNI;$#SYE|!d~3B#NwI1>DaK8e+#HQnm;_zZEg92?~( z5(lBt7r_zfQNi0SWzSl#0V=5x9G`eVs$ea`&v&vAtnr!|Q)2Om!;@ez;kmCBeXOm- zUQBkYIgqx>>jiMsDNOVzxjyV#I%nh9Sq;c9C5H&Vkv*>ZZ<(Gmvi;8;z5TDa+t0G3 z;6-q64^d}@zI#p5sXjX)lxk*BN-*azK;H!R?tUU$={@9@+4@`c0k(jMSKbol?I+UG zX$lpOLD$R?r%m+L(ThuGQ+>NPomU(5da~m?$gVbC_kpZ6AS{?=`pGKi2EGKI)LhOV_;JhodS)o&WYj8PpNKmmCJX@zZcD zyQFlrow%D%2?&*#&nU0(d;A*uw)J-A*K6MJ3yo%#iCeN@3sOWHk_H_p{G@=oy8YQz zB$Woxc@0%*i!k`x-B^S=-(dyM^YkQc2#q5M4JSO#>ph*ml!QLuF#6kXrEv)0Okp%C z2>=5AxfppSUmeKkx74BPP%(P)*GAt5FGCn9PAS(Vxvt>7!oNs$m0N7*V60SfEx{Y&c#=%i>502O*NheAML0{)p z*dw~gU)KAXGmU~ICLk8_`}j-~XC&ssLC^G2-n-oLat1sBdGwFZygBp1rBnTqUepS3 zV+FfFiU+dw=CO)(64( z*U`b!HU|y!^4QZLJWFBR8>Jh<;E!y%-!(WE^7yHI2VR3(-n%cRBwgwGqIwEobiGfG zoh{9dZqS#c6I+Dh~s+y@T2BH zd5x_!o6kB6H%kG!EpUrG8J;NN=J%sU8XY-IJ7Kp3Qe7Gn20p{TtCyv z^XcLCY=6;ub-DAjGjM+Q_@BJruJvCfRnDKNLA&SG{6lB4pkF@R8*d=s*lPzV`Nk~b zGI>g&L88Ya`;eDr{+wSVFqGPn9?7jXuaxdE0Cl#R{t5m%i#YtZ@XWdPqM@S}hwlPg zmDU}xFb8FUrW2ru8nj`q6yfljYnMcYi*;zWap~hBqF63RSDRe|!I7~q7F+Vhqwe~< zQ{6Q$O9t^PjvnGrG_Wk&c#Elk$F8gk`$}gI$>{y_=o>(A1Rc#NNuL909J;R~$TFR` zHM^4n-9%h(Jy3Oox%4-%K6^S`m?~4f@*~xGWtreF;_M>{B@CB*e1o7U?frjAyYzAT zVLY+_H-7iOeo}eTqIZ@=e7h-Ik57bGvHkwkmOlkC5pc>!r?mzsxfa~YE7aYGoXS~W2nSJRO;q0E%c zb;Nc|EtxasjVRQ?dl>eBQ(Iw>6yYwCq{#KipHz(CSkr24arv_b5*=Ji+-;KMp`dNl z9P`9XiQC*O`K$6u@GTc}BuVJMgc_EWclGdxbIK{WtEaaxK#6BqygJtbdx>4jw8?kS z7ob4Yu=Zz9;bYBQ^iyQijTvdQ;>v=pJl<(rHBEWE8l&N2s#jb{ows06A<%k{v)%ix z5`vSnks6YEI1sWQ|B953qgS#b8>j2X^rkOFXufdcOA$@L^4X=jYQ(K0Vyo?gXa=Nf z=zQ6~HC{0o;qAb)Shge1&E)e(%Jt3k$2bwA2>7}IJ;_+FDN`?XG@n&n;C*7Dw2%Ln z5g?)88*#;L9AmuJxJx%Q__z2uJ^`&1XJ~`@G5BjU*@6?{+0BwA(N#y9<;2en`rjW` zAoY7dhUJ6J?Y249W|ea)yLhDf+s;`tF$%36QcCi&ZJU8~r9rVS4>UuFC49LE+FXjPPf{}H|y>i^QE&9k%7 zt|W&jkL29M&~sj7pSx=EFK-M03uid}vop6zdz!)fr}FjqrmkTBpHs486G1MiZDAu9 zx*?_V2;sq#u?xJ*PYsz1Cai@48@G1_uCS%h3Egyr7})D({vZFkFR`;O=&e7!g{@Q) z6q(#kEqA&3rI`2nm^=nO-Q7%z^#xo2BzVMM+2h%yiVJSJBIy8WB+V?xeOIs@82*pQ z6UzeqWrFPw{DaX8n4i+E5*OsLID8OdQ2^@-@}7}89b;t0hu*|ExTKaE7V=&_4;wLl zy>eK;CHT@{(|^aFH8*19@?37y=m7xcODjBwKMCRTuCQ?Mg&H|%9@Gy-u(#+(19R3} zXbSp-@5rCCUj(;9UrI`iqE@D-?pgY;$jy+)O-mo+bk;9|$cF>_Mey)vAF4fH^&81& zRs7#CR@Hr!A*JR+7Kzx(ouHnU`LvOQzv%!p+ZlbkphCZ56+>KiMHQx&UdbA zh-M_z7(JDWDSP&KM?uS9@*Ekuu0LljZp04}-B1W&;Qdz--TA>%*!}{#y8UMVB=(Y* z=0>$F^Dk|tDaV5b`8lI_1`I5mh#(n}^gt$#f%WqG^AJv{S^(v-y1^zYT}Rf(vf$Yoh!ox(8L@!z5{`9h)4sQWr-NcbgSDb=l7B}+)-j^f?`ZoJJt z+~xhr{c8KU8P-PPLYvX86JGs75+HDXAq+LVpq}^!LHsV&o}JYB?Dw{SgKDEsfH-%Q zQa%|J(Li}hQzMwCA&bJ?z?=+4{dQui=gh@joPr-cE7lLZ0YogW36ophn^OA!b4Zzr zB-(W|q|Krj(e4GlfWEwX+xGrG@vq=2jU9N%yrw;S#L#^0&3{0%1Q=iPpoaCnhLGWT zy%F|1sW?JWL$SnZ{E#lg>Wh@X)zxo5+ldskmDOumSDEJx6yX}^-c$4U)f)W;r_8~Iwx(RRc`eg5KDDJNxYp{Ni#&)iZL5$VR?BfTEKI4*>}|q0*GOG%eI2#-3BJ zBH$KGE!gXNcw=Q00$Zx5VqGtV(TpFHE3JveFz((h_<73Bs^&RKG(QXA?$yV>;M=7L zy<7}Llqz6=TT9>H%Tcrp)VHE@hM)RVUp1?HDZXrPIQpdE+ivjOS^I@|_G1RuA@6xp z%&)*I=kB`~xPxs>`D){-*{<1tNTmTP{(R{-&SBjboEK&l9Pgwgy5&s&V2C@RSwkr$ zE9KTYSCX3iy&1(^xu@D@t`!IIdC1+ET%{dT>h^Fq_NQ!Trz0xI`Ch}d>RXWyYcn}< z-nOqy@8^vQ$bO7pc<<%-v=C;EKJDm~=Rs~?C7#YccEQQ;Ap69tS3fPe1}`OZQlO<4 z33s~RAmtC$zfTwct#+%8tGr`0Un|~PYeH^RXr7;S>Ff(pj^Sg%N{vKPGs=3AD_@Xz z0Tbzj=aN(#G$-dKiHJIkjhfIqL($H}85pn^SrTG3sOGKCmPo-}Ib`!N<+^B|;9uTP z!j6CGIKWi|xP0AYBms^&E)kW1NjH6$05A@x58fw}>VAZ&S~w}iu|!`m^1S^#oOcZ= zKp{nJo)g?`gDlX#L=UtXm;q6^7Tu5L<7ri|4{1)t*Y9zh`zkv;;+SNt; z6_TuqdHUtsO>g04Y%g1ELF!sW7AX9Y-$TYVkvd7>rlj~=qq6T!#>|5}`hkHh_^0?>U(Hjz( z4Mo5P=|NB<9&9sX!b4v^?LmJYnUWQ7! z^fqOZyIGQ3@PqXFxtT~D_X=lqsBdq~9AKlmZf-Ib%SA#e!mQO5%B^2aQ0w%8Kc8M&ib z_f}tnZ0x`_J&2}%(f)le4eXuvkfWdEkAW-KcLSd6v8^soA|jv0xBW+V)bfs3Xh@w| zy$#1s{v`2<((T3pPT7P*=XXgWFZ3$Zu6pp!2$-Z$Cj(zr*e;@{#HXbJ9 zSu@*PBYxGxL^v5F7y67yxgH44Q)*pWF=wjV<{p3I*z5a7)MyZ$Cw&c#e1V^B;D~=y zgJ;ZOL{kjr3=Rfy6n#aAYxf2cE-8Mdh4qtf1qh&5Rk?@XUMl2jt=#{vP*E>k4|@n< zjc)k+Yh=0C5cc%z{Qcb2eL3^ow9PjxK0N{udnWlt2qmq~2|nzC2f!3&JABjE{Qivp z>4-es_CKdhSgT;-%^QF^Gmd@48;t$T6gb7N0Z3WmD$CY+n`Z6uSq_ZH>ng* zYG-;=Ne6f9!{sOT?!jB6maELYy0%z;jV@doTsIgKe0V|h?ixC_ISjOq6a)h3F_Uk2;6={VLldvehGkp=2G&&AL~K_ z^RAzQb!1ULG^yt!%bH}Z#}Z&p5{@H4fPc#MnMj7nVbvYXha!Lmkse2!N@2g%~IS0kho8+616H6 zU9cICECTpJ*b2ZbE5a5=NQw~9FLnk1Mf%8YDB>|gq`T9G2^ksiIjx6bt7~Jpn~9Hw zkh|qq=JIG5p(MDIC~4?hOQ@Ims|TqELxaCuOUwChI~JWwGf?Osoiy(xJxz)-PS2f` z>^h@g1e0x{I4YqnWWBjxp8s3?T^Z>C=0yB{isYpk3&b|(s)@bPG$NUhf4N!W{cSj& z=UVGeC+XOKci$g~&SkE^9AypWrmv`)%&0B$9Q(fHB>2eCO6li*xvj`KOZ_X@yGajD z`+4Ct{GIG3*_(oULGkwf^-IKMqit-XZJT5%;%o2H%=G>iYk2qnHfC#Vah?d*c3c~y z0cwNb;aW~q`iT_0_cUU!rV8o7nHjf z8Z8+;X)e!ZYgy+&SHr@hZ#OkUoUEM&2yV`P#!qq(p96wy43v+m-=D=8D`x+Lm%!nlINMG@ElVtm$lu7TH{vL=of;Alc`gYNkO+PV%w>DmqVrgOxiIJ8XN^Mk>*eLdc`f=qDD7p8E)C=OW>6Bl zA(Hl@^NO~Q)O?@1e!ACb!Rq(fTYBRo>EZ~0++Tz&qi+~Hcm5FgYrBV3vZn1W`j1qf z7;B@y+-hAt{s%53Vd?QAJa5Unlb!JVuO1$J;<|;+;~v4_e38M8sNU=1yZwfQr@lxW z{!PM@nJoNjKc2h)0Wh>+RsQp8YQX}U#Nu1~U|C5K2ifax_?4AHR37ApjD!*U4tp5pzsEf)6UaMAMXBWn)d(k^tcg9L z$^6UcmS_I7VPnzt)wuB*H#^NHTgeZh@n$|T=}k*<;fCl)Cf6DD;*6jq(Ps8@QbCg^ zgrnRa{CD(Gc!|&7$YCSU!NU!wD1?atN>$R8NR>HuIkP3Y+t2)noQS-Ml5~cK)lHZI zmTk+2t})NB`I{P^-}N65`T#wf4Ih7<%RYakig5gyz;$MA<|fzEqHCZ;yh4PS*%E#= zoX9K9*6-eTDo))@`f9u;`o=geb~7`R0S5CY%N|HxFTvnoxxas`m6Hnn<|p~t?wD^; zRpEMJMUtbgnIJ(zb!62Zdgln${WB_TLMaqzBA6islze^W`;l$z4ZBo$sjOyZqv(%F z2a2Dyz_0=D7yZImH=CPF177#K!D<(6)`t>4*E|PP-OeOu*^q9Vz~MLN`Q@hs#dJpn zIuJ_ISQ@LJTaqsUBUEJae|7uG2$#WWcMxImCp^8L=ccTlI@85&hGsoE)cXee)o-f* zsLCkc`SMok(IZ`zh7eM!@eRJdB+PO4kto;$WCMwAxgaE3&orB z%A^nN{>;O2G4wZ;_-F92>rx+Ie)m9X#$1k=Z`fbMuZj04Q>2=WX{>qA7nwEyeRe5B zXOkWuN9-n&8_@jY7p<>%0ZxR6IxImcEY8kbo|UnvYsQC@Gte5JV2LFfo|r6YEW9w~ zgTMDr=Co2l|KF9sC@Vh~1(X@p3oP!vPmVkt1rv@}mQJjQPK*LWS;_%{+naI>F7(cPEtfWX6dO+OM^j)QQDlz{DkwZrV6 zT1!*^h*GHYi{I(yGp@gWDlla_)MtsgCps_4wpk7@eSz>2{ZMsWh(yM zxxhbrWo-8aH6!{*8bf+wBc^4B8D`?K%wbMvl2y>ZWk6Jftqc|6D8Ht~#pbl@>wc&2 z8XmBdRqn)Vr6Vxl+h0Skq`e?o{i5&7T|=IO0VLCZRi^PlYF|mz!Zw64SDf^KNgFYD z=m_Xx32s{oP&0a-yHV~h7iY%%kHPe_VvS1I8tmHue_vx8UpoKIH!0K9iSZTnL<`Tp z6B$Cp_B*%9c}$X&mOa!@dPX(TDvWWTLj*mRByWpAt%FFn|Mf${`pl|jlma%>ru}@J zfH+qdS9*!2i*(iNDqj>$6lkWBJRi~{an!Y%WMY#bor_y>KCE88|I94f(_~3rP%c)9 zsz1LtcB54$$eBSCSZXFl(>YFqB$WwNq|yHgfZha=jd?uO`^i0au^%;56T*lsyZW-^ zNK;$CxiqLiJa2kmgd>L9E-KeMUjdo}enw7i#?^fddhMx{6TvcJvUc@KiRQx)qMZVH zejg}&)+<2DJfXDCleITI7-K0ADY>HAl?>Y5ig&qaZms4a(dys0Oegot>jZg zhdi7t_rWkr*B{frqXXV1gKIJzyLeOBoG)`c5A`}83QoCCr1ck{ zy_*$xE(pBx*{87KH4tUt@@=A(3I7J1OCdjiBHMM9iMf7icti0tcMfC0=2_9pG3SqM z9C))KD?)`>pnoL#Cdj?CC-&_&OZn_I{&DW`{Jzq?S4Vk)YXi=aN}toR9g~2LouM4H z8ZI(j-qeU=7dt{^?#v>`2a-sJV}zt=2^^|omzeR{YuIsIPI+;N``G@|Ji0lAHoMR`@B;`#F@nO8WRd^~72sm~!$HXZ?2ob$gm zqs7d^J!OLCrOPB5R5RCgA;OA1-_t#j$0fd(r2bfx)CM|fc=eHnZ&XLW3F*>2y zR7kn?ng#gx|L*L6-bAC!+jgZfegfYg@)3?zVlgs23wdkPmfw2IS9TZ^xF?`1(Q)_{ zZvd4ph4h?cIM)g6AAdoq=fHc761mk;O_p2Pg^d!(3LSMk|K_i3wl0AY;-52Ovy^5L z8Xnkw&0BfO8t}`e6$w@W=w^v(;as*bMSDN)H!CJH3qJQh_xhS=)Jx&dkzK&V#KQJx$VEc~)@wC0S;3F5tz=(K z$Q4REg#Y!nAlBL(BJXG`zh@%)@JRP=p?SezoE?kg)a7GmTI>?L@_e_N%mP6YND-c>bR2=-pM)ePAGy@ z*k^pMk%`US9c{HPvd%mDGO!SrREdBb#9+)gZ_2lqI_eHocU{xo8SjG!F$Dl<$3{ipT%SK zTb`;(4tZ8fieZBF|gF!^dxm!hthuU*`BX0Di6 zU8CxHUsl?bmIlG?TxSRU6eG-$-_+nqt5NgFmV5UGs(oI}6M?UIUDCqFrRw^dSter7 zdog}QLEL5Oje-j@jX;V#UwMssaZ_0+Sq2AE((lbHLVuW=8dysFYg?#niCmHBls8D~cGE_|MQ zRWLZlgiVcZ*+O~d^#Tw7i2q_*D4q_1u|3WCc7WIkli}Ag)GsfqPIz#q06Rr9#Uj<5 zEl#VK9j{kH#A};##lMiAN^{mxk`{h2Re~ ze-y4^u`M)0ay#i3t(HHHgH*4?=~4mirM<}5uM?cEwA8APz}<)*Qkd5aY4fcWUasmD z$jE6e_pQKaqlOLAD395feWrMd>zb_AnEdRT;@tl>>$TY5Kt3E)=pFdN*yN!TG!ba~ zX760DrnFvOxT&z6$q5MfI%`Vr@4M*&NEmWgKz8h|{oa*Jnu=-tgE|$f63lNUG^%`q zTnc)8)v@Q%PuJD0>42e%|7H(bTVt$Xf_Yy7>vSuQ-=w+l>l2Rr7n9v_v%G$3E04YG z^B9W1*F=E=9tT5s42RD1W9hLYx~`ImM*=&HUo*G z#C~ep&XIWnMK@PQA-m%SQ_fLS-cz+|_vty!V^7_^vX9S+`sUZ39S`dt?vBNXcD!(( zA_nfYBw#_3jwCS;^Ur7T$6RmL2OZgO{dWLAuhIu@W*^Sp-UmCX)fx4+1~+_f%lY)U zr0&lKJ)Gg_izKW?z3zUw6k1D2!1GffCaZh}|6S?Cxn?g?W|qaUB>(bzD*PLT`O*L< z9Sdpmr?zQS*3A^{gbFiaM1%y8#ZO^r8h&L}=$nNh#dRC8`+gR}4HmFC**0P|%ogqI zPDPqs*3E8o>fXPvQ_As}+_&)ms*nWl$x%2y_<$amZn;a%GZ63=?#X>`G(Jx_az|ED z+Q?9|_hY~m^WkN1=&b(ns6l9^LW(5)iu_4pLFUZ^fkFZa8GLKx7$Dt6dVc?N zi*6CfB`%ED={wwN$gFolRIB&d?BcgTiz=~4DTsnP2<1kd`}?MPb0|TpV!SO$(m6ev z+h)r1G+$is(mBJu=C^wd@x_j0Z9*V{7WT0c7X#IV6s9}MXN<#=U(#oyFU~%~bA#)U zqBB>;(VMG^A+b&H(90ytwG7a+)(5|#K6{oCvFRo`u=&yQb5nM>A;@&)d$%ja4+fh? z=)b$=0BT@$&@c)Wt4k*Ye{i`7MkcMH zy>L!{C3s76Kf&Pxm~5OcgxtF8@f-{XAmYBsP=Q%K5$m zUA^l^m?P__R3hO!xl>9Os=oL<`?ub|G$m!yY;kz@&y{4VO{#27PTFGrQNQEu6|L@} zgx7~?zpY()DXnmhQHGr{&a^25s5|{NwPS?wlpD|3efnJsCq?bepW+Jn9RaqlzHO-dsiha>n6tM_^BD8 zTR&BQ`-Fn{;FZgp^9!zt?^ch{3O~`I(5J8_&-qa_8B3ynUetqqWo}6+$ zYAeP@1tody3aMh_K$~gMdM0V3ZA2>k=w!_!TDr)^m;Cx#`og&FzaI58=zX>{Ff;aY zrchifjf?0Mk7!Rf_EP*JI51CBQZ;RpvHST;+Hnin9&G5Y$^9*u%ty%u9+*jH*>#<= z<~drMpUWi{+nwwClBox?N(c%S2_|VP`~q>G@|4(CfUAUhh`~)VREU(61np64s~$F< zXrU3(ML%*9yNA;jGVv|xzgI@=(8S4}T(Oa?Oi6xU@@+Ypt8W=!#4T=AEoSGd(NY0S zHNJBNYuGcWuLKn>4Gi1xeblY&8hSsNVYBozm}U|4W89SpK;7mj&oKYl7y$jtcfJC2|C2DN3Zi);M6xj2vXT2-wCGMuszQ9WWQ+=FQrE_ zKJN#>D1uYYupm+G+EBOB&--XG*dm|k<<_0`4)V(sBH(ceTbBBsWAqLFPUlD4+=8Zp zx<++ifp>y_nDd`TJDGP;+u{4dy~$>2bnMjy(^pDW64Sr&%O`Rcy0?0@Ji zGOaai;LYK#-iNX(O9m;ys`;Pt_r?sLuYzPewFSaqBZXYT3Fl}>29F3ALATeUe~2wu zcVlHzxISbKLh*RlBx;Un^ZYGZyt>u}FSnVyGtPcV-0l+}$|a8_lreKJSyGpHi(d+1 zuC{&7sQLnmH_Sd#5!yjlWf4K%3qk7sL=PKm_V1lWQ8sW@3JlNuM}^Z8ayy-%-g?eQ zzUtl|ZkjSN0G|%hJ8D$iCDQ7$>c`z(UXVJxxVP)fS~YU;rEUt`wZ^RY6KyTN$zCM_ zm1rfq&=7=QC)U^uDw2yPfU`Bio#m2NAq*Q4*<3jge3mO^4yrf)B=sTOXQ=|zo@JhB z@u^6^jYG#c;mv%11^ow6iK6ha4~C1lQW%SLqYtS<^@&L?D{cNRoF|M0Wf7a0IiJg( z-rmXnC;3T?^TXskAJ^&bV_f*_-SOXtlDYivWHe9gmD1+_90oGahu)Y^V z78wK14VTHQQH*I|t}=BZJ`O^j4;0Vk(G-HRYbb(4g)RlMD&W7R2&)ew6PaV$c;1fe z6nNJLfBoPqk@QI|7{fL){qMBUpvf&+S=k`f`>%f5o@#_`2T%_tc0CWcvAeieDc~EStQjxi2 zxi>#-x_#Lrcyg?YdWm?ezQDM|4$=mI5PY%3^)KhR(8!DX?ya33$TLQfz3TF?m^#;X z&1r60V0Tu44uwPI-9z^Pio1JG2ne4cp@trVX-F=9ZqY>F;1~0K@}PoB@EE2V;Hg6~ z)`eqDPCy{vYRa&sR2z{?*{P3p4-=@co7Yl()cwmt0za}2!W|<*ZE{zz*YiqgtB0oQYBwuO_<|u3i<(K>xukn8-l`i<5UjazQCbth>)W44H zevA+RGJ3tw=`mSJ3bevP`J4!PkTX!{{&C%(5jT}IKSuYr)434t9CE1PkG@=)Q*j=q zyv~%P1UFs{Y>>lvr0=!Oy2Xh%s3wBb_V3?Jy0W+6uQ7-?Qi?Ejg{={qY>sZJNms94 zxh}7!c_}AteDfkU-mS~DyQHoFf2b3!B@SU7&u4?70H(ka1OGBB5A(6S5 z$hX7%B@yncE@jGTs=le7+xOlaDQrH=-JItYvKmqM6vD_{Y$6mFPa_dW$F%saKT?GL z3_@a~Iy0$w8D?y`3D7uU0)0i9IOoN`kctzd!ge{EcB>0&Fb}?mC%L`@|VA42)f3u~RrTFHNCndJ7U!|qS%hf$!_Wc}# z$S*0Ju_7~x9^#qkz&`LKzU6zga4<>HKjqKS2v)z_O>zO^%?2ff358%^e45RJ!ZVx% z1cvYa(dqgcHQ|+h!X`W}=;dR2{F5P{#^b{j*B1B#u2`s8f?HP+sW`sRTLyYhRfC4H ztxWjDdKGi<(CM)V<-ereCvUHWCXM5VFVA8x59(3=WPW+Xj-Fs9fX&8XC*8Fn{6y)w z<*IS-nMniYzKHI)AQVsy7}DY zyMdItZzh#Q$wH)CUK`KRoNNcyC2}YvoNit!>VKX(l={RoQe}(l_&+ct>^D8dl$<}n zDz_(Q#6tm8LI-`g5l>aFE|a-F-9Z7q2ABDp5l@i1w(}Mt=c7zoZfO&jQonCF{jPg1j1(uC01P6LdPfN4qW?{z zr^QK5o+3gFa8bvvwg_7twi`3M_a0}Y_#y6yKZkKz>_sV31^CTU)$?6R>Ry+6v5V>Y z(Zr2XRjNlEdNppzLG1rI*vuD{(fdQPS)NAu@o$3oxrD8*{1oLcjn7X6_)fLD?Ro$V zG*F>IcZ^+%Omv};FvU~RTkuKn-czk(H>gBZ?4<~vP;C7^EQRlj^+>*Ubs#4rmzx3E z5@CY=3sfw$tjiV=FGq0^IW_JmNly+d$3rH{&_4G@?1s zJHOX0_y{Cm5-hneJOQnXxL-raah6$yCc06n0t@D%d=Ka)uh*zSid-^FR|HT2yCM4h zGaB2LMAu(k>I&6HJ@H<`nWguZheB#vw1LPtz?7ko2s!bk5(6wAzE$0iOVL(j*m~+LnYm2 zfcAY`s|nw+1FvEDe#?ZKwf<;iu2meBrLh8RP2O@)&v%B@|0LiSA1E0qmNE>1c-@n= z-4N%{Oybs-uUFfa0!}k8q*^S=@J#EvI*qsJc7v&*T=q3_ZP|jUn?lTUQk_6fX_{@0 z{aQhv=uRg0=*k2^3-KJEVA2-JN@gyEV{inU(jc(-_ObK1fEghg0Hn+Dok3~vK7I*$ zcO7yoB5BFB6xa1Z)Ac~!AJbly6@yh$31PQ1$N28!L3l_#X5+)glGk=e<~U5h0;|VVK_}-EyK&8E?}^|JPCbl;zlC z+4zhRC@fmpFVy+ALPs*7pFuo2_n#&{20mGwvOc-W$A@ds=eX@P}Hw#2)ewcDcDCUc9+ zEc@ghsF8*X6lL|lPyWrGS23>cJk!3T8kjZmW)McgNc9#9^O><6>fUjNR+0!mi9pO7 z0LLA+b37Gl7C(pIgU`9Un1kZ!f|>RSe6kbI)i8Pnvd>TvxS!z{at$9(F!f)}2+^!E zXLG*{;=a|cRLbdJ8exH+W=x3P;gzfNTH}EDu9gJ+%eo7KeW(M7BBU<jsaPcQPOxJjVM8{L^7d5Q#?9et$ea7y0aD@TfSmgTMXXvSe@U~aMA0W^97Xbh$9MTXT^*CR0gw03AQcT{Q2|DQu?C@PSrfiBzFLgsoFJr* zCH39n{=l$BD2l6$(uoQg2R{ru6HvZUs!bH}{FIx?&HbM|Nx68>S~E+f+b0wVUDnNA zXi3Bd= zxXYi21-i>a{elO+hLvFrzmb32W4ub4QrpuDjl}B0yzX5Sd!iOmg2obE%8pCjJoHA| z?bH$6Cgu5O-8$lVZhn_LMtp_)t$Ezf8To$yhK6VFJKZzWMjRDXS9rQHdFyI^4Y2#y z<{x=;a-N|-57KJ98!T&E$n)KQxNzi8uy5?Cyc+C$X}dYmbs0%;$i8ilsX{6fc%BrR z4bN(&c$b9N?jC({&y{cN*s&9DaU{>na}>nKBtyQ03W`M>BM92LKx(PxjjI|DC*Aq zD7HoQ{Y8*=6y3TMkZa#@{|xsy87!)o>y@=Cm0$*4VbirKrfjphZzVWQa5MQimMta> z-h~I`){G1V@@1ByzsR^;7H`7f5NC?h8n(ZSffE-Huel(q4kj5 zcuMr!Mk}Lyq4;jtC0_8{W1FPZPVF$F++et7Dw-6i=D{yP0;vr$Ay%~ZHBF@?n6$aF zMLO)BxhW7D-)-_SiPWaF`9J#tGa*2l16}~v=_oc(@hNHigjl3m_*$e#ch{Hm8dX3d zH4@)k7H{ZnhrhV4p7?bSE?h>_n$rSNAA%cAR@&z!@|?{~E~)GR(O$ zCmG*yd!oz5%wn?Q|GH>h8`KyoxYA8a?j*$_KY0b0YonQx7I{Vorx9{ZT*3=X(w^M# zYLHWRBLnoNyfnb+Esh1s5!8dKNPI*3qa3HjE-mLL&*S1Y?KxAe@o&xXRuwQtX0!FW(LXL{StcXe;5zDMX8h~S*ezYu)y?Cr z8n=f@DX-A8R5JXRJ426uX!|nWqX?gGb>xyXnZJhJR z(I*p!-pJi<_RBuKg?k}Pq+!4}2MT)T(6`!2oQIoJ`%P${{{lf) zm^7mw&S%zH?3LLL1&o9=Z2tn8PTN>ihkT>fqm15nzj0T!FY1ZDz^RMlD&gJLkNWt4 zp6K$2hT;kSjhl4&k2QTY>P*o3WUm`voAGMJJSN!Qz(gg40T_2l#NL3 zj;^!p1S0=SH$MqlYdOT8t< zp9gjR%j+nvSfLJS=&2t_xff> z$coB!JF(p|DFOBZiSEd*cpd;ZK*+xocn`6*gz}(Yp1;QbKph|N^>Q)%3p~hmk2M~( zRMPz_`PBCG3+0Yn^MJ9-vn8$R&LI10#Pk>r`O@o5{MS)~nTb5!iiOkG>I&Zs=|s-8 zUtd((p3b=uJF?X)R{vU0n89;O6z3>>VL- zj9&2jyf`qt&OSBOH~v(d30o_Z-xX1KvJjedq`F|;%)dB+%0bD8JBJ#hf8f^@`sa(9 zl%?;Q2~FbHzc%af8lwdy{CX4}g_tH8t-a{jNPi3h8!$Q&GOY0oCbHV&ZWaja^8Z?? z5fw?R3jWtS(@`C3OB2YjUp~O-otAa?2X8R!zk1#8G~sfYbqhrY&ynwc&Dvc}FvnY; zQhkT!MB}?Kk}s*Bwv;XHn^RKpC(tn1FvWW+8+|kAnAFk3qQYx!tbp~43;g1w#QaZbY`(GU+qil@=5JNuiZ7-1SR4I3`bf(6s*;8zV zuKi1o@>RS~`W?guelXyrQFmG^{$)BHbUW`99A(~s7szQ^fOOefzm1!`ReT2sT{xZG zb5|51QQxm0R4co>wu}Hu?9ZuRy)=4uGPLPAA;b)PR^t(B5i5I&2R+-lWD)ipTaxg! ztTIXpRqCcW>P+c7`Y1x5wpW-yV9G%JR<*{j?W&bh7GRTY)|AGJi7JS;u&0|Nh@ zG7YTo|^{?Rmq(KQHysE1sbms%pp z_ilBm*7kcQb(r6DbL5GK-8zVE8}prleO3Y|8GGcN638LJOIR(*p_G81Ei~2Xxmxjl zcQz-J%RVp)3D~jt6~%e{tnA~{^1lBw=JSN-kbO+78T`_2jGr76I-qXJBIkm0AUH81 zWqk5CRo$6oJm2Olyj+#z=B@R~q0I_BsbV;pI>Mg|_l(MdGh1gv2oyVu1oPpo@eLwB;s(Cu*Bg-V1%HgNHERj5ngNSe1qk;y7U2=mk z4?}>@{4Hu8@pF#QbHTsmxc9;2{nKzFJ;$tM{+k^=QhC7?@hrGk=Pe8Q#vD z7yIYrh7(%w30J`oKkvdQq$A%q?y)M>EpxN?>c&K!|L^T@zU*L+TlB6zGTCJpvEsaY zf>Ib?xSH|{B8ZT*oC-y@&lr)v4I{PldXOmN`!GO>%!fhKA(z*WE{R%!m5I-r`e+xp zNR2VY^zQ4G4#y}dI1Tk=;qqItsR$+-A5xJII)6k~VpZe2e@cj1Y+N?I4px*@H@NHg z-(iZ=6u6k7$=i+t6}=6lcd#@y+pZbVr>Q&E6;}L1vM1kM zP>AQ|JNIsKKo4kx@MLW9Iv79Den~deH$DuS3pbv{Hmx71!M&ZWu%qd<3BaqO^LjP6 zztmWM=IZFYqCH^J4(k)E&$P!T+sS6nwafJ#LV*W?I=c-65mb%mmsPb=k}UD+bBs$g zpQnBA_AA~8dAh&F5#10}Zo-V3Y#CY`JDdCUonhurPNIu4*%Pma8jTft%Fm_6Nd6If zDryx=mlC7&a%uNbJy^jjC-tGzbGdPHYn ztggG(Ei12*!;IC<-Y2D1H;@Saw>UR2TQqYasBAtrmYY(`st-uqLHTr+EvNIMl{RwH zwfs3W@sJGTb>)ZLXm~`h!9B~2(3ES&o*ZE}DsCTE=Iv1E9lH<6ZvPS9`Nr|1o>u=4 zn1FoNzaKrLL$!I`&(u& zNny(bcw#(hu}WQN$|~xu9MFKR>EGeUeUEO>euvp{QBwvHKb@kr*?8oGE2Hh+x`?Je z&Axg8@3Y@dd33%}#2o?te-cC~iK#}>p4iX7lX%x&cJLqZEfnM?JG6ym*-TZY84Ys8 zNg4=~A;x-motEM*h}1WfQJ}{>JIWh^y(d{b03C+BGZly;_^x%c80e9&za{6~Y9bLDJ3xWOsfsvY8_!9lK z>R=_;my>`(=*V*Ev7)ET99DOQ%I9Z*U`_1{ANw4lqWbaL#1FZco(3f2Hn4my#fBoM zE&7_*VEJ>clOn`hoxODx54^DfYo&kw_iwF}cW@9Lq3PR*erwymmnpG>UA!LNt2iL% z;m5vpUbhcz6MhLVc1v1+a#fb!snPn~e?_orEb{%B)h{eEt*xO_zoLDLq7zRr$Foe} zl-0S5XFUwYHyJeAzB8(6b2q*Zc6fD!kJTgO^esdGsNw!i+)cCVK>PgC;&3h^Qh3r= zva@5x)l@8Ia$iug_gU^Q@?8VNfkVTgp@y0syn{>egn*;2r+#ovhJlC;Q}o4S+!Q#0^OF9doxZ66Jjj$nxt!P$D8{ zkOVuylOh|w;>lv>*Kdx1Ul6H-fe?}5mhg?lo?fK(HF^xY6PUDN8XWSlH-l6nA>H)8 zMz>>6f;UWoA!spbXueyjAJ{wLj%FGOHZcos76;{uTBv$>k&J>uPu>uU?--s^ZlVt_ z*4+Jff_wddi&4Tph&lI@41#Nbi}hG9Tg2X2)W^@-5P;w+xvMdKkpNNl#GJnkmI^<=BJPK}_d*CkPIyx42UpeN6D4VdIM z?zU-M!_geQ3*8jg)VF8+o<;g#pS<{|lViS*Qw^N?#iN;w_Ll|1Y6%}jObBD5dOCGe zI<%JRs8@|sI*xn>63t$rq^tRzjU10}CfLg3i5z5q3tBl?woSHT2{Kr_uM0(19m5e6&-?mvWQJ?wD+$Vu}xSR8)f4UF+Lh#6ZQ@WjC)Zukt zwiy@UiS@58)!Iy~Ti!ksrls-N0r$uF8@_G#%8|_2+f?T8e$R!Pvwh#dO*o<<=bD!| zQaFZA%h%0x0*wX!twBD8n4#@~scJ|Cu*1*v=>U>DYpfT-?=_M8yKbhHe3vE78X#n}y*>bCr6tVW%v{17k7wii z-ik66)uK?+#dQmF~57>TrE9 zdn}ZtkPQ=Vph>tfIh}6d{ha?P7cwqe_;lQ-@SqWYseL?zx?m2CN5Yiqp3qAo z4>&u2m1pEHm!7KvtvVPqfCWO-y)J)s$*dTHa}$)DS6te7GxiK&?eZGa#bbnzICE3) zJj1FqA!YLmz<4SW($RS=WHO>b-aw(YuMN6bLg256c09TFd>{w0QIBH35h~;Fx3S-t zWSJ{aWR!H2G9ZMWesQm^bvLFoM5|IdzWabzX?_%0OQ-;fy7vN*)Qd{|_wdJw8={@8 zxNZoAzFdeRRqJiylFMtw+F!Tm6z+-PacaHb{Nz&(4cO}=*h%324!aBc;gf-jZ}B$k z@gedrX{u1VbOayj-lopw@b@p#J#*dsdf}gI{@!D*q26PmA)8IxvCUpszOhx2vb&*7rn~VoHcMpCs&=1@W>Ho?FHhBd_hMs#$v_D_i=oFYbbt1 zU7NHlDe~X$?7M&Jh~0gb31dnEi@@?~9Vbul*G)RHx351xYTts?DHqi(OExb8T^Dv= z?Lw_4O;zW=`+V*4kt3B=arWlyRs`QS zFBAVbpLhoUxj}=voNKc^4t=&=dWL)vtgut%dPg= znZ&y)Hbz}cr!L)f>y8LAOqEYj6M&>su_{KP7jNe|J!X6eDHY(iRvCcP%;bTX;j-#x z#A$;M7Gsea>bhJadq2kvS3T_YldKrgpvW6Qjrs~3(C@$WL)kd^kA8`@D?;>t@jq-G z|7fb)m5J=l+`H?f{9w)}M|G@aDXHxC{SSXx>ezqkdEbh*IeeH2{&j4Ymrl@gq?Ntyc5-02{O8DEhld`qrFqvYE`a2jrWYiLGOb z!45jTBBMrR`>PXpqB99zM|s z*@+#94tIxctzTY8i4UF@2160Ain^af%R0Y7d&#EFBAEnM^j_Ny>J$>h%gwnIb!`eO zEZGxIRMiXcNbe_mv zvtu+X&2qZ^@bR|4pV2UKD!0&s_#+2M7P@4Kt)!5UlLU?zeXQdHRlJkRiQ?q{80<*@ z*qnK*38NLPIa1h3J+Gq;a-#7{YH~gjJjqpOADJ;dxXrr9$+6u5o6Mi`z>B4dZ5va? z3pZylj z5Z_(;)#WiZMLgGU8Z{W3^L^9YGYMZ7n`NoSuv2B1cGQ4k_INj*?|4_CkRlZFdT)p3 z1E_}_5(E4I{Sr%lNVN;f_XeDqzI*CLze?qz71H`_2JoZ?uojRct-g`IJ8Y(49euPSBl!-sREe_tp! zdYNAk=p}(IF4~)~+bHK!$#-HKf=>nXGR@_Sdx^c@fe@m7UI)feofM~uK{+&A*I@%vcGHdX`bI z-A2!})j9orz)7wiV<^OdEcvW!3DTnQhneu$T2~`XH1gjCsyXVOJ4oPLB0AH&hy-W( zpTAS|MDy~$;ihQV^hP`5iffYb0#kxwhq%z=p!C_W+(1vT#4+FSZ6yd2e! z=W_HgW0~|Gy>~yaskxP8!qh6dZ}-RsuwK}%VD#0guFE4yA5m}nJP9yap4R{S4g9cH zyIHr0_)KaRR4(_-M3|7%$YLHlFoKWFldyd`^OO}=;NksUVl+#oI6sWJjOi~+LEXR5 z!b_mSr7PiR&p&O9tKTFzV~@d{r(=zF2xdY zb$RcUJO}+gL_T&Cnvi*u%!={{SEQ=`QI3zk(o?sEv}eyvEUmoDJzIE^R=RUB@n z(fe9AIMUf?e$)V6>3VkQ)|PgznmZa7Orzu>ajJGQXETm|4Ic1aLb?)6P|f?=yZslt zLJd)Njk44f`Z!q0Xw1PSnqHNSef`#5_T)w51GE*WJVzU8T{ z6@@o<#mtXJ7Qnq1S7^F7`jovS(A$goPGT3mS%)8cgwzUd%jSeC@Z&9xV@w)>_idqd zuMHRMb|N2b@>qUFtj@nR03OWGrI;DoYiTA({90lfS(ZpYpt)5a4~6av_Le1%Dc9~7 zbkP-d$srFZ9-<05g1cXueytHgGY1HJXI!iYgaqR9h1YBZ4Ais?eZ;RYk7I%)ooNdY zbVhFZS2&yOvdNOAvuIBznyM@9yU*6h1Ga?Uc3}obLf_kv-|8w(+`a=iGcr3ZI+kd^ zX3m3tG5OQEk^yXE$^6hQI4!y+e_oFI!|chwO}gd&O~ZQc8i$51PYG}3k?P4c?UG6& zd!cEtUHgNo-Dz5W#drPi()t)#l>lqsJo#{(Y@B*zm)yW2c1N><{Y2}>LXGn(RvZ~T zTJfaeI9C(}o88a6RzO+f&+DYx?(ZRDhXL7En*X2j*O{KyCGEoxh%niNVL{>Jt_|yQ z;BjDqExY$kwNzDR-7P+*$BpGWb+2OLoP^r1NPg<0J+2@P%0dbEITrlUst6O9aE{g) z8vlm;SG+w&fOJ=BNttfV!yo1W{pGBp9@~Q!Z6r-zCRAD z?mB^x@;Ku2IDR$Jj}&QBs+wA&EqPN3UZia~Z<%`XGXu)|dT2m{dPP+~jisJ#tS>8b zKe6i4Vjsw=lbtTF-LB}~s2U@Z(D?$^Y_Wu_`f+f5=fwq zzj&|9TBevIYy9cgMz(!~4rRkjonaCL5hz*pFj2#MSG4>+mL2okcH24MyFOnT0VnU; z7K|48KVsz?K|QJ`aGA%qo1FO%&6G*uYF>p)tK|fLmur?WyKx!i&k-(P;$~{7#E1FL z)dPpCJvPmkY`%32{lN6eI4IM*FOU@fmTL0+1w8X)Tbh95QoH%zN^9AG9cG=|#k$dm zqR)Wjs^ay&|5Bkeb+M0mtRbDn3zq_)3uAfIFj1VjvF6vmenU$GD&RmZ9^~$I%q{o9 zzqdRj^TBTEl3>(m*4;>NDRzQwxd?Sl^5$_6tk1XenKAwj3bC$9?S~0_-3kMAtD*2) z%T0w3IMEB@pUbttfr^4q%r%5uJWLS2Sbv^lcIp?Du9i4DBK<*2;hH@HfKigt!{gCj zQ}A{BM%C0J*BwtxdwL=FPd-`uHWEYf8E2dE>~HfX-DF_V=fc|jVeh=7*RBltJ0A|e z|KOVbxQ$25^Ql&P75gNj@&y?+55p5IuGixjK-nnn*<4-B?jJ*0e?&W z5+ZYc(fyyIVR){V2=(^aOXqVW=6%T)n$B4HB_;Z6>%eK8%xtHvWIYsnz@m=L|8^T1 z%_ZN?b{~93Hku7IR`)|MzBhIFoPzxBNJ#(B-p}@!qNu-1#37F?lQVs#JKm~5d8K8K zxy$3KWWpGk#P+}y+3Aslenw!$9Xz6Z;H4*VGPg=Jc={d2>5yQf!%Qx zdVWQZQd}qN4U`zIg}A~2pD#{gc-3A>zO?nj5nP$0)V0$%RpCE5sSs7<*_|-TF=4k% z_=Ei<*R{AgV;fh{^f2H(=zyirtF)%ek^f&w0ml}Efx7%dBUy7^$+<)wnfJ>g1;eQ0 z6qTA&6m{zziGkRb)Jk{Uuy77wvorLQ#~Rv>2t!?WlOWmS+#n;-AN_qx^jddNTw#@~ znmxnxoOm3%Y09oU!Hx$L+rJwkfFM9%-JanSh*Rs-YiQ`K&09*u^L&9&(-W^EIAfsd_qb`?R=x)D;r zkw#)=Y?dVPkn6kb_V>3xX66|eBmpg_!)i@EmA8V zW`smMmP|I&WUz$=r}5QFPz37a>KFecIfiKj_9Mm(7;WcoPt1}fV|!ND4mJ4z!a7oZ zE0&$lGXGoH(LS+m^=Mn(r;UKN+lo0d&o5HZHs{{Ufh(4?3aF(+?yeWXxGjVdJeW_4 zDtD|w;!#+24~=EJ04|7jZ@>x$3v3(WL1tllSSHaOZ9>*ulP4K)EF3%-h;nnKDTpsh zKK?eXu*A(?a0_k&?a6MumZ)%^;rnaPMI&Bdd*7}&v*8}UiuyvIshKnmcyp?Kg1`H= z^0hjY=n^U`=zV*m1Z!RMY+@txAjm9}`GvXk8ow1V+d9%iAx6F5PR5SYF#k@!6_gZf)9sAN|E+sU+!v+y;9p zCjOA;CRKfEcNqH`#3%TK8Z5S2gCZBDu#J2mb}EdIrdU0YZo+z&xp^)#pf~FQ02_ju0qfg;vSfZVW|)ByV&+9kwN!LYdOz=$Y-?H? zp0HjEov@v8O)DI4Ri%#G8xQxNy}JBxX#bNYh>rL}kONx)@6CV&^+{P7{^_>JzB*WB z6b7P$)Hrrl^-^-##Q_T)*Gv$W9-dLPLrn9b{+r`bogQ!%^yuQeuCe8+F6~(wx&~F}mPxN_7@VVhveIC6EIypZq@K4ivXjHNv-Q&B#X`s1py{K!@ zV1yr4crY2|haq@B$bPtzaS=gF-V@B^%v0`$9OrZWdk{!Z_lbl^(7CF<-zmt3K_1a( zV*tQ~%yIlfvQZhPa1J-pZayqb*CA^9yj;COsMO-pPIl8ICiLI_1a{*C&PA%+ zz(TPQ^)em zsR(y4Nt(0mSWc|=`DYc*Np8kRb;T|Z>jeE~egde_Ib56GhUhF$qog)ydf@eO4$b=u zfymAg_-%BuCDr4Vw=Vf+?nNOEr3f?Rcv%Rwfk9wX8-_5-I;g z3&LkJXRY{ZiNk}XCgwPJe$e_h04kGl?)AzM-Rb7ReC5D70%omlb#< z)}IN}*&gR1eB8iunKN$+B;&H!>qoz7=K7g@2zlL85cZ1sh7WjoH#962`KE9z1>Uu@DcXuwUDLY1E zM7Kwsz2^)?c|vgSS75qjwFeNpD=S1>ADNccjq<F(OMBP{nonqS2yp2~UZxi+cERW41^3RO zWZ~(GTZd@mBbhwP>8^9&D)vVq*l$LoXcrwCyD;aH=kLAYCA@kk$9|<&EYYg%@w`zo zdL)*D?Bp_A&^z+{UTJCoC`q=qM=GY{7M^xUfytcR~veKMxYJ znHM!hTLmngCk6d9qLnD4a#B>7Z6$Wsng7b42^5-{&YX0;mBFL@T+Y!9u?m7-MTo|& zG5ra>yA$DGKIyP>nqBhvY=5G(YRO`~D0$%Y3(<647(9}gvgGb6x+)?tD%_)_N*?RC zyx{qB$4eHFYy2V2pqeJ%wt3V)Rd+=8P=P8au%>j>^F2T3VorTt;sU8K)LP^h%hY!< zN5lHM4e_2>>-=%8K;F!p+8U`e=@Gxoo2rAvvB#zRqjmP zqT5hXzxtKtPkWK!ub{C#RXVWwNs?miTiIGBe*DV04P@ZiaFBy5;RSQq5m{EEJ!ZLS zS>Vd&Sxb|ni-X3*YdW@*5#36@i|2O@K^0U!vI-(7SHuN-#-I?@IyJy{zy{L#b3H?~<<%fH1g7Y+Pv*r@g_wSL<6kb-}-dBRaZ&W|lKig=x%BYc+j8 zDQgnvGCq_O#D{MWIfVWYN#D!Nn#t^;!ru0yn7QZ1xZ%BjRF@=F89@<6tX)2Wp~;2x0qy$d!t4@SO|#yL&7@L=iAh^G zTTP>sOX-?B#VCa`hw&-Cv1zQZI&t5S2=1AyF|*q|6u|9#`~NwK?uZW4CG-c-aZU1D zaXPx}GxuLS1YSO_np?0lZOY^}d0yj4F34`)lCj+hwOng=M_YmA&b0FEhe_n0RL*S% zyMn^V>aj1)@w{eC8mqQ$6>QWE`4mdYC_Fiy&vK2bCaUSX33l+Sa68M4T%;=HDA7jJ zPan@yrIG+mQ{9RI?diKgHwh=-#SU|P7Vk;>E9ijAq}Uq-#?NgskH1qyW9^vJk@)sw zVK|RK@k4X!$F9JMr8*@!mBLep+-e9cH)eYm^zFPpjPJiE5US zxs8CHAA0X3L>jeZD9sCl8y?!K)wJjpd2Pchmow+k!hf5TBA&aPt=yND4o5O*c5}Q+ z?x*Tt0(Z3DQ95ix?`XDsC^{N+ zsu)F7udKaeDh#YH=)%k6Xr|c@f(kiJ=*hZ1mhG}vjtyr$;kTxsqD{h|r9f!#p*AFME%v59{lwCYO>y~Lfi_Dv<6D1};8qvD0GgJyKIC!&<($Cibv=SpX zp=MpfaO(k@#&l%#1II2x7NE;ktyZq>#}jib-%~ve+dY+Kz#QC_ zh^;r^_u7*S*S7g4>c~LUP{V0k6%AOt;s+?CC6}~xEC>PRtFv$|JnNCC4;!* zlp_+A5|$N@vDe!E39h!xVm}A8e2Oqq&&{&xb)TUd)xVYMx*~?xxPFjet*c) z)OGh=sfmv2-og1 z0g?uH%)eZM!`dd{SIMGnK_Q@M9$F}c85LiIh)PYo?dj`drlrYbRkz%8eAlL4sW=J| zOQMa$W6RM8$6qg-HWg0O=&4Db*z7p3E4Pp-*--M$Gvrqf^sYSMR{l8I2msWuInD|o zyGhwz9J-Qp9E2RFXIzMRtR5KivoWoU9@WEu>M9X556L`ipE@JeEcvfyI>N@cWYsrW zx4nT8=fBS1J7+FsEG5o${Jk0Ojxkq>VwNYpD)g8-wn3*}wf7CW*4|M>FUshI8Vw$9 zH4O-_3#@K__4`D3Z=iKT%sHoeF~NW_2v#EQ+(mfSiy+n;ho^3+b07)^12B$g z@dQPz8DUeWZ+{(x&P0V>Y8XwVod*<3Jy4cGG?sXwZ4$4mhKMXDW()<&Z*0@T zON%{LLEoyVP*kS%GJVSf*twk^6#p1dP27*447i3&{L(f;5V9?p&d$b6i2|4DKj892 z;t=?S_(iC3ESm1(=I=v?mlZ71e*yKwg2BYI;>WkDII`F!M~Eqdgi{(@Tk?VQmEM7E z4o-04$+s#m3!t3&vf_0IbD>+5Y^w5|;;wEf$tX`%SPwHUWdwT^Pi;?Ny$Baz$YeTl zfuL$x>2V~IP@v5L)$zSxy81GUejqY&@ndA-8_vhC34dt2CVF`Fv5pP+GOv#eUf*5F z1tw&4aUBL|;Xw(L33(7B0%LyER}ajary{-IoRuC(|?^0!`(l=P5My zb$;1W^X_oKBzF61bh~oLE$yGYPW%qY&Yx4up?{_&S?VkGa^i&*t&t@)kwHmfTVuysy#OfwA{&79E?a{N$&xp4hFQJ9;Tm&8gufLJXzs&N&0;F>2a*ax$G%!0# z=F?9E?*RItyG|QP5^8HTFi@XVB+KL9YPaC#DcGTBr8_6Isu760VBWH7SbG3P{qE;9baDO_m>kT@f5st{mUDu9I9qB=frw{ z*{?SC8f`XCETi6&d`i_AXRA(6hNx{9sQcr(3WEF~aEarLiu`}#*Sm3>UX=tB{U@J) zi3(7-99TWO9e(f6DHgE!4qe;BhJoUrYv|5hL7o#e zwe*>UBK!lnmLi`>au=PN1(czB_Xo5N6>%%GBstt$wn&u@URL~}S@Dczl=hzjNW*N^PO3^k%F-}QOYBz8<1=P#4?GvJrq6> zVEqrM?<*S#+N4&>Ad3pof$o3St`KJ){;J5Qpg!}9F z?PpCan%ohuh$n%;hm$DlTpf+pQs>%%o>wTx!7_na)1Zx{9}iWM7`Fs7D@QmPqil9W6~g_5yR=1mv49;EFM0|4cW)T5@HC~*hZ7!sS z=!H|_U;BEFCwkeEqM<rO zn|>J;$Mdw0!yzOPJU|HU7J>zL2*Eu#1a}DT&f*f>U4n+-?u)wxcU@rd1r}Ij*?m6W z`~Q3SoHO0iHPuyDRh^!xu9;cEqBg1GNKOglaamE{J zqJH|4`gC#T1IuoDJdGcN#ys9M0mKLKH9C7s6%b@_S~Ul2foEG z^$?>v<()Bf^QE-=TRojdK` zu}}SlI37tGJvhW2Memqx2syOhEaa8m68r1;k3CcdZbmfcpzlMkM%ckD&k=Hs>)Tea93i`pH_C zZIB2Ce|L5EgyG3r4M0ID((&D8BRNNhkj&7Tj+why@bX1$3mQByimc3t!T$1tQ21?v zDV2{Tvf~wQP)=Cl(G}CarW&`oCg-PjEbA|*Ti_>gY|V{VZJgJooApBJ&wl75gn_LC zZh<{0O6!G3M)w@^)MU1*U3N}=nLHFG=8r;`J#3}bC0wH4+(5c`PSd|_^kd16fq-zw zgCP@MMZ#MBfxyGj?QUtO)wDiUpz5J#p;A~jsL`I`0U^S{itp>7*gDdng44{T=`wPe z{@IJ+3-w+bgk?~|5q#j46Pv2dQ0fjyDN_?#b$i+xCR?My-{>ks01a2yP@RB{D4RRJ z$gjoY6*wfsq102NETh<}%z0QWDs=?LeT6wkZG}hR5^vlTyWH{-H<6l@m>dmxH`m)l zI`H21rT7oz1YKU89p>%E^E+ZPrW9kTTXL_}NqNpyqTg%YWkPyKU$tM0Pgpxe5f@B{ zB}V(DEfN3`mGU1i4mrKNtm_W>`HA;Gy1RP z-xpzbRbJ)6ICkBSxZdjGjhU!|HquMSInzeD|Jfb9#!93;S?dPLQ_D28&{ zj_;zJRL9)wFDz;u72V&L@s!0~b%X=$6xFOC3wp@g#7$(52t;6XKz2 zsJmf-WP@=p9*IVdDgd2jxAW7EtKPIL>I>Jx`wOp@EL+8}Xnd57aPwkTa51Um=`6Yk zo|(m&$fCUs$ugIKkvJ~U=~jdaS|ESO>^&Dy8Q(0N;+yG^!W>}Cisu_ZScr9OyTHW! zOniJ2&l|-et=5KTC4t1BlPtynUbvp$Q;+^G2-U+AT#&4e>UUE4nMI;5-z;$WkV3iF z!0+h&#ZO1EEuKP`fJ_LtVJUMPS&dC?vMZ3DSaEY*pNl;^oFawcPYDf?cq|HCSW{sN zkQ8_a^rx4qe#}hq=QM>SZBdpJ3n{Z_+pWTL#5*AW#P`osKsQ^YVwV6km0|Hz@ci~y ziN0*P1%1qbtYT@z+#{g{>Hg=axGr_l4#GVH!b@hIp}qGmqg`Ll<>D2ba#s67+qi+3 z$k?Y~=iH9V#Q7Xf=7M|8vB5<-hGQ@HumiL}YidQ+izf#J0OtjHcGhHYMs_HhGiZ9` zCcY)>Q?K>eFsVVhgVQd?P|z-BQ{HbVw3HF^Wqdbm-K(;1C>NJ(mVA*@Lhjj*K9NgE zuk4Pgot=H1L02Wt0w>pnm~{5@ye#*Qd+q^dF`?2~3^)$o8~r2sGrecwB zaK6xYMtun9>sl|lNHBEX?4$7n$imA{F`Bv0dn!(SKG^5|n9buYi`rSrp98ltkrH^F z5ftX6Xj$`S^k#1h>#jlpnfGV>qM=KFqsSwNc;7zi!x+gwBrTpRxlC%?J8HDuknswL zHlJ_T6HJ92f&9an*oKZ5|9lpoNC zf2`1*AKD`dOJBJ5;Xe|+N{2zeL@I8mQZ?lU5d{$g+v#RY%b24_;*ICi=RQ=eVK6CH ztOy%(k$C2FS}If>b7D(43IY1jCoJCKUqwr{7+yqU>;n|GUs%#yX)E{?FY^N-SSk*eqRoZ zkNdF{?n4~vWe+@2jH=$$04diRols^}3J=)d;b(AsBLWd z^!W&e_$MpmA{UOiQ%ElIt}Zzj?fRcQpoZaPu33`W>#xrIW!!fN{Y!DB`v<8R=FNPa z@Lz{x%nFEKiE`N*=^pJX0y74)cV8c#Hd#F+r$h8^OQR@U$aXXVc(HKJ$*~pkEw3LP zGP%_tt=o)N{;eVqpdc>{b+SaDOWCL60e-V0ifuH_D}(f3WIIk-bDq;GtGNr3MJXl~ z6~yC^(8Ja2Mozy7x{y zkhAfX4eixRh!e4VOC{Iz>{9m+!e*Gig?dKi>d|M3oFZUwUn&ISkX;dI+jX{UQ??) z9PX=Tk5c}U+x#soL}Ibo5we~3L5!6;Z|r7{dHGCmI&g)ux<1V`yt}5;WEO6z@Lk+p zH2nm?J(K6--`s}Fe@c3VFVwzJZzk&>xV~09I|>`+OtezrTrl?0(Nv@+8FZ{jMAFky zcVl_e?XvczDwfZpPx&}>?yN4hM2ASXQwN%-zC@WrTmmQ@AGZ17Kb3EYnw?D-kRTpe z<3IS)sNTt&_sY3xc>XIzBb#hARu>P#pV|oU-cs6;Sft~e4R9-hP-#2TZ*ffoEVV!Z zpT2UlPdp+SIHQovYh=hUuq^|+fX^R}6OS>em9H;nymia0Wdo5ri3%Jhe{J})uCdS+ zP7~U{`>=`PU7~i58qP`%*SS&~T&yI2HtE%WS?25k&OXuhQa|9>VjpA7eLQ@&ReUVx z$zFxTMtNG%Wn#mJCcqx#K8S%|-Cy$QglbOLWj|&S?nO?G&ie#$g8R^(u%5_V@vu~vHs0?wyXk(GcdVUjoG@ue z#q1Fb-n896;PXvfGpVnvIQ@^n(+Wa2kuWT5x#R$pKO zxTMqO)u<``_;t>`)nm~mc3j=&a(;umyFA(@-Uso>KVjW`OyU{T#}n8q8#`8u^c~?V zxt2qV?^ZS(R{Qr57(Sll<_c*1YYiVa-X_E|AzT1IK)}D=jys0TP2oI?QkkS2b3EWU zfJ~ev0%4?;IzloYe(QTb!o=l%^}JW{@Pk{d$(=^467wuM0_7gxe`fZpCgQ&1FIH(E zq!R}_JwE1c-UB`LC^kAiCqRcPweY;ni@-#DC4wrW+4hsn?(SwvLl)s2|9A{4Id)Q$ zHev)$c(9+m!XJn)B?V^!cEKJJ*;hxgKT?>D(6N2FugVTAjn)Kt7~!)a?DY36$4s{L zm(qAl1>?4KK2#JzOsGM-B0*-=sF_f-f@_NA7+8KqJWL7O#0!BqwsRuX|lUt+iBasD7gVqh!3PU@qvzo;1n+~@9k1-u{d?fLt@=WPd3K;j-! zh>hVS8<;1ATZipS%B={yG2M#G`zn z+Szx8qgq2T55YcE=l6qO#vU|HNIonboumTq1SOOwFhKavT_~s*^#_~l**Fv+M@SHF zB68+Iljhj=k6lnb!2>? zxW3@Bsk2kslBKGeGF*s?{WdRl_k_KPO2hnJP~!8oqQJGmP?-y%*aDun|A4(q@f^tp zFp&|AXX_v%7Ld^P)fo(PrdFIuu4v>0lw~Y8Z}5o3_*{f_GUwsl&O3I%y_e5A{K^l- zf14nV%rnQ9Ui(@E)^+d6&Ommdo5sHn%U9fT0W%+}sHIm6zg?tE>A6L-!UC@kTwvb= z=)~R%epm2l2|w5{dIRyc3xuTvZOcCi?T@B!axp~|F8K*u3o15*Ge=YE3PqPy7dzXe z21N>53(6JLM5f`0ytn5q<=@%in>lITqFEL zH@WhD1I}n4_mzpk-b)ijzQ^dTBv&izeq;US6Gr1Gr@hxHx$)0Z^KbE=F`h}lx1HcR zUt4NF=BM53$5{Sxc=hUAAnEMiKNPNYe=nntu5~Wyw?01F`Bd+UpkFueD+*L(fog8b zH|CDEqvWk`?&TNjnrTS1;ET93(3}PIN|h+pF-Ha%-#?y9H$z=+qKgNZbUf%9_#XE5 z5zlq|n_yT|z@^CNqo~ahu6kFM+llDGC=x$PR5P{2rhX;CZr7t%ls`pkm}iwV-XFLo zxU}9gonYe7$w6{&u|)X2Lai?7pT;knDh==olhpn_5S&tCcVwG^8wcI2(mJV zq188Jlk3tdmk$PP?n%|#Twf3U;ZCRS9!6@iknDNZ`*(RPL~x@4!+eYxhdyE`<%oL#`GV)vEnT9>N1d{6etu8enU%Tn_4}EQz4JCQYIB_Q-89Rf`RIM-}>xn|lGu zbHRJTy&7b2>cuE&-v`i4qu<7N{_Cg)(ZpqKiC-3u+bWosIp&)TnWK20r1Q4Rg*huc zgB+vc{86St5V|e}RI8@mP@WrdTpNKLo7B1-@AtIj5$BiR4q*Bg?u3r1#7TLGlPtfW z*`{AlquZf4M|S(khs_mSQK}DztwO617l79mkI*`6@?~MN(?1VD)8ZG`7}2h^Xp9b? zK#Y?pjOr&(KjJ5yZ^nf^{2;^>^7MP8J1&xyVPy|-{=*f}$`|5Fc~GgB^4z(fX}mM@ z66yko>}paD0Z*Q1JU7uLHZVI!AGo>_Cjrg2bN8GaSjShQb#0H#IGHH#3~joV;oq^}NyTj#hhBde?^vi=!S2|* zu5T8qWufYRObm~kbf*?giFzWPOKi*piv;zaVkSyN^oWXt=~C+-)1~s$c9n^T24j;vX$ui=7%iy?{+#iKCGO>*9ItLe>fQR`JT;iHj% z-UuQG;gP>Pi*x>*nlwJPI#CDkFTw^Ucli~`v+0%{>ijLqyMTbK{;JQe)Uu6fz(bM5 zpi0i!JZ5TvX?L=5=#e#)f%Toh-U7!b)4bkkE17D~IzaM(jx0mhaMU z+m9aa%Zd9+Q}<*T^n~E2$ivS)%YTVqwroXtu!LUw_SVgSVFKha=x2@}rJyQTu6SH`Q8|KjIRpWNyDk3s4FrgO;71>o+C$FKv_BMSdi7 zmB>5~ddm&BiwHNExJ_hQpBeZ)Jt@rxJZ(tO@&5swJy@DKLn586>wp#q?gpCgQ{E@O zx<)IK%l6&!af$~iHbMt&+EIfy=wV)tcD`Jl`V0MfvF!HyI>=BqdGIYDR3X^qJ< zWU9Yq-0!n=&Ly5c-AU>>o+33_G{txlN-R&j5yi&pTo@8{P6E!#`42#C#8unaR(Mfd zs4FA!?Vc}?8Yi$>uJK6wn=0dhM(7r%8=IKQMPDHl?bO+8PW(~z=|$|obWEmlz}uZo zv)5GiT>n5UPwDJS;(^I+M0d$;uVGfRnz7Y_<=Faemo01g*Hj(+3q#Lc?q&Yz4C=rz zrj|?7$2luw7Gc>56Ru@`ksMRPz~BiA&ef94#uM>$U@vn4d;9Z*D^y&8%z%{JK}Ns_ zcJQLc^!Fj>lpITs`G#h!0J*SNNp{^?(@9dD?RYXV`A);Z~j@?z9IlJll|3G zXQH1;xaZQi&moZe;&-~b)^xA<8fHLF{GkZL6v1^A=Q<3b+4Mh z5j9d2ubyc{Fm&XY0Ezb-NgRW`81V^^yoR^*n*{LfKi2zj5Y9qKXRi$SU()uPx_=$* zbXpb$oD%z&Ap~74r^MGbd8X^i5*%xlC?~-|&)MDdT2X}?aYSybpUQu{q|s;Zl~l)M zk%ME~%;Lc)fS+-ba$jDnNOi0Hb36FDbZP12#EQI=^3~b!OLL4hD&C#4D zPnQP%(K@<>h*0+X1yneaqkKe(34hJhN15oJfVTXcpS=P%+z~M6xa|Q*E$XH2NEIxJ zR6izq(o@w{InU@e>1dmndvj1q@p%t`uvMcLpP$mI_I0F@)E6R#0BRz7cYm$3|gX|<8Y!)DNPx+(Z znhzB?)D>sFz`-HZnJyO&vC#-WHw(I4m}vhfOiA~q(T5)oT-a}0uCwZ5;<~;7=&9G4 zL{1#(gRp5c>QB65TC3K?F?=wn$sP=z)RsRlG2fDk43oVvVso%~lRZJ)H5}c7E-_R3 zbrmd>m&-vZ#Nc%m@VRJQGg%_xbdbL~)Ug4yiSQlJ9>V-G3khpA-oyi|NMV0&;RL)> z4yI(d?c%%ts{%L#ar(Y(E;RjSF-q}Qb@4MJ^BrkF+e5Foec@+Qy}i|e6Tb6KSMl)c zS)%Sb=;e*WnDz8rq=Y@Ih3HOpy12nk1W4SDfiopw%zY)HK3@3>p8p^z|0p(|gqMo_ zh(1)r@eZF8izV^>B{KQx2b&9Zhk_40M9y%$NE^$JZ3BbDnQoc01<7^)vH!y@7B8#3 z+Y|QX!cBW%gVT^m` z{@*%pc#2r9f~!E(C+s1Kb0}rH zs|n7KQRg5(Wd}1x>rkfDe+PHJ9uvvr8;fjHRziov;XJ%ZKN#+1kfzaizs-B*0vAnu zuITsnrivPZz{PoOS!@L!#EE!LF6fAgMfmD7%q)SFFeT?$Y-V$>0;@wzXUds#y6zye z5*zr@-)@sjw*me$XGfMC?iw~9SSPZokb^bD^Be%n7B8V+VWp+oB^yG`<6_dE$r`}PDVG5%sqN$mtZ~>C(~P}54kHtxQ%Gt8zUA? z9YQL3cSh7XW1zHjQ>l$r{zUD z=R_P2qum$jtxf+dppLBL7T7oX;cos7?J~ii3lH}1p_dT~IyZYeyA}`o=d9$$#9(Jw z5Qd}TG0$g_e~MWP?d0t9{-J3&ewcWgJqP%5X=}^IAc6Uey-LZ(ao~l1XmB^x&>gt2 zz58|s?4#W5wiSKdtO&b;mNu3Uj9hA2G!BB~C~#-7Mjl)BA)Fw_!}^! za2c(59HGaVm_7ljF`8UN$zgIW03KtVEGAuwQawYiX-+5hyhAtzUnG{c53iG}W8D4; zB5KQJgzqF*I?mo2#Q7O?io*5FoK1vh+iUrP`%aA*959FGu)J45PkqASr)z-vQECEt9wl~7Vy^^-ya zW3Tm_i#>#2Dx!Z~qz_OJ=nw0&>GSWiS4LP|TFvC*dMkz{D=}}iFVq%y?24`fY~Pqv z^l3dItMEa6QB{V@*M$^ZxNiP}kh2zki{6U$xEJI1X)}wY{#4@7riIXXMk|X(H6>aM zewrqX+Du!EMiFORgUgi^T;YhSpZ*l&aFF2r zowjne3(k1*%1D!tT~0Mn*@Je&zHZ`r{Y3w_>nE&176uvu-CgDGE3_4}hPLmk7v) z|5~VsxmtOVN-xiWgAA-VgD^!-KWn_KqqHhi(Q9ad*J{CMp~HX%vCiSTA* z5qLA=u;0Ta-Bj;HF0U4Kj-SDo<~~Vg*1>RspcoSOnmL7+_YsuhL(I%2q@s3Fbt#m7*Co+Vwg&$fYp@r;#(mPK5qjH@BK% z8=6R8$Ksj8Y1aX@*Fv#R{|Z-atZG-*k27!esOa+_0_zGE1ynhY(WVX1re8URPVF=M znoU319O6X#a)%!A#@}k?L^<~p-rMow?Wm%k@9(2!n}f zoB0qe|0U;FsIsuld^_KeKg~)WFwb`HD3O8Qsn6`urg@aM?g8_j2EF;FGxK0wHDxYZ zpxHwb7fV6Zgyp($rk&U=7`f>j?qahftrOidav}|TJPB8z|F`q?C(L-gtNTJmvhuln zee>Jc?7#5>mh=D-!x{6G!@#z^JhKn1#$xF$hELx(4j9K2^U)#WEXvOX5DDLc4RSZ? zKk>I>*N$W6;1@(0*j*(+_EKSE8Y5;m{o8g>-ZxW*F~3bvcaS#@h+6Xf5FJFI(kgAS8)w*%%` zbxUz9{I>@6WU^CRqVlRw63iUdQ$`Pdk?-qkmZWMcC)hYk+uzqTdu_b0!sWm0eU9rF zI9S+K(;Jqb26DKQ7_@yZsHyU9G?GmB81lIvm;XB|omYD3d@ZQ3U<<_H-63aQ&#Mnv zb271)a~QJ$avjai)>pn{bho+DPj=5o!t^AEL{;2mMN`8%|AaxNos$757rBlWkXk#g z_09rQyXAhUaBg|?ahLm}_agGcE&KZ5_Spgwy~`Ilju(xHUCD1l0+{*b&L-7CPi^>; zyp3?#d9Rbk>9Ea0K&A z7#1fXhZd&cRn7TuMASRtUAe91(Qy!{N7m;`c(4Cde)_UA$Ch{@kDAhzTQ^zdCF!c) zyTn?JCP03bVwT_?_0==}-kbe~X14A0$-n@N4DW28tEIPByZ1(DR1`#K|62IbJ=H6a z!r`E+7_mb_|DQPKJu$*Q#yFzKtJ$%QPouchFc}@>|rjFcs9)7NfaW<)1(*+ss+kt?%w`3lj z$b2X@hQP-r(}(Rx{DI603^kfj$$Ou7U>WHqiMIuNc^S)3q(7h;Pm~=+x>sG#_{$f; zVGqCtr*@t_i%w`DRTT&`e)%belEUlqM=pwprwZvXj~5_`q_=h=dxtzbWEYNnCkrT`4hkQk5+G-w@V`WH zjE5saiCzj&`#OnSV~2#eQ99ukfWm|nwCi#Dx{-e`M7f=o)4E4Ay)LAM{j?W8Lxl>K zzvN#TbLMft@#&VW#;;L3ET0@W)6{5Ay5{?f#89Hqt9uUK&b60;{)767g3s+Mj?XG& zO*X}qPXlM|=*N?v(mR=7BTy6qFW9ReoKMXG9;EGwFRwOD?E7Ct*xLbOHIgJS@2G)x zWWAM0OS220;!++fQ{IP*Qa!F)Bheq%%}J(3D6g|u$I6F5^R79%#f2Du*=Evnu z+|2;kl(x*bY1K@{_-!_4sGe$$$psk5J#|XlNWO zXfb^@-hP4_IMS~#mK{tPWw5qEFmk|#$j0BeiBW1dE-#FklBtH`N2>%GB{IVUm#N0r z0t{M%Qvb~k2M&1Bf!|A507T95_){wVju<;?9wfv{iOFPE%;l>wJ8~`!=-}>Nwz|;Cr#jo)*fwUdtZm?3En}bft9+=%;lBx0TYl43vC|u zXkt#v1YDEUjkYuJq}c?GOTanGWpSsHVI@cj&S(U(2@h#*y5MzMz686GKeiu>dAD>mWd_pYplE zkF!Dv)r53{!z>aYtChyY-UPc_h%O*XNyPqFI?GhnSd@SDe8m$Wwkxo4-JWVkt#JCz ze~0fO)D-Za6%@;m-u>Nr#OW2MJ2wh=+{>G=zk}so>{1uCqg3HxaZ}aBsTZkqsflWm zLpV@pU3pcxh9!ukDcC(t_i|F(b;VXGB*V3dRZ{_wv?;qCzHZgUSmno99eKBkh%kL# zOY+cJvwN7A))Y!?Q=YZQX!RKph|gB;n8n;+dEHvN^8yvCa~QbqrPIc!k9fIs*c(K9 z$nlC9EP#F%&8)bEK+(=C>I$-K`glyZcRPBoH?Q)19+0FyRKR^CzE1{VDYYNEMR_`2 zKS21UTV|Kl)PBDzrV8106+VMWfhZMA?=J^PM;`iWv{gKjgmt)-6C_6}lpEJa-7de=TUeF-d4JHdsS!~jRh0}Gcp{a20!uAJI;+U*Jt@|U(7 zI7)i?cJjJ<_rwC9H*SVIo;6{lFMN=*3&=v^>?I`MNevKWb5obXtAY!yf33ozZ+TVV ze$BbFXbdDOaz>5yd;9=aa|DCccI%D=cIyz*I<_~lTM4q)$2*YD;yNYN{Yw-N=+7q--+$-9*^*PBWZRZ4y0`kUeW+BAQCMs3%X> zBN)Va-!)qRaKo4jM`>22CWYJYPvT~Qk#@qbE|6VkRv)&-oP~W zZH5;SyVQFKEzQ~-na)B506SuksYbr_hA;IJQ+VzPt0Zv9(y4tU`T{kmuTIfaw_lgHHF?3T4sVKM+Y(Z20M zX)t(;i|Va@pA*d4*081MGAdr=UAQ%nrn8?LEOO-+`gU8eYCpimUriR^!widR>vMd; z7+PzKzjc%_edybo)r#|c9Zzb3^j<~@7@MH>?ScjTZ1%61b7E}4${TEZI;OfbY3;w| z^sjx~6y1}S%OZB!u0Kxu09)RH-gbG;hH(szlHK)>cG>WP13a7NMs!os0YNKm@u9dZ zwOQ+Wt1AWBqpK)eOn$wz9~D`B+8-)@toW}a!RihN7lzeu5a+ch&UH9IE0j}k4j z5#8Dk()k;>jst$CClOGya60H(_x!8#nYMc~f`q1-w(3gaB=Jfu9N^^H$rKXw)bm*? zPfG&cxe%sttq?e(G3UiH!!B*mogYo(oZ5ECU|8O&s7sF)$wc~yuT7=R<@s%!h&EA z-WqxT&P+#J+~g?yJ3@T+*$1MK?8TJvXcz4yz%kIz#Szyhlt&W(cJ5>!`thDQRGh*< z`v4qcRU|Uoblnd(C-z|(@*XF+cd4)DV}AV8HwURyv_A$6o}vHN2;^-nN}D{t+LZLz zo;pxuM2o0iJ^94cB!M9ez(}8u=znSi-Wi`2JZSx@C7rNHb%)bat;yC07TDf2^5N1S zwUdRv{JL4{I}w5n==^%vnOBI!-JjH>(@lbN;k%BE<{jL2MB1)Mqkzmgy#Ez~;Em|} zarC$iL^I1IAc_%hylHmAF9{s~N{^>Y1gq`eRCB&Fu|LNTz1R%ioBfzUuDpsFgtl|j zb(wJJH5Z)uq-j91j2?7mO8geG;&)V%uU1Ps?o!ttySpyq(i4S1mM-;s4%fAArk9NK zd*jrEfpj5Cb1Nj=`C(VBo~gknU8AM6Z${@Yq_RnS15e^zt8e24KW<1jKcWr2hbks_ z#jRdQy({S366)KyKod>QE!7)x?p>LHp^Y46{4mX-G3`t?6%N_89m(xOwwnM0<|AA) zpzH(sxCW`t`sSU6=v&j;HpfoYs!V>ggp|oK31iX%mc@+RbGX^IQOdkBOi#448Zx-n zSBwVvTGn%u^3Ex;$jkzaEVH1pT{%~3u;}N9xsp(7oHv}6LNqeLQI>(rRVB(!6HTpe z0V>>^;AAXpJmYfuG=9Y2ZSI+6~E^GtI$e`61 zCjz911gphD&>9ts&S@23>vlc6{*s7Y9k2rM_*i%tXcg#i>$wlw24a#u9~(an@F2N* z4}6RF!tPKrcBDnaM?+=vpbs88-?&v7XMOS0;M6W#|!0$a*OiZHaw{9!0Hu_r4pelk{S|Iej5B7CIR16HB{18{@^2TOoBL<-5 zH<~y|y8B~aV3%_vx>t)3u%;St=(#Uale@qAbD-`bwP-f7U2QV$%tD{)Vtnn}QPia; z=XDJW-bkZnVFg`e+|5!_H^oKnJ6LYBnuNb|TXUf;bre>=H}jmtj%o_%w>Klzu1%D6 z!rNnG>w>qdUukrd1y$n?&)@rd^1H!*%;42L-@a8vnzzHLafGJQRP4_m8Jh(Re!Ej1 z`&&of^h$b_gKd&DQEU=oz)9D+IN3bKNK)Fn=kCL}e@h&d;>97}v}n{PDwL&~e1ttl zDuNgfC_2xltJ$jf{n6l-mARE>qqz^iA9~d$*+US z>@K$Zb7aUsyzU*LnIYckNlqa=2gfVPoR`$|0LPNM63;xmmv1rPo88o<=Ah>o30~pH zA1#Zw{uwBt?9TjckP3v%SFgq=78s+M@JE$7=&H~j0L@_ZDkne==!Slgz#W<~CQq$YJK z^z*mje87K31C}5xM352{qpU`DM3EKXCfw>b0$Z z79)IkdN;>f8x|kLiQZsx|IWC1bRzaXVj!S@7vQOp*D0b_Sm!S0)LJdo5`CG2QYHCFOBkVK-pa7qaHFm96({ zn3Kf97|Y#---*59$C%V1huvL4Y7$IY$Vrtdf0?tS&#{%o03AEI3bf0lIBdy)K1sk+A^>Q1Ok(TR1~YM< z_Zjhr9h=lQa@8~gkD*&aFDpV1;tqwL@~c~Uqbq$+>}^($Q3WXE4yb4YJ1;6F`K`)k+#){N z4%tJ6V#AUfYQF2%k~K@4vq@DnYJwpJgCDW&e*u}l_EL*3QumK~3Rh?^K%icyEDJW+ zT?@JEho?HgnUzSkSMZ2Pdx4$EiT5$C1zh*sdR_BY{~DB{);2-OL_P7d(dys zuhFz#Drb1)`o7%->XjEsgu$!<)gm8OadgqVNUoD#-v)>jocZ@+EV4d1eP;c?f3V3< z^oeFai`5m|Wcql`LCyWF_p|4qhJH@90tLBe@#3NTLh`dKb4{{=ve}^GM*JSI*xsGj z-EhU10vZWWo1ZmF?+}n$xiJ$!SA*qHEWdpxX4S8YMR_f-GM+x5Q=Zd9@64u0i(Y8{ zdH);wi!$YAOa8Mv!Et_(RTyzi%00muS#^ez|AJ!^dKX1^cWIHl>~=r*5S7y6xzt2= z3a1C@MpwZh9!8p?zeKT#e(L>EeZXx5T!-;zvS@fsQn6fZ(k_ozz%N>X8yK^Kf7woO zQdyP$dOK5!E8cdUjVYT-E2CFHtj{fD0;AiYv^r$Rp>61{aODteVTbe$Org*FQw6z< zm(*4~oBO;xSg6Aw(#fB)X=FXBFS*dNxLnn9G3Onf@3`tX?#we-`&*TxqqhM3>&PRL zR48vR(`3GUR`3kY{;dU1m0tf}1c{|A9QOckok*r#l6OoInSiG4mF7`iqKaA=EK*}< z?!*%>r2X?RWiv(tFo0{3b3MkyOu)7N%>&c!QvHcT(8x6xgNx6f5clqvBt1^Q9h&X7 zmbFj%(x6}Tatx4L8UxTEoD}}eW=U;4K zU<(;IWt)0KP5m>5)A9>3;c#B})I@I9C&GZ?aJ&}J?faKj!}{g894?R zh2!YNvm9ND=MmJi2hL&&mc3pSHdG!=;IZoMT9;t3mg1XdrB!#ZZ7Ji;MDqh6OLPP zx1`)WNhVbH$1A3xlkCIGPrv0M7+D}vGO^+Z(N0x-p0`%lP*YX%bAe7(F;MYtnvp{4hc{%>bA*RO_z^} z?%sK$pmR#_^)eJD;A^;AH1slwgEX=7bV%;zXpk5GuGXpXczYgMO4KNE&5o8^&%L2` zes06h=U2*PRGXoIJH$#cT~0spCN`syBhkmuO`0wFYI~)2Cw{XWSm*dShjHs)mbP=X zS>o0lMPw{q6gO#K*AGkf*v7aT&7o5necb8wzlWVvi{02X-OB^)+71(o5Rv%X#6_*#&FRbk=m+8eA<&$!x!qvcsvu@9OnpsDvOA6DARh>BMHMh>} zBC&8~zTi)rPbYsGw00!#6cPTPx-MD-bsp%$GMdv#yy>E0zl4lb4#P}PIqAvxhQ|a9 zTZVmzi;#1(l>!QbbiRN45hN!C{6scXOrn!`x0V#uJM?%Ze2?uxiHp}&diNW>4aty| zK&JSjj%mH&8v|Qo)OY3oP(^NK)}jxOH1QfW967>N++w^rp#H>-JlV1(VApx=>ZirAiqqdt|170@=LU2L@ol4q{RM7H`f*Q?}OtcCLW z1ugY6DFQOzD>2?#p)xJ;hk;uOdSx~R9+q8!--Nl~M-RwS`m?SsvCJlJj1I!0LDT#@ zQZXv~qDCEG~iE=T9Z}_508LpoKVy;<1P-*rM-@w^BHMTQZV* zNNZI3+W^@;*uzBt1@ez1JVgH^7F4n93a{=`+H>>koKBi_ZXvyS zqU7gD94y!F3iBB7D~ZQIjVVt#7dJDFZX-0ZY?kVs2v<6bYXnQLxoh#4ZhxvGwz}&| zvvVEE+u*3Qh?bKOJaHs-c`a6oOdg%sk`?}16wx6fZ(@g_bst=b9!)w0J6k@H$jlO4 z%&rfgK$`VsskxfAGnC9vI})Ukto?Oyp3y9HREhzi(5yQLKkV^Nt~+P<0(^aBmgw$> z^Sa(t^Y$JXsh#c*im*JQm(7idTI%;Tq2i@MOv8teaVfx@LNSuz6nRIb<`L;LQv{wC zE3nJOd61#z-|w8S3x)sVB6XewN_vhwaBu6p*Gy{*+$UtIJ*yEtpB~X8qaHsbDHK?sH$QYJL>){UJKAAXg@Q5K=RRQOkFdMq7f<$xs~G=NOd z3}yt;SL$CUe_MK8SXpfiH>Kch$80?kXf~1Pw;f@8bq9r&Yu+PxRzMGSHjr6dcYKog zimio^^PtU!DP%+S4fyeikS?ggGeE-Z5o`PS5E&3Ks2^e?{9GNH2rd;Dh-6RxtZ_n4 zt3)%a7^m3i$aaze7Tk$8lhKf2V~uWzfhd^V=OQI4{HJ^zr1Em!0IvEM_%L9P+Ryf7 zt$O@;g7K?nn;)IN3$ywU_frfAl>I`~H3*HEW1BsI$)N@vi_;TSo=x-VPC7SfxsNOD zYoKOy=6RqT;`PCyjHua=RggnZuGo(~YgWXm^<>qi!y1zSYtYhk!RC>*nuB*!W=w$- z-P4oL*tE{2M-y3bI(dv&#>MY@@~!G0jEGE`&h4O6Fueej(rwUdq4uB2hZjo5{GY@x zv7l!W;>)R zhK(@0&HG+(u$DS%UaSR?U8rn2-#^4oGO>jX%begwH**2_&GCZ)MJ(x<#`{Sx7m9s$ zTh+6!`#G`e=!Rg}kkkdvvo?SG+EIAz(sg+%r9|l{i1M~haet0W_kHbqC$H|KgKO82 zk~s$QA$%$(2V6xdJG>DBC%V?P_bKdXgo!}}kGz1X8xsW^=tR)WjS@2VFcZ$1fk)Nd zDO1=#n^ns@lQrWBTy$-+9`)TP)UAh)YU&{-+U`gxmHt#4!#uFdc2-VwZ`SXoZ$%;t zOa`C?B3B(C0>9QF@@hK2xuQz!d;VkZO#XBaxfHPp?DfWTg=-NtIMBA1=%VDfX_kKQ zg7Mzox#dsqjK+?uS70q?Y*TQ2DM%=5l9Zmvy{9>Q-Jy^)&7#XVGe9I?6o|Kf{}5gK zG`#K9OltFSPITM3p{IXC*Cd$3LCpTEp^zk!2vGb$-N4B73u#B)uNsX^e29g`BJsoK zSP>P0y9O)=rH#Os>}$3eSR4=Lkgp(F*_x|rLz*pE-KK5^2uA=f@@q_Br)ov+FLxEK z>sV)M{{qnnoN$BB1z}2Rh2Ro7F>BGh9eT7O_vbR`@Ic5cqq(pHz0g}x-_Wh_L(GmG zkIdbC<*ggFbrCV%3{+KqwqHW{x>=yke2@1$UQ^N=w-6|}X(X}II&u68_R8_A@!H=8 ze?8L=?&!`|m+Xb)FEzyoxavPY->=2?zb1^_1Qe2`1%#Dz zBQ+(=3|sN^EuX*FH0JL%v=|qve_AF1efEe(GD}i1uXQ~-ujvE?PwmrZ9|YX=>%+Km zt}nP7G6!c9wxKWeoD6fVWkZ0Ho+;7{$v2$rjO~4`gwME*ueNoQr`~Ktd_K!o>wQL9 zwYfA>==QA&O9$?mE*ZqH<{cTMsW=q(YRszy=%YcZr`+Q1tYVQ(&#f!F+!HF#(3EEh ztDt$KObHU989ak*sGfMk0CXKG63=k3ndMpKsYy??HX1UqKa47rY$UA`QCPuhwW-XvBW z>PN-g^B6wapC`0F)8|KL5=A$@{!HGo@o7OiyVU^W((LlI&&jpC#ehYU!zakNRW9%B zTwSr&@dMbZcuK}fGbfH)JFU{6%|@@dI(VY|k{GO3th`a8we#d%!bUUk+TU;XB(#{V zUG94NaqM4z4lMdPLQHXqQ^Kr;`p#0Tu`R;*ok_m+I8$pKhrbRq&RyhxI!@d_SR5wHpgfA*q2KTeaJnyfVdcN zO;HLa?GeU+wU|a0qQYnY5=1q69ZUrAB_y{}?Z~<*vg}dZYg!09_+w@l+6uSbmAoux zsc|=rwNdg!SYqzmPt#|Ui}&`^R*!67;Hq#s4GdD64Tk@mSm<_$ zl_@A|z&-MwDZF;os%U_NS~>}D=H6e?Z-RqyleS;Ky!Ggx2rD*{Ws~Ur#9Ds;o^Z!c z;sX_r$jakg#Ezyv%W$vwd#A)iBLB1_F~P{gFvPiEIMMk$<{C!|W#%0G^}>7f)#1^l zxU9aM-;?-uUv9rd9Iu(gceL+k`(Zrk?(5S`B>7f@Y?tsx$eY7`{^^J{rF+nd(jPG& zG=Vy)c6iq${mLfLZZ{7cet;~yq^UIAMca8!MNFoBw;yFIS%~l@{bj;GYfG0lnLDDe zdX3zN*@QzwuiPMb0BU)rZhh&S(-u78DhJLK3a*^vij3D?Ka1JWaLexeA*atkXCT3R z9s3K%1+j&pdp_k3<#nrgk!$XCs|#!a&c?b6`@^66OT>Khu}wi>qvdXD>j_*~pQRgl z)BdEbq;MawD5zvl9~g4BAT4F;{92#l@s|>T0>Y{4u;X79NdGtIb{`?a31`x|r*x*h z_r;8U0e21pk>Dw)qy5<%-yx#0Z9OgJ3TC@hSb7p~=;YUPi@$odZgyP~QKtV9?@l9d zo8GMEJ2NWS%7^zD_u#wKwtu1f9n|iL8Sv7o`DYff5+7X<7h9 zK)Sz_sHA;DB(wpiU*x*xhs`GA|E)tgkf=g)zVr^>qS*3X+sKMiQ44(*aWmrn)!<88 z#@J@CuXJyFn^`+y!q>!u);BA!6TJ6&in7I)isJbpT#)waMGL0AbWau~iBxlm@ffYh{ zT$Byv>5_8-<12#1l^z&Abg=jF@hgmm*|FVtYP{|N*;rj(OsBu$YA;7$dEWr@9mBj` z3!^cDovGG8?tHaY<6aI88W#TL{j=9wPcCJe3wKCL;Og7K?|K37G?DM8KHb@}S$ZmN z%M*EgVqc;fM{q`*LmrFT1Ir|}a%Wg&TX0nK5h9E)1u<|DKa|gT@7nxwP7>6^FDMNT z#~FwKVogjLh597bqn03CkKXx>xYk?S3UcDlO?;ppH&`}Q?77(qMbaZ*s2?FnssA@7 zzcFb}LcSV2*2{1nnbf;~Z`t?OVFl+K8aze@E$_Z?GC1&{SKw(J@Me^04A791KN-BC zfVLQcE&l~;5`c$5*1^%K-;4!Y8-5rA3@P;pc|mff zBDaxvhrKLF2^M63LJx`!MtEX~p3biSF%Q~$$iuYAP+PjdrBzsnH(_>H%K9#M(%T)M zpjANM_DZ91JxB)EabQXD(9wz6F#8F2v}|J4?!LdTO!p4^0J%xhG&yFE1NXsw?j^n&Y42 z@3n@j_5LbQc=?kNq!s3+^L7{}`LxXlL_f!f)JD1Hc)x$|u3g;oxw$Q?0BguyGJ3;a zt8$+d%J2hc%~@WzV^P+vFf51`Rudj~KPbqrH6|3_MgX}iFvFV+)U0$6o42R<4goHJJ_7y$6g zrfr`u^^>2%*~-ZpSLxt|OqN_1Z2H(1LwU@_ z;H*Y%jN4|EfWgG1v@dCTVSO69wC^jSPdz<{e8t_76O#`gLD(1R<=D1d?#2&E4PoR<;3pS-{OW|wU; zP8exX)u&a&-0*&`Ye=gqHZ1!OPE;w)M*UIz|G`@;J<_QIqbJn#Civ8A)rD9a|Np>G z6F4z%U;)&rO5K+J&-;=aHYMMtPtN5xuazD#)Pq7Ni1jDzrqJNAw(#MP53z3O>0NAx z9O{?F{|WpT{)IoHlNzYD7uG_L0(X)-Ap6T-pTb^!QlyUkTrH0$XOUUzEv9 z=T+D3iSCU3PgpmL@${piw9&MN?%>m}&UKkZ_NGPl{|!T8|B%-&;+O`?Z0*V{)-){E z^#6DDKji|pmE=SJ4H-lNoVNlqI-l!-N<&Y^(ne!WX5BaQ|8Y)b7XJffB%Lk%Kjm98 z8J!G}N8*_Osb6CARA9O#1aO@@#d5wD_>XeB?ULSV{y#LvwfVYVo%+P;Z6g|)2Wo(j zKV8Rkr)cb+3bJ?h#ZGH7i(598N^aE>G^fk|>9tncIzskz20pZFQ?=f>R*5XW zCq~(C>I;4HLQs`BUxPFCTnbJ*{|_P8>ObKY6C%$hj$)^fGLG?W#A|i$IhjQx%Sxr2 z4iiGpNsi)L>q;f=?*E6ttz?t}eUVi6-jP|v(K}7y*meHssrDa(Olga(8p7QGoa8X? z)jLIN02Vu~|DSnXcxSAq)<*wlopp8H|9MbQzZiiiW*2Eg?Ei3e^5t|K?l|n}`{h3A z&&N8$4tcAaXRy7|wjX+9jD*tm3QFwTya*}x{6x6gq}EJrzjq!IJiI@@p2Cq3Lspfn zn!?;F-6lwm&SvVL@%?RlC=5m*%kko_97`0#i#l_1<1Kg^{+y8;Vbf-X&~e^aQ5Lv3 zDt-3PWvCOP&dc(sBeo;*ZuTi zvoDr_RzrNv41$`KtmFvy*H*EmaH$}313_=E)IpCamMX=K+c#N$RBE1C4y!xfx5pZ9 z`fH(OlTCM!+o?A_I%F>)1-?3$v!*p3wTAsK(9i;BV1SXUD%0`;_=1vphI9}VyW@L# zZS(}#dHBK+H!B)tWR;+HOgP!d28!bwdE9GI$|tdzJlfoRr07HtMdpX5Z?lutD$w|FdOtXhXA8eG-_4`IKKO2({E9X_`h(>C^ z$N3}g{^j9dPrP@2gwBax$d4%Txk_O{KA~26W{wOU$_Mxa?dB1L71|Biveqh)kAjkv zdhRMDaUr#bo-GF1ezo0SlEW8Bl$P)oKvho9RXyx(OIF$qQ^v`n=@WIPM1*k^9ZDbz zQrPHlKAGvw--5k>8=w0Kx9L1Sz;y+o-qFcPKSB<{BYu&9vB6ml``Zp}xtghn7JO0BYzxSQgi1{ylA9br7orY_#R?z@4N2nDuK#Ct3ufNlo!==)^bkK`=alAYeKU1pDQ8_!prkIpH4{!&_eduMmYlB3Jjk-`tfIcJ^ znyvfNY%@DZ6w4saUk`-D8UqeuO`H#6N7rZZ8&GGv?%$NGHJ7vJ>N|z!!=^3FrJ3Fm zRl6Tb^Y;LZtrl7tM8WU(TxT!gF#;PoiI{?h>%s-#*UsgE-g!@3a-h*1?DCd= zKVDiU@#)_at;5^AT!8V+2WAIjnIjSp(2e8RZtG8*57VP z3|I3iiFq3>dd}B@XOZm1IKFLRim@M3VwZ@0RokQOM4A!}Q@9Jj9#k_&c7$0Qn}kO} zf;U3_31IM(p&Nompeq{~MTs*p?K}q-|EudG#sWF`(esW&>&{u~FdtwC?m(=ZuH{Agl~h zW#R3<-ghDP(WK7_bcwaZ*#@58-w~t;8~+!p zH?y))Ob|vgtoB9%@+c*heG$6t5ht#~EyY6@{4gmZtIz4fm+!r3{`cmEhW@uQq1C!m z#7k^tQPo_9zBt^fgwa6!1|oyZ2(s%bLCW`D&6!vab;fY~-bucFws|UhltxAbrK+n< zBmzT%q8d-qr=4RSd&^9xnqP)&$tnYj zd?I_e&s%ebdCt?#DhQfaEBi+3P!z0nhs%^aK>e=n)HKNQqGCq`F%ud-yD6J{ zwdTFyACN!kJS@o88ny!S`J2OjF+lYNL-6x1+QzZBZ8gU=_Qvtb|Gv)G#|OpyS61*i zloUqx{DzpU9Wp^k_B4 z0<%~Wxi8;k0#{e^egi{`IaiJFPOiU#8`dH2x$mmPlyZiHKopNOaJy()nqfR^rF~Wz zINn3IP9K;LaW1?Vq@*9ASLk9a?UORm}#5Bxz39I%k+ z{0f8|tnEq)(k`|t5A@n&Vr~QRuLwJg=3B43l6y%)RV09_J+QT6O;n&H^Y{vfh4Sn| zRz^qrG!bW5FLJkFc&5Z4|2#td+M#3eN&sFbn?4dG5i8XHu!=a-W`5?3<5Toh4U2#L z5I1f005dVobL3TB*g=-R_*s)r&jz3YI!JsXuU{x0h^KV~r}?YBHgukAo6ft;X6eqY zfNg+Kli`ZbgC=SYvLOJ*X~q-|0P@dJO|=^cIhw7%WoQJS!G9> zLQ;-~AoI|^5_8s*ob_)OY%ivvFyQ6J#ZexYNuF9ZzsHN2*6(SnU}s+cFmTSgj0N{7 zrXc&74ah29#=|3miPET|k$(ut5QO?zzdl7C=VPYn2lCUIv1a)}r)hx2TZwNmpikhY zvO*%K4mlu-3stBb5@$|#ToDL-)Z=QdKg1+b%MqjXu}_;af&6m< zV>a&-a8gDz%o*^bZe)uoH~cNI&(|vytn*IL@bN5Po6|`9nboa(ztF|`pp;sSiyk#b z4{POHJ*rcNoP~K=TdI+E-mhtKw z(EM#=PtF1Inq!)AT*N7K=@4#q{VFY|>8W^Z?ZqE``I!VkajE=)B*Z0OKO#YF-e=s&8dm&$`RVLX?!W5bRl!wIQg;QXnBfjx2(=d5c71zyjeRHCTtXQn zD=jf0zn!>u?J&_^r%u!(cV2a^J9KTxRAeI#U(0ZzSk+$erX(B6PPMDB8TklC7>}(9 z%N2@9mzdxy{d~8_VXn|JMBa_!ruuBlPUY(Rk9ua+v|^jN;O%lyOL8hkN9L4!E$EF@ zAD+E?0Ba5L-cQ2*IPeKWmNrp+z|iG&#QX)3z(9t66UYG@oC&;hJy$Xyu82`z6bNVu zJj>sEv2LM0bp7MDdQOrfH>?pVG}0~u8{#FouES@3marqgdQdyP_R%Y`6^(X(o4tM1 zqDvql;Qs6R8!ynT{+d1Gv;6RVMJ&wAOzq;1VA_OX$7Ed9ocpJn+=sSOR-Av*yoQ=5g^Zd( zRDI1e*xz)1uA^{z_*!%?Ϙ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%0DR-k5V~6ye`~{c`4pF}LcEgG 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

0~1skltmoa=<_>8PxMmL`f2Q1KOioP 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%0DVlF4ha$@ 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%0D7IZh*cN@+gbn*}D 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≦x zoL&+R(|hxn`gBb?HL`BwyI~2|6Rcr1YG_P9bG#5xSakX~ygJ|}aO8m}>U+x|+?FK8 z8~{I>ee}ZE>>wr_`7t1eCrE_G!ES5N(cgqC!YRA<(W0<56;XW@{ow1Cyj{jXPs>Q^fA}=>H0%TdG_u?g7X%-?!}eL zsZq!k)n0q477wC3Kf(kSC1N=AZ#jWhML&F^AJH(C*!j08cSLQx?v;^RBWK;;{PH9j z)pRmqIC76QKKtpGL<77~#`SV@*5;^hb@@K^1fB^1k0#|9NczplTv6}iFlNvGn$aCr zFY{Uov%Wg5uH~cw4EK%g;PLnb5@)v?mFvA481Q%R`a2@_+~&~lm8U;Kl1%S{GDtqm z#^X-Q*ks__U(50HOszA{>6$!Mz@DyOm$p3%`nLO}#)#%r6y)sd7qW}#pTmlLB44=g zl$?Jq4^wvO?g)Lpr-ylEG^h||=WV4jP;E1#TXlb3YOOkPV$_`KyQ5iXBOzw8g-c+FTB_1Dx$GOH{!?XN*WmPo z+3=hE*vB|7%o{VXNjH#wn!W}^D)IFL8>xg%mOPQ@Xlt$>YTdj%q4l16FmpaWQq9sm z_hz&1!ozT`HeNy-TO^!<(v%&{A;iEe;VRjQQ^|y84KHnxlN9a#gd&->dbWH^2F{=W($Cn z5#H}JuyN~Tb|%@oJxM5z;RJ};`Ok$*GIH~*YV z&0u01j@NX4n&)wGl`#FSZVZB1s$bE z;vhosys|E*Dfv@vCJ8ag(rc?+EoPrxzlHR~hcv_SGjK$?sKbnl)J_Nh?#Qf{d;(|V zZvD*Z?wX${epc3TbCD2w(42h`Q5UytVbiC=!%bUW`g^A7&hvu#(AQIg@lWZe;7%~H zn&Vq~p4Tdn%|9pWw{LXLzwwwVkB4}t?oqi>tKH79#aw>Oez0U*(HAjcvwmAch**~Q zT|$Pix)EPF0|Ok~HAKuK4M9BiYKyN;;J=$SW&D2L)ffhS`o}++EyD%|rVKI&I#P+c zjJ)&L-jZPb6+AQ}^uW|@rh5ye5(eGVISMZY3(Ysequ{*&u%|jUY*Df#>0bKDU1Sy< z#cIYVi@Z!e|K}CNaa7WeVQf>}o8pDDZx+o>#`qL14a+F-t@`vWckczZCEd>M|IMj> zOYbGsRBSBsyKsxr>9G6=}tnaok7h zm%q=IbS)l0z3=h-0F3zd@Ym^GHGU(ZAb7@m2`(3E3Ok5gEB|H_rA%D5*K|3W&{$$J zV8D6MdcIZv#VJ&EDpe&?k*l*Q@h?*%3WJX}`t;PaH6VVmrcOf*B<@{LwrjJ}Z5JRt?Sh{6h;?{9QOa|Ywat8y z+t?9iLx_0#Fv*6kSAqEW^upG0Dp)-L@DihMJcl2K#D`_59fctQiop|Zj8J)=e-UPu zV0q8Fs0~Azv6OEwq@ocl9jh`#Cgq3f`&K0dKwb*`WubeY=lnJUr+S4bvsDaj50k%=ADxC244*N_F7*C zBKOq*?@miEfQ>DZEkm`^j6;|0;C0bpX0w*{$%Ww8P`})fP4%Y>jfcbrc`&YR{;>X- z2jiF3;UdC3%#3shg;(!ub4n$rM25jE;-`1DM3zb7+!M*yv3@j=niEqGp$i{zeIniJBRCGPFF^ILpc{O zJ3-ZJ+{>5cs{Z~d6%X1ff2c<`JaEH&yYwH=J+YBkkCA;$O1%otK~o(e!vDTLwcqWr{WvjM`q&J#Y)Xj5&+_dB~25vRr zj*osWps^Ei3x>Y&hTYYU$>hIBLrRv6yarNMCb#6;cwIHhY!HFyhce&0PW z4U)h9y@69H2Rl{Cn53N{GJ}Tqj0p^lIDGpiz4JU6%Z1PHzTt}t{9F*rqEsuU5?mxa`fUEwN5@@Sf&eg8!(yR1M@oE zrt%c=l99=hh^uUJg;le+E5dCNduN+<3THyGqx+RH7cXkEmOm!z@E`fNh6^w{IZ7%K;>L z$dB#6V8q)Fe9Jq|tZ0uzbECwz%g`T&iZ_MJ9}kmPEexKj+#D&kWr;&Um$?tbEv>wR zcT^lw`j@|=qy&ee>dbRjUYA&yP>ubUvg)})ySamcseq(!Af=m|)Iydt`Ubi5kC~6o z4*_cGoj(eJl`mGr(`0;9qd-!N*|{%*4p6;WFM^tR<3RJM;OD_qS3DyJ`N=q$IkigX zuX1^ax5Nbcd`B&VTij*#Nd#t+loc*I7OfAam7Ty}h=93SJC$=$8cyx3F+$04MA?n= zf3B7qrkGxVEU5!GYItoDUy(p5SdQHGyF#3Iftq7V^>z%Q#0q8-2}5uF3Cvt?%q0?q z91)Ru+m4NzIvtg5K9XA2Y!*dJ^S4ATZLfo635l2L@yP~R{o`*8=AbXlCf66HMAri$!Oj8x5xpov1g2B#Ufayc>SR=H(Wr}OVGbhgVS_w9rL)6e`m zt9KW~B|O zucY6O%+B)jJwao1(Q_a^Kg@roMej0j@qSDVZzuqxyCg^RPkT{F|0CiE zqp6oodiCqx!8AKbu3#t#GUhAYbmK2lHdH@4Jin?Dkh91o2+i|CacEPXC}q>0J-*xJ zET4*UQzqooEoJ|Us*X-HF&8VI}NWd>TdEwP^6sS3y7xTnz6(7b0?dwoiUQgz$TGbT>S0)Tp88R#yvGvVHa0s>1&ZK zyPMA7W7n72x3`Kg*JcZ}r4)kQ)qz@jQIUO?cjFE2Q({Z=B=E$B`FW+h-cd&hxD2q} zn6!`Dq$l2j8(|G-kC<+CX3*&YGUsgU-zVLBAbuU(z6IJ!XD)ur)E#HzUh?`bBZ>LX z10cWHZW*M|r?t1VoDlELR|;8dYZOerNPs@d#X3CQez-zj4t3_6^t+U?iTv7V`$@B$ za*3Q%KJ)hKcd2AOpye}i&|k%C^>+RGS2y6dSf<(@Lp!w>t1~_HRVp}r@$OcI*5>QT zz42f}_x$ZRjc~bhF2HDXX$w*IWn!6Wc(Y?$GhJI|lBXsZI_b|i15;8*8XU)zdUbL; z#_cfN=6WeO@Ch&ds-Y>oLY}O7D?vK;Qin4dXLPuWh(r%RU&=%!yf&T1q4H!&XtQ%3 zJ!I+)e&sn|*)ZdZS`$Qt{ULwCd_q6~#Pd*WBH)-{+i3L&J#dzU_}Ow0an)>?l+L8t z*3pOf+1=r5lQy_bn>+gzVunxK(SmFYukrJ-mmu4wbZnmzvYzK`Y=aK+84yCSIXp+x zk9$C5BgB#@f|{ND4!_l*C39}J!u<`1E|wgc3kw9f1531&995Dw6j8%?H3s#O+K|O~ zQZ(q&y0R#Mqr9f1bGx#9jcxu5qbER2(fym$$hYDkiB&mdb0ei1=h{CR$+(Bn8IyFk z7+?O_^f{6&Y1UsWJ%JN#W}pj)92Wq}TzWAv%7)5A2xchsDOmJ1yQx3-YF3Qjcj?Xx z*zM7sVDleyfU(jOa7)+!)y@}rek&2F<@B3qvWr812m39d5{t<@5!>hcE|Eis~0 zos5F^n`SYX6L?Dr0b6F~ZsbLb8194leGeE}Cv;c%xW0j?4boU@9h_>6BgiTQs;oGJk=eL$~*r_VbTy9k6^z<#RE+ zSCeUdR>jGGMGDM5U(jDwdWuxVn&)t^nznDFJ}i7{*Tp{4sMQjAtzJE}B+b?u|3of% z!gd*VQ5>VkU9@FVWa=2W&dru#I`zZN!TzF${5p&ZE4bnO(#VKR3L-@AI=yMDf+D&C ztM%=UtQ`6ct(1$cF;>a>XCc$^sb6*?4|l5GNq0|torOT$_Id1vRVeMq`PaHw`j!b~ zN_`!E4QDtE+rm`xC0rih@(B`Z?(5;a81!IAkV?lLDZhzm{2;aecegD3I-KF)RqY@F zKX6d-`HVk*nyHGoAzPr|k>NI*9`L`b8kx^(yFd8aOS)TL@(b-9;#~|jXhgV7yFO4% z*ruIExRAJF*VTsOICq0y`eHprt(hOrhY@SEL_O#ayKCqt(V24W**^4ov&!@2RBAyY z_rAqNdRy8L`R3CNT4ns5|S1UWY{aMDUV=}GgfAEsmjV;-1^$lZ6c&df> zcw&vTMBhkevw>LKntxk;OJvnAba-Wo{Faq{vKpl|($#%}|NVk#F z4c`dJ#91d0qpd!6Uaj#rhkc|6&w&!gR zGVrYR&8P&w3Jk^gbj4_w6pxh(Rti+pcirZbT|D?}$%rlU=%&q6zz-YeT^SnaUm#HfILV;l{>6`_VIF%>7knAkQ zPH6cYa7MLRN<3{k#VS4)-&^mmek@uNyRlgb$mMB+>N90yWz#e0Ze>|5h2qxPJ)s`+ zIw7#Jx#HB1zLU3GnUPAAK}A|kcM#DGx)l+Rm)q@zr8zLa4sQyX#090s3r0Ve+qU*t zm=H#BkNK6$O`-4SLZ9u<(Z4>D#M&J8N#s#9R)Um=OxXiFhm*p_^3p=&P!E%V$CtN+ zTs<{$Fuy6(OxvPeby1MJUGR=))TOV8{gr!g#KvPs@o_S7y!0cNS|!io?=72uI#zBC zH_AsXzbmG^SVKIodP#`m5Bw!ZtX8_l&%zxgv)VfT0oL`3X!$)j7S#~c&5-K+ed&8# z{@I`^4b8-DnS#UK;2jf(R}11{saIpg&$j*|jkhI|rIPpDi}Eje#|7uU8xselnJzVo zUuX7)Nmh5HRazeBle~-kcGSl2fTByU1F&Xg`|=-?GC_OO0}Ss)h8;?!*b=E7Z2C+b zjabhva9zRL-YdmimP80HK;l}`97R{n<;@JqKT^Ll`e@)aX!m3bm|*?&ou;7LgUA*G zM7r&aU^HyN`$3ioc95U`l_=7gQj|`$n$+u5&b3T%>rW8t)>eKJg?WF!S32~?T@S~) z^md=Tr#y3>Y^>nzA47y=CGo+$>&>{}czFs;|22XbBF%g1Ul*i}_Q_=o9}3>#EH9Fw zy#`kbT1e=3c-f_CQTiFHitjlUz=$U4k0pacv&#mP@{=woh056k(rzXMC{4Ooy#;wk zQp^KpQtphOHpUzBDQ3LB;|f?x(Sq46?pr-bcj=vP`ZayyCWM+j#76xcKOxu zry{6)`{pQBPP~U;2Jb%TkN`^j_s-^6r}x{`xqspMl-q)GJ;6i4_w}U35oO!&7_JwF!-6p{km_W zIj7aE*VyszPm&s*d)J>d@oq)-fhv>fdLXN_^3~O-LZ})%Z@W$+%IBHO;KsA36T+OF zkX@bCH7};Q6c{*W{(ZiT9NP3$$DM@zrUn;CcA!DZ%4+ zw?RC~{{ov>VlDN+TGynSUlk2Y_Du#`ffrY=7@;a|;UofKlB)^>@3+yJR-iXeJm~|L z;q6h8AJ^2Jq#vei`(rB07fNxxl}aKvPzun!N0o>Nt6{<1ntLhQoeD?s5wVEG?;T!L z(79(uxO|(FnAy&57{Ja*mYY4pEL) z2&3(;!0otSAFRP>xWONdv#8>a+x`hVP(y|B!PfW<^3Y~R#AeA5WRTLJ!e;wk3Ykly zuLWf<@LvEycI5~Hha=WA9TiUlwg4)xPM2~^_U%<4f~MQ~SVhVFdOrhL#Jra-qFWLO zt{>D~c+>_V#vGmNW`a-EGGJBE=uNx16P^~yjoD{kBe`oj48!DHlR#h~gehOELNTsT z@p4O+!ly$xS$BbL67V|bmD#gR>A8;9zr?2xkxDsd-NXyhn*Gavy8I#e(R58e=p|4W z68&Zsty>{38m=bbz|FM}IGLSKfAaDe;TMZvV6a&7i}qH@``s?PGTJ(`2OWvmLq^1q z)FpXjksmN?k+|T0*LK}xtIOtrHv&aE%fX6 z7BrY(4+q=;`PeX{`rzr&v=`^@`+Q9%ev$Q_fbd+@$!PNqnIjcN~8kTQ^c}oPqae)ZBnc+$K^ta;fn-mfq7YkS88W(*- z*q*I2z&Va+9LT!U%qVGr%s%ID{sn_DVtt=J%E%KCWxfhL$r!1sG^h*BJ^OJSSO`SNj4|FI<(Rj6%xQdDHMp z_EZJOeeeCP-0xw(vo^WIi{eK3YiMom zf+tcOD88bsX?ZK_z-;rPeLEHzwX8BFftqCo@!C_I=E2J#f22yWDSRgKWTwOk7`&;$jh z+-pp9LjM-ZIp8FwSw+-XMg~o35?-afyKD`%1S&j%4T?U_5(DhA5PDRaN5mix@}XuH z<+n1yi3?w~7z??yRX8Jk$p`tgwVL1YM6}_)tbR3N9LURL!ZBTv?6}J1%Op^NXKM^+A2${%G!^?h$+F+FvsG`8$ z3zOckt|#$6vxH2-2M-s&k;#7*yVR3{=EP12Wlls!OH%iS=RjWN5rw%xByr@unC_4P zvA{!@08h@>&mRAN6E$eS|EE~if+Z8UBq%4&?!s009BX7EdVsKFDL;X+x-0ReO_iTLq;s*%ncwpxFJ?=JAlpSm%l19AlqD9yiIP?@!9ATi z#Cs=)cSiLqTDNCL4&tYPf}5=Ezd38I)6oJspEXjW-hXiJwGr7C8u2LK;Nx`Ts&U%? zacew%A-*eD^*uG{$i?(!7p@rXMF{03oHl!P9vdI(^53dG-qEMx{>aWsDVZ?(KQ))Q zhclY(F^5Cleg6D=Ejv87R=OF>7K7h2our28NV3d@e^s$0c3LhyH?ut7W~tffTy6B& zF|{}5tBG9k*C6BfqJ-6&+%sjZXDD6=#z>RH_z-Ii+!M3;up2i(5gTAm`f#VqzdrJu z(q~rp`|kF2_f6{T)@;9Z{6MN7Fr02lT?yUm^nUn6_g(`RIbFn~YPc5EsI{cAXFU5B z1ScfbSe?pV$-?k>vLEV~NH@*>WV4ulor;5zBOX*i5VRA-$LWVz0A&{zCOEO0S8RbQ((u^@V9dL7A?HQ){WQeF$sOfrPDU@0Q)aHB1Gxczn?DNsISGRU^A}GZ znUBu@8MmBE!Ph*XL100ko8FXJ1i(v0)YApWY5vUVxJ!JDPG)f+q#0A>@~<>X2AqBm zZ?Cc2)O_Ht69_g4q}1)!oeM`k_!stZ&$h_-+mdW#oV&&ZexP+?!JcWu3rd>QYV(lU z!ml#m+{TrIeZ}3NhQO`W5@Hr8Go~B0lzlFed;-!UIj8DUu*m)6*-}H*fD`t zy1Tm4y5yYhmdw^SYkUvXs_hlSc>YdBm9%g*E|?QGSI0yn%H ztl%*!ku9d3?UzJ6MDyH6Jlgu<-$U=>nA+MS4vQ)h^JkKzBEv^BhuLpD7Tz{$&G8>P zCWbNm*NE*;UE%$5kYT*aqhTVnRr>JHD~mS)cNWIiWu`2#T2%+@TSXe~uyPJ_vTKzS zCFR=x^03Qj{hwC#335(_gv~wNZq>=2Xs!XVl1mMNXZ)K<*dH$wFJ<3LesY#tc6+xF zPt&WUUI4O#WwJdPw=30~gW|0_HHSmX>i#a9x8TWaXKV$3^WRd|vltY)7c+mLUnB$1 zF#H7kUc*Iev-sQ>+zWwF-T%}(5-mlyu|^6LT20D{ngJ<^a&W?{(1=9Zc;$!eRUK;J z#Z2kH=Z%%wzEVp+KMTuE=q2l(Ed~3IbgoUwD{f z5ApK!?`^_dx)DRGI&=z*^!GMue(NfH3O2BijhGl|Nk);)f#fG{6whNmRiWj7N-Ym7g$lJ775!L5sol?5V zF`Ud`cEKMplCjPShuUM`84`=_8MDa+7DBGZ!t)((u#DMgw{E{3YOKCwr{o-eoB-Ds{Y16*$F|vu0$KO+dh&7A7+8oKaLpqTs(xSmugAs3L;S<=QL}eXw^A?yvNrQR3 z$1O3RLRA9r9uXm#^(XpW4NPlFvB!n(uvNLDR=Jd6hZQZ{GxRbKk&V-2Yq_czIJWPZ zrqnqjn;*PHG55`^QLiNE^5dak6pU%<<*J`XTr9ohRJQP{5oDrb?u&S0+joYjG37w% zgK#&C{PnQJF3<_thL(Y&6lVA%$q**4%hcx&u^)i^@so^GY;fGVYehJG9(;oU8g zzPjBRx62$`lnV=uPsD<|U|t(vR4ALD-K_$%GVKmtfmWFMUZaKdQzP5IJjd%*ZaqaC zXQ7ch0E56SZf(~agLdqcn*|qvn-9G%#kx-tI|qD2+?EHwf?K2n&-r#%|Dzpl^4C)f zk*;SooJh6F_`pRBI*AGagZ@fGg66-mfYn(*JRzF`_#YonRpw3l5B)3Oj_eNS76+x{G z8lYBg_I_nePZ)7te`irvZZO$Z8lBir%d;1Wv|zM(Mx9FJtfcDsJj|k!wJ2KOLFfd( z>&-}I(`%2`8;5VSRZ!XBF^yGJF+x&=Q@Ow64|I^yIZwFWgS!(%r8_r5EIP>)xs93H zmK>eCLvL7CoPL|r_Z*Z4U6a(l_)*!KNaDR(~TLp^vlLdsh$8A z#yNfp$=FsQLxnBZ=`#%AU7XmD6+HNT45i=B3=i-s^AB+_Op^|!(aiYz|H5#4H{Kq1 ziyQ@>k@g)--KuyMipsnUPU@(QuuA?&qr0IVQjyMja8V4;UlY;Bff{H%gyrUQWK#5p z_d0PJ8um+4jFmm#pFHU)$FQXh!36 zXP2~+KnRnYw^u!6*7j^7mH8h|CL^|3T#Xr@Mem&lIQgOA2n!@`BbEcp4f6j zg-IpbM5IQ&p8}zjE?WNlH+ebP`k27`c3>Ep=3GE&x}yw@5h#W)nZT#Otp z<6$-$zk6-~zEQ4m3tmYh4tpp9GfVzkiqy%MT?21dimVxr&iv#%gIk95>t#zbPRWEO zq~wCNEfJ7bMWU;>nu1hMz{8;C`)ji4vnwJ4K)=J=4XnqRu62uWsCb|N_}#K&)!39` zRBL2Z)3JMMB*1Y{{H@-+1hfo0)BtzSP)xD&P<+J_aY=3uk8u>ar8M_+7TFK_{oxij zD*D&?TWU@o$6s^#{i(&e$N2>fD~VDx5{&<_o% z+uWBOB42fej0NjyjV&J3jvd*5QAWKB^0Fi2p{~>-zD72JV(9#HGcQg6W!fbWZ~aFh zMYMsy;LysZv28rA`i~z{ zP$6tuiE-6_*c1_DnR_8CGp)3HGrRP3y-RTQHRuuV5EfM;rQ(ZzvyBG4wJZed6m4Im zZEi-%ELr3m*DSk7DL0i`=E}-+!0f*{{axP`O}6ZZQ6aduS3{}tynX~JSW40!Rkj5D z@i>X3VU)-#4B}i+iLGZJh&_8{QHFclP}~Q$S(bSfi4gM@A8wp7j`b%K*60<7KgJX< z_O~xZyq9{>+2RF>INSqzgZ5T?(mHI_=QaEn_MZ0%8-7?#ts_dZNrK8J*63?feo}+I zx)(D|z2v-BujbjOHp_MTSD11NFU)7#TKfe~a_ho&SV~!yJyS+L^<6y%tn*C3-e(cgY+L3oU9q_hv_&__( z*8{JP3x=7P5eZ9`Y_oeKudaeMlK$;B?>@ss=Ibdv_2VYKr65AnwPSPSep4&ZBJMp8 z?Z1%$5dmw~k)Ko8w|tu}`-8H9Sl1eI=(Rkp0Ct~*B^d*kN)M_*>D7_u32(mk_rxrS zH>eM~Ns&0BpG1{Kk27AvSb9aGFE!o;roP<#Ux+7Jo)%hiU3y9s>~Fg!(`)E{BhRf( zTjkvsoYL=;aud<{X9z3(@q$Xcd0nCAw)D1@@PAI`$PH`w6<0cOru0WRr%?BCeSxFsDoaH>;@0TKwKE5}4v`z$HFM z%I3=wGNIKo5E6}ExcOJM`g~KV_h?`@uTbe%_bRQ?*DZVP9}Z8cKhE&F;HCDNM=n%U z&^0y8KWc|b4-d=$1&Of)>Uh5f8$D|Ft zKfPtc`I+O~LwUewrKS^m?P7-Dk8H7C`hv+Px;*}dT!=4;9)Xh6gip1I|1^t0k}2$~ zyU?Sy4>xUMw`(b5l9cmk6Ij6 zojfA3>n(#rkzeheD4%Eaux1apAT~6b_m^@7gHc2g*a(EVAQav1azMn@To^?Ih#z@I=s`r6G6%xgX!{qH!3Snisn> zeZnEfxDmoNNke;8uA?=}jUbSMi0Y+YA382)om<5FBxL{Ccere~J+D&^Kc(1;A=wpP z+sfi?u1x~}M8@g@17QS|WAZ_{a}^3;q{Hcf$LuP12j*rXkWY_}>KgCDH`@9+>X3rB zxTjI&m!|w=W8l;RTbbq z$a|@UVEjFUdy8#X+JA9c@=Z(iZyy`V{8KFV?<^a_rGZE1ySDk47Y318sSN*~#(_?G zq_S&q*ZOrAd3CH`TFz-T;+g(!PJ3{7K8%>03H(y}=TFW=nf4|1^oa2r5vxxw1eVNr z3rR9xI2!H7?iFJ7@C|DvjVB>v=~$WFBC98IL^rR*BsJY!hV%QpXFCyVc7r&L>B|-H zdaF5sa%Sqfe5+BMlq*_1v=BElkL?3)MD@5A*`#{7Yzyyk2B*{~o0p!1GT)S6wK>$j z-?-|BY6s6j;%JuifG-{bpPz6L5S7=wHt!a7j7zkfcw6&IOlWf58u+4{K-y!wQHzff zSb6pIc{m@QPgW26mLydgF`S>pvs@E;dL;4I3hJPMuGJ!37I5`?7s!08g)Z@4;PIYh zO$kgQj1g}Lm2a6Ea_-0aq}j6!2{{b7(pB$S)`ahCN2L*uZL{tgURzB)7F3+E78&qg zz7|TQyA2%Kr5w^UxXjhC`JedCclZ{2e|VJyg(^Qr#`xW})lzzk#&@}HRC1JFfd7P)@~o)R$(-RGcK+m69-}sFiUrPFN$Ga|waUSX1JyPV@5H67I z8fn#|5XGEi0ZO?-98m|P=az{-OW8+=ms6KHmuUoUs}JQ5#hSAoBhPJ)3}g;l?<&cA zVXHG2vF##r)&I43U!5UP)jKx}(}J?JlyJ7kGUXzp-_=9-=zp=zN~j&R3&R;A?&rv1wMc zLUv(*Lp9Fj6x;!{`jS)stKYm(_Codn%~?pGe^<=Xk3t^jL)~D@70Mn)A=55aw?E~U zm~!7whp%Fk`S$^I@YqkoDTe~R6E;7sMUdB+54an+(G^_L zPH8bMidkKKq}hF#&@>0sS%0?L#t$N3Y zp!?KFD(t@(Sq;p0-OV>CPgp@)=H=_GjsC7*jHVz3;iL7IXk41vw>(aSn^t9Ih8J|7 zrE5lSy>suhKEhMfaJr(BIS9SlZ5P5tSxYel$%_g^;rOCrlD;3`!A&AxHm7iNF4-mKDH7qk8-_-Sg(^;0 z!v&>Uwz1g3alp91=96a9b*9JRsG7%8gGDBh#sTd2mog77+x02m(YN!}3I0VVGJ3JX z$5#}cca$rnyv>Cq{+&VXRbx*KOTmdbe$n4SpV0gqKV}QPwxYA8gCzJ|6DLeXrrGX* z^1G>LjruW>g(c)!|Qj(4KYv<8uGcNbtsl+lJsg+^i+=w?gHG zYjDVJGDMXyjM!J%w(6TU@il#pPMUvY$C87toFC;_kp8RSxMK8of-QgXoNK4@`IX&Q~FKw-eQ-`o%r%+>tB_o11ldb@-t}+_M~S6FdD-%Q_w{-2VF!q z!fXkC{4fwyyK!kC@$_-)WW{=;?!}M)Av+iGQnxbTCQ50m@-^JzMIyzm1D2NEGG8~q z&}-n2E+=jAQ0&9rn%uWB0o&wS?YL!^hd&cGuLi+~y>6F%<40tfK-(bQ*a<52U6F#^IO1|C1F0e*?#3Ix>>aDAmg&D@j;d&BP*}V zzMDK?r>Z%uRCk*P+qZ=^Y(b{^)VII}i0A&HTAa<@qOx`&Cx6jI*!riGa{H*+qyuvK zcl$Zbrfr`zC+tO>;)PEg_2n3xzb}y}2sp+d^7Lr$Q$J@RqgI7VVTTB!^lRTQhE=NY zF1$pF7btcON1g|z3~kyR$ymz|A-7UG1E`Nm zj>h{#{Kt^cBZ6&bobuMj8Eo|CQ{MPJpCJ?<^FcRa4zQFz<+o-Viq5ay$t*XOzu4B5 zJ4#E#9XFzVFsS5R>~k=-;Gq`Fh;P*TEpKO_+mGmXEz~C}{8n_jd_DX!C(f&)if`-J z9dg90BV(crMO(FOVblN-U_F!%x@&k=!)-*nb3w;p=zk`kQEFIL6xGy&#CK9U7pj~% zuU^2pG8aSSzFnh@cyHuZmAAc)wXoRbQmK(uXcWZBFm`cWRnQAze0p;Y{TXaDZS+Gq zVfv~?-J*c6J|iZP9#p{_S$IXRwaiZ^Aiaf^k|E9e`0)@sR50Oy_qmu(jj`jLv|1y( z8LPfO#P9+$27lA6v-w?lvN2sC`LsHp1@ocpdbCby{p?p0C$M?S&{k3?#J4!vaa8=c z#lT`z?~u-h=({EK&~73Bm(#An=x@6frh~R@ueeothD}R1PpG+W`fM(4H-t!7a3yq} z4N+IdMPfm$ml*#YvML#)I8F5tCB3}(cLYEuU@`w(Ybksk?~(EqqJf%~a^+@q%BOAa zlreDm;Y}Zg0i2?&*}C*eMGM*HH7^GZ?u8ET4;50m%ZR1Zx+=?T$)i`n3$FrBgztip zooS$FqR%>OuXPO`KXT?`fj|8)ay~#$ux-$RPn6ZEUy1!$XtsZ{OSvm_cH`TN4hc+y zOXp=-A{wevxXA8Ce88kVXuj7%Lq3=EdT~QZbWF^O6RdvLxu)f&w^30SzTu`@>l0MO z$?^ukzNrZVw|U}rDhv9BF3bLJrOcCv7byXi5634Pwuv?9h?X1PbZAI1W%a>G6H4xh z5hv1*JBANDcG-e}Fxb$+MdZD+%}VM=0%Nu-mWkMw2De?PUe%n{ZUZau=ra~lIhuSh zvWjbM>pF)(SgnSkbDDVthaP^DAWTyK_=_Ox5+eK#=&wB$VMqW@s2@i zZ3r6(>{NPid%IYeI#0mLus`?V9+xI~!c_DA#dOr3vcdc7lCIY~u)xhGPLDZi4I00Y zt@tNUqjRy(lv#V<$YHzs;wn(~=?wf9I(y^erGE;~bYt;B{bP>vT1lk{lqv9W`EvIg zuS)_E==t*wZ8N`OExe0tS^c(!0|so7*E7#VS+??4%JnZWXXHhli~~Qvn4H%&zH}p; z6S=G|VV@+DaqOR;l_K%*2x7eI{t?(!i~q#4(-#i71BoNP1#Fkj+>-OOL7WgoY8O5> zZAOA^Ttw{yyUL~1b?ZEbcsm!e`f#IR5iq^$>*M3(D+0|HOb*5ZWsV z@Vm6xCwyr0AmwW~=q%)EdG7`-TTC*^j$6A-7Jeb#;!OF)C(Ab)i@P~*p-D7lGXCfG zMO~h6)eijV^k?NY*T_fmxgdh+9GAOF(h3SWb~T*b=T7QnI?2X_Q1XI=$o0K3f54Zc zIF*48K)l6>?`GLHORP(favW@4N!*mUd9W!(QW$H|hxYE1!qZhbzFUDC^09D3o~x!B zJO!3^c?_%hfr}|3q$I6{n3-wg_A%dLC!N7;fK<2<(XxC;NeH(_l|5{`s$vG@|5=aYg2u5%R1DK8owgnk9ulV zgM_q+5G>rIy7XP-B8U%vZY)rr(n%N!TCu0{NQrgbbGVj!(l0+fDl9J*kt-z>T}3$Z zcskL_+ZPfFc{n{kkoJ+E;+soD)6Ci0(J%8R-b(DqCY zXNb>-L<(k+SnAWen|iq4^Mo6zk=~rB=D}dpsy!|sJSi8lLCziF_Y!G(^KUD&hgjSo z|7Q-mj)}1vQJHfJFI(|aK>>nhtUux+cS`sD8k$nmSh zs$sa(9m0k{vWi|*$VK&qvKivZn31Lh?FRIJ(A(*dLy+?0O3l`ujuMq8n%PhbfTrIshn0>vJ=%NWX?(=hbIszHmj zas89lmd7*3HxIepo6o@?(xG^PI$Md)0B;^ZFBu=C$kxNB$w}QqKZ)QA{?7tY{X0c)W>My3@Km{2mFsiwL*xTpb)rV$MM1F5vx!*kAiS`FXwZbV8tZ0`Z zc8h&71glY-RY$$gC+GQ#AT=(mylAO+r(gdFmC9W^Ff4kM98zwyi(Zsud$dq{9}YM5#iYRr^wvWS`5Fqwd&ehh(sK}{ z&fUSpFrKWka^8C`p-&elb{C&lPtbN#_f-n3M_?1)R)-Y^I_N*_o~xJsfwx%-aWC#m z)%G!AT57u|v|#{&9qf!OB)zMB?qxy}C0kaf-fp4Dw^O%3Mu!E*IS5MTI1J_gq&4uW z2e5LT+Wb_~ah<`<1b*YcLoOVk#O?^%B?QG{28VPHZxqx;bmhE?dJNolqLUL#Pc@_% z9=R3-m=_3y`@ZL7t<8QPwGvX$O_(zK1boLDyZ0%@+$S>UE(q5H>e&@1qr`9gRe`fY z?7*tSj!+l@)Y$|qr^*J@ln9XXn(`%0e46w>4C#a&KD`r9k&y$%8gUQ1h~@M^9_5>c z%ZFl7nRf-3MI|Ss*Jc!XPO*$nOlr#D$do~E(7`1aCw-Ioh4_-NRPJD%-|UA4s{|>B z%=b=z-41NA|-bl1G5b2hKkAh5RPBc3UbbZ2_tKoUV~ z{`cjUjr3nW1rSny0Mo=HH-a$BE0j9mKU1O|V*VpBSUk6I=7FGZTmC(AO>8_RSb^yC z@daa7rld=&)1be==4a6p#>&_ww)|rFFLm_`EXSLpjz`V5?2S;q?oAqg*T_KD%%Pz( z>4ngYhOhmrqS1-J5;ojeuU-TecK*`vtcmQRe<;~g6>6|^I)thP1Ir25GmgOOaO-xS z#hf6HC43=IaN4Bsq*!|b9r?AGIN5F3LfCqkWx+|!Y82y|%kYbnqYdr0w1>Whuqi(L z>;Rb&ihJC-z5}!Vn=;JmXWrE*+sYR!G6b0q%G5#0m$Ov=RKhRKAsT@hH%}S&7@Rfy z`-hdgx?m@@I@j9!J9z3(mu`tYtA+)k)JcLv4p;DkE{Jey#4+~!-R^eFS~brniAt%3 zwy=c{H%h&-G{m<*SoyLg6N9kXR4wxyRVrhrUHs6zg}N+SX9)#Yvy#HXb~-3uwiDfr zl={2_&($Jsy|s*Dr5@=kGc~zLDKdyWm$+xol0eH8T#9lB`~9Q^(O6;+j#IZyD4s(l z?RS9GT6dPKX8oIZfnc(+TTZh@5<=VKrD7W_Ifx{M)+7RpCuZeMiWbSHd@4U;k-FV(-f3OFVbd_#i<4CHt zM!~;J9p!gw^X+iGt{`42DA8gMv~e!ED+R0lH4wQ5;zUsvU(|maS{r3*r@A8h@ni-{ zweI9+;a(i&s*=eliCCaKIu(c(gD81~1|PnsxllT$5CZHh5|6o6O0UHY2k{i&Zhv5vOwCqse2`GBkOk0ZmJjz$cT-qRbn;0(AO-#dS^ zcKpKD^mt3==Tef2CKLXKM^WmuS61~HVI#4&KCPc)&LP8j#*DvjvRcOdyJH6z8W-qK zm!xl-JzFQJnQJ{`{)c5Ow;;nMr2K9A{Q3|6y_qm)9MO=#>=(<~Yw)<8bNOpLdk$H% z@&Yk=k%+rblho}zv%opClp47p8lTFfBE}|B+Hh8kk+j=cjC1^y7$?UCcNSYY1d2PGw#cG-atGJ+I@HswlcM z!DA5l{O3l@52QaSgs14-Ho9%P9UKle=ml|B7NeL)+wBv!_RG75q1ZGkXVz>zbv!+F z#62WU6-gomzqa(rcHj6a{NGN^0<+G?us0oYg0Pz~tWAuHXVc9wE9hA1qjt%Z6;$?0 zPyXiehGmavoU1gI7Ck9jBLPy*MMLzF_4t8)`>`lqybt<8Oy@|V|3CMlN!LNS)j#?8 zlb2pRca~C4Q{^JL>3;zJ?HyoylHxI)Dxe({?s4t6qMV}8k zKcly9V*j0gubx-}c#4ltWj-Gs;2cYj?dh?GD1xz6%g4F^S;aqmx7*D<} zm!ocpO#H|B!6E*=Z~uZ82mIfa#BHsny7K0^GKIQ+KTFXb4@isc5>C38ZG0~yWt5un zI`1iFBa$jcH%Qk7)WlMkus{SeVB8t0z@0R|HNIcjfcYC4hk!pQp3MNDxA@A^eHMp2 z_8xx&AHFAAP+u~UqM7*A`;RT4<}$x(YHvTkKt(5>_3PrVbZyJ09STd`=rg?blL=md z;N6ogX>dxIlo4|GLq^JCl`I2Z+`8w~a<$32@GX#+IPU}%is8EycpUto39x;dj!N+7 zLEX~+D_N2(@FQpFNVR$QqwK*rr#|KITfyeAT{HjK$afiI@OZkLS9+}JAAzBI8{@jv zs$lb@Ehfs6B!YG55M|0*muo|+5Lse#lJDq`o!QE@A(kY3)M=4Vz18h6zCRQ(Q@Sfb zN<>yWn|kL{y7n9!D*lafTCy7{fWC93i<`H&*KhmK@Ai7Zin48AsLxaDE|g{%6gayn z@eKxtw{L^|z3I+64z*T1Tx7YavJO%Q^M;ePMXbM814il8uT}0DLWwp8&?hD>34DUe zy?p+VICuf(-Oi?Bev(+#F-8eMME{+6I`3Hy2qK4a?EJ;5PnP&!Fxy_k$2^$T#Vouk zv0)r*&6Z<@eqPt?JwnAZv{bNhfUv+TOS4v1lEuE7C$N8{()aV0!ZeHUZr!_dw>!G@ z?O#EG73FFhm-Z5Y+n{Egpev<>Z>ZIUumcW3vkZaABgU5Zhc+A981t1Tpq+Y_WsKcIq+AddDGsgmw2_uF4*ZPB5C}hoz+Y3esvia2fYSm z@&9_5Wcnd(yn^w~K&!?Y31;n~!zLdcS6ipFWh28|*>?c>KN({0w^AE9VA`))CGBgY=zq5$3Omo5sRQ4g|`a~3^ zKOXp<)6$@Dw~wFu_#n@Er1r+2-Vx`Nj{{;p(nQRwsL~N8#XWd%6?VXoYt>=Jy_ccy zHEKwi;&DmW-ro+RBKG&sy(~1(2&%OBQ}x66?Ek>>KKbAZiOloMcqu%$=!|>4HtI zt?*%!Vg+=%O#=NQh4nL$ypu=8`F$UgSJ^eA)ktlmtu7%g*1|UD6=@;Prc$5FYrapV z39#oUDfoZ~wW$}eIL|#goTN*8OCRkTh%E80!>mEuQ^2pY@R_b4u)zF4rO|Gg09w^E zf#o=k_#yV=6FQcy0r>^~AY0f5p!G@=kbw1M{xnDwh`ubqpE$7{aP7`;9*I;^*C{x{ z<#udZHRVj5yc$w=n1RgXosJC|4!X}q?)i*mMnM*QTm%EhfAGG5qMT*Meg-xEgTz)1 z|Df(!LW&XNwF}HnzL&?4b(;PCmy{Ul1%=gF&4tlSWw6E~5$@(9zqGRUW4+lS^@TjQ zqRg7}Ng_m!i?CM^cbblZ3wXJr%WKmS{#|xk4V&4uO38Qe|BvLd42r^W8nB9pNC}8E zC;daZo0Ara6OoRiJEZeK8YE6YI*yR;?rw>ryYt8cjyw){|1Sz@tx|5%fjTppB*y(AQo)7J=mT>jvuRO99?rY(&2V=U)Yl$8IA8e;&Zl@1{=5vc7m0b^Rxep-6 z(WFOd%(#CL*zKi;W7DUa|8ZzN>i7%G3GhrMkztT)nBpaj%EyU?J-MB&51GKB6)KU| zk;3Glz>VEpMLXX%>Y3g#Kh%8m&|&4mG9I4u%g}e?RGOwjxJCQIhdQc^@)qRVZ6;|I zabNM}aGu+Wr0tvC1E2l+W%~H1R-9{W#N`dc+G}5%NS0~XOKP5Do&~tk7VmE>p4yZh zp=pJ*NX+Equ8ZJs9m;PecJ7&XFFCOqr|@?3WPih5-)msM z*h+lNbNFNBU3Xf5yu_A%!wfp|8b4Zt+DV(^-tC-S$bxk^=h7cn%B09F%4em>g8kZa z{ayWMgw4sDIi9EiqBUx7XilD-gg4u;oExa%$mN7B9mnlM07p!yzczO^2;2~jl1_Kf z{ubf+_L|~2u&HoXY>QZpxbo-Y4~JFp3J>bh$mQ7<5K9X+p_-f3)ZJIm$#2rqQ@Jt& z)v6N(hYM>6jD@1YcX;??a?666#~;C~ab?UeuXw*Q!I*Zjfvjk6u>6Bvz6a4=i&0}K~htTGRV7_95|;Wf4QIp2=WYYfwWfc_Ax21QZut@>$h=m?L(JU zv8B4PSaz5y%S-jC_i60zFUNOBaZwM&JI{rr3a*W?)c0dQcJVoW$U-NdXJExa-7q{(T20Up4pxAWn)eIXmh!xm7xf*j zynyl8jv-LPfVoc>(zwI8ffPNyOVd6YWy|Lz3q3xPA#TG3Kr5s{4 z<{C`X3T`L~wRzUIDH0s_9`G;B<z= zU*w#abE`=vbt0|HLTnV7F*>WaNLw-wFA+MR+$ zjpW}^x%>#;`=h)-?e5(CO>)d(U!-uta5f|!#?A**$12rov- zs0TI|>D~?*t1-H0$@H^mFSQ*|8H*HE^|M>Ui9g%pjqWvz_`6w)ZbYKqeFmg+MN8!? zsF#z%w@??DpyR4Ai6 zR<99PER;kQp0&MhS{f}q*2(-a*hXCvSJcVk3(1oYK;IlE}x@+)|`b}Jd zB}>XaT>7m&t|>BQc^5AUl09rk_8fIWK3yK4quK}G~~I=wZPKf zdW<{SuELfBugVj$r8e$sVEYY}Y1K;$!L4@~vc2`U@j4U7$D#P*vP#9ASoN0toes*x zUVv8U{@~7M?!LVUwB#L9q1wMHfoDIlQ{S5Udjcda;FrWhI(pK5Kk=rGmj2LC?1$F6 z$;^KU#kOrpLG?1X%ABW*Sf}{_Z=8WQlKpruZ$9@V0^hCxp05CZeMnK@LDCM*9+*zJ z%BT2L_{%jamu7Oja6`k~pc{~R`z`{v~?A%#UVbm(gEG@ z9oSn;v{ZrU^KJPU3Xl6!n}~bP3xfz!A*!D9e{XKfXD`;+slW4vQ*$vz>>uF2g~RT6 zpTiOJhOhT_FZ9kLi#P6G!i?z_57=M&U6MNBt~m!&WG2=KO0^#khJ@STcQ>%vVFO99 zG6$&lw~a}Q?pKn|CEOgUoc+xEbcEj$k`nx;LabIjpQEc{gWRfLw+4tVp4!jY{FnUG z>S{=Qqcd~%E%-VshkM zr}8<6s~;|GQq!wEq#Y%T~SIgSVB0i&W?L8V8pxx9qR^0wj9l&!VcSe*2{y1fz@ zl*KbR9`;G9j=R3~S=y!uhoaXKwv+vF^?;WjfKfD8^I6J^lDyh_psM9hRVAq@?8pM4 zBiDziFat3wSIot!u9OWV4Yc%oFTu`o^3HwFUPkIXu|GX!P;cI%Dm2Zm_0fMzII=Nh z?e$T}6raX{L!>D@+sZF>$mtP z@73ODiZqGa*ZvqehU+gs?Od$D2_pxUty6~j=ZxHq3vvV!JK(Qj3x6#7!1#P?^yM@b z%J0oa*4Qypaxv$nPRj2d595S(OW9MYfBaN4Eo4j*Md-94JG&bkR>LpA4EN?9aQvcSX z_ndZcd3N;;p^I?Ht{qP2{bg9e@;84F7t5iub?o;^UdoGA$nEDCGl_`dIl$C*Ky0kY zcVP7SY^P=+!yxXZ-j)1idw8+a>+{{qDXPdDHB-8_+K`>B!_O?*4sLIjal95^q`BHW zJwGnhl?z_7uSv;EEc|HuePUk#Iwx#BuhtAASlV1~5s_Lc!EOshpHF6#;sb;&46C8! zH|B3#s<2(M62Ed+JGwW&(=l{JtcTa^JUhAPi5z&Pi(Z54u32yS3Q>xcwuJjM3bV2)0Dgt@S|r(iO`8wwcq540RgXmjJ`Y z;YHyYff9l*qrM#GF(on2U+HsTcZ}q@9ujKtK`o3`))pl3uPU)f*<*B`Qv1T&(?u(4 zIsZG;->WF>^rOPNp!34HKhED1DM1Jy>)IViVgnAQ#oP8ZB}Wd~;Rp3NN7C#LG-AhC z6Y>SK&IqEMWx`n-pvB&s;0|gry&0b`%ru|>7x|F%FLr@qAcjh|;n%tEFM?=kTCn>j z6IA*;-#tn^P$FJED2#o)dvTqqx|0}31WC{SC0M&CVYH>O`E-6r%W=oljRmJ|;aAVp zrin-9;fh*grt;kyL3c}6jnDP8H`gCXP%o`d&=X>~6zQV!7lk!D!$pzi;T8R?oa7yX z{sWH2Zw_hY4`h$M>-&g=dSDjpP@m_wZ@Y6DB7iI{44B;YA=NM8stnSgqI*s+jA+^4 z@37dbH^~BVc??gQ5TEZ`I0h1~?Sbu*zZu#Og*J#xYB?$Y z@beN;?+X`utyqy$=tF#Rn8TveeDXio+;;=@vf`hWK}L(5PfsjoDhE3v8Ja1Y;mYq+ zOESK7$5sC97?~{+mA~D}tG}Y3b1wpoE1oR>UaDvItaiH`F;H0bo{&u^xZKuVa_UPL zJj6_-R&UuCjj-+a^Ag1z9dnb<;ED-mNh7^~u4xDK3V(zo({(+9r@fyVFBBuee$nIo zgSf1)Ppe&e8O%&i*##fW)q3^|Uk5zN+_uh)R`aDB$4m1>($ihdYqu-}hoo0Aewc@; z1q_FTYq$4Kp%5A2oUf|eyt%~|@9sEgeR9?(AUgm_i#e1$W^0(9gHo{eQLUzNf?8!a zt4j{u7ECR=8Nr>+t0Z6)Ilw;Y#Y|NxXZFWBnj}U&m-kDQoC7%TahYox`4&lS+p!NP zR@>8+)e)NSf8Pb?3-ab@!lbS_Et=uz3l{uN-xNv@5_!6@26LB*^f)n#T3RgKWMrCa z7}1m{0Z!ej*^3^4{@dmNkY{xZHM+W>n%JIhIEc6N5PCDD{kv>B$~=W9UWvzZhmT4c z){fFaxABVhs6|uRdOAd!mNs0Oxo*4seX%6lX{d6cE{sly$>?@1jiGW3$g4$fe~XVp z{JtEpKAm!pJLb|j^?vV<#dPy*ZipaD`}o}tBjdfLX-0!%LHLa?>E2?i7xc~Q zhqX|H*H5yp29XrGoGRYXC9YA2jUiI{L%Y3(5(_*-73D%fimCTEqV2BCW4gYvY~`2Z zM0-^;$#JaLxa9W_GF!U14Y7I zU%7LtSRPe9;)RDiMgOt z1ct=YrK#1DNTQ=ab@Pv3#)-X0eAesqZyBjE3iFtpe$udkFppSjY-rQU%JT32hTwr1 z=j!KJ2Du%0K3h5|JTRsaxlN{!Uf_m8CXIUu|${bU`h#6-2dEF9_lQ$=Cz-!bfBjC>O|q> zXZU9>9~8U}S@8JZwIPqE`-&(d%#;^3>T3H<(q42zBdQHU7q>n2&z;RLOskrb&^N-t z<+*alztR41-X857bDQ~QxXejBn!Q%jfe&R&Lp0&Vn(F;#=_Vkr`3YVk-|w@cnJp;a zH-DM+pXu*k7gt^jClvPr>H!L%PZctKUyPB@I%w+iQq8$?VZ|MaWIlgZ#rzmNj#x6S_|6sv55FeSeoOjQFoTu*?|ERDFr(2k_k>Hn z`?s}@e10!Lz&%sSQ4xMC#rv1`hcNZ;3pVw;67JQh`$hh)Ex%F<37ng!d=P(*A}T+i zYhJqR68>b3Fb{Wmm!n}D;aro3JrufaK7pt1o4WLG4BSF-+}zpr=wSja=Bj6w75;v( z)QwUE3RHMis8xc#rEUPcm~83O1QQpd?0(WcnDOd5ds9p-hLp3e0PtI|dD+gh?{B#4i0Gj?Q% zk@xN}R+MRjmCWYiXA$sqGlyjgG%q#;{h#ob}efY+1ea5 z(H?3XO3I+)PchulIN8DI{lE7U@YoPV+b$2)S4J-WG@vMAi`I)(j)doWc6T=TXJ^&C z_uu19oB4$K5q$EW-El#omtvk}2+P2Qsb>r_??%^542>gcbY#_K#n-LKcssMl(@(63 znb{ugilK90GZ_JHa7=G>Zt&~X&h*-LqyCMu+rjPokHTN#s+F*~2+ZY1gPgq4UkZ`Xe3AZ1g_Jdetbr$fQE9I1 zw>8n{Ivl1YERvJwk=H-vd_Uz%ewd{D|FShqo5Jn6fE(VV>|j=(@-FqOrwe>jp3jd# zo$!N6uJ@m$M1wRmRe&B#mll4iEBqLq(177?fTk*+t+<=8s|mf(mmT5)h-;b`9`Qca zeEbCcIJs5z9Iw>Kzk0$&GiNt!#Q@1M3eM;&=Y$SKrEp}^f6~bv4;u3Vmj6wreCMw; zCcm-{t$e*DW_0JXw7V3V1xVtKVxB)`N`3Fo$^09n$PfPifsk%0}i-+RvJFT3%dIXM098?U|gkyg0`+ zI^d4UIR(MtIqNh2qA_O5rs*jG{@jvyQrQar3qp@p@h1Sr=11qg=ZxBtTl=5)0{-kg zgfihs$hR$nBRqpMb&qF{w+(ixC$bXxUTbfPqdcbrPL*rdw!L<~wk+-`W#$e~SFR0z z(Yxwi%NfHYw!9YVD#k{U^^8+*aNrA$Mtw>j6Wil6gr{t67nR;n^A84B#pTzRJik{z zR|#)f$yXW9$W=-km7vcXY3W`<2Tzxw}BlYmp8`w{6^TO>OW=Fu)XI6y} zaODjoW(sC9&&lGik5Ya~9cj!+EWs26mE(zf&2k2(&#IJY3jgSx^_{Yt&vR?#C-j|=msd#sZ^QdExtoMfZLn35mMRlE+AAW|JQD2>cp#Cg>+Vqq&Ye8&qrE zE)Y(CX8|XXr!xR+CYO(Ze=(Z9$5NsxR@+8zQE zA~P^u;fkdGOMMypd^keU zKlR5>N1ZL<6M90&qK``!q$Lr*qZvednq2onn>$vyVe5CmKdBAomCJ#;^YQ}Vx&5@l z&vui=SFcEM;a$vO4IQA!e z%tx*YZ!Q3HC7|fW1+I4fk9vK1aIhOZkg+_QAy0QGsTE3aNp3ZA`(ej1RJDXFJ_oSy zH$?IBw)HFEct{&XEeCs^mx_y!H-w8t~}5wcQt01Y8q&6Edto5~a2Au!f^X})s>F+w&q z-#!$$(y^WpDMTP}Xd3ab_8jK1x5SQZ8@&u5K2K<-E)!eRCypEROi^ zi+=b5O0jB(tk8htur5LL8$sr$nZ3{NX{d(b`4)LXp&i8HI6+$FQKZT}hg=5k~R84`s!$D zPlxBfnuBw6O~cEqS@l47f2m;FddXxaR7WB#h;ht!*-@8@ey_Uf{(sEx{>)~fW@gb&?- z;<{zpGj$bY2E6y*?swxU)-uH_)8I!A?#Ck9!ZGxc-YaP@!t<7@cEX$UEmhY++O?Yh z4mdVxsiRtMq=uaZl}|S>T{iVeEN5iJ-1b;B5m=vqWs>h)ogd13kq>sZ`)K`cG{0blX@Q%558lziPUIvr9Y zqOPygm@ZAu)+<|^0s1C;=`%aJ zOE&NqXpA1q#$uMKB^^SX03GGZaTen67Ngbg-`+jgUZ>EL>`r|y#(i-9n~g_!Mqh`| zAYr8D>K4N*WhBx)c;pxs!xx`8mS;C(IZV+4Oz0pwKcB*WSoCS}bSt3)(B+&@b$;AP z-p$oHto7vZ4=`6vv=X`gMIZC zMZFxZq_3JtUnYrNx@-!Jad7n)qS?|TeYLg(r4=FT)*(cxgb}dr;q`{`|0{BLE%q;y zk~0u-!xLh8`hNd`b}_|jB2JQA1dWh1a}650;w{j?P!FSiFMUKFa^3v>gmefsZBHF4@g4+o!rCm-v2jziQb^GfBJL zRauTsqdw5s8;01xk^aL%d2qj&N_gYgrL?^oIsrkETn}Ha~ z`90G_&Ei>j7jm-`B;(i==4(G(#V@pCqkKKV50bZ2ShYGUCU|1CIeE)c0r>X-RPsJ+ zR{eW)cr53@sqLX?{f$3!v6U3z$^(hb0f}Wz1~f{~oW8QXVXCLDP!e0ppJZL?pDdi^ z`n7bG?Gb5^s)!`S0=_LAPD@}5|F@>nQ;)GuieAADr&=R%osck)Zk458`$A$3&Pg+ z#7?-7mwD%rXr3O}Q`?(68j%lfy6pB(b`OdRKNt(jtn=vhEq^#W{er$UqOp90@ZiFl<<8@#k#tS;m&@r5fpN2`jtjNzr4!gr~MxE+OO}P zoe6@M7tRl$Je{lmB+Hx2qx1HRT*p6aL7>pyFy9d4Z@2-ylpI%mXX;8rkRs9;F>jgV z`DL=3xYvM6djF)3k$a*;w*1T38tvt+YN4~t?iTy%L}hnjDS?Vx=Yn_ZBj0k8KW6>= z)@V!!tz*U)k@K6i+{%>mugH^dV%dTVEkl%tR#C+7-1&QSN$a@jCKg%}rL3>$Kf?ZCam{M%Y0)#PO{UYU0)!!TjE|lj!M> ztdmK9tB>B+XgiTh0^a zt$sJjDUF<7!khlEij3M<_G~YC68!Q?(^(7<<#y8*3zfr9(hqP`e3r#In2VP(J zj7_*kikQL_B#at1&i9Dh70WgO)?@GA!uVlx>``9n;l#3a`I_==dS8K-XzG`)jBO}* zU)1^&5_a=QUJvtsT7Y>ysa`&+Ve%S6*rFoG-3r@TZDX!3&)s8nw8U=!(@E*>JTLn4 zM46HZJN`n8=6QZ4lB|DEGaQdc}9QObv;gGTE@`AMSzNXz?(_b29zTAmR!VK_3<-vCxo*L zpvCYC+A0^S`b0q-jqz{deSh*m@rv7Gw@l_&N^$^1X>FU;Y+bcEeyJsaOO>ISEa$EL z<~~s~^cv3UzFUa{S>L`nEl! z{`fsky)1hiZm_ZjUxq_vMlEtt_0J`3B!bKrN=XRW^>(IY%>;?fcFOaEwC_M=(*2jV z#N&AnAvDlH>e}6w$i-JGN?Na?fBL%ebXdz0I!ZKgDUFzAd8@c?8#3obqxrY|lmw6b zEIlvTYc^sZ_a+u5S;uD_<7U=fkK%uQ}xs!X}{`2szf=qU4KxcDV5 zwVJX(?7xnC``qJwo80)!$F0GLtTI-;Z(rPAUJr8w_4mqY?-8pGGwB6MuY?h|Vo}$jQ5)&|u?gYlm-fNRlcM=g{X- z`)T4mrm2D2tu_XN0v)z#ikjr8Pm;8Q_tYe<|3HbA6m5Rz#s%+wTGH{Gm3-n}cdsT% zXJG8K<1N2022K=)Uw_s%%P@{Tzl7$#Y7-o&xcHV?;DNsPS(z72yVPuEc}^D-HOE9h z7>c-$9Y-M(ha62cCg>bMfSdEv{+G4l2dSgVUH`jtW)g=`T9fMtlg^(pTh7FtX8=b3 zz+08uc$0wchUbqYLIex^pGrB}TOZM)aRKjLaBl4ftvE!D4@EXexqqa06q3Rh+p5@eDcS)EuPV5Y<%qneVfR%ie^V;Q4Ou)x)Th9)6Pgtch7(}8Tz68X~ zSE_yVc_KMuJ7(Jm)(JH;^M9R1eTLgGVBncCE}zBeA`vCo*f^clT5FYSq|lV8w-ne( zD%C50a#_YYTpwIPZvZNJ!(=wW3=-))8_6yWO5Is?zN54F-c z{osU(-&NYbLmb&z2{9{W_1$+XZiTGGk2n*=R93%O#{WzUz$+~$#jRE4Rl_*PO04JC z?X4CMalmDux;;kw?e>4Vlhv^;T6NBC3jww`=s#N2e?jjZ;EazmxteGlLx&8JZratBnd9kNBZUiJmz!?6*f#Gc2Vyivg1BR<1q>I2AgA8@a;VOqGK(vZ!QI~Q0Hhu66N z6k;nLwe)TMO0>oAu!&0>W*Ynjda}oSR_ZkziZ02`I^N_}nhtVPKTYGR$g`RYy%Rx8 z6IzCEmn$EllGB?r2|KThHpJHPY0k(9Ffn>_Hs{zn#(S2G2N zKeJq#OdY;a94Z=_K5PWIH$^OM7)br{n{c4vLqMuLD@3~#Nx)~~3lieHmv3SqK>@uC zV`p}XW0ni+U)Jg@V%>Pv%}i zCr~&6zbPBP{V&EKrA@39eMWD0<|_?zMD}jL+YF<8&+<_-myUrQM5)97xE4PPSEK-D zt=`J(3Lu}B8YfU56_^+KlSEwbk zNi)S9Kp~Hz@)P%Fq66KmJ(Oo)h%biOrPv-}72 z;&!cJo1;)zQ?mOey>FR7N3Q0Ze@rcTYLU)DE0vJ-uBq^*zKGHp26>0_4_;cAIyk%P zS2`O5HWa84T&w34VrFi+$cW5l7lX5~czIquEDft`4=F=_h7q4^L)pTfR(lH|g#KPd zi!x`)r8Y6j=~A0R#G7786{%LXvmf<>)fFC0Gh{a* zEN(0HujU&k+jR znRZfMWwIai#|JpfN2jPQ4Ef|#RCp||IP^2g-lgQEcYD2`M>l1&iI65OygD(sDE_JV zFi4aa*0S*+vx|*We@;l|@VEbE;kmO3fHmXelzoZ=+Y;3 z0Ga=cesmLsH!Y*?U%;@3uRAOjR|7$v9C}>XZ0e5GXYq5K(dwuE4D=NX6 zb(3EOJn_$!wA@ILC-#l9R`E1*O;6s>l^vvpRc|J|Rhy_wj?S`Ns^eY)oe6cTMFSoV z7HH_x^^j5c-s>6r32&pO9lSyXOhra0sz-;EEoU_9BQe_AoKK%-ERL?tO};v{dPtsK zu&>?sT71lsm&o2;)QrsB?JtpJvYN9c@f*KTtePo_88y^Z!JLhaVrAXUaP*bdnb2xr z-Q#zpNsTSJ(t4x6pdZq@#Luu;y^Km=!q>MwB5(yGzpPBAJEq%M`pZ~T2q8v(LiqHc z@G2X4X4aR^?D_lYq3*OVuiNqS_w3v(Gn9kIbWK%)Q~Z zL+X+py{%y|4SFjxcqA$op`r`~aEp}+O@o zb~q)~0#u<##qB1IUbgI673a&49;3H@!sYkf^YCAK@T&)zL+y#?ld~$fr2N8FlP#0q zia2Wdmagq(@}Zq+B2bd?(xUB^v9eHo@Oi--@Qg(5sndfcx;@_v!l0Z*6!QQFShqFu z)4uf*$-k)|ToWsP^*=KcxssU|jCO4Pa)vjD${nCGtOTI;FaN~vz9H;Z z;lyy6vmeCJooE(xqN)V(IncdNJ7+*yYB)!^w%h8!ZB|?Ho!!?4D^-+kv+8 z*W7W(8vwW|Y$r>;Q%fH=xv{c%Gx&AbhI2A8cYP27%e1d2Ljn?>+F9m|>afvq&7j3; z#1!RbnR7QRI+oisUfSmkY&P!CDi+q7pXujTw(7VPWfUeDI8W7ym&tbG-Kfg?E&LsP@G?+lQmH`=pDZ0cT)!sk#t zVV0PDld== zgT>+Zj%q%C2KXnUh2NcX%yf7sjWVd~A@hp-b)!+`{#0qn6ExXzk9X24Ux)l%N!1`Y1NKR|Uf1ob_+C4DGn$fa zC6stxSa>VqLf184Kz@R>IxskFp0`@Slk#U)LREba5(m7@d~Har^5Z^kyoR0uPFlVy zQP75dG0e=SLTt5EqIF7fnxIQF$$jK5T-N7?2xKKIlz<#MRV=HR?s~b{S=u_7XkX z(P68%ThD=2qx8>`#n)OQ!N#85_f}++Lh(47(Z!p=jgw*T8KmE6!}NG2_7+Qbr#|9n zC!o0Qyob$!fsV2|=Xun4`1D$&0ES1sQz78g_dFwe5uL{MKq>2<<2?!f+}HTuh&2ZT z5G#|OA&E16{2IG}^G-TxNtfHFW(98dRA>maJ;%-QQ4ddMrms*%D9ge+n;)7d(78bY zO|CI-yxu&TynqCZ`>h?`F!H~*5#TqCb6G|ihVM02n*%Zu?KIr!vAS+-KVZ0SK%ZxX zNT7;!*z*@*Ny_0L5ldeR3}k(8FnvNspZtW4X(d3&4e6qa_f`+@al!LO8tPC&yB4q?Ys;~)efii&D{O` zgtyXw2(GSt+DRiScVk4${e_F3o?UK5NbgL|f zec|**2~JaG@t96|F=Z#$DGdiXacs9ErnA@AU!w`q))uyrVX#f}q>oz{YxQg*d5_Wp zB>uK`2O3a2vZ}D?i~m;jXz7nco9~n739{gb{jmg2u1U$X_2=^!W-@u1U9*vUI>eWw8+P_gbgY2&*j|nv7e-51a8+dxoS~d9)g8beeOUUsHBj!dCMh1 zn~PbF=_z{Pd3l2OsDX=*e0otRE^HF#IL+514T>N=?}*iDNI1)}8H?x}_F#P9-MTpZ zb^c`Tf76^)p9CzMKnt-%$>qv57s3qtuP>fVANs7IYLB1vs1;SGmLsz40Y-z$EfF|% zhsg@5&6ux)Zp|8`=)v7Oe>XyxE?{NDw_EW|KmVY){n4LUCBcgf?ObF2*9xjq!lT?# z5?rMZF2-6y=l`Dez+_9WPG&xOHNFwDHgpyZsC<6cIDRhcX_VLF;V$Sl2CiaLzwLmT zKWDETZ!CY6(J{B*1^^dzirI zpO?fv?=Zd99Mfb+G8bliB3ZxY_2nlY=(J2n)2EsU>*-Jq)7d|>j$ zuXM$Bmype7NA60@6Rd-nuAEMKQBXy?{DpHY=)FUMAH39I07FPX$%e_V*807@IfBw~ zH{%3j4Pr2T<44f?cKKUm*4A7L7EW3HppWdnp3H*-FUGvDIY#H2PL8#Ol;Gvq2}GG*El7{-hRdi;KQMgV&$!^mK4QZ@h(|`l5s%0)!_-j1vaXFA6{4#eOvBCq(Kc zx;Ye$ZC@(Y^Gm(7n;4bMr}MXTz!8sl-YFK}>8VzW*$h>?D;}wIvX(TC<{tg)Ih0sO zBN$8~c9v}V?*YIZnj!gbuY zW3x!}Fjw*?l{sNgD&~ZLkPK=?*GG~&&U9VYu$|+4Z*QM61)q@AT3q;nz?}qOgi)hZ z`Kxb1>UR?&JI_h3%F2E6ooM+l5TcB_YYB?M&6gZrx;#Cini<{Sg8kn+H?m3>247i! zhlGJ@WZD7~&SGxWhwPK+Tq(^a-5*pWS@uYsvv&DyrZ)#?i*i&$jB7Vw_ zQ~7?siN)tXoe*o}22>30YIGhM+ADnc3+^&rOh>yZ3+o0vD9aS$KlJ6jIj`x1OG&q# z$RJ*5j6|{|lF~ACB;78TN|(|t4hqK`eEn?p-$I^JHi&Rb`-8sm+K^#jdo}f1|1Q{J~GFvwtnqc;AopVZk_!DT~PRBrPkUKr!6DORg-t5eQC7~{>@(zxI0LxcHX zxaD}AqS4pId;4ESK({UmoVD_GZ@oT+ZS-O%Lbqs_he#~50D1S>C)|tNSROfXLrN4$ z@wGK4ufTHz?W;KBrpG^`6}<3%!S<3LsD=fFioBa~Mp|B!qFraCX3ye?C2o9K@t3}i zehZLoE4QdM$%DRGF!7hKp##i$J62D)Hd0DpYWC%0|C^!s^@1`@Z@%hqp;uJS61TsiLc5<{}ppO_H@sAbqm9IFkkz0@DzVZ#A-p9+9R@r zkH|p_PUlCe(kl!tX*}Iq{bp3lmE;X9B1s&lpDKwpD%a24WhMYSBn>;Ea?>a}aT&~? zI5U&-gT}3^0IqH|(VsieehtBciPWqYj}yfRtPWupYAG9ywdFv+R2)&4k9c%mo9bAP z0d;K5JzQVMP+F-s-(pKxMTh4T9D0aIJD&ED2N2qeVHjg`x**T)VcnZ7vArDUgCPHa zf3$EyA^U15@tUrcHHK*GAvXr4;cxxKqnSGXjazfxp5AVL{<|227A4+{Z-{H3m$qKz zz3KaaryNoti*SZD>n@n_4W>2KjMd#CAHQg-VqQG?7M=aF0b1ef5b<6k+E>m8KA8E> zPhiUYUbuER!Pes?F<((%HJjC7i~}y4EM(1oauRc{J})*1sRA&hN&jKKRy^vE-PGV` z#-xl?$dKJR2IeVp;e)2OojWM*?(&SCXxBa-m!ApiK9_t9K;F1W|nqu8);bGtbF$TReZ|IzT&g9zIO& zATN~{ogt^(5uzgctXi&j99L3cXKYvCsYtN3sR&O7MO1GmLug1GPd&q%njf}D%eNO0 zEu57_HhL4>{07_zJ0tj{_KJ7yt~K&;Cu%9M+na3uf}d=^P_k>(@4IzlVc0ymk0wHy zmfMmw2!=z%z2}O-F_U5e60Jg0v<;X8;%uhy`miKGR*0#|w7NL|aP*AXIMMC9J7}FS zAgA_{NKT)8w2=RgwaXlds((|;_(V)!9=m|2&;0nLqF3YpjF=%s*z$pkLXmk7;-vT} z_y>&L{vNe(%Uc<+TH2!!bXQ>3Q6GMr3L01S{kimV|LCuWJUkLJ7+aqffrDjagbi6Z zLpEueF$j3_xP{%>M@E!~!2S%i%HLkUF(2cV>gX?SZj7BO48eVy%4vli3vV#4^6iBW%1zKwDUDf?eUFfJgj{&jQZ5*ZgY^k&&d+tc}xwxEckzQl#XQfqyHU znIl-o-xzfwoNRG){)1icI|<@RJSPyi28mV%TvqnXop@bvN9LgaZurBl2$0A6-{G=9 zn3wv_U01W(+p2$*RPSk3RNl9) z-H@N$)r(bvQQGxIOy-VqH}K;}_2WCGIk9l{R_!dZ%XM|k_i$9l%X5!fqKGAueDHsc zmGO)xeuKj$DgZ9$fHmpu$9cDaFN60<63+wf%L~A%y8%I0c1yIW2#Sg(EQ2`Od4A80 zH!R|G^caNV(c=pUVIExY(mRjEb2pCw@_qk&@1|aHuakQCSE<97{o8*QA$Xg8V8JK; z_}Mw0{L`i_F4{Kb87x_@?yXdzeD7Rv2_&6uDA6#0^Maah609l=L^+sdnZ|c2C$XRY z5W`U~W$H|3h`L#8NGDsi&%&Gws?<%s^E3pGaV{+gzsdW(N?+nM~2E`n19fB z#<_0}=$zb>wM7M_EQSrcAEkB8DC(cm!b($utGTYz{*!((avJU zJ?Tx{$axctv7_7#x)nCIF(U_rE^V2EdJDfaj%+Zep<76>N^z4d2bO3(p!n^c)>5R$ z<*qngAR2)!cNH-GvE;F+GfT`J=&X#a+23;E8=+g_0=3Hx^p#Tx~WbD6pcpD2^d|x8@VL>b{v!>c)C% zmw4U4A39$-$JEtvXh}XDACaGTj&1FC1t%TVw&RP@B%BaAbG$8C#n!diBRp-VY_^JU ziXGoGrSbhJVv962kPn#JrUEw04iU-&4$ie;f!`n%vqYwToI1~hhD1sJ3WMj*(Y#Tb z@g_?LV}D%yS$11vB?eArPSFx%-Z(UQ08rcaw(ba5wYgnJ79pXj`b#p2eNvNk!1zXuq(rL_7MZ%nX*Ns3t&e4(X+Y;FJG-fsVT^tDP zTKQA535r2Zx!{#!2E9C>)sXgDR*3A3r<6+!^aIVWIWOq|G*jCP2W~`ve6^HavTYA^ zy*0$V%~b40h#vR~0{+5xpoR7woPcKoC*m;Y9F)ES0WZ@xSM!uY>(jnZeD)2uQ1)IH zmm<}x#fE@CK6*tR^x`$SJIyqaLGg`hl}^%!Tw?qx3C9^C1BS~A`6=5(&Euxdu@=y( zaigBxsLRz$LjVu*AwP^rfK4$NwI0@iT-Ps4VrDNj+PQ8hNSiJsaxUKr$;({ zu3*l1)&BM|=WLs;Lqx6D?*3CBNn~4_?^Uy=TAHtLs4P*eVj-ZQq@jjf=)qiYH#U$!qY-PVK||+5=gjVXi5mdUP1l^S z+Tp3ylKzc6$k=`-a3C-Fs5@h)z;%pxgFEj-Vi?kKcNwJ?cKfXjr><01oGQv1=k6p1 z_=W;Q*bu4-yZG15(R{JCHor$KNvOYN>P@#~hdkQK)SW3XK{^^)@w=W@Ox?ZWf6V!i z!Ms21>UQdLVKtTFT&V`CzP4Yux1dF7Fm`bN6;j&Q^Y|_K`{?ei8t{!)#ercwHF`jN@D`R*NGE8NdEQ!^Z>cMQ*H!!ylECP9PZ9PTdit^NVc zo3hKN^XGqt1UKnm>HQZ69Lsd$d~xedfBe@!!Q9(*_CEU=nVdN(7mfL#mt{|W_CkK+ z1T97LEqxkK?(z8#<01&;NM%L{$CnR^@)0oyA%%9u?|v*kBik-OPO%rzl5N8>><}Np zbm+K{jQEMf=|aDz-%CV=sKje8qpp4l2H}`pBDcW2)7A~vsc}627gw9*X=gcC8|vJ2 zf}866bXVH|KaQkpzfeEHF*30UzCOhXfZt-lWWC}65*M7+w^q-lsm*>WOZ-cJ1}oK0 z<5%JGpWd;&1eV_MAIIw}$|89&h++2agdWab-| zB`DT0%d9Q65-XBUmvW6}wF#W`9q-(q(UdJ1UBq!VSH{Q-VGhW|4=Ef)tdz$UW6!bs zkhw`0#s%NkWvnRAUHZ9pD#qh}M^QPn=SjVn+DMHN{dQ%rb!19`1>e5{S@yw(!&ygF zWmXZ!lJPi=SG7r`zqrhWmDsYp8~{jrtjgtU9R^d{$rj`^m8-z0xCP3a_ZwP9gQ-JWIKxG zq@b&zLP%)ZktUO;MgHDr)ZYGQYyHnh*haLE*dnYG?;rE1zp=J(iU;_6VY462zSs6{ z-#V?J2YeGH^6ef@EAYg-FxYCI9`M4l38OvJ>;%2&)Si;Ft3G+n&D33f{Rtqyfin!& zt8~oz?DH5)*Jox(-Ti(-uj}R?FL*n6T!a$S;gf!~WfCC0w$7n&Ykl7eVLA!z$zP4f zIyz2mb#_3Yu6uGM`7JS?U*6w;%oL2f(yLE2=LO5dMT9 z(oOHW)fl=Apaftzw{=;9KnYg8M6ANb)M1YF?NgjK`f=h? z^J<>S1MB?xTKA}A{Oz-e#SUgF?hJ^$i?I_ly2DM2tRfGI=VN}IUt4{aXEY3%-_on3 zTzkC)ZCL}jVi7(gKS=ZQM7n4#&ln!Cn=-wIlJgU7wEwwwxFpr~YO8Zn^7u*B8-n2*uoL|Ez@mw1dh9;o%Lk z>eCX&2OZQhaoM3lUJ@yWKWULn^w$6)7v9}Yc`iWyvSXEV&bPk(M|#!^7|RAo$*$78 ztnmi0`t3^4hvu5{_V>n$wUMih5gtz^X`sy|+oY4(m`V7T`RSUq2={z*?Xd&VFs)X4F}0kDD`bR2H^Aem$T$b zIW5kGQ?Je_#o69*rRU~Q}W6@NHjb;44hLe7wmS+8@8hL#_-(zm z>Njd{PV0Wkw$0h%q8Zb{vTjlme+GC+Yw$uUWs-I{?`$d<%ANrjgvZDm*dVmr=RK|V z!+{h@i^4vl+!Dshr>%XvJd#1XUzg*yxjLMsIePAPMeuH0h>gIFfVv&5s2Ua~r{ zkKra8O;M8}ClVD#8^?rtOE)lKR3Q2OdgmS!cAD1y`}+No0Egh|QJ&tm8QR*zmJvj; zL=|4&Ej90C7rCtJ>t`dp_iE(;|3eGN&tJG_ep4Z{t;0mL?QCuCz{e@Uh%N&mC2ys& zn<)oYoL+hhe}P`|3T&Do-6#E0aMRI%_~DA#Tsu%gSDf+i$_y%t@~A!xc-S zdI4Q~I(Q9b=CsK+GqtZ1cDi+Fq*RV%xv^NpggxaTZ}>eo+eZnONccID`Y}Y4Z*w`b z*+V=p%yT(m@F}m!G0yYuhxQE&O|_9TCvF#+-%ado1X+JwU!-%q!MljfV)XC#W<(0% z(N3qr(|ePGC&!_61aj2Gt{m3b818hgzxD|E`69^1I|!@TZiHSB77o|nKNDh?4&Kn~ zuKShN)uKVYozAzNW)$V;iA(`+E8dOcD~H0=PBM6cJ4mx4JcR-zRnr+xmGBPGaR)D5 zdtw%~?{B%eM0E3MMdSTkwsVE*`FbKMGh*}{bR9lsRa;XI{A|}2%((t#=&Ws6IF#Cc zfO>^yS}U{VfJ}Mo3I<9YU@CqUg0>P%PFZyAyRgj&oceX;E{FZQb;Oz7o&qEtqztDC zGeM-jKM>(%*2{MyIKwkwmj6zr#--!d&Wk_sHVDRaXT%zI7Xyiezuv=f_X3@I;+6ZZ60f_) z_BFnI6^ChtPL-P+5F z1&yArGpfNM$3@t?!#(x) z-nq;4>6&(57zh92r#5>N3hOwtmszhY?)1Dm2u#0fh6r!r?+-)P=Re_LLr{+l9Q7U| zn$-MD+2xE30 zFI=&ze*E>MWgkS%BmUaJsFSW3FU5rD-wTM=NjJahsB8`@=@$24Qezr1of0gwfBacI zD;U%)2Uq&-^!rA@NucJD*Mjq5{VrnbR6%04g*nci*4E1DZ|CRuP;kz}KY=@@nAYdp z1y^HHv1Il2cx3%jLH?Dki34}iFPC@d7ZGEQbUnO{U9-tri@eueuol**1O&mPC+=nW zu*JmXtBskBQ@Zv#LAtx2S2Y0A%kwek7a)=}()Uwn?j?76x?9sp4v37a%==Bf6N$a& zgqLJKPyp#q&llw30(ck_5y2~suv_@X;&ohB0aEDh51V26)3BNq^*QT|&|6t6YDuK~ ziRqeAwf)Zer6>WfoR!eDw@0aS7Nu1^1J2;(2@x)ZEAENnv4#QlT_ES;lCr$;6GbKR zbitBopY}A$e+}I|0nJ^vHha?B$G-jgPz>0*66M6*xVf|dGP&)=uwwS_n^u{q2Udo3 zRPM|zGm@z$#l^sv@dyQK-<0tq1GNpXEJSn6P&`X*4;6bgiE^k3;OZP6K%wJE~6 z&Wi391nRI)PJe<-9BfiA@x6kzyGbXmz^n7B6P^#tbJw-oLRos$CZ{I|E;QJqj4?}X zZu-J{rAyN(C6GGMXrq4a$K}bYNyd8l<#;ZZ)fS2-EpsWsUX5q*2a5>Mi9oqMB3yVq zlBNv(+iV)4aoD6dZqV0@w*(UT>Klzq^Lpx$cMLa?iJCi>_oC3S&R-W;l8vR)88zoP zPlOARJz87)J~W@yOZW{tRr~Z|(57UqQK@UfcQ;k^MPm=#P2y(n5Vw{6^LQcZH3sLp zXS$Cx^DnSR|3+=A)zem24!Kv8urT7*UYyK;6^@gwR0Y%s_s^c)W+b;i3N>1g`Y9m)p7ykwUHjq zbQsB?lZa?zkm9K^ulBW-B5Hha^LRkwc``$84*H1vrNc`u#J=7(>a!Nx;az6npp9zK zTm-7QnT;Mfr(|yqoDj%eb(`bJG|%9FE@svCWL_*|Y3IoMV?_)+T0ezDlQ}0HTWYHm zY@aOefaP|b`Io=SiSDZXi^*EP963?#P6vODH~rR~?CtyLUDW#96>GY)!7r>BQPj$# z%>*1_hv4|nLEsv3rHb1P5$zaGf#b#C)*kr%N3AGuc$yT#fv(`5+wNw>^DFSaY>&L2 z+E&R(MPIQXrN%R&>XT0;rkuHX)9}V@gz7n)Bb$Yz3;2=qMF}J${_5*ENw}F`b!|H=%7bPiazB zT)>9j0*l7Y>-4m&3xNAt?JsJnj*&)6kL4gHA=#a6541P>9ndMmA6g=6Uu<0%W0nQX z&|JZzBD$gw9xs$mCru_Riv;~=}`XuKQFdP0DU^J zpKt%IAK-%yoTaIdlpua1czbD#`l|Zl@JH!@zu9Bg&szUm8~w%ZD5u2~nom*uuANmk-g*8phB8zvx<`wBgV>PMzP`uGv!$%3L%mKL z+K7JBRtoP&RUvgyI1*ny-!v;;82hR^?p=kt&g9;O#avS@SVI6Pek4TfB=CFhE3PGn zhq!ql>gO*pNcA#?obDO0Sf&;;7H zvjksf_H&B9dJ=1TWLGn^eJCu7AiC>pcyuzdeej$_ua{Xm{&g)=PdL1l6L!fo?i3Ze zHoKGMPdOU|oM)fOzB!BJ`++UOfJt}_Qd>)4Os08EZQ{GK+W6(L-`~X7SwpMs*rX=U zK`}>E9~N|5Gu)S4qjr0tq%YpVQMrG`Ry)hU{1P1DpXKcc>q;hm-;q(ieP!G7E8{7a z^2Q^En^j8iL3;E4AUTkfJH6WD?BI~)u&I6!CgkY&9p`OU7YLV^VaRHUx#D&SUyS#f z-F@xkRTjsQ3hVW)m)Pc)?UZ#&w=EA+P{UN4aGICQ1ALwJ%tid&!9_@xSTgx^?SwCQby zTH~kc%g(LM&N-jNRbm~f*-eXhgh(?=z9iQyg&J&={r&NhKewe*nCNWzGpw&9=O*dR_>&+`( z$MX5Y?==Iue2FwY3|}K&B0BDT-V#PNTm`yL8T}SDcj$bCxW@|iYr`2oB87pblMptw z2cEdcD5e1KCm(T?5Ss_FwvgtgQEdnD@xjPxVXZ*Snw9v!>{9m9Aaa3jUT?izi}g^4 z`K~7-RUf4$pdRU+VL7HN)zYzJphk?$9rGJNaapPCXSGgwOBW#HP9e4S#TeY+)*_)V zCRirZ)6qv$j&U9uyXLtNdPcsf&r_8Lx2~e=Ui#ZN;V0=`EdJNx<^CFo@T+1^nB{#2 zPDM*o!wxURB4{^!UbOQM7JO`ld++dpQCYz-*pVX~j0JF8FKoLGU5=*6HBFNpCydjm za!di2h=tsiBIRO5V+MjG1foVZiM+orwE1@Oei}X6DWmNvj31xjay>JO!u*(o{W!Nj zAzt%+d`1Sh&J%AS8snzl6LSYBLWCBQpaiUK;igCD4x@expK*w)Rd;1f{hWEpkn@r$TtE0Bk9d5B*rBEh9C;kWf}@7s>LNGc>vZy?0! zu8@J8%6=8cv$5!Gze`HaPx#P{p78nk>m)ee7Ac*w15~$5O7hmnOh#Lj`;6m4D`bE- zWD54=<0p*a9u&U53;;?c02(e>bga@7g`YPI%8zSRKfy1^i!1p_L(5grj!7Wff9Fau zr4W*f#~Fa|wRMXI>Gc?JiUyE#_ZYa>`EyT6BD$(mQl*Ix`Xm3Aw%{4d@@R%AIl}38 z$`iJx?|KBmm>c@G)}y!JhMGT_5H0299vs&jG~UG;k<<&k+bz@)v-eDJUBvG@-nj!N z6YirmXJ`Te+AQ_Ks!zM#9F)#RgzVw{?Z-9V@5^dc5mp%rCmg(C7FVYDzZHoA_k33| zE6hWAArcC)L&cHazcUjh+in(pL!nX_LAu$GyPPtQB4$H?v)PD(hgShHh%Y@+U+#vN z-Zb+Y_#98(o@{JlfM@IW%q?I2GCb2^j2Fy3g^aaLGLC+Kb=)WFzox`gZ6uWp4?%s- z!nh-zDtY|ktLA^P<63>>CG1K4^8XPz@b*&m$BGm)uK-}FyV#-{^Nx9 z_p&;TuQQUPwzt2~)6Y619WAU*vUa7wd?MD4f^5xpY%h5g?ASg1nOjw`;vuc>r}H34 ze*sp%b=)E5oO`97Zf~nGZ-nZ*up@DIq;tB`+!7uiGVV}E0A>95i5+_sIi3C+dA&2O$0_+QE|>v2 ziAfTpyjYB?e(toG#f1We>5(uQjmY`nx?_z~<@cqTaFUaSr zAx539b>X^>K;f&KZ^IvwIvj^TU+WDZcjxz?j0msx<+G{?A1h{z^t-0c4K!aV!<|Nx zX+oe^eRdU{$ri_c&P=7O87uM-$Y;oGmyxP3zF_B@hGw00gaMsefZ#IDv=l{8L}W%# z(}5qj{<~LM=&c#6e&auG@(}cYVbS!RLf|s_N8==Qmm{WIXYUsImW8dEYv=HGjRA3> z)r0O?mA`gPtglenH1fqXP=hgJ>UHC9&&J=HpJxleS0r1t)DLR!{jpt>1rMCDLy`rn z!@b;9VqZd*I~Hh)Pgnn&+s9qbPSaFv<90PV$n~^eSc5hr?pf>9j+~;5h5bHBNDLp} z%=~dCAK8N-FzuV`>Sc9H!(SRnS9FvEW|+(T=lj3ltaYRP3Y+h1?2hxd&Ez2=Qx0lL zAhXfRu{bnMI5>n}Bb(4_wN>F1S6Sfbvk)w`v7`4*2taf*vY zc;C5P%Kxn3`)CH9leU+9@X?gMEXhD^8;jetp)3k-pzdrhY@6Avo0k)g}BnbW5k;86o5~;k~Lzwh>Y&sP{b;)V4=DLzsnT z!fEx;#b|3@t7ewdSt1_@}DE21$^eIro39eh&7}FmS5AJ-C5Nk zC!XK~Plm~0(-QwtZofo|j0({94EHPdX@7si0fsrvoyH`!<17=6c}d z)8D6>0Fdt!?c9CHV}M1w@*{WI&6C-^xY%i~7mvE^`7_K8cf`_bYynVQdKCIClAcBf z)Wk#N&7yTcBl>Y}Dl2&H>rSgXr88r9O56?WtM#~mXD&V7-JQC~AgI(?!Ot@ml^vS% zVQg7l7nUDH4~p@a4cNwjBw$#(3pg_(4baS77ql=9zk3Ge@ecx49y;w1u;;igVKR^N zJHAj|{V_efsV7$9%5nYxr94fR^RNe#Sk&Ew)gfsrUwTg*RpS2(%)C+L-QlIukg|S@ z?o0U)o=@eK%%_~?(%QP2u?DzGqS9M$*smV;*o5vM!fhkC zpTRa;li8Rxd|U2+;|Ga|a%On9h3GbE%fPQTIckh)Z0Qqgzs)!-$zi4uueB(rVWK@c z=EbG){?m}H(u+0T!)I=SVBP}F$Bm5nF+ZUu*n4r*&cyZIj6dX9ZCJ79XYvkqUrsl8 z)r$WhvVVCG^7c<9u(eZWXHrK~>5P#s-um+`!k+`Wr@f@Q=`B1d z@u4%8C=RT|#dYd5)NgllIL&!?WnR{8<`W54bQD9}X7=3#vl<}*G7{GHA!$ZN`l9m< zRWm|Q0??305E8?VYwNc0r7#ntqD zCrV&%3@`Yo*v%4b|7ajPr(d(paedIj{wbR|`Q0euAy1G6*h}BIcMpjB0kXg`?u0GAU;ADm>v^7qG<#p(;Iwz~F?|zB}S8V$e1HQJgxzg->@q2ZsjyzVRqiEnx zY2_dFTkl6}`G6hNs$NBU%}+uGybcUVwqpn>o#qO0lYeo)!u&L2w}$K8jVUaR&^xg+ zSSIbh$yD0Df|WEm?*0mK%&vqae+P3NGJFZ#-u*@}98#1xXLZY!6ZO+CA}w;$xiwm> zVQ^$ud2?x~&LwV|=z*)j<;tKu3Ns#+#~$PN(C)7BWOLSPo8$1+^=^?6{o|}DWzf4L zn8>dt8t;i@d}Xewz0exI3V$hSYv9%XD{XtM6oSDJ%U*XHNF8>qr%>0lZHFiv6*a}( zzr7=&wTq?+i#32nu-9J?YVpIdj%i0mDI~jEC#AkX^fZFJRbvDAwA?w$BQ6PzOm13U zRVRoh%7LLI4iupVf4?~Z_oUn5mRs|70mJWRiu-C~kj=BXKj{LBSA3eJxnEZIqjwS3d9rr52|Sn z{?mK55O(}woK8Ps^?88owrJ>S)4{vSpwmcm^ovx)5}3Rh&-df$&!~m>V*F?69aewL z(;d<-|HNzd$r5vPDSPMie(?L4&07Jm-ScbQ0@}3En(_urY}3@27P?I!`TAGGy-gYu z=2$0FJD&OMyF7{?;$S!+xlYBu&xZ7sk>__iGCuRCFjNJwB8%a&sWcW9l(XBDq)%ps z_-+j7x>q)%U~gBg79VY)WlmT4-&s0n>oB6S5{V&ocR-O>nXfCV6z4dH_0&?enU;;4 z0O}6~ckajRP_G--kJtoo*w*(GWaeA58>S87Q%HWv&I(*VyPZGITWRGCDhB|%ZB0jY zmdBC)nxN+dpTi$T>Qiqls~MmsZ@HWfowe3u`!qE|Iss#yMu_g%vmgh7C+e1p&aHCy zNS}m&{91%+s>SzdQE*G6%uYy`(b31`J@dXJ2b>C?n>>Mny~coz-(HSmE$Iiu)|US@epy(;uodC>I=S?YR?n$9ba_=PMoJxTwal#dZ--I@vqDEv z;Wh>{;|zqCUZDn7K3=5>Y%#|@iK$fE1u#pfqN4P&Aaa@Xz#G2zF*I*Og~fI0&1A1w zBx6IX*@o1A;ML1No@t-X?^|A1QTq=uQH!~FD$S+H4vO{6u$vI3;BADQ+ckJR@VIdA zLui%QCnRybQ-eAR)(lRcAJ=nxISqb}gYV~}Iun55?jE1O?GkA_O#(^ynK#J=;MgJ) z>%(r^^FFvlK&vnICiI-Vc5 ze&L|iTM1vn2d$lJygbOX9h~HG)Tig_E*!hUGjII`T)RcHOdjD??ngbMqQgLrlm4U< zpR{PRQWdzE71xs9pnzoC(vAeOWOda=N-}zb`6`K#fQ%7ga(KS$I6f~dUvVwDAge3O;b4nC{2adVV?^4YFcF#1ig zCz`Cm49nDXSMp~cRrDPyBVxVQ_%Fa|X`hblj(Z#jbu%Vlr~E1W^+Rril|icrZnIN0 zSiXX1=2?nM{E_Yx?jgnV^l@*r%t74G>9r?{A4`@!2P^uoGEAX{_=U`{x?ZLD=nTWa z6t1J@s4LT`exFPOLoS3b%C@IjHca&}_v+(A%eD_EXZ1SQ*%P9FJEgM`LeoEAU#Y!+ zW9O|j6bDvB5|s&EvN6{I4qE>pVH;dRSFDCx@L(|I_M%DbKEJEPAfbC8uyuKG`|o+% zgb|3VDQmFv$W&7I-p4;}*+kOQSTZxb*~kmssShtyb2EUSQ^ztu{33NS0#0({K`0MzCI!2wB#cDrNxe^8OY&Q0 zXD9TB-#dN0otm9>sj}>&%LI&~)AfYyVc$v2&e-M4eP|%an(>~`qfcGxW{)>V=dT|9 z*3_I{M5&_ha-^LQjVbrh#2;_pD=KpZpbg_aWe+cPY6!+l0#dDnFGA249||2Bw0$D1 zvL4$u;klHe7wWzYL>FNBe6fq71eYbl%G5LYf!Z#pQM*>OVk=0xH%=Ts_kG z%?0Qus|co=^}sx~$G>Ea%l`9*Q<>}gwg}DA!csKq{evmkTIu9AjX8S-0-%qPp3rbLv?5i^aT%Q9?c`-P~~0oe)w9?u`1 ztPCaM-tTdgV)_d~=GjhUtz{RQ@1?^ zL#+>dF;`@1>*i_T8c|@lC@{|T4$ato7wI!?v&Sz0+~e8bx{n1cVVroA+hDxpQDCgK z$}`P39Rx>Q8`#wJIN=4dMvtD(V?nRt}=>t6r;CO__43T1%gQS}Fv~&ADSkC|EQVpY|?OrE- zrc4d{BBoS_W5ZaAB z#Ue5*fqMj}K_d0#(}c#lB&(Oo#xq~D1ief8^6}GHzM$;&Whnu~jZu{U(W{dRLnrb& zeLFsD;Rhr7@hAFjbh(k`-srGZ)_Ak9^Q(7NZ;Y-S_e3TwjpwCW$;$&f<9jQz<+X=? zif$ldDmF|c1&vHmBRJs_u8V?*vL}2=5E0NtjJIoq`L-&!kx+7)uv5zZaM(mDa-6xo z_o~N4gFBySfC?AJN`-YlBTBHZe&TZmhJ8*;W&`4T;-QyUN5j2H>XYhUt=;bs9SZk; z6giC0alO^Q=DOrelu`49j1z1BbboM&R>!$(rHhaRs zOa^aQUt}m1aXX(v`i?R-v^s7Hw|`Y^x3fNFOFa_SFSbEDm9~GUOKtwfYiYN>P0bAU zzeGH%w=SiFqFQU8gf})VNLM#Gmd~EUW9#>|Yt4JG*gAO!4Ie5J5}V#N&W-Hpwz2Ae zd<;U&RlO-TS&+NYW?J`cY(`Lq&h|Gg#C|4URygWBNp4wF+mpZ_ky`8+n zdVcm9=`1q3rYS=p7BC zs=dGHHh;HGx92{!)M!u{j!WyL>Pd5Dsoo3EVBiMP3SSh~=%;KoB{Z9ul}uhe2BthO zE4adH_0<16bhBGj^se5ztoqMoBlGk^moN4H1hY%J7GQc`&ukhnv;9SJ|MSH8Zu_?R z9i{9_WjV!gN5+%yOW-*op~eYaJ=IG*>f2eZW`+w)8Z%2>!^yPQ zZ4kW{zkC;M0(|IL5s`a%*{7CbmAx<_Eme8?gnSSP(~=zV0qnem z1+ziq#`YUR3X3yuAEVFPvKucbgV+40-vefLcaFM#NY%O7Ws&!$f&&Oln4jM~)QOAfgPLn!P z3hsm$R^D)$D{ufXzuaS91fkrh1*dzb=ve@6I`hYct=5N17>bH!;WMw^j$6JwCA9Fx!Q4P7*0%-Au z(*H~xY_Ts0|Di**3nGQmuYc^&A5T;ieVzdmiR%xbk`(xo?hF~0vICUWIx-~xNdTLM z^6xzMngWNCcLgpdtGa2js>E^Y5po&M33Pzlemy_H=?_XW?B_!HBmd@L|!x$DP}q*MW+x@=;$rNhA4Cw z1?&zW`bJ_a*C}JG>51-(TxOy~&7(C2v{iM%FVKVjAF1=WOseMoq% zq_B*VFy_jH%5SdgH9?d$@=$8;Tm!0r+zhCnGK`RR(xvZ}+_FTG!%|P`{W5#%Jy4tX zCLwy5b2aro9n5nx-;401c<2af27yOb0&Ol^SszY&SHR7wzK%=@u>X0Q|LDWlcL@L* zxz0?L@d(R{47(J+!{kxOg~HzBqxL9dZ+`S)^@+!GT5it~L*OcmNoqa{7+i6`;km&g zN#G|?pu40ruf&7ksc;*Vf;SoLZ zKxe9T0!&ZCSxNm0Cy@B)2Od`|%c*?;!c_|Lm@4)383vlzH@mzeNBhM~xgrwgEDUIr z3H9@oi>zKt>U%ETNPRQou8+p-O4>e(CZ_gIwold7He9GlmHLnon8vSEycu|peft4R-~ zkTO-Efeahc9&PB=JLQO{s9sR56+#^}mFQvuvQzdd7FIyW35_41nfS~#P$-o5mU%Eo zIx;!8QeU;*`TTRif+HF-^?86HUCCcUoE;tSL!Q3937b82!BAcjhzS2;-t+dk{B~D( z*buSsb*w1iKD5Zn!Scetc8ASgRr%az z0vOk>R@rr9*toq0Z>&IhLg*M}i&7-IX*ze^?%$;-P_SU+u+~S)uUd-z!h{|bU~%}9 zBPHe&$KD@983oa5@0pnjM1FRHhR++{{D?r^u6X50k3R!bx~gp!xAzu)k};)+tIgYO zZmRm9tgaNUg5kCLUK5>a*m1l~f?S-bvmgB06c zSGj}BuGvx59H~;c#;W6D8*TnjuY3D3XQ^YRm6m1mag4NzvWH-@XD?#jEz=5HT-7R24HjPGW47av!x9 zYB9#W06E~;svsA7sTht;Bk#Aw*y(wbdhdJFRhH-Xy`tx>88)yp(ag~POkeTt>8%R1 zum0>4Flo5W{@*Q~R0pRj%)dOdS@G+AKUPLriw6_C?wPOWL2#!h9yp)T=e-NydOS*t zmsK%Qigjt+dC!^-EGo1g#=ihTn1M3bIWr0lPjqpJK2#6Vikx2viH?$P(D67_t zCXl@*wxfk4-NeRf=`JBHjvnQ&33qdtIMdkbYfC;q+G^UlmT=XGNAS{G3l6w-)iuwM zE%Yy#b|8&iiMOXaY#W<1++MnC_jJ-oNoKR&xWMymmvMbQAsY~ZS`MgZNHu4epDo3v z={aHZLZj^C)CKnD7SC}&$b|(*!z&qB=Q!{nVaZY zbEFEaN*l+ExxVxdR`18%B^sE4Z<|a-W{RT7D~N>!WB&qFmW_oAM$B%+3N|oGU_4kEyv|x_;ullzi)nP6W z(HM&>LOPvxtPXDJdkvhH^Mah(j*JIvcj4c%FB&|n{d+)dlU<=L4PIrEmzMAyvsK{E zd=evg$dds+Cdgd%lp%a(44*GCnwzu02>Th%tzL$$#*bm2p58$taFFfSzdU@BidLn8zjHdQ{nmZ4yqe!(KYWx6kz5=8FuzM=k(wVP zdP-vXZ<4Fup`XI&-P6z8?)2iyXvVfm)0zKuuk531_(VdOBM(M8|sd4?&ZJ^{+0Mn^#)}NJz zvh@kGemmy*;=h4(k3w#1|Anb#o{nVRqxixw+gZjE*puY9Ode-|u{RoV>CdfJieviH zZ~X-@QkoUE>I1czHsi&OMTVC)d8-68kKE2Og<{Y%ih828!sdX#AS6oA_|yH*>(MY^ ztu#S;?0FYUSI-Pi#q@UO%$)qmMrGqZGX%YsUu0#s1}+;E_Pohai1-77%uM=_cO|DF zXnu5;9C@=ntx1%B6H9Wb^l=e{l-!gUErf*mhoC-CO8qz1`|qyiF=8DVR6r>7@LcV{ z6kr0=IbnGY9ZY_9GA#6~rP#b@hwVLukN$;aZMRC!Nh<3Fw z5oa54*!RfsRf~&g`^(eKw5yESQ}aNFuUR$PXDQ*1O#vk-@KKEczleaN$lC6Js#UHB z1!Cyn;zk+oI2W1|A!Few_--Jn-L`B9IAPwGE|0g?AvumO`r7yC#M$y;d3!X7*K#`} zlKe`zRQ)p9@tRyn?`UB^sbS>CyQZ=T{MtzAQn;)eL3F3_E2hPJX!wo)p{e&6>rVXu z`5YxW)~%=fw!wH+{#=URN`(hJ3OIli1cdTFwh%s&>8l1%w&9q)m3oh|!VP$P9;*_= z2n+JBtA`lfc$RAudkD{zRNiyg~=vf=e~G1 zdfYOe9~$)ns0Ojz82s)UFsN0JMDC8nJhcBETUftb-gs*Ir8g2QOf%pwfTG1v-4TWX z$nOY$uV=fCW6eAZg$es%XS0UDRCC6v^nE3nN~dnyFSU6tb#c!@9o?g~J1O9gRf)=w z2*njy3D72Qr-3zl^8EA_!61f)cXswtMY%qU;ZP<4Qx(1DnlyL)qPy5zhZ;(?HUL)Q zefaophjP^(NtZOH3r7-U98lJ9!85dpqwt%025g3{$Ybw!@!AYLGR~B>VP~!jsN`v1 z*vdo}sC$V1a=Q5)4a(Oua{av;(X%X6FO46;HK7+a!cQ>OJIG7?YU=TOm%KFl=MH}k zIqu?4ceN81`+)S&F_J1{6RY@3f{7;sXX1|Vf4`G3x4#;csUjf1@AHS+<3v}uBdaq_ zzpybrS`VL`S`>ighZXG=c(UwBhi%&-L0Ug8%|8x!vm@mDnm@EZ%Z%VVkoz7IwYxex z#pyS&_Ma|hx?Z2RKuHU~KsT=#0f`r+eO3Mj(~?Z{-rV*e8LtqRoz*+5t+MRy`+v@R^E@}- zGgoslbLM+Kb1`RvAftCLP|&hFRtwFycUlKj$+*d^Cs7)|U%}XKS@MJQ71=d6;t(J>$Tl4lBC! zauXZv=hjFmnhBKjhvZ}V-+NfWU+Y}4OHGnU$&d(-^X(Bcz6DQ9-2A@C>Jt|$UDB32 zAcnm;L`KRG6GXVgS#R=q-3r0{@>y(~n{u=~b$3~_md8)@>{Lhgz6J4(Rduo(AMXfR z+ar1PwHWK5QFPHQrY3;90{1?BSKm>gi(C5d{=rIyOWEd^ScPygUyOIls}~nnTJW7cMR)RGiMdf^=B;r-k*J@M()v!l?JZCGyHJ#3JaW^}L*y|d1mG3+q9w=Kx zvH%L!ORLLFonb>jLQ}FJ*_>?u*B6;jv^FEJ7d8gyh@~^4QSZEe4sN|R zI2E>-{>Z0wdZs#<;CpCoeHKI+mVhd#&tqSQY8?8l(TsQI~Mb+jXPU;uTUZ3EYHAu1dhy8I`OO6PG8(!jo z+itP={D*I31X10xR_dxfN-JP;bO6r9A{Y4W!6WbU%ZJVVEXM;o@nhP5ao4A2rN94e zmy4P9{Ckz{bPx9LxB^i~J17N3^}(ITDCtp?xJ_#9_d%sV+xbDXPhxWcEmz$svArl6 z|6S=M+vwCXx8NCclapJ z(#|`E4Le8!(F@1TOy~CEMQ%mN9w<7*Bhu&%P)}aqR9F6Sd8jrey5-oNVYU?Zc#0;v z^w70)annL| zOr={E)k&%R+F2hqWckQdtL>a*0 za=vm3XOz#lnKL$K+Lh(vON+cy%*{_;{A^cd4zZ=Vf-oz+y(IPMeWG)ZuOYUh_8z8G zeYp1g)xmjVbH;x!*K@bUIpXVt?q`odc88k}=t#4)Fx=+$kB>Y=BIzUX>Yms)1w)J~ zdAwZc{LDwf2Z8PN!?5`t|DyBd6y_QYvX5ER>JpVxksM+I?CvzyLQ8pi%gfeV5g6tz z@-wZZn12(=IbvI;lkZzD%2RAMmamO?a=!D=_5|NfekDKKwBuj?*ZuIevkHVW!Exwh zv7mW&fiCp@l3urgY0Aekj-)y`gd*sSS1G2DIR9P`_B82~R!CFbbS z?NCpPE~RdR%Z-hqPE`JA;>hL8L9ji8O1k)Gvo!Ebi7E3$bcC!WdmEO6jD19kw9{zPfvGh-F{zdXeHGgwtU@j*p|Q83p_7s??e0Sc9hJ%Wu)P6mw{>= z{Yg99F}8uOomvw^4y>mJDQB{}ll)3nagNGOMV$+HoYT| zbZ4c*vn^w-YQ|mc`L(QZE!u%&b)7===Waw{d%&7?6DVNGUS_?GIO}V04bQU=yhe)@ zcfHvyM`meL%`g+hhC$!77%uc{*!3gY zQI7b=*6E3UiY)wK6>`gh{@W0me<4m1jIip=zla%f_@8&a#10gK9IT8#(0|x(t>gLJ zb3}3-FnchB5ZdXGUiX9e-MTiapJpiLymV0nSxubCO-R=YKGIp5nR`#QZDiD74@r%m z2u}D4x6+)^8pWL~+ddZUBT)O^Im;N{>wql(pnd5bB(Yz1CH2 zF4JTS(+%WiQk-<(7PHVd`W(3B_o#*2*$}#Sb(w=FxcOt_f0M;?;5>TfC|JAc=gK|0 z-t07`lqU3H0-A89{mnuSR4+E2q}U+l5l}4-&Cv%PL^{2G!ep}P!U5mH2w!%x{;(!! zHVj!>Ti(JivfR*+0}DMu^H8E!-XjG=tR3Wz;an2@{mD+~N0ue9 zS+V~r?&@>Y=4310^lI%<8M^1rbvNc;z>0X9l$CC3yWZe!AEy)Itc~pNcMIRzhCW}h zlOL2K3HFrWI;UmZ6X5|JPIGC_`@LjJ`d zmiWjktjkuL=|~`~f!b3JGgjmnQfb!P|M3KgeUxXXjCZOMbVi!4fRrsTS%>WK%-7Sq ziOC_ik7WP0CLZr9c$|&MKFDLByE`Zh6XwSw<8C7hJf%`_>@X+DWZs)9-v>@>-^odiYHBd!yw&gU_R2_5)S5;^kov=gW0^};(0b{A~d0FWL20LM(m&& z&(s0MPq2F*+QLg0qyYZ0PcBxe6gZYmU#=$W`eOh{$G679S0okU6JaDA;^4MYw&Yv1 zNtO{U5@8(UcNLHxsFh{OsZ*g|KYhRSI(a?HEM5C?By_ci64gR+#WQ^B+^I`O)go0j zk-Mzq-y&qsG1v0VUsYF|74dmE!{O@p5wIp>K;17XYz?v|ZGLQRXUgJWwy6}3C_jRH zTG)SX!lr0~8s9lT*6l1V4faXpsvS$7x69J@Z<25FZ9aQ_rjnKye8!d?kK>{*t&`~FXcMqn8J;A@-ieRhW=ps8~BAfN9+|Rb6z~wtp(uk9gQ$cJyc$U*Q zaQ)vzh?3;i{E4A}wHiC}*obd?SqqA-`9=!;nZtvPPjI8^bQi_u`ny0Z|xK`-jy-I+Acmf{8l1)a9@d{er;HJU%*OSik!h) zTIaVL0TMW-<2q82)@m2+-x}zuEDOxt31ivQC>GsI+K>mB8(ln8JukL>Vg4Hj+H&hH z;*AAY0i`yodA@)JX49z}bUgNyy4sHdR|C+#e|9QewC&Pq>hj0yH zcX-4b=U18u1PzUo-i-gXfm<)bj@7yz<;4M~8>$wp|}9|GO#UOgoJwJoHsZ zS^wgU4`a6rNv##|y3=O`R2hA%uVFd0?BssvL{lfn`B7Qw^cO|e zu6=f*KDU!qqV@WPE%E&Fb*APar}WH(&)2+dRQL`vF8d9tS@E=>Wn-ko!cN06#ZFgB z`gA14bG^!`tBsQ8^>)V0La@TzqE;<2_(b*&>{8QNmNcxs+qa|$3BEVDZ?Sq}Cdzzi zZ17dX?mDg5LJu;Kp2+JGqbZ9{Xv-wzpp}%!7t5IP<8pEcY=abEt`Y`~x7>*D#}x*d z2`7?(61U^)U#>d@Qc0ZuUHT?6d22nKvvWH|HzT?p2hM(o6#rl)q?+RV_LDMlMl zWSs^%^HbgXGUHH<_OW7KZYSw8vu8m`x{Bxg5ZwRR@vHxq)w%92sN&?uoqY#UYj6mH z?C?jKs?pI8`ak{C`2@#5OcUChUrgB0Y9f3@khZp#?y;j&(d#E)!#9$P~NqCbss0!7);7Y1ukKU&YtV$cGkV7QfttG zi2G$jVSwQ3nk5HU+U~^XCXKr8+q=>EHTGTYEjJjH-CXxcFX!Im6jU+|Qa-JOy{iaz zI}4>ddY|gdAJ)|YF|VOMVmD-v#+P2+f4dx1424pV!la#I z$oXSWZ7u0->6h*yVnoNH746I~cG=)oz&XB=U!_`Em{Rle&)B+yOhDu7wm%`CUxmZc zL)a}VJ)Gofu@Ww_`p@n|sopQWPV$9ou}(zm*m~$zxB7!B{}83?eOOA+eHG zZIs9=*@a}ZmDrfg+WW>mwE}jXW=!wm9-fqIB#fd6;VI*!z`18i7e0bY)sHoUm+Si)v z*Kv5kEUwxxNRHG6=mA-tF6+r@eu&9hdZY>tvP+=#bB?>AKW=WGl`;N;nK_Xi3R>Vp z+HL={AAagZFUPv`DVWFkKL?L$TXk6!AhLE$&)DtFKRhWN84gp{{Cg}aEF32gHX^Rv_)3jy6KJLy}0JNJO#N-#;5B6}{ z$?-#~Ewsa5X9=)3QM}(a$FWqqx)2@8#cT2p^h3H;g$b1EX3xH4P zQ)TI{bOghO4W*14ruO3x?E$I(AVgPtVoP^NIjv|F@c_ch;%igt3w-AV7SbnAaf8MI zYMXt5Dn6Qb3x*?->%mu>(gqi7+pqWx5!c$O#?m9$YBJYdb1kM9yMDsMW0@?QuC|RE zPM(#of;OKgWMZTy_GF}-*IsY^ujC`NfqR_`klmKGR>gOE0c!p=yIdm{2s(GhNQa9) zsPmp{{l;;gCLuxEC0Yf(+uPYLA9UPy$qqhQrx1UkIk`Oux9pZVAeqTkh~06w;iJHZj{~4 z?a-OidVY{h0##7hEnB|hx>?|5$$@8Z(#FPY8RC{AtvMg+4)7n)2br&#(LPx4aV4wV z#>Mi45r^~1k=9Ex%GVE4|Y|+_~dZ+$&F5$tfkb3EK z?8%gRTN;q~WQ6Q+BnMK*j?L?uhH+yBH;ao)a4`z`86MP1Wi)W$URvS?S({?7&g1OY00#P)U@o0o z)Upmk1tTyYx+W&~Xf&S_(XY&>v%O`vt4jZKm$JY8dE!|t_0}+z0tOS~b<(C4RW7sV zLI6)du)kmQ;BgG@iyAE`ELnecf3X`j|At!g%b!das}QHaayDR`&8iPu;gD(Oz6?MzieKTc)N*w^ zjR1NTl>=Mfn(ZVJsS11`{+`egwwwJgCrcZ^CfE|b@T{F;L7`!(VTAeKfb)SXNc&uh z;@~nO+V6IbJ$z5vUdsbuq+QS3u9ZHgJtJrVSsL|jfA;VpxKMiT4Ydos^{6ljGvvGM zgyY|s`!V%*p}V(#L=KSeK%g5SC%g>)Q%UPmiRalJ$u?nj=Un%|6r!Q}Z}ChUOG4wf z&A|ETj)g!Gffk_Cn@WsraTgq0;v|qh$H-Smkm7;mcD;Yb(6u1aS6b_%K>8$?^6Akb zDcI+=mDBtYcOkmG6ZekNa!o7tI3+0toSqO{{oqv`>n>@N_Zzdf=@;(E5tMI11}41% z^rXpXsP;a%A)V9;x{X%-`lN8$^w_a^uU&DV&FyBFk_V`t*xpX$H{hbn3EmyrzdHAD zSG4cUr5ZB)_%_a3We=oWM%)X)-(ZrGeac>V;lLnf~` zxMPObRT^$+Or_xf0TuMH)WS>Q$}d18n-R^Mvj#k6pg0A2j!p^d@AD(!rCCJD`N%wQ zRBw((uTAjyqPZSm z&M_vXn~$}kouVY%tHW{k=i{`%=Non@g{mThewUCpJT^Jt4I!dSLZo$rMs2UhUE^-O z;7wyPa7;MsvBaBWmm6p zoKrP&mFgsRjh+M=k=8zHWN4$vMG1jxci)SwEf5h%-xKrF%nT!yka_9wb@Gjqu+-+2 zEZ_J?mfhuC|B08FfMus3Jn^kfxWbcx$d9i)cE4TQ2m-cZ(&Veek7u=lqkEuqc zpbGkS(BfCX2_o}VGW*?Fq+EGclljf(&APi;n{P-S7Bh|U#YWi4weY_-zDgsfDb2mX z>k=Tvui%EUS5MQCzPEstq0V{<+;{2}zKv5E*bK9FIqOoJy%djJXHW(1_G(k}RZopI z(H-vc_6$}`{E)t$ck-->3c=3ZHO}SZ-f7gM0>j%_Zwm;tI2#y#s4PaZOS`dJqFXM{>s&J1{OU+brm1G^2^oQ5_b|aH-*2@eEpZlwcXq+`)J!YkcMy%SGT?FjTdpUd*MTSt@B zJ9}*E)bP!z%y+C_;a5YN zqjl|H(|dQ(~d z0@?k9&z|*HNfvm6CeXN#T4904{iLh=jD&d*o*}w)$ccKDp)U6_A#HnGWgymNhFu$y z+44Dt#pNM`K@>NSG$1uZ^c_>nkC%B;X^@4pBV)&=H#gpd^Ff2|1G69ZPdj$kGRltN zyxw;&spVt6CE^ef1yMa|lU#FYy2R{7$!+k?rrm+koNv%lD-qd6;(8?R zGXBQPbH`|Iy`Xfl9X-k`Qa;sq2}MZbm*DXm<>on{-M0SzgO*Z<7T3zB+@3X`eIdC7 zgwUgRU>Y&MhPGb~CsG@@I_)m11zY$FyM9(FvlA&H<9>{McNkO1$d}l~a7~@3>!mk7 zqm4^dudp&2Ou$XHL~l<>xxS9O6Qqs=BrUu{=tr@&Br6Bk&9@#1zUaad)H_)%+Kz7| zcX5)#=H2A_Psf6Ka%VmQalO=|``z0KYH|(o4cQ-5fX2^4j5wWAD3RRvB`>0?kL?I9$d;}SME-_EIh~pFI!n4Pg5QY z?8vnX_L#%ViZWf`b?r}x|JUzl%!)WIrw+{E$mY%dt|0%w%*gHad_6=pQoA<6i?)%d zanfYljsTGvVDsv%KB&!H_{T~AK+wim{*RF%3Mu_~pA+&GhVIAh%POSFunbB2a+W=# z2i1z1=GhiahUkV|*%kr*VIA9Ejte0TH}s zMazsQhl=GywGQ+SGatVm&Le)}?#bA6n$AJ`_O_YVtSp${k#M!VPdrd|OVOXogcbYD zKU2F^iC(*1v(FH%vi=v-G@P?ozw5OvJdd#+b+n5is|U-?26~ueClKdW4kMXwDFrw_ znB`@Rijp1&oBk-P^_ouuZZuJ$*W*)Kk?lvVCu?){SRgj(#R(q;C)h1Z+{e@2CnV(GOxIZywC?3 zhj@Ee+!?xQ$x-=7W?mZi;fcK1hd?vcm$$yz8?aF}Ody~d&s{_G1x$~uwk}IXQ(!kI zk#g22#;?!tog0>~hb`-+FymJow@pMuz-ajAc+75vG@g!u zPQp6`z3K-%%Bu;SYqwXWf{egp0ncA8?irS|1|Dwa&mzWckO~f~Xx?)@b##FAAMaUL zf0&>NSDh_Aobv~}MXk{^YczfEPjwNiHwBajHpXmIZLBn{@}A7ox!>d8Ws64bD;BmV z+5_KZGdd96m(O^BkYtEEvP#!6z^Vb>I_S?R_Gw;ji4j)5oH=Aa6Bto-?TP9}hECgE zpt5o#$I5FD%IZdKr4H|+IkeO|5nXubkZyPO>_6?#iG!C$u`XZTfPkl;f_ZlkuW6w7lusoS7cGicHN`p$+}{%|a0@Ih8mxzoF)XXMSO%mX0lA zYHer8J;e1l4lXGQ++vf<;2a;verK<6H;C-om`@#HHL=pRy9{IO{JS z;u4?orvk;9p=l#9@8pOfW(J|a7H4RjCO1ryUF$yIR>Pv_r;j2sGhZ}3Ox4oJ6d=&}yYvr*!xZzs#j4~;jZyBj$o;sz{mFgKh$!`OV-sHTNJJ4u-zrQ{{qx6d3@>hKKmYMBHl73GA zEC1lX7AJSXy$7>KXKD$Si4(r1D>#}b|AFr1?%KB+!|!vl@vB#(XMNIb2G{LNQ!(4a z+q^{lv^S7I;r5W>pKzeN!Nqz${LRI$cl6f+evplueD8)j7_jturR#2e<@LloSwl}X z(?gs@d@MqdoCOo-dG>8E+sUn$l?1s{FKXgMNpFWU@AdE9A@cPNGy)&b~eBAX%Cq5CDkzL9(nBhgn^~Nzo+{Oc<8k`?*aULlzh5}f>eO6%Q`QS1 z5!q^-U}&akPZ4-`f8`_oX{W$_7IXE>LxfyftLN!;<~`$*p|x6)2^jq_pwW|awfJL~ z1ipu&;`az#|AESX<<7NCJ*HHuBHEpHG@`WuNpDV+bG9 zMUO8NCha(is&2wlS(0+wN|g{c@4RibK?o9-G1=PGvSpyG;+hN(8-UGm?#BZ5KVUD& zEI^QrN%d*1b|Z&(;+vg>38V-9>KMZI{hTBZ#I)b~!631EzWTYy`&31mB1d?=WyDg@|Bo5~5J?yM*KI8r{8Smd? zT`J5`AVN8_{P~}|zC~*kTlRydzTU$N9T7sL+-YCFit_=?u#`8uT;+r-=H2deUH4+z zd{CfNMSng&)e6GXX}drK^|s=@BYKHI-?9Z+IaM0;M}izR6VCN z@3B~T<($>>XuS4px8*+8h2+Ymu?$JcVwLfd_W1<-Q_RdqhvGwH@%fzYnVA`g6VK>H zSg-$A&t6i%)=Q(JYAr&cXVPhp=?eFMyh5%6xb3f8p7mIWef$L;EBNH4vAoGGtCt{U+B`{z~4=#7y3NUJdDrZmi`AVNj`M?Bh27FAAM&; zL9o`|MkEB)3Wr#zq#L8+IU?6vl1|&=?ZMX6s){m`*Wc00s&`>=P5a|Bq`a-XII~zU zdk#j%h$K0lt|RsRbGELvdJeib(y}B~?_@Gh_1N)BUjVqDluIcAOCQ%6^zH6tbyFm> zgY7sfafm49;oa=fX;6X4>}Wj4OgZhR$Vrvz_Nl|~mP;Jo)P#DpduhF63 z#86ooRPjha)HeQr8zAh>NXCfo_Z6B{HOo@kPJZiZzd;f5Qr)}c)>ig^u$j9Fg#JMd zpu}rnjTG!ijDedJugXcGKdxj?vO<0g8X3^b_w@t;5Vd}tlNHR}@1g8$y7@Beqij#- zKQlKk-LOPQNEF6PEDKkj4LtMw&p!EZ-W7z5l>GPfZEJ-aOE zQI=$2PTs3EXS;{a&X--yPfztXIbPq+QvgY3{GEq@{PRf4F00RN|E}>e>dNRYJW@Pco0! z^|{Gnzld;1XVJ;tSo)@BqKKZLO%`RmQ+{TjygmiaSb;wLERJi>R$cn6cj6U(yIrov zl{;?3bi3$0VZqhT#NXr+LYdw*O%{OJSm1jD{8Q@o{z++z5g#(eAy44gq40qB;eUAV zj}zDUtR+vMpgqA}FfXc2|40V6WwPBW5`;;IAn2cV;;-^A#99~*y1&#!z=^gMT$I@rE(T@vB=bt=VPENZJDDOF}8BWys##rAQ} z^vy>^ne|Hc!1J*jIGX$qFFnSx{mYoF4y4qCUbK&Ddd$WI@O~Nz{xg3pxIB}&{7z?T zgGR8JkJcyM+G$1S?12GWf;|<~cS~x-APM(?+1nie#(i*X4UdzH8E}E}lYtZN$w-e{ z62W&jchqUcoi0ABAIvqAB`tSb0r~dVVfIo$qK7lvXJm=?2!+B~$XiY3EAkZQ&eshh zM^6vM1UA9K+Tmt5b8mHlW=j~zL0wLdx%_wgMCadKQ9Tf2#UOn+p>O#1r*E))jtb(L ze0F-KRdc3iT)4gq$5LvBKNw@q)UK2ahu*ZbvT^$t?CHD|07nwErEi!&t}b=?=`tIN zcHe}4OuzfXsTFkbDr0hb*<2~$dWKV?(zxVblIa)p{ZEcKQ1TO2d(`f*gBvzuy4N9% z#7U|mY({KW?P_A>u4u_f*J9p_0ZvxSQdN*P%t+%-*XMHkmTl^;u}4-1M}XvERV34fKHQE#s6smPhrPYDnh+9-xXz z;H3l}b}+v&*Jh*Lt!<;yk|7I%RzP>+9mJaUHZ`$qJA8c6lRV8hb2{jC z>*ru{V78MoCWhbg^$}tH#C;~7za{IXyiuc^s<_{$S!^rWA67(dYbh15eUyS3#K~xn z^o#q%QNGq=Sf_e5G6KN0RMLNdEH=sEJuw6x z=2&}D@#EeZ$Zz0C4ogPRioe{bZOgHKpDG4T`wE=YGqzcElrjqej`emFCiWM68Lm;{ zrQ5YRv{#NUZg?O1D1tOj&~K|ycgET#CNv|?eP(R4I57HW58if-lP$*&8fV|X{n{tY zFrL>EUcKb@~V4Hm<0UOwN^TQGQ98#B0(ok^l>jxru)Tni(q9x*a)R0UxVB8ijTHwsZZ z680`>tA9l&2BV3DC{L<2Vr6oMaPtIak~sFx5A^fz7SU%xysRqe(nQ`3^sSP&1{b#7lWDpRnyiuu~$S4XDR#Pf{O=1sjjFS+E6> zi0sp`Zf0uO*_qA}nZ4pZvbqpl=kdUN-j7&y#6pMsIC>|m3(}8pg`Q#Y{ny$Hk)F7$?+_sTeKQMoBoZbWqLZ~kfw?Ge%O&? z1W(u4YUP$HSzSV?!&x4~Txyx9IdD0Jxv~n^OxC+h!Gj;sB{4@FJ>Xw5oHV)u-cIBW z=Pu@uuAE_F)R}~)cI(#FQNh{?qU1LVm1|v z>ILBaS^tR6y_{E4(Ho;T8sK#B*&*kf$3cOuK<1m5<{`aKdP2>e#2!eY*3!L^{ogNz z;>k&bh@2YxZ`lEsZdCxe6aq2U@4;C6Q9cb7^GL^5q4p*-i06*KwEYp{nus4x0Bx-@ zPTik!orj!+HZD6~ZzZlAwya}k+YA1vr)S{#1w3&ybL0~oC>KwiuP(xuXrg(dc+R_cXINK|9_4wz`INZ0C%<-uso%+17fB_Pmz3a~FscQNIg(+DvY_KU zsUUs)z2)h!cTnVYR*#zQ1N{558>1!Nx|>cKk#7{feCy5?tPmFF%6@eQBjE`Xc&jhx>PpzqsBTKVLQZ+w3@#2`wyvyEJ*jr9r`bL=DA$B4JdGTa#Z-#rZtY@LHWBI1?GL+EGbvGbB!XLJ1Z zIDwtO1*XX?0ASERBH=~%M1#a_dS>*WUc(k2Uj`rD9&YtCY{q&(BvUBEPr!kD6!xdn z8|9-4a5x7QUU_dxYXpz&yB1#(Z-cGou{ zk<*uqEXz@YdM2y6Z=a$vz|QIy*dP^Xl*FfzPIFI^MnS}@R-dX-a*_;MNx7d7#c}pt z7O~>!AhO`3`z4kEPzz(_&O=j+C+C)u-aAYd`KVwNL`vz&g~E^FvTb?Oec%x-8#o!B z**4pGFSPCH_UWKZ>Wjy_OF7UJ)!8-HfTDy%Y5Me9`i$f`3#yI?$#fQ`y&~vc%-*L5 zOtde!=8N2rq36h$VUUow>pQiJzd(GW5V@Hty1de<)U60#0CyY&SBYwODovjMxii$R z&`tYyI3AGsuMheh*ac9sE$ot%v`r&_sAtA_sXIDsjTo#M*Iqa7R<9a*a2x?o&be*C zsBy!GpSn@S;@6eY{?c*J1U~Q1IO&WX=1fkjKA3TuKYqENn|v2>wmy<9p(6#r3?^F; z%X8bG_is&3(MhC44NcXE*rYx}rKQZtCz3weZT#_$aCr}ZjC?6HOgd37@5wz)r}}?| zO}wNNf(vpgIyb1$pubXeOX@Boe=2i@v-{~(2Y*bE_zw#yV#Z`^-0ff5+-U4ZJc_Gn z&3>`%$l?G*ZPc?xzTBW4wLD>tp>iI#;R;HwHOI5Nlv7}CJ^s}RqS{wQhHcZ%Gm(3q zc9zK|Q;RnWbyIYWbWq?{#4*Ct`twO}bRqbDWpdi7MyRJrNkv;nIO*`f7;h__H zW9g|2494(rNo%i_l@9L;{Ngfr>_**4gKPiP-w17Ye8x~=q&=U2601r(t-hR=RVn;v zvaQJ#4x#het!OvBHtF-Se&aY=D_)Ty6xMcu13X5=%HT@JD?G^4NOjb(hILbHBgVI^ z=}m0Ck9I+^I_IvRUgvLCncBZIB#j9v%WYh@wdQS&geclCs8#yXJ1C=%E~>Iy4dWPx zPSc{tTlC3H^i*x!iEbjLK36OAbi?`Z@$vXcWmBzi_`mY1+?i0CV@_Iyq5zZ^wjZuc%fx0#A%49BM#61$Y@GZ76^)^*G_=4*b>~m<{ zAkHelRP`CE7YG5H7c|wFGr9E{6ulmv{yZh;hTO;qB!ApC>eeJEomqof>jplUfF7G~ zjHeI4XTVP&3W_7AU;fp2^j{er8=F%#2HgH3^Y%v8=N)8c-*jPYSj5(DZ>D;d7e#KGJ{VE$ek<>K~{=8VL%zIhW zrg%Yc_O(cLoc2B@hD)rHmL5#Y$M4o@c=8aCeVgE1Wg!DxesCOY9TJKT!s_VDdJ}+~ zb)c~egKEBH#a9-*Kx(Jtq`(SvB0kn^6fiQayN`CWo>*2-o~0D9{o++5fbK zq%M#92=7}7g<>y$%EgI)T$j2fzsP;ov)8uShuX6m;BqoI+$n`6`_xtJEvxNhRW92A z6ArR(jV~pKS9d?Hmcz~HQ=qKqVMAFL0+irQrzwQoCC05&ggx`IXj@(fYnxCZN3UoC zf8FeLAkeWH9az30v&J;XU~(32s<;`ngE76qa8a5(4Cq|xi$piJZ-$2do>41Ic*2z` zTRpB&9?X*6Pi)$I)$8uiieAXOp2vw;Xw}+OjzrpN2SxBUr5=5<>Cn!)q?D(gE{*x; z1=;Lt4;91{mqzLUD5YxcvqW8>LCCIP;ADY9F6EWrhC|LdnH_NQGW_>jx2F8r6MKWb zh3Lt4pr~9KC6Wij8)wZJpg#j0rd$_v&-7Ee`RNOG9T!W#m6JY=s9RmPP=4d$3m%SJ z0-mkoX54po^fuqw2Rc)a8Z0fo*HIKVL`(Vn&vI@|Y-b#OcMotR0gRXOoH~kocgbtq z_A&peAW(5~0UGO8?{|1Rv{N7NkwWQA`59)S+BNsOp&w^u{&FUH=!t&(XRfL?z#yrH zsZ=moUWE&eF6i!+2L1=~o%I*LMUn?Zvz!5*nvtK{o6bYgv=U`qA?rGu@87P_^0=!Mkyz2Smrv(r^((Pr zqsV{hrpO6CAbT`5Aj|Ma(5B;H&2P@|(sMV`MlHh=&3c7*=y}22xl2bkM6GDIOyUUV zm{Ay$-Hq&LzJ*36kf4PROxh&ok@=KQa;s}^Z}nZ|;*E`K;LR&KH+TDt#<$1kzp;hn?h& z+7;q0HO&DFYWcob{|T!oR+wmLX4v!^5eiPi7dQ3R(;auGCEFMQcA0JA0X zc8S0B=A0=Gn`PenG}im-6K=vOiU`0%!4RCqK2efDc{knZivelK+<&(HNeuAIdjFB^_X- zYSBvNeaC;iF_{X8GZ1NXU1C@L?ptnw(WzRyerbgNBkKpWSz!}%coN~Gpb28DQCcr9=5k44?3fIec~ zkg@1M^#JtIL5l;2!6UiA(Q!D0`tXqJFTq2`HKEamN8OD*^uXkWMWI+_iT`n~t+KRc zmseZ5Rd*6{EruEuv`<$iHL(1jh-(Pz;&F4a(ISZ(3h&6Td2Uf0*-Ph>U73L6k8&0f zY2WW+6=4Ljk+1mO3srbqfZUB#9> z9psWjmV`+l4<*seAjRhx7bWHU80Kfgn@_!(<`E$pq};%1jH*wUz#F8>lda74wMaTLn>M)F1krTQ<1ZnG{7ZQSgiQSEx01_9+Gh4q) zH}PT{CRj#BaPNpt4fF^ijglIW~Eod~Fk^j)?W z39L!r19-iaJJq#IXZq1i@kU+{zQDlkwu9iFJWi<<(WF8Ce9TbYqy5E)%DD+TD8-WY zsp(r_l5Qrp+SoERIMX|x{UHTrq>7CU`vsG-@1{&sn#@|3JF^VVY1@D>uB12!V&}Jb zqdbgNP0QKs?$Y=bSGSjQ+Npn<6FUR8Ld#kbEFkg6W3(9@S7oWUT*(`!MFs^id&GQJ zWL4zcqR|{B>7>d}>*J{m#i63_Mb1LnX4z}zrEfW^EOs}pzObOH{jBZffogHkvqS(!4>CRG zL0=G%2ftQ~4$6mSwy;pT%4_*>X^(z;`LxkT@gVhy|4NvoHdFo4O5}|AJJT(7=@s|@ z|DKugET^c+mERdlqHJ~NtaWI3McJ+h=0ThrJZ#Xgp2ksc747_}r&@1JP$Jm%`k|<} zu{c9fAvU%-VQrY9knyq1%l7Oj4Les#LQH<~F_oxH=u##N@8{2-}bGT+n^{eiw)~o&tE9f;;p3ziZ~>KRQ(g8j4%_3M?t!f=5y;BDm=X+2;m~EG1U){ai3=sGRrnD$w1PRY7aF zuJc;{=?C!=iV0st4s~XYoPY0neYNgS1UzH9JP@h_eK= zg|7N1CHZcnGj8#piW?toUZ@cv)vpigZp*vk$(>zQ%BBAf>_0Vg^m4COwEmm8Dwz-` z;sf);?D`L!f6xaf>_0ZSFB+>pHs|k?@3>GMWk7#GOneoSu6>uN134F_sh>$|&7D+V zh13$j{wO9d+eXuMbVyx4uMR^^jTjsrIb|sFKjvsT&(XFGH#Z`U^F8JAUm1JR({A8+ zJSX$w-~Q&==YTwaj=+Zf0{?;4@+?5eF0aaLI~pTJF1uS^iG7ML7F6_ait7ID(+4b2 zp_TYM<1Jb~Q_Ao+Rd+3}o3BFqTNS6&H$|b5v?X=5s0kYN$6Y}rDBng5(VbK>1*;p@ zEQQTcoc0kMu94r|JA115M^KVBXDU+Km!(fuwA{=(jCp62G6j3$Ur~hsuUP1R**0NM z)HJ67^A%)9beV@7@{WeqBHel2JeGq2KbLC@x)+bMD3;wxdpY!_9>X`FzaDPA&{ zXEiddfjKj~D(oFt@jv}*w%2gtn#IjKh5VXyCTfnwHw}Q5JKqDVVI@}3+OrPk_f~Xw z&w{V&7!uY2rN*ms$&in85YAx5(#=(4Lc_Nb$?6Eb$&@Qw>wn_FxjY6P%GrD|z9(k) z1T7TT%;FbJwb`HHoNpKnsIGsz-_zR#y`6;ov9x9qc$9S(b4J4AcAaekYu3$K&bt0z z^BZ5(-k3uW<7FliR3Kd9Pm8eLW#v>tQaG$waQ!pDyNZ=w zj4wpBrkVj>VW`l+*geL0zO%88lZ(zc3SN$#9}+|wPv+ZZMF%AHPpjG-x%rQOrI7IX zqDtrEz4e9Kzx)?)#*X&)!~t$LW*2Yi+nUVk{s)pGyOS}tZ^OseZ2PAgBA@S+vNl7; zNqn+CvL<17$f{C*-6ea7a~0PcXl})L48rA4>$YZ7AjUh9BoV>N%}293aB^uW(XPVb z;ShGy8Zg-qT{VlCb#DPz#>z=N6ykXjbeqt^FEagTEg9@Ui2sW0HxymOpAr|CYfyXq=eY_-SRNeBhm_Bx z$9m}R1xL*Vl{W&2>Wv}|q4VCglu@?m!o!wVOEM&?3oL9K|H6%Ox$JY>Q+PDsgu1_6 zRu@9mC)o_;2e2l-?(v{hiu38;gv6ChT1RJCGmJ#__*}_`zoTxy!Io1j^(>IcWAdxr z7*3V`wvUSpNqBuK!bUNRKT=pW8PKpgQV4NUqEPp>ei>^OBI-RxO&nM>Q=R@YQVv)d z7>DqWNMK|#^R$K^JOwPJMwQt+0Q}%cEDLCkvWL3xDBne16)Mb<=N04NU+9#WL>n!j z=O0p3zW$~E+yWI>O#Qsm&WZG_c3@0a${T=%Om?o`xWsFo{&Ta9AV1PNiaKebMbe38 zc~73{r~mifcP96cVhx9{Tc0JfA$5P27M}K@b;aqKepK4vzU0QQOCFD{DQJe?b`(A4 z5Vtgm3Q&tD#a#C8D5F4(q;xh=QX!BU4Dbpcxd3FV9~_)gNr_^8AYIvqy%_XwMtwSf zZ11$wg6M3WkOoggaqgEhnSDjNyn%-#EcEJ+19g;mJN&l}bS*n_^x(kq0BedT0>sBT zjvYzLv^bG}49M+*Kagc?g!s_RlzaY^!GP*AK>g9xxU<$@nohtuI&$p2FTxwb5odW+ zhcg`92hWlSb72%nM3jQ74z)+dA_z5qLlS$^vn;0TZ5UeLtFoDGrloMJ_;hi)R8MQm z!gDO{ECjtCXgou~k4cNUL;3w)YI^jHMU%6wqB$m}k(m?F!|^p`aTEhb+43a5!0kvT z+0qZ9Gt}C|?T5kf{2kPAzv4&I_@zU;~@=)3S+rUSno_jaoB+ta~b zWJYTRL_Jns{z?l9t>}E3VjOPnU{sr-BQZ_DAFo}wO}7Pd1P1RuvyZuyQ9s0|f&6%V zJBI25whtA`Y96nL-g}8poB1oqS^5T`556&iaH_rsHp=wKlzJ@1ysBNH?oPo}9ivzjQ(?bWQb9M5vYTUpEOfrB~O2`jk;K(=`$ za_lw<|DczBr0%e@iACtB?qOsQr8&QC%cfetC2Q_OYTAsin=+l+HU)BD{~G z1y7K;LjzWZ8goRdzP8Wj7{BL%^6ZYqX8P<_tNR|^Lq=Y{KbLtm4!i068B}zTVQf@% zP)SyQK5W7u83By3TX~(qen0VyhxOc`z-zHymKQDhp>wrz)^@jw%$t|6A|>B}oVfY# zwcT=mB<3e9SLVf&2q->5HSk5(@UH5n^4T7(q2-#^uYn_BMo;pJJDsD@Ca)7Jd%2R}G@M5Q zQ>uHET;Y0_fkp*CSa1dTjxQa|f@kmifu4QrH|k25q;$#gQ1qn4e+e^Sb7-X^h5(%* zJXk&9;N!3g+>81leda$}Slhn&EDa&ajP!36X?QPVqkE9g&9<7yUos*OGS5A0CNwUW#{D*3oA5N8*1KW^tLNd~ zHY4*i10sR=nDyRc?Hd!Ha}UX6LtEAXE)}OO-Kp>mou8bHFZimC zQHA*E(IPu!cE#j7`J?5wUA5<&mAUhK*ItJ_{^ja*@*hzTdG5ckokADB5lwm?zhszp zFYO#YVDwBSkYa3zqWGPA`$DIo!p$sX8gAEal|`Ce`4%u0=n&PRinZ{Cw|?n#4WdF2 z2#K7apL}CZdepGS_kcWnh_mBVG;^6B4x*3>4u4o{;?O-^q{EVnwZ^%iJFBrxIEP~h zsM|`mO*8*OPAVb&bk;kl5x_G}qeAZcvT+(Xz;1gRd`Hdxu zfQ_Yt5IG6Ut}^jII|=@xUgQD{ergMU-lvNiK!f9eySnv0{B~;ViX-f6d{;VyVo#*o zJ?h!dC&jL^7N-D*Q?}@nj}cQmp?e-gPA@l~_32U87}e`HBc4gsUeN^ z>+NU>Ql8h~jk^8PvpZXKXcqf(eU9oh^7B0=&GS_*0WzwQ2_Mms z@kX5eU8T&H%HW!1$Zv443wy%%r|A02qiJ3f8*fvwN){q#LI6f@z=}!70-fGndRIA3 z0D@EMeU-~|oSjz2RYi`w{Hc$=vAJQp^bmcYi8yrANKtA}o0Oq9K5J+=Xk}3v&dxMQ z;E6!HPZpi=+wX%ly|Vr1MmXjK76Q-Z2~kFE|9?(~kDwYXBWU;=c_qD*|LtUtm$@ zuf|s`Qx~t=Dmhxx6XWG=cAGNWpaK~ z_0H`dC-xyxiEa-AG{7hEmeb!G(krGC%RL$3>SZhB*P2)RqL9tcj6Z-mI~9IS+mWo2nHW@?%UcH={3|ADwQCK3xBqpi?vz=?l9MU)hR z?Tn-Pk0ERa+u*oW$b23*4lb#2jgUeySjSq7Cg?X|4v4HOHmI*lx;{Jq)z9M#)cYQs z?aPxBeK%5K>aO8A;O`KaE?_46D0$yCoX$ z8{;MRkhmed^pzHM0FPuXM8XCR0=AuJv3U7Q8L^O=Z09q>Udi^Z)4L)Mm0!?*5J;5~ zMxZJB!+pw8f_I$eFc-e_PddxZ-Qdac9v`0r|>>k!A1FIo^OW*Sav=d}}BefXL`*Z>Bb&9?QP4eH@> z@?i%%Z2Fx2)S#iC@}8;N%D+ZYj`Y0m+-k>i2g>K>yj!s0K>(`76KzoIlU+p;8{8ft znsY&8@~(}9$u1zhlDFWnnM+$iioRUX?K$oTyD6tBP;Eg>z7(|aF^IJnj3wnhp#l>6 z8^ie$gE)7;C8ix1Vj3RR-LqUS5K~(>oEmxWqrl){ z-I4x0Z>bAX!Ra^rihc|C`{xv1l4(F;nTw>Nu?gTFJNv4Pry&yY#}nIbS}8m*?1^Jt z8520v3#By00l{p+K=PHaAGuvaQCyi)j6={;ZLXgi+4vG9$_l32a8 zr|-MoT5``U?*tppn<@Vx`eA!y``~!*565IM2+uHA#jf-_Z@k(A|I3D&wlWAlNScXQ zYgME1j3{6gi|p3jMf}*Pkn{9lj&j9(N}~?qdxTOTB))x!ybK`9XUPG6Db!iR;ilGm zGP9iY4S9|_tq}_3k8K2;Se{6H>=XqqAD>ERDcOmxu6y{{v9>q2V)Nb@KXPnRxr_X1 z^^|Frd-5LW{VBJ3i*r|$uc?%Q`5XG+wK7Ebdx+pI_&lExI7lLHcegH<8$qs=B%wl}#C z^ES`Cgcn0NCT#sEl(%Y2-*hQisiR&a*PACv*J&cbNVE%YGT+xpRPUM*nX}uWF+lv& zx0~8skgUQ);c;(VpylL?Pxb7WSHnqL&{=vBdR~ZXPu#47&c0$l`&(tJ*l@O6#T%>p zJ^uT(me_*guFAwP7w!(Hvxr5(R1U%8kCEbfL3mFBA$+?$j23aRwn&qwvdXqGxBCP$ zO+<%|THatDwtj#7X$oE~?=Ci@<*5G%|8q4;ae~tjEGN6i~qmBnf$eSGc$Q&XaEW+L!D6b-Hwaa%b(ryL)Us=~B={(wx%0 zMxRJ{;0l)Si{Rh_vA^upKtbW+9CglQVWq|%7g@Fc{*@c^XjsrPys@OMd91c`h|h-# z`il5k(g}vVGSG0M9;%uZ`5)1ay|Z_f(GMSbGwQsAloy`-8`)u-cy~_(O)rjLn^JN@gi$%s0U77-@pzlj->XUGQFD8{ZY|^mu^p2l zmVy+~R&yooYS|HVyX$YL+-9T#9h=OB*ngvxL2fR}J;GD(bEI1RpKLi>arS;F(z&Qi zjw92 z#&)+?-J3fmV$hVZV6;SQ`fPD9oNoc5ITH(qI6nY?J_N;~QUC2cLT2w;?U8rplt(bA zlS*a>IV>1<6=WHH8PtrHLe(Aw7sI6#AI;y;-0?iyd4wB*HANvZCBY!qKv)_WL^cJ1 z!9_j3W}ktaAEd{g&=BOE;m{o@!P`kL_Et3rdAFE-7QA|e!oLR4FTM{9yF|f`9_1!# zBCQkbc&zVV0S3`gO9E3?ET*cvua~?g!veo)t0nn~hI!#=iTLs*9P&?*;nK|0m=;{Y zY?r7K&PguYO3&OYEUu?-Mf|=gw}wQ1T$NZ&XcWGxCop@;t;i^jBfYJO^j*up-PW~` zxhbVkX452bSFcbAh(F=T-b8EwZleKn$33gKoMmRJZEtYRh3(pO+=*6kgU&wGO4IaNo%8#}mKa`S+I)i$w)2hvRF+I;ragSGB4y|=H{INtI4go} z@Gr2EYRAIus3lnWJS3+xxfVp(Wi>^{^e`bMfcZRavfA%lRoI68!konEXC4Cl!)0Q> zTnLf>Jlm;gmt16z6ar_xrUZvnf@tjBi5k;KDpi3`_7_{6Qa|ZD-9HjYa|-xzwj>r=Q&-5| z_$-|ZlyiV{0S13#H~+P;D7+858v0i|H2&`-zIb2ze^LcDsF*k@mnp3qWroY?AlId@ z@-V?{1Q<4O10E(bF9sIEwxoA#qn}2`2@Tc(63 zRi;{~C?ytT7kA>1yn+IoXwi)>2=!jKl>toX;)|-N)W-an`!BVAQ1YFpJYs(}K)>G7 z8$HlY!7c96+aJSHrMN!7b+&=zw-C`HnUuMxwU_z*xYg?4*ni*zex@JG`-d_S13P9| zXF<&G8mZ=z%QV+oPl-CKCU8Z<{tyrKvU_z_XsXg;8;6_kjM&APwCKjcJ9OFg9lx{S zfkiJB$bIy8eTspMjLLze0uAR03&)cxXA^neEHT9a_u9k#u%M>MvR|fr5=CGCb*FG` zq=hv>+O)?S-Cy;6#m* zR`+Js*VwI9#-lcTSN9(t<#}qMo3)C=$Hw$=tA#H!n6HZW?mEOr2@P8B=vvKo-z7}S|l(y`q1gN9HI7gnbuhkD*f9C<3b<%-c1Oc9ZpXl=B zq`sKHT$$Iy45jE+tj?;nuZ!uoW-+&R9H~Zom+ym`k&ILcy78>813~uP9sa+r4uZmK zFnW!=fQf)vamK5Jz3(S$^V?6v(};|C4>_|penbc0g`-O{DRa8%O2ST4*6EjZVoh)4 zHeOjtHqiJXO_ydq7ZVfCyFcJa<)7|~O*UGm_%xkAqkKw#YaZpn>mq*Y1)CfYM*}0$SnvCvFK%Mm`vug@;r+0){QEKGH%j1CCaOTBF?$>}(=oidv>FLJxnoa}Y%3cKI$OqD zVAI7QR}2tFJLm0Ak?T!|=P~E`*9_JvWm;n2{pYH#$l~s8s-#d80KzCzci=_B6lp%< zg>(O5`eWHu(=h1-;v@K2&`d^@y&{{D#7heW!?W`A5n{{T9LnRm^m0GQ_O(lHG0Pa9 z`OL@%WIfzb&n|<>==>v)eqr)Xsf&BRvB^f7GVNICiaml>I`%+*BkvP|kFRn*{CM^?_F)gOO0%P}P zGkPqo6N$8__au*5hX!4N(bE2I#L}NPdul8NZV3oF`Cb|*No~of*x_A`t*Jwqln@i9 zBW_Qwyl^?0o|omzbc0u#ONQqO+|3QKVq`m9hE}fLlZqB$frQ9%v}KK+WF~qS6gF)RpOD>AJUsHlAIm=V%QP z`|^F^%-=mg;BX~3{rWVOZ?bV`V%e{XkImqKo;vw$W-k6lgm;tts|8p<-PbOd7nGusFE;mZLm8rPkSY^ z_^GaK_l$5RxWXivRo$J|h4m}%pfvEH;zv!r=Rp7_ef1}N19s9$ktDgx;JP6BZyN`_ z$Vent!o>@i+<9bad-1GDr|f0eFEPg;R_(pG4#uwlv7_y`cvV$Xa3OABGLDFG<*{DO zV{9(z_dUuVwS01l(vLq1>#GiB&1ANHqmGu?b%p7uXyym5J1NsfGR6Ru;~?<>FXx5u z_j+QF@pyxnc08}Hqcoty1YncJ+&YmYO zukwVJt{E0LV+5yn!sTe+B+C_kxqcke>u}He?nCMT9O7GJ@ltqgE5v!1P9AKcsA)1HA2>1F;xP4`S zV-$k2G-ci=z<-!WNEb2$I_;|{tV4B=y_pWaP+bi{=YMaIsR*787GW*E@SIJ#mkdnm z_N}wNXK`zZlp5MfAcXDOTqxU8U)bpWgJ&nc=z4jt?=4ea@}cV5=Eu|OkWTW*6QSoj%_dnKYMH|PI6T!jjoWK95V-yKP-GNsh}+Sfsk&QI3UAJeL+0(Q z*L|k)_bZ1+;G>y56!FafVQtt_`S%0~M}ku*78KE~_Pq-gG+8wkUeZ|`HyB{`>X%bI zu*Pi;@vlt;b&4jwEBUehTXGRakRXOBd>U=#HI$yioCljRGFB%*4Hy9uC$k@Jju-Lj z3Gkq;5a}Qo(*I=k;TqH}4Ki_v3q;aH0e!$zXymww`vW4&{|^HBuBvSt8QFP&w{nk( zvp-{W9?C!iK%7Zt6a)~O-3&ujKwVKCB=_#qKHfR*z06QJN)?kUV!fTzf9VYYt~KtHNg_8(^P-Wej|JF7vAS z(gff4wcTMdKes=Jlb8$yx8{#~jR^Iq+-uqX!awXu<}pr@AjHy>7TNfehD#UD3 zxhGf;yp$|weIcO|&iBsMRyvs0C-rmqL>ihh;3`vMZAur&i|Jn2gnZtRXl+MzcLyHr z-Q8YwSKr;HsMfZ%V)TJt)x8PN`NXH@fWewP?Sa9XY0c;G7FPXv7}s@C-d(vh-(;sM6p$rzdXt~5fqTmd@b7$wYB3e_pVL>2bglb!HMDuC_A;zouN1v$e^ zVG{3?Le++Yp3;G!VnLr6riedovPA8Bxk|dSx8xr*4~N(EmjIiedmH(G6Fbx%`fsiD zCpyz=S|U4g8mg#iHkF2%YY3T{9K{+R=kD^hme9vt0 zNA<+mo1T-w^Z6Ga z%=8?{-8uKRCxOA6a5`jqp&fRJGWvx2SEG$HIX|HYQh`iq%RW|gFVLOtvYLW;|T zcYM2B2S({@dO%37^PJwkfvP}q9eHA4@qy;*GL2g?<3vi76xjl98Jo?P9FLfiu#)_! zF~e;9!UCA)6mGu!n_m&5W*mBmH!9V)KlQ&}<2H}Jk}zqVFjI*q394P4{tFj-l=I*` z|AQXX!r}6fA5o1MW6@g}Fn;wOv5& zS_==aP-j6$Xtd0#Ia}U<$<*B*WQR4-%=vV3`X>%4FQkeNsnLKsYXik zZFGBFN`zprrBj1sFAApWx2mAR+wRSHH*R(fF%UdRHuKX*1OR?fyMHy>=9G0=v4!zz zT+Lnm4(LoUo!dyBy5$6Sc>qFVZ-F0HRxhG9HhwOgRa8{(^nCVgD;i}Jvm4uF4@XSl zfAp;Twwcn*4)`rSrV`d2iZC0K-t#lxD0pmp%LgiZd=crM$j}cy$xm$z*^T%nb%(S2 zV=kn_rwdD_hpihH>J!z$Tx>zyOaqI}!-YYG{+)fe$Edps>dEgq`QxD7)aj&2+qevS z3^4S#xH(aV&6B0GHU6+pTP=M(VKkJuxtWhisr@6_<6+bLNxuGY9q&pr=`sBgL$}I< z!aI_T3ch5qLEqsA1(+_8|9tazzxj&(%`Q!%7IUwf`4Fk@4@)d>yyt2 z{YdImu0rJeDAb;P!Hz-aE2tI9J2J1axhdy5_V-Fvw+ww|TPzwpbt7ckE}?DWmg8yJ;|y@$q#2OaJih8t@j0O`KnM)!Kh} zW^#$(6mO)fgx!VAHEA4Q_w1j`&YJk4Fm7q~O@Sj;q9%Go*dLegtRDca?~=WF)fW*6 z@$Pe{xubx!JYpP&js~r=BTrm){e002Mr5Z2wi5ufL@`F!k)pl^0rGuF_>s{z*rr+) zaK+l1J@{txO`r7qiL-vl;#srZ$l{XVZ&U*?116Pt6Hm-j73@JN@=U-sUjfDpvs8jeG!%bu~Kz<#hwuYgt7q{xVkdPdt zOy*`7{mJ-5-#YCE-%ja@f3&7gnOi(I!D7%=2Rt(8bLf+ur02{@OW_>(N=(E5EK2E< zi?-^jzSy4LS`9uDqA>CuxP)|mV*C@65jlLny>df_rg4-&txcvT7qtb$Cd_TA1@_B# z$p@G~zt@LXqV_9JkE~3_SJ6dJwQ13k#J;;dPH)A(dG72z2w@zh@@8oTtaUHPIH%Lp zB<(Gl%Bcp?80tZ6K3IhPk;WzNm>FKlMs#se36TE2|Bbo z6*4;I<|8`8oN+TLNM-K&xV((a7%+~0xB1?Zf!<+pXvPi}0|FPzotD({*O>kE^F zz-tjvtqcfN%LMPt%Evl{ZM5?mfhNC4UnJd29jv|#gAq&pKPVh-oqsKrGabz?lVySolVy?ol5moG$?)@f>+_oV$}+?9T~c(D<0)XE-= zwcMCV6tTU>eqoMqDYkPo0zIMjy0U=)O~!4}vWNC|&3H=WAiXOp66>zLFIIJfC!)pe zIM;AmArO!3s(h(a7l0`p?p$$z(gYOyK=#{7TijPK!xo5h)f&h+LU-H&&|rClpu3&)BD zrT0Jk&o9ABgQ|Geql2tQR>#szwGYwR6h$y~KltgSv(=Jy3d3vYvVwD%R+|Czp^q5;u?!7>WrZ+W?@Y3)&oaxO{hzGO0M zbv>TmFuWUh^|74G0iU0_+wExL;xCvUO+bH*7>|p-)~YY}MH8pp#?Ha`%a#JL=9T;P0k!E4|c%aQ{zLN z|NZ?lpIrpZR}F|9HUFyrl}MuPu~*OT2-L-}<{h)dABvZ3FeLk!BVle1x&1I%AAX1- z#g6&6e{~&xS7^}BcW(763%?Rv@XI@zWA^|%8lnDOkC<`fO7rG>_s@gJ&&UtP#A*7l z$>cPWj)_wbC%c-6x~Q#-{m}a7GU8}a37+WD?*+?qBZPv5AZNmh731dZ6N4$0M`>0!ly~ufQ=a+*h zSkdsfQ8Z2sx(^se*B)|WZ+fEPWs|m^+2~1Wl;a^`Or^m3o%sA9L;g|9@JbHHNW}~y zby4K&SBcMhn3O?l_mFJ1!)p^fV8Ul7@h-&v{hg=xUOh(opEze8u{c zP}i!<$%)0@7-QRrmV4R9%V!yl{0~pgB9W2=+WD5Wg^x>(Kk0hN z7NpIKH7^AS%GC_SMGKh4fcWmsR4wq_@sgN!|2^Y>^h4F(t^YGDeG2fde>$0$I4p|= z-bUwUT7g4A19p<2`;g znKv+Q;YrsBGdPe#L6Yzfm+0sE@Lg&BhIeSfWrO3PKZroGL574!O3n+RG{5B3bWl3m z!3^_6m_yE^{hq-oRjW1tI-LNS`#52@oj7Nz51}1&B$rsFZtRCYXuNttiVQkT(}?Mp zn147HvSeb(i0Xjn@+A)nJb0Eq_pd@9?e;4RJBl^nyGCKvPJV9bc3L`YsGb_S2+XWy?GXcS{ znIC&7`ecaj%h3;MqO;;(LG^gd(ZsB#)~#OZfrnQQ0oZf~dOZt*m$zzYViW1ja}x_xLEF&=i_bA6mj>>@nXWTV^=?Tm!wo%Fsv_Aq+pXZPLVpfhG zB|WJ={+CEhRj+w5wj{1kerfD~XG%?*Fhn`9)MpT$;+m?_p_Qwo8rn@z&r1SDTr^P< ze?RspMenQ62X*UDEoIQwL#J4OB!q$iRUNgn^D9%5Lg}>j=bUc#S&Z-(>y+djxh^&5 zV``8vVB1gYzXD^Qk{>%8b6elaOb0qQ$2^30MFciwj^(_{mQ%~ioTWDURh}~BD0pzo zu>V}+Yi@}8zRSXWng>NTio)qisyYf*zG$_CiHz@QrT8#{;zVbNs;#klmx@Je+tVc` z{0!kZLKDjFvxvX;rw*Reruh4}$5iO3Eq=%q4&N#Bb>hgol$s|q!hMjz*&wvsPBsvD zV#fzgky4cZwT2k)#T<#9F5f`9GWKiY_iIve)Z=oRR7YyA%Ta4JbD+-w!52a2|CL4} z%Vne`bW}c2WYc~hspj_*Zk!a~mdZmHsSjthvB@VmIblBdKflMmoz}mQcneOxW1pcl zD-pxqhfBR%dk<1kb`E(!;HZ(P{Vzif)|#h2=tBM4{qLEh3!<{*t#Pa^2}*+soU%xvtc{@7|fwp&UE=GM>9WRk#t z2>MclcT0mHDlMix`Q=+GL!G}@HBVnf_wXd7M6m+;jHXGxK_PWt}6l> zGDNQqAS~}qs)3!fq~%EsrAf8zu-kLbcrW4^lEHHGcK6TPTCIJGcK81b(Rz`06?5VO zH~>Cfs>iA{en6l-$MK(<->pB?SZyRdM8)aI#+F$bkR<>k#N>x8vuBF#ZT#BNH=i3N zke-rS0)_P7Q{N(Wnh=k(ld1-q1`3Y$BlDYIK|YRk`aKFMv2{02DI<-2V?g)7C-8ud zs~NFqnFggP+7aG<_=hiG`cDO4V%4IhE;D-TZ_LQZXP1_ny^cUUKs{P*vDYCL>uLRp z%)GgdreX$j@kpCZ>_wq+GmuB0td3&dARV+GZuF8-am6_^$?kCDOuQ0O$7iuGOYa?l&TQyVj=!Tnn4#Y!5BE>}C-c3KhH~^5 zhQAjDGOA;>%<2XX+IfgrkhwEv4&sS5rCjsMfIv%HsC+KHVx^y43JW9Cjp^+Lo9e)d z5y)7_!=|rkbLYZIU5C{3OOx_k_zjVer zu`7XFIB)SK{&41%^;Al5-IL+F8zNJ)WxMt)!1`3oc&CSKnC%}l))|`?I30)XZKMB- z3vcbbrnpR|Wwx`s9kzI)VM&G-+^zbZfAy#CjGw8HNSwnynPM&GZi=6ok`Us?Ha{@b z>(dyQvH2F`sx*ZPG*5M{ljy`n$sI?(T;PaUW=Xj(r2jA!{A>SYO@ru+%|mCYfe1ph z?|0pe4<*CyjvmG&|6H>|Fg@juDRAoZ(B@w(NL6}+98rllwMx}PzpBZ2)e}D6%=at% zlc0@`?Y&kixjZbTCoy6ZxQ5qgCiBR59un8F9 zj-T0=5Q@V-5n(Tewf|odaTGFhKqHzL5-tuNr#6F=|_ixXL+Nr$FCD5*0uBRL+m_Ll|Oj?V4qHL zQE)lFL$Cg#y1v3k#X!nHHv&=DBB8ksyt(2JrjxKY)z2IvD|4&-ddaI{;l{XP>U|Et z0Ohf`n`>(g2a@sOMdDhV5Go6*i$GItip@3#dRp&RNTh>l9#Ym&f-F@JHM_Yw21H1@| zY5faSB(v-ynx8RKxz4-QZl@@fZTSBaNjMHT+LVQC7Ru`03^YiIJ8(nxzNWrMIcxDu z%VXBW)yE;+P&)00jkl)rD)Pz98E*fK8dN3oV)~mpgyH~RB#I6mthY+h<_)EBhZ<5e z%W@ayvuk_tyb9dMRw6ZjiW)-6RNJ~4b-Nr=t{+dl?YU3(wY+;bJbRyACt>WjzD4qu z;>{usubw<)Rej*5rC|J9o@x)RTFM1XD$+aa(()i(=37TiiwX(93n=7J5=_``eu0Sp z2VI^yKgCUr@#NryuuMAz-X6WU!Ymh`ruD1u;<&+&phWx>xDHzH>g;Se%w*{rC&=1} z6C|cI?>Vb{>?Z0+^{*dd&v#)2Zs6im1>6%c$@ryGu{xK@lgzvMPsP(vO~g9_HQe)Z zQnsuuv6;EeHmXSG-!2ApUvusEMN&Mlh#H@DuUx!uTv>X6WnH&TMxz6op0cVEVi@%F z#$_bs`6N`5)k1B9VY{_Fc^{dn41e(j0xDMPIRMogsv|sBOr?IDY6sPek`Om)Fe3gq~@1At}p^Gkud|LLC5!`VMQbjIY=rh9Qim!_MJU zbCgh0<@9XcT-?q*9J;0dLUt(6!t);%^Ffiin*FNP`jP%W+xZ+bT6O%?B$d0L0_(dhY3Sq9uemjsU7+)wAr1da^h2H6{TA{O}KO2oaQ z^@1U%@B*|0X#2yhBHz)+dpgcCw7Wcla3f=sYHuWO1j zkb%UA>=nRV22Uwyo@yUc4kNAx--)+MP6$&DcN2|-Ih+pMymtFD7#5!`HqLRoYB z*Fxct4wxU+nb6CEdY&U)n|D`8h|Sr{{q(@RwcvjGz`O{}ie9DIszoLmh>3DEq<{vM zweRt)GC-4~I@0B;ty7{kYEtH%Sc2JC${ROFe#9QjlVE(m;c(Q9-e!t*3`#T|6+}h-L(4NkWd_`4aWW07N8j$qqZI>F>pw=5Dr0f1B3T+`=b>=u?n)Ut0l2cVP zvi;>0>77rlr+i(yxykf~W`TNs-3i^&B89+(nqvEcd+IF?3@{oG&pHNB_K3&N-59;~ zdM53GJ2PHZI~sqIKa_x02ZBF)r3{OH>LpVJ)Boxjl{lp!`UN$-eZuvARvJUSpoaR) zp=xi%*baI=-t;zX7d`!US~sAE?n`V_6~gltP#x6J9BOFW916}h^G!BXBNt{;m^M=z zTcpW8A#>KQ?X8<#eC@L}Gp8tQp-x!!T zs&X28Bqu0^&eR6W&uuhXFGHdx-Eo+@awq(Tv;SCD*s2MeV}&H=D4N5{S+B!y=r59c zXp5`ECMq>ru~PuQIHH`ta!hPf{JPg-&Kk?+mE|_A>L?iWqZ%I3`LriU(r23_C;q|f zN}j+r5X)5eR}jBnw9G2;&-bW)uU(wBJ_K14Z=j+E#IYp&OBa@QdF{{}a%> zv2QxR2Xo_xY+;1Mu+hv;YNHM9^*rE ze$t8CLaEsx5J#26l9K0bH1+(knYSP`Us3dn>uObWv~=PcR=sp`OlQs1ZJbdy54Y_^ljECRH!<$afsHu!t*w{^pz)BpPBlT2{p}HsbU_g^YKE^jKS^6Ew zwRB9?P2=E@SIsul5cKI)^{~cXz#%7yQ6*N(Ji4nJ1&dh9;E+$ks&MX%AT%2*;HCA5 zKq-$IpS`Z?ROS)t%loAv2&78sYU+xAF+W;yQ?Ma&$t2TD6p$k2Q)I8&BAcTG$*?A? zU3nd!m9CzsyVcd>I(trJUTGxF9yrUmk!~ON zC47(ndu{4!`!PEaJ!FX@xZ zi7%0HIglgPf)1#LmQo8VDNL(^D}8MGUfPi+FSn!{o@gG{=hm; zU&M%IdX5q)D*1BX`*^T7bbL8BE$#b}@0i|Q>r!V+Ps>{eh zlohQm$?yabpc3yW`2L$iIizR5A0{!AUj5){IEbl=`*0(W8fgGOZT@Ed_VQQ6uS^Dn z=fCAe4;J+i0Ug%8PYN}aeVN<4U&NFT&qTndU`DQz0$?16V1CIhy_ch&c|xBS2D_{g zu>LI%WyA>WoF^S=oYa1bl@dXWW}%Zj4|~K2{akx7k6Rc!Ff^MmZf+BK&uLDqZj$%i zNK`ncLd;C*y39);r$0$kye_I^M=cJvC>z1w&ycc_z=UwuWY#sLOQ~VsQ+y=lxP~2I zRq8^8p7CeA>z(4Mn$oV#9#o^?EGG_yC)v=J;6PHg0vOYL5|LvG-ZhxaDz}a?K>pj*FcC$i^#z>mTn z{i7G5HdkF;(a@u(h>?Ufu2_jme|fnMcA1WAjo91Z-yPZ&o44`KWtF$il26HRbYBak z^*2^=nK{KN-$>rcA??c>M&_vZXNn;J4E9a8bt8L9s^aOGczevC9t0d1w|10Wmb~(Hm`>+#Z-g((lz{ZFk0r>$cLffVbx%53M;7dpFi_4 z*Aq9TV2>cCTanRhSZjsEW=NDD$l86^&|Y;9f2kdB6{I%fuI=*97UpUnDO$X>d>)vm z&{^N6{Z>4sx88&DudDPyZjT&g&qqFIAHnuMjFo<3hIIlI{x#5-UXtLcyI#DM6mA%F z^1iWL!pIO3l#@{=F5}y=IBwzs-JhACQ?Ruc@sNpC_qz9+40auKP}l?xHLd!8P!(xB z`3$u_KuP%aQSUia0IZdoz}TDwDQL8UKzvE?yKfE=ui>dckJ^e&MnQ>RVVs;E|^j*20ckdcWy{B%@1qxgDu7L=f~GcNlkx69b2!v;#(t=~FsN6GW-{&Cjx&;o z3mavvlo1aX1)tP@o%V_DVq6RQR7)?6WtZ-TB$c*@ue&UKruWaFh0s7_Anj6Iby{` zLj@rh<&YXadolXi$@or?BLHw}zK@6+f%zGqf~=og|DGM7?T?j({RT@@_x!#M&bB#^ z(EkAy;v}3kb*X{B7xh+Rcmn_%33vAthxjSrQ{<}mjwY|mu}+NZ6DU@Y)|T4N?c1>> z$A=4Gd0(0oJTBM$ve$fjm5YoLPQDn7MYh^rvVyEhCxFTb^07Be$?1uLkJ&U5c^2m^q6zFT)m{uO? z$NL#)oh3rL=TFFz>XkwruR4;5tA()Iq?U-Mxcq1ClV_{_=aG|$`Y2Tf^lO`!UMkg5 zh6`@lDF3rkZpBQA#(x!A1$kHawN>RGkm5Iw21Uo-6x&M|l~->>Z)uMKB3kG`!O_HM zv61AtD!E>IlC9enBEi3^O^T||@;Q%>n?^Eox9+R!(Nr(eZa&3lvSMCZqeJRuDBPm7U9kL0rAH)Kcarkd} z1B4e59`d3E&)~X_A>Yp)TS(t;9rjRsRTaGH02lFOO04dxeSO(z;oM;Fki3eX<*i(F zZO^LK>UB3Ah>i2A1((dvsD8`sd#v>xg^i9YgYhzyTi(W(?yXn5 zr+J0=i&(%+$&3>-2aNcNWQZ`_;!r~`>G^ZIK}+*3Hl<~Qxh5$Gj`lwoyZ^7_B=_64 zp@Acw;Y$dew#!8ebKGfjX=?OTyu~2p#vx&B7wN;5WL&jxB8vc7CF8ZmIrbRglE6OY z!Ctn({B&lfJt)74SrTbZnxov8lqcOuk~7><)ZQ2I)i8y6OThThz0d*WW2iG8&;A|~ zeBoY5B7`j;`k}+#(SG%^l=}fYH#;A&_#s>r)s&!9cV&876w_TXRRb#WR7P zW(GcL78r{O%yZy9$% z`M=O*X8~#>_-qsN*#KW$xLcUarOKSkl^?pl!s*Zs`n&OASj+ZwqOt}lLQS-i&A2(9 z4%28*cKMwfStDGGIhQAYrgGwPSY=|8OEhn==!egxI;PrV7M0G}UG!YCj@O*rGa@3Y z0&{Q76H}$IJVv}8CLhj*mmAqBI9y>6ajDh`Y=M;uy(VraPYb@2I$QlP%2YlxM7JF! zUxr(=zH9$34py3oFAVpyr$Y)hR$xbU(cY1z>kJp*BLTbeAJn#j-zue2 zvf@8+4}i}Ds1kn?!O<6oRSQnF9tKF2W@BNG!XWv}H##Ouo>7$IoXQQAam@)-;l?=} zx7Pw#S$!YTBEx9fhm}vzFJw(gR{(=oiZe`01bWjxkOccppY@~5#O`b1;24G945VV^ z+J`{hiH`@|dOx9ry*~7%;BEUjNTgnJwU?06dyWVhBDOsBV`5764y~;G@?jq>NfjO zkbWONE4YPS-iK`n?)vTWdBkg{?N^I$KAB(amFPzv$L9>XW5^XF-Zls=Zx?|{fV2vd zouaime0quJORBfqeOug-5PrYjKZzSdB5@i2MT>Yw*ITO#avNmP{nIM?gGtzw05x~$ zn`;RNCLyY^xH-H1RyL&vzWczfq}(8?7qlMOk5%)p8!vCk;KwN$#T?=_8!9Jl;kzeT ztg{}DRCTDzB{L#L;+I4nLQUzGldK)7Pj$MQtQpO+puQ$YKa!y-Iu`d!|?rfa}Hgt*oA7!M9fqh9Dlpcr7Mnl?y+gkO1WAKN3T)Wj(7< zxo>6h>)bMFwQOwF3O;(Uot;kWSV{Zx&A8x=@1DL@JWX#_vOX_;$%MjA)ms2!x=3vG zf6TT9EQlY8o~*@GhW|;eZPTjfKzt97M2@Vuhh{fn{fWypdk`dZzarh^_L?>%*%QuR z@hpl=Fx}9V^_Js3q2Inx>nqAJknR55IokLub@T7mGS?wvrtxA8x(i2j%{@-owfZwQ zG6wd_^aIcFT&~hrq)r+Zkqvo+XncUGMGTS8QM_dW)|v9zmpLIh5Vh)?8vYqvJ?w~O ziNcn6E4E_60tAik3tUnGp4;58KpXV8i$h+x&#du-u-|6fThx)nfysaln&j7$J79ZB zZ2e=vTZLPL2{+{bO8T|k3Q4n}WOGli=(=AkjvblT!#~;o(88-!4=o-&#t$u)`+hXa zNt7xJ0&@Y~$*%Y9Mz(=O_>OCGT2ZcM#~{+I(ft|0UvV~0R+5UMYh!0d_$L0wYvJ@h2vb4^1XS>CKx$C_)bw=Li>xmMD!e+ zAR-x?Lupab`&#v(Gm4c>+O`#t8jF@AR1g4&7?vJ29K= zkfUz)rmqtg6kv&~6?J{lA7Ubsz>RqkOOc(nmJGc~uUl`$^Td-$>TloPi!<7d32IZ; zZ#QNnDw|esr&HUl{s7z(8csD8n;3N~B)nP!I8`!mAhXA}-{-xeJdI&b9M0}`upCQZ zJXbFOh=G!$kg#gL?bgtlf0Mswv^ZwsJLQ=DQ)Y6*Oi1$Dy0B6E4qf#vMO_Uo!;8x- zFVfO_>k4|=3wymhKD$1a(|>Y#FZ`DeDUWWM+a4he@BQU$v?8Gdgz(ly^bjmpQKe9|PgK;`7r^aPFg<>f5t+;$9h9!~#N2@=h;QeK8~0PSPI z2rU=IsX>!UC-U4iM>AHSTik>DeA(BM&ZSz%dAqAuKSX=#*NBpeP{K%irpGH(CA`z zU<7C!*sE+<9?8iA7HbtcxYG$&jXEggK`jkB*-@+NFQ30{?giKRWM5(7zVQcNLO(ik zgDb+JJ*mc=z5KVnMzl94-dh}RQ9x;YJ0G_G)*hsh>)$rNg8c?&BFxs04WKoKKdRT? zWd!mS);CNO9f_(8*(T%%%Sbv`Oc|D88)df*soxlLYj__gbnYl5JpS3wDu}_7eEGgB z65eb-KokE(v`_Y#yvF_1yV7~Se0JNwho0CWjQ0Bjw8A${obt_%e`{Ro;IG(8absL4 zb}Os+b?NMMYhJv-CwdMQ2KagmYn`IAE4b8VI5z}vC$XQR0D6&Mv)q@9N-z!T_xl`- zdzN&7<*xzgc=bVi$ChfFF_=C^ZFc%UNfGes2Lp$iC^f1a)h#f`j-Xc2ltNFmd+XY# z>m_~(hsjvn{;|qtrPlz-+CU{t!KxZ1db2ev!|g!dI~lp{1hNw>kJ!HD%o=NeMcp>z zL1qvWM#gJIDTlSRwNeE&g&2X8)@O0EB%w@QNqeFBA5g_{O2gD{y|sa2-4gC4@b3iY zmA}^Q{QrO^RoO*2sjI$1{4O5cmKU2Q6}nAhye?6Q&Hy^$+2@w3lQ6Tep8tg|9TvRk zp;#-NPB4vQ9M08b44%EyFW?Sp*`+2&)PmgV;q(GTy?p^wxxw1ymMrxPVY)7~vJ ze+haiRx{`^v`hcpir!W^Co%I2MIJut;@Vv5l&!%;BfF{K+9b9^;LlMF z|3dWNMVxdjWuo!Bf1ff1e(l6-{h|mr#~XgeNkKQt!9O(2;Y`=Syh}(ue`AM3j-<3YUvwNX>SD6-USn#>CwJue*TRp+m_kjI`VTUY9B^NX2IWGN-n0uJk(Nt-Nu`JiQcOvh^WdpY{e{D5w z#y;PW_xs*HkR)GmPh2~W3GqwyQ{PfNxTrJb_}5b4Un^GGCkh$X(YIsKC6vczG~l@f zk&dtkyq|4z3lm!DTw{QWZdtp1oJM(z7rmABj5v@Pfd_~=&zsF<(!wnEfl&991SZLluD)^1K6DKg0d*B(r;e9yt zn&1KxVuC*{J;QO=k$&S#aP-2Xtd$2y=L<ToobZW8m0e;AAxCHLeupq8%lTonZaPclGe?5MDmY~JFK%7SQsFPRx_vm)fp&~89QiDp?gll$wAf;4 zi$u)D*1%p}2N~Iagh!`MFwHZI1z1(7N2^{H-baxP&i{1~ z{Qz0MfAuOiW%;m!4qq6a>G%4;{`Wh_gO%>VM9Bt@+3lnFCZ0TGvMk_is!`wunjsdo zBYkFFvoe7qi%A0@nRbKhi?crD<2MwAu-COu$s z&6O$MKICkuRDP@wCuExr#`|wPo`Z&i`O!opktCo(rt#4BVKClSkWo8rdIyZ4`csqz zO2BA;flRP3OT(w?4!?-srhB5=5@mI(PMP`lfV=np*k)DM1?A=_Bc|QAVs|<5^j*By zXCT?e&&949id*_%grgnmrdDlKxZ#G6TjgNYzQ7;J1PrDqsfDs9;mddfV&zcpg1Ja7w-DMdFq)~d488eQs> zUmC2Gq$6tSw-7p^-S$GFWHZTb6p!y82V{Nz1`IM@#DL;eK0oER4;r8na;E!qfp%qM z%Buc~4hfH~2}sQwDNnBDYimrWPNW`tzUY^Fmrk>Z&oJDbrTwRb({gdaH3}ppcpxma zmzayW7cNRs%bMR~WPy;nQ8t^{j-V44RRYki-;0(nOfSq?slt&MF-)JsL;dL?Uf zSqst3g$P@3;$qYfQsQenjmue##;nu$Lh<)5CR6c~lUnm6qN;xoL;Q`_Do|aD)a)Fs zXiuJ#-Pe2abXa(*f2uj=+UjBjiRU+arMb4U=p0rOe7j?hsv6@o5sr9-e&PJTvSdRa zJTIMDVi+ZFF&;=iLtc*UEglK213QNNT}<`NuHA-KfVP(txIHW#c);_!hsze`cG_zF zlQiZqefh-sL%L({&!#PS)wVo+)rVi$K3((q|-c|-#F=9T% zRkq>lqmEehY#fSLTu*}r{pn)9|2#jBKYeEDiekc%&9?2=RkR(X`aCx=+I_TN%cI&X zPT9{(JmLUglERwC zuZ2r=QH}pxzZ^?opTJ+vhn&}kk+?`79@@@_HR1r|V*CqvpFi7JU(`W6h7G;2)sHgx z`jTu!)zekZN-2K2P+b2Nn=EfUl$*)EjPqMw?|8GjUV9|DkVZ2PQrM= zh!3)HTlPIO!?q?zTsMbtm)5&&SYKExF~pUZ|8@ORi|<>=Zq)Kim*nxKOIXt<-=e~1 z&OfXd3!7LSF02>)zjM=h-g<9(SCS1HJpuwvYVw}~#TqD?IIze!x}d)?U0&iwD`zz= z1bOe~(H}L5#5evsnoi7v=N#ek zT{w>h*?=URM*-%87D2Mdh?l2fN1ZzaJWiE~w|5pR(0_R{XL<>M{_AGWG<>f%AEn;v z>Fyn7gxl}#at^zd;X7T9_KC}rktsl(^f92%*FML~s4O5*22Cll8%3AsWH9#QLqzvC zP4Vl1)DODa75ia)!|gCtlJ1au@5?4-^?J)@(U`z(W(!R6K2*evwF;qI8E@+YIdjY7 zEH|e;r-LG?{!zj~7QQOKkW^Nb{|CE0;YF;hJgvE%zfo~S%uTNwDsT|4IODQ?hB(?> zUUli9VzQ$|KS7_MOVul}an%lz0rz0?j_`y}y%WYKy%X9YXSYJ?Gj}Tu8O+%7_slmK z>UB#LKKj{Z0afTN?3+|0FGmjFRv-fKRD82+D%jJ<(8|D{1Qga=72r7*unOx&rXcGcx+3* zBwm7UlMD7M%AB-@S{vx`%<}r)8iD4%ZY9I?*zJfa|_}Xu}j{QWj-kX#ydQ@LMmuC`O*n3uYU9Avu zQswLgh|ao=7qRwG=U;~!$C=>pbBAUx*)U2qeB%Y_@zSy4oBNE!v*P$LkAD=+yS{Fk zgsM!uQ?D8AVCFY~>_b3SOm?v75TtlMc()vyejxMoExGD%{fUox+%h{l?8s$il5H;` zUX;pqN8brAO`i?|A(B7y6&6H~oiTe%c=ghF8M2@B?(EvuHpfmF2!yncadforGmwbH z{jXW>a~(@sYKsChdohXe{n4&&Q@djz%N2&;I`=?bujTdeTxBU!MhWOYYl>1{M z%2cqCqJBHw`qPbHUk(B+`nc;qTz~NqFd<&nNVpVtP9vY;)2~w5IxYp4>?f7apjabM zo4+otR3svKPdou~Sm)MG>l*XVjGtg!^V}1BNY9oKL)GVfG40ynoQp9N-GgFw)@6Xe zNJA}S>?>sT9i}Iu0LyMRzO(q037x$1!k--@oP%O-!imM?2>i?D`MJg9I?1;Wh|JUe2QN9655k7ruhO}N z+h_Ak%R$Rg*WYi5+g2^B>P!iBM9DlJ(^%J7&dJ4?AXuWtk{*LkOGIHW@0)&#zjml) z_GSO+*PmnO`_Y0^8WndmJ3`g_Rkl=@s^052-h@^Zy#wJn?=U$^*r$rm?}g~(3|p!Y zp(^)<%x&&ED^Z8-P|mYx4fN54C~S53h(wHGzNRy7TnPiT@Molp7nU&>a>M%2IWVfZ z(@i|#ul4Q_qEqlFViIee*CU5I<0#&^FBTQ{z4Ulo;i*&qC@PM3yYUkFVp;NV{#%*H zpi1uLf*afxN#+IVzGr31GM8^!Fuvhv10ECyN~MCkmMCg=NRz0@Fb_uv4Hx^q{f zze=tC;oe}O>GHb0AgP?CT0y=bE>4; z6~{dBK@`l=0~;tOSdZwdG!Wl%TIgRyDLqeyY5gc$WpXy^{#Z1UdJFEySA9Wo&pD{t z*ju*&h=;~+v}z`G7_WZ@m)77_M|#x8&gs~$J}q%BFP=^r@}vn5b>LF0brb)@>Q75Q z@JYOLeA>-Q@!THtRPkoMRDsEB-}!wQR$yppReT=&aaZdnKNS6G!4DaEukEMdkqYxEy}N1~>n6%at2sqB~Hhik7xE$L0}OdBs_&&i%1u#oQW zuQ+Q-L)&e!`n@OgC;S>vf#cxf1r;*V;fYEuUxF*%r6$M4)t>*w_PL~20}?i+bjqHRG77K@=z ztJNrp1Frni+X6jWMGW`&8x_+FZk!T3=?|mb9gnGXXbU_RxglbD!b1UT;3$*(zOT!b z{*37ZwG9H)#%Yhrii3Ku&6^csd`!b%ufQF(AG?_PH$v{gr=>jZaB;$=+Tu2$$Hblf z>SS5gt+k1J^6aFDi-!a^?0)*rR3>~6MaqZf$W`ux^k9(R--22ga|ppTafD}tl!y$C z9}T{ELimc@kUHHS(>(c*O?l@GcBcb9c&nKH74*^jFYZv7sUJGTVV z58mzW=iOz=%L3w+*uqzTiSP3oZqLp7G(|c?>hk@6Y!eW&c`D8b$Gly~$h4`rw24C> ze)QtzKk;d6uYnd1C)%FbZB7&WCYl{lVc%>m#KeZbX!C4Vk746F0w~A65f*jf>6i_T z^L+KVrGQ)zqwDdaKAE1BcVMT_ZAkMR<=eXpyev~A`7M?`yRWS%7d!fF62pHiP(69P zRd=i;uHo84=JK3Ez45$>Al~PJYj>2G`gHC8sU z*^kw0&YAW2`F)p$0334?M91HP*?-U?uEqTDsh)C~1c&OH1F2qJ)*>;~PjQ|fOM-ki z$-ssOBQHyngj7MsZ-9>t%kNS-zRh2pv;8KIWh9C9+|b*T-LbPVarG(;K3$hR1QVv; z)tJ9SRk^>ez7eVF<oBb@jR0w%F6aIfrNqRiF*dQ_9)@R+^(oRl?{ z><~l#R&QTsD~&FNiJ#;;$b!--p=>7hAqy&^UBsdV2G~{W)(IsDwvhK+W_vUT+q~a2 z{cYmk;Td6$bttq_oYDHL_u z4;cpVeyji01=ITMeo8@PNqL!C)w_ee=OKSq1W_zeO1W87tF|vR+2T)s+MbO$bbt=T zx5*xyM?$CX?=g%zRZo5S#}zlaxVdX7;Hv$PZ@J(5b}_p8cD27|E9ra|Vd@I?GgZko zSC@yzOTe7j@ZkpxGQ1Z+!Ih3WKC1rd0+_@643cV?Jo4TMYZ)-PEwf!C38-6uQmKk1 zy0%=qxyA7_3%9IEt$?GGknKuFcGLM_W8Omd(d2(X_ z#>=zU1coS?5kII+N8O+y#pSsYDkA?*fNeTD#YPx+cR!;lPPXd!{PbyH)L`;$`}`t9 zA}~sBnVp7&{KlPn94t-ePn@u6D97bRJ-!`6=R=%mtHLFC5-b|&{uV5}GEQe9pozq03BKduZ`vcAD@HMti^-?7b~S zW2LXf+y(J7!4g7*?@s=INu(ZXzeMDeNPsA)nr0bCD0-!Eh=#ud?)t)4t4xXmqA(8L z$#eR7kbfK^JSv!}c;54%{)jWAQ?ox|ON#AVH(wL^bg?h;Nlf!3{Ni$NzvLEnUCmz2 zzfP-bA^kB5^L5=7O5egsOHA_OcICo6FfQZ1knjNC}4CU@E0g?;7SK|VXHgDJ7Q^M{m}-xIQ0>?=Qg_)1-CN-fX!K2>=L z^nm9>dN#|*nmAj|I>m}UZ)bpDgP&M>Wqp0zK8;j?;Sgd3{iYk_6XLM@wIb^!<`4j` z6Lp2Eq5M0>PE~KV(f*xugyw*_=F3|#&%meQN5CZbKR*YxK3?QMW`J`wL>0Ww@&Xsq9gHWQN>b!vJdem?>z-Effvy~6h zyt9%HJggjO6tnVc#F$?rJtU?{JXCAj4uG7HMesB)gY%iqo z&XoVHN@8n;{BP69-c4_vhcao8KSC5T6!ry!q5tz=GSk$#9PHL!Mn6DtBp}r=5%AK% zfY|)IV?e_7Q@VSde*T(6hrLn0D%!=LaeU->L|=Y!oRw zI7^>ztiA?O_XTKvj5J*2Q+-(WxO0A#bE6Y`uK>UJhxzSU|Ma9*0QcFm8lL6VY zIv%lK=ll?!QC;$GxBF%XXb3XnVEL<0ZNB$^XyH5ONupU!*hW-V|*K^AQ<~JsF16ci^ zsGTWp^LZZx-Cmiu6aRVc?Z?RI?0LAHU9}%0%RFGa*- z4@{}9JF`5IdV8oVps-4J@8zMUcQ;xvYUiTf;~*A$_X4ity6u-Vvw`~81|CgxDy`{I zGKwSCofKrd40Qe#EY5q-B$hu;Gp&iEZ?Ob1I7Vl&DUe_9%MAqvFoK$jUwd5=Pn{^X zedTwXYXGz;JDfQmxDa7>zwzC5I)DDQ#9Y5P)U$!V%kiugE>b8~k zrM9f9Qlh^Z#fe8_0GXdeePKNDu^j{W=VY;6*oLoLv`)zC2c zJ{i>u`>V=InH{}w-+aKUT<<>K(F1KYr0}%}&CV&twn+(iM>S@e{dfJ*{ci>Gn>y9U zU%v+|6LK?EU70R1RepquOwn#5QjUQS;wew6l$Bs;ck22j`rWcl@|L6AL!^unI;9Nx z@!^1fY$bG4{3IqwriS!jNtviZP zACrXf)&UNSur@A0(RFuFdy0%=h4>0ZS7Y|yNVD11Jgt(}>m-wDq;GBAnxC>U_a3~T zH_AuSxM`6AFn#RbU@=~m_^*ddNZby#)jCaOi9LCstJ+kN1rWgFdPtOATP(2vFL8KD z-R4j>XsOzCV_hFP?oD^7l=2ve$LDbSM(|$XQ69@g&oq9UmmIV&*&$vCtYSZ1j_W|c3cl1IbOvj-54tn3Od$_^R z+}97aNSBA>$lk3Z_ z-^AU zzx;d|o=aE|XcbZ!$7tpm_=&|eQE74YJ%b$Ui`#~puX-w9@NF##u6}*5e;eXi@s@b5 zP;)9cI4beg)vxAPZ{8Iq#(!Z>qjT{)>j4RJC&~ZEkq14yJEMYSX1Ls&U$m?k`PB5R zU|v_yX9GP~sfR9-B}a>Cs0^HWSM(<_4H@tsdiQv`7CFQY^>yRSfQdD`SVW#ZN$a9*e$^y@BIp6RD`? zCnz1y*?^^EMaHAi?~t6Y50nM5Yfm=emP_O-cnlA3Il?ah-DTWrI<(Kv`TI>;3*w=cV zDsx!grT9sFndrr*9|K!5!oukQ>CBV^8sy_`d+D$b-@WOma3yOf zMkA8*?6)wCJlfQ<@z@3DA%U3|@B3oZq3<@(3`x?j0?Yml#!uL9OxSVhS!LUP1>aRR zph;2wfh(n{CoYrHO^AeT2KOc?G5um-l=iSCDry^Qa^@QzKvU%vfXJ>N$y&7oM1leK zt`%wA9$NL-U-S=)jk#c0p;PS}QHV_2Bgxm5+e01_b01o&&8+>-D_>E( z+hGLT-qYwv)t>htd_b6&tHKOtGFthk^nqf-nue40i%A2Ap_tp5Zk?sTGE2{OHA~GP#QcDy*-T;S09rm<8mLZ-u<*o2p0;%g`?Be8I9L4{xemQb>7=W-*itrp_hMU_8|>f@@3Rke9gbP3f{fCCCpRoc1#odh zgRGu>zKIpNNpW5jY&>lJO~|2lLhmoA?73`2bFq$}MkZ%LD>x_0eK*%bPe`T*+rpY* z{FF&Gx7hxXqhC!a;QENJgAr2mg5IY-XfA7&_$|l{Yle7x_u;7XD2jN6ce?cfEkhW? zk--Ef0D!&-jpp{j=H^KYED1!DnstEOw`jsEEMBm6j!MFO9qRZ6KLD#a1rfpv!=N zbN;_&pU8f4@6?9uQyD^vY(%BPrZa`hne*K6K1SGH-D)jeP2I{-uCMl_*HGPE7;F2$ zB_VXNk~OE9${uj#;`D89{>y36^@OdqQgUMOraq4GP!r^wPJc>LL_hDA{3LJNY%dOM zwRZZx)Du7MOpJ7c6cF7b@hG;)dSu^ys+;!7GIg%2sw z;}M$;3&BAvaWf`?I|v;iWHB7W3Dv2I2|MAx_n3b{?ZJDgTd@(?jLH!mKcjSGys#Ah z9yZ}j>rUQgDf1`*m$=@%g4110>ulwmyYKS>V5-$^9!xhSUZE@h6bt-)S5Z`~kt5P1Ye(i`$O4?2o;a(t2fOzSK zO0!U2I*u6bos{?r>^Ym*5+~uU;~y&E^hwIHBN&P?H(ot=W&Ljp^fQbZm)g+&%ZV&u z?mGQb^lh0%pwlqj5qr)M7q~Oy(91H~BBi~Gd@^~0DC;Tfe#3v@9$`txVmQ3H$OlT& zuv`z^93y`k)nzd8>9@e!e?jpdaSxz!HPzYh_378tzk^ zv?WZF-w+cV@RC+Z2_(E>B-oXr$(9QyjBuo3`);cy{3w0r#{0#&U<}r4x4f?%aD?nG zzuCO$S)*ytPF<(R;ySLrQ;t)N`6wVtc?Q{Uz-~Uyxhh!pXI`&rffxWAQ^P;&pk)Ehdn+2<>n{m5JwZJm3upA^6+^9W(eD7N zWl;Dr>IL#CvKRXudwQ4P%Le)w-{SVJrRM7w$f2IjWufi0B;S2`jl^2w=qBv!ap1_u z)e-i16@XtAnxvt>jeNB&gJi@i}4?Uau1g(D&<8DDO>f%M)1D3miu{gbNJel*` za?@a=PeSQai!mDynr`D42`!(BnWH3gH{2uCWMd$j{dW_FI+`D z0%?509i+hJkuA;s8sr~uSUx4nhu=F988jG4!;%jX1pph~amiKvGh8ls&s&B04-XEy@|WTNK(+afPhOfvp$cT2V6xcw zYV|K)zX~tZqq(3z5C~@?mz|tD+mv=wQxPCz$+NSe6t9UWQ#gz-{+@Pw=0oZ2>WHio z6IoyKfWUlQ_=qLl!%!=?IOrQJ=0>M}O!a{R?#wamfR?kX^+-=um#CjE=;{G1J`l#Mt`rYUafzqbU z(fv0Lw`BWLxbo3>d_VdyE{VdfP+UOnyeC=znn{QHqG?$KrX`|7WCBm4V*4lZwc*0H z=+zRl(~s)ZU;Q9EvX1xR54_!IZa+(njhkqwq;YoZUs85uebj)}S|G~LlsOQnsWo0>iJJ}OYxRx zwYUr(gP<&4AiU(maxu=uo?Tc1pWgEH<(J{V7RBK@W}3+_JAt0vn$6wb<3k(IGoqt% zWf_(g29ncnOLtqGRUuI#xq;B&ufDmQY&^NMcaM*iTDCzoG6l@BCg)`h8m(@b41DqA zTlIB@(WTERs3*1?ZhT3{t&w|-UhkbXp$*8@sE~-Tif!^ z0L+u4Q=URl3siBe=(wQslvIyc1MhmI{e7Fp4z$J&lV<&L`EvW^T$9rqSav1R+>vCe zB*9~5X71v?X{%t=y!HU_DEF`Rz#GlzFM2sw8X|)Z$J7?v@VB(Sx0@sFej=<79XOGg$092 zdTKL2RVS$0qEUjja`*U8e}~@u z#b`VZCgjuN=ZmdTy^q)zZ)r#|bm)l>vr=uGii zWGh-8WI88|ZBSD8w?YeB@ui)K-MqtEw+C4?crt>cS|<}f6RHg{E_*5Ug4!`MsOS0(|}DU&~@jEMm9XZ+poFxn8Z2 z27-_0eN$T$?&7+=QsAb@LbvtzG5s2Huwa)94Ep^JV}n1zpkL)PX83$Q-+JTbnZ%0i z7p{F&xy#bL>_v%CgA;s(adz3jG<ACc7Q= zT&vp{uD>33W9pjuNvWq@GitZn8*^2|BA7dK;j`bOK?#XDlD2W!^J@26J7F{VWi@jt;<3QXuI*)&fI^&IR03??D4YG><|6A)-ODm6Ncx6@Z z+Wb-tthDLvj@lNO7c=9Zrxyke*;e0wln4zKeR69qd(VA-jm72huqDw~`*iy0qyU1! z7&iZm4h1AYqXp{TI#szR_|-?b2IUOJc@T(iGdbk?e~`jdDe&Kof~m*? zNE{o1V06|op3(88_F3TC=uroHkVT-)i7z<1to+yHQIjg`#_sb^jY*E(ig}Z=&)IWq z#*DX>*>OHoD|&X4jJRth|+pfQr193 zd}M#Njxcb8_(P#f_UouOxGkAXlIpjcj#zEgDx+%|yt2GE81G_7TA~cj9?*cE&v!q> zSIWPtNoAwoX35`YiD&kYerF>{hLjs-`!LQLy$~Bf(NUZ`Nw)DH%J!C}Y##5SbG)c2 zoP}IDsw*Oic7+e!smWj8boH%B^hB7Mxfp1_MYe~&^)-kGco}19m82=?{SAcJH8_DJ zh;RN}!)W&8ONKm1ElWDvFDkzc|3Zd}oBv*va@tW7Ci4_A8a)g$jtIDx!B(JmL}VtY z+6$}yh7VV!zwGKrp;MO-ud+4I$X^IrtD496Xqs!8b#s-fc_sQ9p=j|L4un~8czt&I z3Xoy{)#e9fC8rn%t$LAle+>CAJFax5RRtUot^@T8R1vW2ekx$&^aU&Uh_E$ATy zZ%j#?ugLYZR~38UZxNKzDJF8SkG%Tj!b-iIJU1(Y1sdweS`#=}tM=|MfCB)GlY@4L zZx`G8#NxXWwZli?@_AeDSkKgWGW^N?AB9cNv_es3&V2JM=gm~hpT1U~;3?@MKTjIC zV^3s>6@53OH@+z6y#ULtcbG$AO5?GsIwkm4kw$$*3 z3eXHpzDR^rbREbh8{QN(uZYN?X7a3ny5CVaN6ok*akt5W&0)>7e&6onu!4Ob@Pk5$ zh&3X{IM&i8So?Duj_TVn_7Sd}^wS1q{0UvWzSr3l6$*_q)cpnV8i!Zt1#Pk4VV zXa78U-Gx?+sEyX&-{|#yt{MYgwv4pxDxJk$rg#nUM-@GvB; z?K=M`IL3}{7cFqkO&a6tSP=&!Uk~S~hJ^X_m85bGx2m=6>w2?H4n0kb@*c0fe@NKz z!*-raz<`$0YJV72@0T@Mb3OX!UvXcNhcXBZqwmxD+#O6}_g*KXAn`KVr|i41>d8fS zY&%95dWJS?TUl0E=m{Qm^&|YRL3%$Jc)kLySb1$OvA|dUrh(0f?L$lQ4Ev2q8k~pS zPHF`%cwYVRVeU$#aQ8$CgqO5=`^M}`;o*yTPJb5_k+-734=T2%pH@H+y2}Hh_bcYm zQgq7IDIogrd2$w}l$AvszAc!8O%>ilOyU~586Spi*iNXmA2GA_!zYBP`LaeOC6D$? z+V%NRPA4wU3&f;{!Yjt{ZMwnubBS*RHODuKNz*&}HopD5JxR;Aoq^HhC6d0uOUE}; z;SR%Lgf`(+D`Wl|HV0vwyf-2b^t^UOJ%6(vKVP4SoyeiPWzoM6+Vb_x1aRz-hT0^4QMLAuK7QZuAmS6#h1(!Q5GX; zWYHHam|G^e8zl+yEzw6~V<;+z=*6n~ypY^Duro`^kQ=R}wS%6lMKcb3|7aQ3lN9)6qmh&WVQ zjYX_ag)Q~CWc`bMuagxtjcEUJT#Z$v>FnX{!@a`%K02gYa>)OTM^6>gMc1X*pZ(GP z;XwsJNp2jGhuS(uEfM!a@DMo`-R#rOEn*{N8T&_~GHbkyLFV$cFY@N>DKc=unf|nV zE2@}>8`8q`eqjrz9#2Vru+P7Sy6m5#){Nhf16+Y$(1`K>l&xxVX0o7M6JY~Azy&WI z&RnSQ46NY>qIqlZE)`G2KVUtAJ2y_0i0esZ2I63}SplqCM$J+d-sB;1#GcLTefd(t z{4NUNydx-e#z3e;DTIRzbV2>lotP_r2o<|rRk2J)HP|B>r(kT^cGumy&5SUC%SqL; z!Myx%Gd9XD^XLTr{Ug-E)uY5cL>3i-aDPvoQ(vple98NGUFSzb@i-NoSCitG9Sh&w z{`bKDzzcD(5f7-wpd3d$_)0@gcA$uePNkd9{vu*-v{FlT3{#ZDyt(QX_e>j-%$e~3 zgmObHaBE77=#EMb0jU_<VN4k;?c^e%16c=ajJFa!Xwk(ebC!l~QO|EM-H-#z)AoGUYIql$x&MZfedG z7Tnh{^e$WeJ;6i95XkBxz|UXd@rO-bc0q)Qe z8jd-EGh*W6LPmklCjc(m?*1)$7XCM4@IF5^$GB*;=*W@^Dn14hvsbA|%@QAax^l=B z4}$#YCTmt>1Aqlm{9#re1#$C`W{nyRm#681t&*JOY|jzIfl21*IG$zj5s2H)=hPaA zq5AKFZLXsz_g?Pc^{V}9hz*n<3owq=*ljxKrmueW?vJ5j=4t!4yd8v|?}nGpp$?;! zgH)AYYrC2v#qTlEt%vcgA=P8xopewhIlIzmd%J(*^r&eZ^=szynu+tN81!c+=;Y2U;+uJOkc8L){pyIA>OK~Dz#FG}LD~5AU1_4MYhI_s z(UJFpY3TMX)=&bqH_HlWhdlLf?uuR)LIe(y-k5ZH_8^-)lXkY`P!0E!_WloSJPL@- zo{MxpqudVjdF3L!H*n<>Y_3NbVz9HY2=Kg2wUmQX8-|Ujz~sE~PK0>;A{=S(af?SC zUzeSVyhDpeJqV4NBFg!a&YZN3GSoVy6m#s(Im}hRVIqF?dEi3+hxxsvPvqD0X&YYE zzwzO!;aO|0jOzAfygAY~q(WP2dcp!5YytjbE4Gy$I=m;hesidgleg>GC2VEQwsnqj z%p0T069<1Q&M8E-gnX?9ShaidV#$@VW8W-W1r9DmMOfC(p@B{^5$PBh`DxZq$-Y;; ze>PluqRrl`cyJS!N{;+D6(-I#alSEn_}{UZh|wv9(n)bk*PXgJnB#+`jhBCFh_Ft! z!ywhG?t;XJAH(5){qpKlMjDW&gJJaM6mcPMvioQLyZRzdGD77s4CQS{|7m}ytsL6)T3mnPRrl$ zcuMZYBk`c+pMxr8_wz4}U0_G}=X!#N4|TCzR<qy9xa#YIsivNxWA2a#P%;j zWO-_*U2&DN<;14+(yxV%H;2VKY`nKLUN^skZ<4ndMFp1`*|Lt3QpNJ=K8a5yio`V( zV_Acc;_F?MR=*BV;+8kr77UO!PA{2^+_d*j>4HWC&E)^H^ygo)waL+Wz4Dx6HOkH% zvT6^a0+)T*qaU&p#IDD1Pz%~HVY;aK$Ag373k@iD<$l9guJc{BQadkj^fT}MM^Ug( zu9(V@JNd0e=Y60tRob64JQVzychcxn4Jhptv}^vG7HrHB1plY0@2f0hNItHX*0lK! zd!O&+p#}P@@`~}to~QeejpD{hw=6&|-a!4@ikR};B>e;8p>41=&rCY{uv~|uRd3UK zW>V@DA;O~mF?siQFPCg#>lG}j+% z~V<&;6ogUVxq@ey#6s6xR%XcNN~J-Bst;z#End-yHwh}8VII%ja(;H1?W zr#BgHQ_Mv-&hY~$O;lY}?3l3Nqr)#lp2;E9(XM~e*-)){B(VMuVRg-{F)M5!!A%sS&fmMm1KU z=&&hsF+-eU5|#LhDoV1fatOG^c$7NCBu~FE{3yCs=yURg-a5eetj=1KC`&wd%^I+} zB5OfW))+NO>mu6hF2u`5`Pf$2Gtu~6&HUgFz~e;b*=V-?$;l9iG`x122lyCPMdlAL zi{hQS5P%b0>Kc_#>HKz+Xi_ft_D;gjo(s~o)q;Fl<;-OZd+py%xh*W_a;KTaG9*^S zuEpFOYCNek``5=g`?4w`ZPOD!k~GxY^bl{jTryJRqKndQ-lb?7ofHj4D*O_O0j7*- zILD>iT$IsyU4DdREl7K8nk&rP&f|ZmgZ2B5G;KzhEURl=Rv1TiI7y8@iqwnc=1|&L zQj%ufeIoNYjWp_@FNUT*R%<_PPI`BU0zT!UhG-YL>%LgLSYf*gXs@M;q876QG(1EdwV`>=}H4Mlj4>Jm}2a6e(#Weq{qOpfZVFK4Q`legocMLlPR zb%`=W-E(`rjT01Ol5AB9YiKMTxp^I!>EXwgB7LZj|u znW2b}$1k*yctEMkD8fmuFcW_!&VzikAj#wN%bsirA(-tdM9cpjN{YlQ5P?dDsZ_i9 zQGOvXmM2aYHPU$V19?TT`DC^vE!)zrza` z5JN^Sd*pH0gd@qxz7e@fG%7?_Z{}yMN8ZA<;CdefCs?(%426K56Y5Ra^%>t#Q}|=O z_4jm`J4^8^DjDjnGk4hpyQzjg&48S`Og&=`Ce0>P_S!mv<0yt4;s`el9UG6j?JfOL zXd%j6v8Tv{KE|q|RU*2X#~^VX z|6YXF7gq%TazqvCMt!e(Om0hIX{m#y9}>Qa;KB366JS9$K1LGQ9R;ZVEuqLekKeR( z1rw?Et5mppTSh`{j>h6l<$L(<_pfa;>vS0^*oeY<{bT06y1g0PMnyO1n;|Z5$n*LN zB0&GKkLD8Lvk*`nmAkU&P^N{MlyWWXV*x!`l(yuQz0uQ_2B2AiM8@Ab+uOFsE&)?U|ZeP_j ztvCi*=AEX0LXgo{fTU6vQKW`4azrs+&<6%f_FWt=F(pdzwA<;z3yLOY=QoT^8|s(l zONQ2NEBu0=h`jl0L_;PN;Fn9VpA=N33Rbi~Yopig3tLA+&#Ab}4G$FjRPxc1DPm-$ zlOh2^2#qpUTM)?xr_KJGbyYvcuhTMKEOVc3V%{7H)RuS`=kdniR(R9`w1#O;ZL0HK z&lm$InlfwA-3wwirV2GfLs7TtaJLx)`s!`2McRjLbK+V!&ytIJ&s&N5ZHiamH;DnM zoFy>_N<;iDVl$23)$iVknmZw zw z_dUrxx8PXbp)ZuQUOyXqFRyv7h_c(2Zi_?VwF@&He`AX8=6}6xCv(o-ujMgRe7ke0 zt>^xqM^WcKt_R#IZg36ax+Ah{dTdF1A1)yI4Mgae`VSTomBZ*OW!D=43+|QZB{4lV z+-H3Oc{fXfA@UnZj9ddx16?ZM-2Ap!9V!)oJ`lHMxmbm1p(?BXbn+;Hhx1m_#-*m9 z;iKO@d}?|>ORV7R#b)U0jZSE1teMvB54+v$GbdVA=7(9pBJN&D2ITc8%yZ#95=Vc2 zO5k}J$&nZCjw9oJf)Akf@Brm5_pj*|PmfvLznCiw^p{Efq2mE%06hW`+swS#H=sU! z^6AP^-Fv+Lvg>~q?lGi*EzWZ0u0@i`^3F0_->WTKoI7^?q_as=p9BwyqO^ z9$p^1Ql`XX+(v9RjaRDc#Chh+>>L_O=9MlMvt6tlHg9{Hj*#V`w^+8hFY8%Vu(qx_ zUr=sF>_+23C{u$ixgP|LU)GeINB=`pK8pJ=d6U&tX!yT(dH*vSxz7XnxHq1grJHNn zl=JD+*X+yYESrU?$D*WT0DcdLp1tK^<+Y!c-TLgOPM~U^`^_A|^^O1cTrql?3Xjqv z!`1$s4&6{7c!NQv1FDo~)*YuXbz$NEcjN_j+Yh!<(Z5HY(z&3-Bww~EwawO_dh5+U zBd1qP>v-rk*2eL4YrR0xE@>>sNeX$WW5NjT#n$KIYt+KKQmMh(yn9!U6O&vK>0F6h zC;AwN6#WEIbxjg@*(waN<*$)Bd3!fORY#W)4Yfj;{rSZ`4oPz{{#Y17>;5{6i2F&i zoub_OSf$ibuz@!s~31b#3+m%Pb^egVeHyVuW-^tRGzfs1yix6m%T&NxUEMv6hN^ zXB+tZeuF*AFLrkF7mG~8??-(~<9lYHA|SbAH|hOzGWKDm*a)bls^ni?vnD(xlq%|~ z|8QXnNj&MX74{(MP<08LIx`1+<4rpb+vjHF0x;}ebTu!O#02A&p5Dh%?9rNU96bBJ zL5(^LAx`|_Z=dUNW@~55*Wdc%$4fll649WAgRg2C@~*Q|fl}Dxby}O(b@+|lii~F+ z%5B)X;bq(MBGTx1rdjHuh}N?c1o(V2Z^C4oSG$|`fSQlu#{0&gbRz@9qdM1UX*1Py zu`p+zxSlM#mjdqh?sCN9v!z8l-0ubFwuCK}Qy3f}sxXgB>qozH86@%tCTuA3dYhk# z2$}jvmZ+ZU0ppy;hHjujN+9J;8Nsdrje%mYeuN_n`mK}3r!D*cF8b~ZTr*RJ{%#W3 z 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�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 z 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%0DnM$ztK8=gUB(5JF4~j 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

)r79ZL*oXEA4S1S~=XH^n3Zsww{94!FuJ* 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%0AqIcXS9BTDTy-k)o1mP%+Hjf9&6*6;`KP9 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
c2_TOmE9iX%uLaSa7?r8GZvFe$C+upFGHM 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 z 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
sG^Z!o!Z#CL~^>4I)snPyk z9qpgv`$SqU&Ipj-*2ljd_VL*B;V-Xy$kOlhs4salS0%H**qcHhy)i5eHr41?=^eK1 z{OhS7r8M`}<8%>s`)zL@7xzkQMSH)#o9+(`x<63I715us5#h@&-M(h3(?ijM>$l%pv;6 zcZ>c7+J(IYJjaaZ7Hl}DU*f*HOTYibhI9I*KX2T3ZAkfc3vy!D@fv27BiiAfDCgTr z^xts7z6*QD;;@Q-t=`THUqxQ(?R<-&r)(Lb@2!h>o!G9|dFaCw?P}wio5rT<;}l@t znB!Y5^2g|V2+*4lzY1(Cv5)ZPTpdTbKg&MMeSv)heJ{e0-NrTS+nsNJ0sHyzvxm=p zu%A8l@Zozu6MMX*$K8+p#$~m9yMeolJoCt>)RW{x{I;*f_a(%Cb9Q()G0{h^s-4-`JzkEM!@Nqz=(B<-}eB>6j7Jf8enlM=rrd zx7p2n#D!%nTlh+w7=fw3?$1v&mY$94@azAGu9sM~q=g3l5&8>!_w)6)q>q;5roQgk zmz5%7aT@Z4{k7-P(v+u|jzIyNa+RK{mOT{?`m6cEyzR*YL zH!x8iGR9@a;b_+Ipnf*V(w|Nh;}S!BP1hFEJ#B&BUW^s6C&Hu^V!xz}<{~gJSKZF+ z;E!5*&T~s2R@?ru6?~`u#2jTr>+pVtp9t}mmv|Wa1ijim;V^8)x|C)-s7W0 zEW7AOL?)yEo%{|=IkYlCk1?w5p=EdnjIpDk!{q5a7l8HVb~04$!gXudtq9?*dH@ zZ^8LMCGV!jrv#ppnM2?bnQd~P;cc0lbbRY@vhRU`P3;rU4yoYXvaU+`wR%kdF!)vk z`-GW37x2aC>K_JP`ha-pK5>5CD)v2N*V- zhxj&6?+5%V(n-9?YksR@6}ioalPsAY$s&kvy{~b1smhgy$ad})r*boXsCD8%r<%>( zIdmQNOE}5T!uxnO`hBg4zlvow2TOI_s|2nz@5+^c@wjA=PrM^g#~9#mSltbmap9le z&CKcCjo#m#yJylhFZD;XJ3_}0DLiROFQaxJr}wqcd&_Q7tRJ0>XEn&XMehW@1?s5z zg1Z~GSd@oK>Ag1Ny{iT|)zua^-uVn&|9BX1oE3Y?#fp6+$vWV7ApaBmKtibwv}eW5 zB&)h7Fg>R_)i;vrAzkUs0X(bWA&Y3Ycy}_rJH_HQ^K4@r5NiT_yE4*2#2yCKhxV5B zNMIig@bPk{*e|1c-|DW|iw0QIaNc(O^$ID1WI)Y(BA2RSqxS$awwC66uYs1dUev$s zR94Vrx>A5|<)<=(>gYa{u~=Xd(EA^u z&&5pNe>iHKi%cMWX$9HA4za)SK&tR%DWJ6?PS2fpF4r%7OuBfJZn3_ z{dJk*Ir!2B{M?+L;Nz_)hWL>;Clk~<_NuHB7R+8JE)W_y|e{g^*vC9q#D zqmcJ2@nf>n-l|aS@FnoDJgI{UDh$xm0pCJ!p1Hw;e<35mC+T|~5 ziO5M>MECbZvUG3IeUznjJDnvlcQ}<%Z(;7sm-+Q}EY{bHW?G+DykcYJ3cW|z679)? zr{X$z3YaA#@5j~u7JKpHjLtaEZKvlqo}%ZiM*kB1$#~~S=<^-Mwd-g-TKF%q9+i@g zfISq?fNhc|!6(jQ3I`CsLZ=`*wxB|lw#a99%X?YzbWV}#?;TChY9(z z>^mV}y6S2(m5z8x=xWH}3E2am^8QB53Vg(#R`R6kES45dyjq=ZNek?A+>pl$kZavn z!NWpccJ?uJmjIvM!v7=vWfkzKNhU&`tt7dIJj;-QD`@^9$0p>BNqY~?VeD0T-?q3X z(b@o?2%P^0WKe#8r#el`oTU3Va3#s&Xffutmw0iCr9iy@O}smDEAzadu#1N=c9h-^ z`(P5yk^iM}e}O*PR^7Mj=<0Yj#n4#=ue%R(f1_KUBOzL1fIn%y{8j#Zfq2hq(RuF- z@!ocS67twTOl`W&(sBMP@J=s&OUMARFMgYjNdsN?&Kp@;#sYs*;XHrFIp)?$t6pHdQKlfa=?>C10NG|MfZYfHn?1eR)02;H&+~SRckrW$BMl zJ9`kVWTKHN10FJH1bH$Vv^i1F{kPsHXal@s=)1EqpPr<;_Zjo1Ptoh)K0h@Z=hHPz&w*mXMpVBU_zJjmZK=0Sjmh^OFB z1YQDfy=JVn@Ta>3dnXml-S8RfytZ9)sZ)KIxv@5Yj}Wh1W?3TE$_UcG3KLkG%c}bW z1?Isk?04rK4x{y=8?7_$i<#q6T3gElFH2nW58nqLv&M_iCs3=_6}M4{E68Z5Nk|@%WbhZy~!LJk*x- zak9WiB|85}_>a`_I|aUnZtFpYK(;`xcsCk9ES=!k!1d z-Xx;?!({Je)7&Nc%Gf7vo3+*DA$`m2;yR-Q#9dBIUC(z4^{q*4snDh26 zaS6h17iVy(}oP_OExZWm-j|9dw|b~J~)2`uX!Ghgg)kOxR>}XE=W#T`#9B` zE$(OO+SWuL-!jag&5mPY|E6tOm1_&}!e=z5Tgfi}bP(|j@xfmWKKM>ewEmU&;OLWz zRXjJ=cy1CsNBo1b)oFTJb-l%1J)#zPWRB_^YDB)pEv%aP##kKj7gsXmZmS^~7*1_7 z_1D4`7WWqD=2+8VUku=B-lZ%jqMFu^GO{(|@fVcE2*@1r{`%=|qx#;JcQO;TPU+u@;M``YSOR`+l=l)u+FUjX>qH8^G z({-?#``RZJ(YjK5u#K-AIhbw7Uj3C!sYM=YYC|p6UrYMmmh4EjWke*aW%X?PUQ2dQ zvWsi_w@)gBuirhb+%vob`>|7fb>*G=cdYIA_wOGhJ79+f_it-&=VbJck>OQ?)w^F-)s~z!1JN`iJ_?qeM7-F>JR-+xH@4OMI zN|+1ZKB(t+$5~bT_EAo4U0d?EQ9dr}Rrc!jZvEJ$oMuWh)~;|`ulAnJ_?Fr!%ADAv z_rY8j7k}*1Hk_q*DE6afnbNvInWIBG*2T7|RJIspRY|X}qa0|m#a++Z?w~T0&L*4v zHv3#la(WBRA2A=?4SG8-r?R)64cL1vBIhURONBJ=cWcR=u2pD>f(B0*`NWKSTDgsB zv)Yp&pRSyZ{^@OMtJ>(ooG~#LFlV~Ip!;h=cj-O=c%^4tv(X;XZN)Ri8(qj_9ab>c z1$`GfZLq!zJr_E#srNn$-4*&)ZWV_vbjDb-V6%Cm4V`QHFS^dPhIB5{wH_v23%L&_ zkPg|_>tmre0^bUG5a^x+dx@>HC>K$CZlllD80Vw6I+cGj1^Gd4P9*+6!juWdxeNHD zt?nb2XYp-zf$Oqwlzs5-QFiacEDf=46Ch(6PKa`dd;1H$<9^7YWgoc;=^3&Ac?-)K zldmxNh-@4d$(}7lo{Li)Wj7mpR&9@cHE4qvGg0Qy_q=4iKT%8aCkMw1B1SMcW)Sg$MaZ2P zS0$OYmN>iEF-qVoz}{M5#1euRTW>v;+A}(rN2n~i(5A|-UcqElQs^Cu+>>mZ2$FY2 zLsYpZ**lBkm|Uc&a&zUVUyT9miuW`^;Ab5%@CGa8Fn6x-3l;cVicjQmK>lyo?2X&5 za2+@D1T~KmHU&5Ry_OHyC1N*$C7g3Ym9?tFE|J@LFxdqUR>&c`ub_^zG@!GtZR*z{ zz>ljZy>*kvMKrM&;;i7Ak9gS{8`&g5X9XiI4wJs1DQFD(g3clbgyD1l;g!tp+pp)& z>8a8@$xX1Xe2t}fZW+zgSC}JQ&E?+dEDgEFp|^Q!ShmpDo+3T2z}R2>h`wnqHXHp; zGGw>lLy`;Ng)L+cZy|fQZTn{~^=7908vV_4tLA~D0_RpDhto_g6VKrpl!sr_cklQR zb85^jJvJ8hB;KWEHjjlrd&$dMQm6i1Nm|+l()Dblf3DHS2|aW)U3*hY?lk^Hzu-95 zr;Yu|r-UDg&ZC7i1{>hJd4$^eiO!?o&5^{XI2&j!IguJRR<{p9_r`w@bis$P`Fh0; ze2^xt`w-SdPGodVZn}v655sy}O}aKy#sHVKw<o(>YYlT<_b?xE`_w<*pys=0dJl%zZPLleV?qrKT{);Ri{cQs2*zo(7yM5B%+Ob)UaQ zH?VB;9c}C07Vj{h_pdvZ0$)U7)0{oyfNHiJO6%Jcl|H~Ho2z4#<&^69f79YrxqaVV&gNZtg7z)%<5ZGZM7nItz$ag`P^Mjb01!;Rb6<;&m{(Z#;pBq`ur~1l;7!W=K0cbqDT0$O6ksZ zQEUqJdkXa%bNih4ccIzus$<-p9kd#H{(V|g&uZ`WxKpds<$<=g-4(XKz}0ns+N2lg z2YMEfOhhb$kQ@1xV&Bxn-}6viy&B5Jnajh}o=2uBGWIt180*oT{$w-sw+Y)4eG;u+59La9&iuRXhclJFPF!kLuqAP~ekb`MQ#-oDulZ74M@Ie*w9knuYjA#5od;AEtHmW8)0s0irYZ z&=lkahRsB_)BVGu*!JED!bhVg1D?uB{!}l8dzyPQ&%^O-FVB~^|1e6f&8v`!esa-x z#h&wlVy}*1>G6}|nPhbJw$8i1X{nSf716{j}O^< z)W+o9M8mo^m%5)h(6-66cFmwZJWcKMj#p$deC7UG%x&VD3S5Q?_Fv^0Ia~g4YRLy$ zq66bQ_A4IN?;lQq$?$J2ImfVhab|_wS=k@>_{0VuZ$JBXYDs~XnA5=QJ()k+j5{fs zuH#()HB+&p4_*7%O<>=jb(P$vC4x@vRYfU+mu@9{;9XVN^IO6d4h%4?BN$`k(*+(F z+7FyC$P8eH0T;}~3dXsRhk^6ce)gr5*!-!2FTfM%+YIX0C%{M`dR=7r7Hl#6 z8t!kgvD?7|yIWmqIurP{{|VleDVxq7nwVO$$rxMrZXTvQuaE6IEs(#c{nkQ#43=rh zh)+lSxfzd+_;bXhn-~#@RX1@W5SPAz=4h6IM~^)dl6f+G5dT2*nMohSbGd15=Fr@n zL348k&COb(`6VMnf-!$f57n*}t+h3fQf_Wl21(f*YGgkoKEzQpW0d8AZ}Q+|KBg_ zV^Z8D9>Ty6xKy0q91(cSCT0M1XN(i%Uhr52k0r*;v#2+_=mVD3pXlNFsXzN`dpZBB zrJkjQCa{bCZDS*b`Z&&cOspHt*e|;gdu9jY+51MW8{xlwy^sGgg{6(Ac4WtrY>3nI zqQM8Oy>5kAHzvoaQgxmxdB4yyYAQ+A#wvF2r&`7ml4q}-?$5qMu6gW38E4}d%aNyT z%uakFbv)hJ*xGduWd3GqJU>7_J2z*3vBwl@P$K21Ccf7=<4 z#k1D$Z7ep9Y_UsjfmeK=Hvahv9v3xZumcCFC==G>Sr21gWeODra|77m_~DG>O#fdt5VA--OU_-r+U!_$Q{V!*CG^-Hh8HG8>#;PrSg!| zR~h4Qn(X6ayJ!sV_}N7*8atKlPoei6hn%PPd^f1`d&(~Kp7-fJ!~>d@-qW3pHT`!% zNAKkS4o?Vlz}gf{hxW{6sU>l=E|oHSM9{ia7@=jrhazn3)930dq%Ucceo8j=(-{J{ zR$ptLX6LRqSc`(!n<>PnUy&@sI@3(@tSmuaOP(fKHicx_WRhh#w{O_OlqDBhM~wNj zsFdW|zx1`_$u4p&%UnxVc{;5nVMO=)7xxG5rS!@5>N#r(Wc;hgjP)e{N319A|9U-{ zKfYr<@wM`>6S;XJ)-f$MC(V0 z=96e#fMr=u^*xE$Vbc3bqkxag>>Fu*ZKV0t3+p+}uNsnZABXy^)mUFFU-QdoEPByc zgwt5uO=Y&w{goEz?5c$P0b3rAXa7TG#^64cLoU#sHkDUTQ|w!8K3;eaOM~yj44Q{i zTC|L_FS=9J4|H7l{|W<-2|G&Q$wtsPgHOlMcR01JAMpeJ|C4ygcL{RK0dOsOOO=+lKiV9yD?v-lrE@7zngGLqKE`?{2akIP8npZ1CWNKuCnPgYakmTMEm z`Q)(KDQ8z@q?Sm=7*G3=hlQ(7#8rrVAH-|bSVM_NXwFGwpGf~}aabq&I&{3ZXg-a+ zCW?LkzfsJ74SeBg?t}Nb{oqn_NS`G>MgM1zE}VlL)_;p?vp%5XMf|dg z^^0A$Ie^uI*aHlIg(>0GF5t2Bj8_G(VefHrnj+&Icx8W< zR`USM@zek(ajJ;5>w|NhD_M5;A*zTI!92W}u0N7SHZFa)zc|6Uz*w6DIW;D9#*#4c zBanZr`v~Km?`h-UV<+e^{1-t7_+FK-?-DDz!=S^EMx72HJ)*~$s*k%aNRP~l06oyA zGNK1`q|!2y85mol%PJb%2BOPK_;(XMY?7+`GLNM3eZe?0CK^m3+RVL^rP-+eb4Sy6 zKfV2PWtP^d&o7+6&&Mq^_9qhTIcb6iUx<|SQcxdu%WXm&PRx9>vNgm+L1$iu| zjHPSc$;MsC=D zy;AHumaUHx``L40+Z|M;!jmeM%atODX46in^0d{eJeB3jQ+=vD*_JC$-hsThxunCX z^7K+w7PtkcM%j^9dNTIEMkL5NLlThFNbJW69pmmlInP^XF4Y;d&t}$XzW;o6qfYQb zbzhc#p?XCQ4=U4MH_{pKV|(Sd{n#+x#gI|N$3ru7r6Fr`#W;i$-KWzyOe4Ba1^tQU zVr+>1$PXxZF7kUlW_w;2exv?gA@+d|==^rWL?_}XwZ-kOupg%h{46tPhnd3zd&Y&v z{@$5Yz^^&QfiEa>Q;`03mxV=7r8x_qEAN_kHkan%c1wZPJR|LOttG9PzheB4&+D7(Fwy8dvUu)+3zMkzl&%L8S6Fo6yJ+yh19;O z*jt^e%Ew2tv^S}ZM;kO=IKao@ui@$I<8N35b{ltOBd+@-pRDL-A&qPQkV)_tjX8%;|?e#MLA041g4bW_-KLdMv;0Kc)a~1)ItbydsJV6ibl)uw` zL9fy;dHbMwDe%<~i=8Uu33xSp084LTq+jn?$GflT%|b#I{?>pfRuHHA)+4`5N4$@o z&qc`NL5&>iQgB`u@CfoG!M`~C0ZY0^QKe?m$wd4&)`y`aUrTlQ>K*;-<0SBQ2jVX)r)sDAx^Jc??2*N_hq^-PjxeS>f=mCe!QpL zK905ttYz#mQ5(Zzqgmsj>4Ec3PbAF;;@#uuLqa|C4z-DQR@2%caM^}w$#@UiBXFjl zuy(X>8ntht)s^E`CHS7AJf6k=J;qPu+}YqK`)6{e_0mK78}4}`NN%4=v=$7B>Kq@z z&hjTpH_1;co8%dBo8(!g$Sb=^{=09J{G_@`e#*T`euiz5XEs#H&-$vw+2%r;=Q{Sk zDq^)FE>-O7sXePmH!LIGFU!qgljHJ9M^Po{^0hSPM^?d~=^LS2tR~$MvcMDBhlx48 zKAPPHzqE?)_~aq^au%)UHAkY@ELJ5W*3V65+%$KUEY7TNjA3U-(j4s@s^z7u{xHQ)H8T3*4Y5RaBwNM9v>4Q~i> zPxh&H(U!=g+;PaqH|~vR-eIb}Y~)}znbyr3dM1nb`yVRNk&(!4CAoS0y5=*yIdtC@XA-z|amu722(J}oX^ zD!#*FuZh{rdWI={2g$MHRA0|Ok^XeMCA}~+!TxGh1utA@V|U)la>h`-cjo)}F1J}0G`x|~D9WU3%r&4`obZv@JUs;8&uc1!lbO5d+VnYf^wiQlF zu;ZNQ7n1A9e>hpO+G97^SotmfMDP!6A2W9VVoAYA;Gr+;HaV+T!OyIYXVEj0-Br?* zQXMOO)4V9=ecMX9;U5Ii znWJ`>$cru&^|0n-kxVVJ)U#U4U}2L2FLuAhC(d3zLcG>Vy7mM&-7l?_ ziyr1V&_ka>PIuBp_t5yfO7$RK5ZKw1NjC+41AcHF@(@`(zqp$U7~wU0fH>w3l=6PVlps2Zaw4 zFB30nH@4GSl*_L~Trt}r@&ls(jf2vi=)aoH9EWL)j{F1nw+q^c@k(~;_itm4uLl4&KtAKgHqG2U)ER zYD*4_f5;VVPd?$(F&N=@QAhLpH2*~4;1^mdBw&d_2gCke4luB3+@Z@(QJGvy_7E^_ zA!F#CR4|}I+B3gEV7)>Q@y2x6il&_ywt9lAtN%qX)~u;he$EL*BlG*Nqg1E7qo$7Nc-Z? zogSvz7ZF|1ALNFMzlP=9Xy~V-1%9*N)%-|;o#wviQ@qiq2wFG8X^kzES+?m97VHZK zo!`vy*?wr}y|6d;oXvCoX4!Q+?=}5SyT;#}m@Go?A$u6@=&*L^Ep+<6<{5P`E=jF#`&$zo{!~9;4#>lz^bSvE$nFKtO}1I&zN8Pt zUu_X%c?oheX<7`E^!@LD0z30*<}i8new^W%{Q5J?`Sw|6KXQ?e1GAw$X|EF)j#;E1 zfDaE3Bt4#iTw z5B0>8p5oHVxpE^@E@{)x8<9J$^(vNjg@HS#HJ)`1w(4z!pQL!MUYjJ&?#j!Bi~_B3 z#_c_bxltt%Jtd;2M0A&kregn^Xe!YdNHj(m7l~+3FS17(luUwWAy9lf8)k$V;+;XI(JlyvP?!14KkuR%^3velaB>exWQu!B4;v#IiO>`M+&WiK#~=$e=K z%1eCZ^{H~3kwfqR_NxqBoaq?ni8W63-4KOzGrPcPqA~K`$a6f)NMFBPvA#;{2d77q7RR>_l73NHp`StBx>;b1t4+)?jGimBR&d}gbOVO+&ylPttq=1Yi)O&;^R6kE z3TTZyd@)PU;nY8iYH#XgN&7O4?CfZjKi1pF%OZWex>n0*$g7YWUZ>Baxw228;@ zoE$5yuetGp|C;IDg%(vlOl{c=T}Ro;ab5u|^n&iNXYY2ZHs+|_t>@;WZyEBl+K`{1 zMbjk~L7(Q!g6K1V<|FmZ+n41WrSi@HBKkxyojxc1lP)Lw5pr^$>#wQ0{@aKgP9m=h z@bGI!TL0^OAx+emo}`Nvy{2UZ^aZ6w&>2|AkI}l(*plp|ZwdZ2C68-Kct+?AamU3z z3i5Rn&>VWq(7zgc-Q~pDoY>_H?BC?vOSbb2e=^1$ z^j_Ro%a~0x5p(?Pr(%pty3=!X?NTG39PHP}^A)z}o<8ENx9~_bE8WN(GrIZ2c;+0^ zG6b!zxjnUp=nlTZ{)@=xIEZCyRsQ6YL}T1TzOK_-Y~o(?|N5umdz>K1Acj;xSIOJ99Mrz_Mzn?p?rVdDzC*(HwtgFw1$r-o}!tz7G+T zX4JKt>J6^1WE7yRSy;neo6HnxlE za{Q4dz;10E;ymvq+P=Syc=-cu>P{;As>mm=b?Bv~M>yp7bmF0G#6>)JkCVP7`Y)A8 zS`zvr`lcS{fii3F=qMASB}Kp%Yxhrt?!ATd666VAVbRa(z`yO*^-jUJ;aZaD&xW?- z%XjGCVavz4#Q7=qq9x^>z51pE_7rmn}n>aqhOz6tx9n@V*ZeUlI|5sdfo!#%&@WBNhflF{>6wH5_nfptuC=A zdK*)O?3@3I6aHv{z15}q**>+C^g^2VH20~!63*ADFB0`dde+@B=V1#WKG?*aZ$EXw z8Njg}&9XOHeRBCSEwLa`m5!bM#tFS@g;BO`>kQGB5>-naZQ^mw|Hd z!0KtGHWnfV;2AxaD&iztm+ck%$MCx!(~H^fvNF4^EuUlG^X_iUe&@x^{tjdIH6hHt zBbBA?iezb?BQauM6!~q+Huq-NecYRsh5D>z8>85Dw??t`w;)!;D3hcmBZfraCzNVQ z0uw5aiM}C5y)SS$%(BoGcBGwS-<&UhBJw68XQG)$5jhl*KN0y4zzcoddBSEqcB;X- z;PB-PIh+?7xt>n{tAd|?Cz>6utmON5ZxGnIYKTSYJFy=deTei`Rpr3PYJ4KeDb7}W zdAk0(yT$2U{;%j>ZcFq^;F|;EDdq)hOGU0VlI8MR`dxPWMyu^Ml5H2UKeRlUE1#@P zkdJ?sAUE$ykWYM-AUBPwlp(iAR^{>a%T)P;`KtU;zACHFF(r10B|5e$*BXKO$n-sp zOQ|21l&TzfZ{obqSkH^PDb{tQ7cA*kFJ$ujv|fj~^>+G(GUfE~{;Xt;DwkMtWi2z0 zuOpdxIIn^?_G)p~P@jJJCQoi1l_;O7%$L80zv{n%saYXnQvcIjkDcd78-JSYfDeWJ zxs3x;{t2=po&=^mYy@D+lU$mq04t|bhHbhJSdS!AVZ-M?{AI$68C=6Q4iG$`5^Lr-Oh55 zBU_w9H|XbN;!O5-i@=_zc1qMviP|YqA0%q4L~WI*tQp2<^<&dvG8wFc6$4mCQfNzM!T2%TU^F7}tD93@w7JnC>R zr{7t#Sa#33y&3xNLGGdTk*vrKoCKW?*jJe&;!X8+qH*0(XP-~X`RU$Kx?i2P&Ur7M>*HU=??QeY8vF63WG|}33uHGw zNp|B?#23#HKg=Xvc~*r_ccqA>MNBR7PgRE~)+xjvq=(2@v(!&5j&R}&&&fR^7pV7{ z3Y{;2F&M!ez%j#o4^wk_lKLN661?*oX*RD<=JzmqIJ?-Vzh0T`i2x>#w!7q9E0vlUJ?daJ+ z;{=Qw8l#9lz;ufdaR&X7=a0rI%)oeVjQUo{nbP^p@tl#DHLymu{NNHfwqItBnbcml zTP0bRE9N5nW7}s{>F0{yF$KCEcw4M}-Kqs|FA=lA+De%g!m~Rujv61FSW8?SE%V>D? zraw7AqpkG+s6Y8KT6>$gY8QJt`P$SG29CSHaf)hoMUV}K`-qc8ned~u5*hd?c(0g~ zR8Qj|y&qVE3g$=ZaZ@y|xQ{#$jaK9SRhqz368>p858LNY_TY?r_Ho_sCW0xV+-ZMu zr?c)fV_x{SinDH%33J@$MC>{8rJ}wSVm|KHZGmb2L{FS571~tfv&;roZs7oyEyii_ zG-uNw(*L5wy&Q3`za>YE-F5Fen@Ioune0T!?rOv&B3I zV}97kK5W@+WAtBMm0KYp286E5D<3A>(YxTog7HP0T7tR$> z7H116>mfQH7I+08gYTl3(^^!Z4n{5sYr#yW&yDGyanCQt+?d-jHwvHZm>Z`23N`$B z8%a+q$!bqL>l&F_lHQ(p7?|(2dLH)feNOG}_TD=d4g%k-Cig7oGm5od%PhtQkhcSyQLA+3Asu%BCb zLgb6Yo-Fn^u@2$P_94Ts9lp=djlXoAajJ7IN;v5P;j>s;cnE#p#L{A^{m^+$3~TS- zEW$6D>LneH)>zVUsa}cd4EP|!{|zz;x-|AS5HEz>y(6lGO)BRhh(F7SKL-;J zy+gcNOgvgd{5X&Ju;o+Y&!zhLDfqPp{vNqRcK~@nhQE53hj@1~*_(yLpQsNu@NBAU zHq{ltXN8|b{@YF=3ol;d%mPm&Pj*6dRIIso;92vz_UH6xfKiP0!ryu_+Pg&M z{fIt=&DzvH)aKIFvGW5=z=#>n_VA@^|Hj^`GVR0N$pYpOLIWzUsCMn<$UpImUb9?bnzsokacTU zI>ng~>VC3Ahk`BESarx5i*?~v<360ucG4jT?UW5r$-((SZ`wuMh@%u9>`Tb7-b0j*jKd{_5^H4~a3G?NOnB~S{2b`+P9FF`7zMOOk zjGyOb8ox+={IG|yg6x$Qv|h|6-APTQXBFbTv-_Pms|&&2I=!pl0haRz`ZnX~YOIPK z_ujwH#x{*&Ih(1km(la1>9c}9Vz2Giole9xU@S1+`^&>pFeW0tbekaq7Plpjp07U> zLf`F+cLL)-N#roco-WC=$@JKp9&3tLt_X_TBIL?^IAK}OsF4`5jOSCKa8N36zI0SCL`vUZxaoE-H;P0TXJBYqZ zcj)xJ`*3pbevNs)d!hW6+i47HNru2Tv(6ZcZ^u_lHN#mN_G&JaC-R7qs~LMY+J>(L z9e@YpB|REC#t{R1;nkt4v^YVPUJGURC3Ev6t@takuZz64h~;9ejF3;h&v0rrX+l|Lvz@HGbKKU7c&Z6hl?w;9|uRiD6HH{s7b$8Kk z@>RfJ&E18+9_un68!o^vcYNb&_~y6yrPF*nXv{ZlPe=Xqe#8WT4x%rscXh(|Kz+Z^ z_1NTHy#4Ba&d_B>T+*fVJJC2F>eWv_7e1u_4?fpzKXvK7UGqVLCl{IYp0>MFKGv?h zs;zBusXvk(Y2<;B4pj?XS*QCh;WwzQI_7Gl|4XX23!Udxx(46!{x+4XS1|Wz!(MB@ z`cmC4bub6wj_#+vw12B*Kp)$`*y9B6g#1q4L7pU>p<@5ri#U7Y<0aDvi?dYJwIoyH z?WZqsHe9Bc>vX;T5~p@tOJXl-6R$i}Ex`|4^kZv-EACLW3?2}CLf>M1g88G$-GDLYKfk=rHTb9e%j93nXQj($KVJZ!8+yMOtGTtjnZC;+ zYxs)&QEc4<^hu8q`O^9rm@F5{qh!u2?al9Xto|`Zdn?++oD_Ip`PKX?Gk;piQGstJ z^y;dAIDhTkeL&~uI_BJL--Xt{uU!q5zk{B>V0yM1>)+Ssr)Pz^{(W)b^>6OBp!M%q zhdhcr(;<(ly2vBnXQV%T+aZt2U-wF?-8WhS1fKQfPIV9P2DeGTu6@JU z+W~K&jCT4mXE@nBp1CXyxCVPBj!Xg8fa)Pz>Pa0Vy)cG!i|zsoEqx3yaHlhc>_$oW zxE!66dOzt2$YXqeR19-n*p~&6rlYs94|CWUVo|j?=QC+t(e)nNOL#2)7`Rpi*i`GN2;ep?&ovDC2$HJ=y0rj5fn0b+Q?8PwfhI0sYt zaJq;6mC37B`C2>&Y$Ka0_Zkt+YG{6V*Tk?|+Ck^@LW4T+9ne zFMKji&u4UJqEB+)z+^M8(Q@i*pZ&dAnC((0@@-}@ReqD6odX}AT%XA4q}|x=I{Xs$ zRB3LX^(Ti#-{OKjIXi;b)sSJ3%lnH9?(Mq1nQI&5ur7b~{gnk|)7BNAb%iHieAQ{P z^-goLYY*5M^1|)e`p1+r5Bh|T686hx*WpnWV*Kn}+={k z9+Jxof6_93cTUGHdCWTGg`XqWdvNY|Hb=)-(m(vb8aBdEFGhcfSu=x|1GI*I{ z_l{)Q@C`2PThB&T`S|(?gW0w84)C{kO)M*1AI(Z*n9_4dG#k8O(g^RGXh!m$yRXS5{o{@acBC;X20(_9?9Hb;MVBy$K|$;`in_5B(xIfrP2v#-E@5YeV_ z?M`P1_Jc0gl0%w+8%^?w{mJ!f{-9p68`l{)XX%=iBO}*h4 zqUTii-bps)ujIcAU9Ix3wcAnx@0oT`f6v)FI=^S5?q>vAeZBp*3+B{A`^+^MK4I{` zgU@y~6MlF0!c>-3rl@+H6KL3pAf5x7M@c)Sp7&o^Fg~bBQLeQhOGX{9QnOs~J96#ATII-+l{k@C0E zT>TvKVK3c>tbp8@LG*&J?M!OpvqG1u5VGV?gLX;rkaq)i@qnC*`q?$6i=2BEa_)|y zDZw#~E}}>4gDkCotjaGVn)M^y@lskd;YW69F-tp5GO=|O-M^Hj^*g0y9LcNDW75`M z<%IvqU~7TY^pYxh_tL#bb(!9Jb*sz&k}8X5KO_Fc9zXMmxW+FR&vTwnhEU%~mmph` z=<=+|yGqA?M4;ZAu5y;-Xi4!@uUQ|}FSic*$)&lp0hj{nguXtOZRF`;X=`TF&`9C{_Y}$UV|2g`CvBml(o{ifp z&a({rMaZGA$Nfd*$5G?-TyPh%?_v*Civ6JaYaVbF5&wrQtB@f(H_@6>J^Yao$R$Vi zjvMn{U9U~V^-#Kh?2ZH{@WQYcf9zKJUDAPniZ*o0O^10&bsr(xocYGjTd#WvG*ph< ztBG-F)lR#R+YfuT$lC`$;E4R4(yEc;M~LerZ*U#Ce1mCtg^113`?CM+455>Z0aj*@ zN>;L0OANcB#09+auIn%6lezYqYjNMS;He z8tHqW6Z!@$669X{i0Y2LT(K4ox1@*f<7tR<4d2bv79a9SXYc5js_x*93D#T*auxOw z{DM|KZ%Hdn;f^U$xl$SFfjQ$g#&~KrSZjyc7-A=@KOMu$$Q}zH63NO&+F0=y^q+J= z_<^l@Z49e@FGj>zZ3jN>dXmq`7f1JtPmU2~aKDV+0bG07ZDmWx=vcBO^C#2#2_JFq zn*L&feqH}w-Ej5Qv?iPqHPn=ZZ*-dmacgcBE>k=t}$p&<50HV7!!=cd-^!k8smU6 zxL=F09C_|Iz~@-xyF)HO;8V|L>A`&jpPaX!{k4gKTt;uTCz}0&K7(;x`8Z2QzYwc8 zjrwIfzQMX9f%-+C6~(FPtD&RzzQ zZSczw*9zi!A+H*~3Ylf{4KC=dH&q!U;aUGb| z>X28Z9oX1rEKUILCDGS8rx)3?;X5=vr`Niho!VBCNyzPdqM3&bs^EKe_euG+_nGZO z+k$c3MSK$Rr&uoz{wU;>i}-U9tr=$@tdQz99CwW*y=u>HgKyyF@}?JG#|i8zYF5s!=zynP?>R4K~}&1Civ z>^1$0{?fkn!Lgm{J^h07yzgA2W$5{{zvBf1h{jX@kn+3UKk>n_0r@t(1T;U>W{(v6+C`8ds#y8*BeL=EU- z&ApBMQeS8pO_wP4h_(&fWBEwnJ_CCK*s0BbX7&?*V)mv{%zorA%zhWvtpN!%*GLv5 zBnaJkMT5dt454+^$W;prZ;ZEg_eq!ViTj)>9+H!44cYSWd!_Z5RWZfZP366~SVMUs zV{so)ADV)4(jhi?;XJZeL6Z&4&EBWai$OfZD*2b!JnsbGOr8(kED*7X-}Ywq!vlSM z!ee9?URveEyqZG%igjPiE#jT<27e}e!NnN4XpZmpC!6iL)7sING1j2A%+&MaA^&10 zetPpcr#9c8d_>dwub5WPvoJr0MW<-9{K+Ox)v;3}oY*%E#t#N=uvn819qfd^3>@L$ ze0RwEA#jA>W%dO`Utl3EqA^t;4s#r-R3)6P&0Z9mE%sZGi+pKl`jt_tRJt%!X}O-p zSW$WL-@>vn*Bi)w{q|3Etxe@M;Qbz9+0CPTV%@gUHS;|C4d5#E@bOyMOW%iPLr*Gh z)-o`kLj+c~E(f$pEiUX2scwrt#`n=Tjqz(VrpWtd=0)5QkZV@@T3zF&ClPvJ;Z2G@}1wC)@$A+aW-95{A{%`brd9Zxh&cEz6$0_nc z_4e@s@IrB%Q{7{Ags#=+WBcV9DZ-y|ht&=He(;2$C8hitsMmhW7U;Y&!KFClr3{Hw1)mS25E zN_--d)TcreVPobVw z&9C5|`KsKwJJz{~Xl&A3*fJ&M&MOVyxz^0@&e4Ty&Zi5%U{R>;z=Gf{eobi##+TQ)-XIzHJpJBEcGFS!5gy9sh;sG&(p?3Ie6lF#`M1kM z>z+EBDgR0)y22;-r?#n!1dg83{wTfuf%WWf{=~3%UvgGE*MHeNvT5cl?6-YZ4iTh*2vOn1*9(vPjW?$DR`&(t4^ zh$hIZCf;NFOuT2$zMd(8x#0GZ{Lgc0r`vSjOKMZth^t+g-^+#mwuSg{h;w0Pg^r0b zV5itWsH;2TilBMX1b?LAgLS(&YCtFb1~@v9L&qlF=v1?qqm#T}mwPTBtYPW8{NJj# zb6C$5ZR^=&(GIttht0jtDcZQ!xVA&%Vb2)XO3o$+(;&G2o%APKO3ZP=zId3o*wv|B zm*+ZvdC>4ZQ&+i~M(O$#jlWbsEXyUXKmWE1>rl9KR@W`ZUGLN`Kbs8sk26V~Zq(j} zYxTBSjrN{6%fqVaTEWL$YiTw5RmsCXxYikN>`N{p**Q4rDj9N9+t!+VB=EjA>c8>6 zwZ^k2sE%ihYbCA8kQ3tiG@?t^wZa#Czn0^?4Ev?C=zf%si~B>`d6>g^ZenX-JuRel z(MyVX@yJAL!%XHV3uX4QlZn>S>CEA&P^|D*3o&xYS0_+=Nlq0dB-m?6U+~;%v3vS% z0Zko{+t^23f&GWlz5MWI%)u|jzGCBbTLs>{-hOK5M}tND6wc4gJwX#Q%Jj#Q@2 z&%$fr7d|^R^0QpmjoC$h7NUt~BdtLZinU~smWcc~t&7j5LbjH8wWKDhuZ8Msp|VX> z_PDIr=MoK1gfe+>H<80i>=!~e1XffTy$ANZ?T=&w0$=fZvg_CMW@YqSm9&=!n>MeMMmF|TV^)R$Kyu6`QSXgumzEqw7Q4I-S7vC9tURT4_L4)Rb>`8-T}MU z8@Y+8>zT50h$_WjOnn_$D{T4d6&-ny%=|F3&HMt-lg>KUNBwV2Ro}(ld6fjL9K6%> zfu2iY6}?wrpRJE)1*>gr&Jac52Mwk=JVS5>Fon^#=u275W>!k~P=6ua!`W5gE!20q z|J)Egk0SJ3*vuJGvr$YCG}>Zf|DUfjx1HYF|k_T|2LqW8L&cAYflGbaH zYkXYiSin#bOZv*W*AWBW>pa)Hy1wc>*Co2X;N0sW z=j1~-`c3lz__r9(q6b)7&weDU4OvhWNp@1ue!e$YE<|?7g^~kW;tIpRLdb)L&Af3? zRjN9|ID;?OlEr-`=)ScowdAmtC}c(436g(u;QU=&n@iW8F|N(hlF#Q)vk1QR6D<8a zk;lb;+(N8fm)48(y;#!eVxiL=w9$3=lV6f@#PHj1zwr*|kq5~J;=rgo_gt@iUGmsp zt?!L)mi&5+kuCV;7onYDr z;Z?a(uid%Q5qckFoxpn{xmSjmnOB(m@>RrlB;(C|r#zLV;Trb23h&c0zU!?@6AdhGZ^C3n*2Nge>l?HqmnZ%k>vUf?iA7tyC|O*G44%)SzSo(Zaz ze#?`)EA}Fip_6TjTzE0b&h?@UuFHiHRjhP0t>G&YMOm}IS!Pbs#rKGKvDQ;ndOOMH z4(P5gXo+FJJm-S1vxpZ$4EZF*2_6cw^>q&dB;(I&&zua?gaD4CIS(QA)T`51KRLUa0x1myg(pM=zRaz-Otyao2<0|E6 zk*BAD#+&N6nZ|p`+I_sphdi=9?8sF&PvkwLF%L~(+lNQ8=_GUhY4|m*W2)5jwk3Ni z@%9d7UZR0Gx66xXHKdbVOZxkb^)zPJtM*!wN!v+Rxy4!`{D-CxT|cJrbgLG* zh4h7JK=4EfIYW*e?wlUr7B=1OA}vac2&dQ71D8a&RIi5aLt3FIYwVGmWc6 zV=2*CN>2elU#*mAoFy7(iN;hyEb1(gr?VrT6ESer{aH57DOQj!+PeE_D)RZ1IQ&AN z0?mNKT|=^7;E*=>_&dY{z(B)(+r0yQ{D)6%Y&7xYqcjg2t5!OphtqFSeg&1yIzcu% z+3BPIX=9Dc^!wO*qjyLv!A~Q5GyLE5UKA@F9>of7AX%}3D|pA}cldaeadw9G9IqjL zlanqxfZ1n{V)nDjLkT_0d?#*Yr9v{_|yGi zbpHh1kLq$iyo#;t;m-g@P3?>dzH37TN6gSx)PT1NDa-mE5s?7J=P8Fzv9G*365tq}dXlislj{A<2r9=&6y{*HU;9gopF zR_@m_qN;ndEg==`p}h7CjPLG4mC~-NN~w&-q;~!&`@PiPGMeLMchY=2R4LOvxn_fn z0ef>-g-=rcYG7~Dx*)JOX`Prr@)p>en+)tt#A;zbp!vG?j9Qwrn4{qLmi0CUp4WP{ zCoj)cCG}?J#&yIV)zJ0AD`;KbtxA(0V>!UtnN0denPo5o-Vv}aKeqT}?73;%+XQZ< zX9P=&v_-R9IrgT5=g$uv^QX^rF@H)nwXs|oAcO+07JGS%L4xnljFe3H*}tzopq(PFLQO}AKbj$%woY^->wB|H3?eEytl z$vF)?OvDYaeBSglx2rK0qSYvSFSeSCIN(r=ty%Z>_VJ{Jz{S$60v9XC zz{R3(xrNq!(C75WHl03~S#Ga%Gx4yPEp5{*ARMLNmu1i!-iVniYiukdddxvUMU_%XbH>P7H}xdFP4+LEYkM=9M?4j6N?go;j=aE-C_As@CH{mmn~j&> zp(L!Hx*2s=U&d*f0-H|eMz8YKZz^cM(ksQEya_hI9OinkLXp5d<#j1}C5P+P;O~`E z+e@uPzhcdFC_Lla?EF+rjYp~zUr4Kwp%vIK@%Bvq>38wO@a)~oEY#f4m)siSjp5jO zS5KeK=hWJ>wD@$W^O>U+>-k6dgG^4!KC!n|Lcmfzu+O=UzS26(0)VStK+c2yESW(5 zHO1o>*gXd+TDmwqVtF^rN2&@jipI|~PPO}MUGU^AFuuc?#KL-}ydRo>N%(9mOyk(v zr5oioRvgTY{=jsGo?I_c)Nb0kF+eTo2-l7VmqwiydLzFf$AvspU%GFTJ?r}Xx>~Gl z<)oXl)a+%{v$b@Cac;B^J5TZ~5Er115D4(`>)fHk)e3+Hoa)kw!GGww)I3R$GEdD+e)$zBVo5ANUH3GzbS7#4XCA` zc17NhqPIS|$fSDOL@#hK&KvC+0KI$Ui z^AkC4Ycn+HvK65#QZnsJ9>a7Efo&_l#01Fn^IyJ%&A5p$xl@Rg?*=EAiSfjeFcq?xmC&bji(dF9lkrH5kZmu)TP?@|a|s&m8z0gYubHQk=03L)A$^x6U| zaNynwD-Q=}_FKAvr1{MLz8LP@bg42Gdih9tU-Bwe3s#*E8n7Ls57*ewefT;Dq#YdlEwHb#E=| zoDimcb(w*OQ!2S8-mCf7c?>9eG2ZQ+LKO3FIgx$mYxr*)R5fj5K>T(t;?XI-+e&YP zr(?SAy0l3S=c=lGUay!u8=O5tzS!c%vkK#C{1j$lLRq8`L~96H=(_U^a~&TX;?veQ zGP#e9=63K`%Eq+CtzpiPw~g@-suC6Z;&r`jiOjbyjfR!+aiRL&07iX%ghS zI)|LOEcF-jmli*j6jhafy!~kw$600z;?Z5SHz{c3kRd*df5X3f^1bi9AWni{~ z=v;=`PJ}oRN6U?lkKFO7#dum=?B+GvtT5ym2kYO@$I)H&I-EaDu^3yJKcr*J-gU0@ z`Inq@`Rja!1C9P=5fPPicLhL$}h`{Dhw*WABoPKCu3F z_oZL^ktCiZweCw7*GLALO7Bl;?c2;jV zOVMW2EhfC-pElL|ImWARY@AMaiSH5l={A}~s9PsVmnXxax^jz8lv^hR?;h`!$SoW) z`#JG^HZ?>$U*Bk-j_EaZCz3+2NEn?Zl0|4tzs`sJeve{t z?q0ETG9~=>Y_=mn2uB?up}3ZP-<-ow6(dU_-(zSo7*XvA3>Rplz+0d4hxnje6%^pKU91W!DwU4ZC(rka`Wy4ygRYeGE|H`vj_CASeUG@N0{QXSA8L7ckC_wZk`Oirw?za zOy8e{A3T}lWH@!Sk~o=6kLD9~kQHi)-Y*j06~9*)<1lpVtTb6xKroLAqH{-@8siQ3 zd41h^Yrfb$GLdRTkOVUf&Ji2(PbseOh}$@>TZgcGW;et!ACEE3bqJ3}U-a~j~DgP`k1kdfMyeSK{?9$7eKD`DL4ozs~&TBzmcr*~R<^k-PIY zS6-_Vs8TQYGTe3CF*4Mz|TR9Pdj&7di4LqevCp92pI65#-N{^aK5|zg80wpH#g`4!OCodeea&{6J0ppK#bvSVh@Ml zXuPH;T8m*_yD*CoaydpuJGrrseky>As%Fv5T_C>)ixYKgir1p|G?*W{7O%1s-2ad7Zj%Q}t%!(q{af zx(&xaXU8fxB#oY~tt|%QsmqshtWTwwQSz^IlAM1rVDJsv%ftl>5zk01j+wJ*PE#hI z%yMNMh+5i^9J-Q*rc`iEq>*}bvMd|!E8y*=Sf`n zWRA5spZ_8M)_Ie9316)P+0LEqi@_`29{?B0`7) z;{xA5?L!1NTp}b0Kz@NQFM_(su<1M7r}EAIsXb%J&)b&$UaU|0AB}9MEyu(bCKy2X zJH-{kH4Pf$epot}3il=N($Et>&PuI3(w+B{gwAg(sfee<2k98UZYT0#L@kvym*g%; zI6qJ#_p`oG5<++fv0PNcncN@L6SbYoZ*;|eNec-i*%UcsbB zP_&ImitT~!SB283zX2rT3n5x z$^L-BpojRv5oPCV1`y?{QKUy((lEkciP7n%{AC3qf9y{#_T`4v#=~Z~$Km{JK{dcF z?9xUq(&;r2@A3lmI#>I+#*Qt(1HP+WL=4_c%wm8s|A1&++VfniC0>8?U3{Bd|Jyc& zpl_oV*ifA$UtQT2viE6icy;DkCvqHU9|Vzhu(tWyo>$gNeT84~^NSF!nRX~WbHtYx z`)I;yYv%R(>cSt%LHA_m;^#}n3OtV$W#@(szvoH%O3&c3q!uG%E?0P@m+Sf@m658h_+pr_ZH7tFF6ZCW2L0)McZUI-!XR&{_A9JI%r%qW$-Hsx)rMS6nyz*Otat*EWMHkz zUejB}j}e)(jb0ad)%+MwGSe=QSj4NJzi1L7RWp+h>8qIM+L9ogR(L%=d`G>M|D}>- zm@ZyM(xIl^GV1Rojd#N7+?HnWebxg?E#zeUgf)f3XU1%{Apm3SE``|L`HQ~X4@1__ zjn9xSMZNx$gQrQ67ITZcoP~r_Pu3)`KKq7>QKD$-7t7u8Nv;nxe>^#%cyS&Yn=dJm z^B*&MwEn(m(MzS7w_{yMXP}j+$T>XJ%G7QXv!Za0b$K(Kh<7#~-P`r8xZoam4J+|H z4Q}~@rZ~aU__tCoq%OX4FD3L|LZ}^@b$8^=>x0!06d(LYdPnKdOk`gxQM|@Uc`o7!_)(~6ag4)17{_lq*X>8ONr=-OhE#ko%?YgxW8olRC$r5nD&u7 zyP+pYz#&s~E@JG47&Ty?vJh|Y(Aj^z^X_Y=AIR^7wuC*{2w!SxQhX zRti-j6LBxSQGL7L(iu0u-?V9I$qs238RbRu%h+jjzR=r<8F@TBMvoAE)i)gK+*N!h zLi=1=(d3W2&%R23-|zP}N)C9UK8xC4in^tXx-2dyr>QS7yC>Gwn>tlEG@h%lEhPM9 zd9DkT<(gPU36VbwhtL`yyMU&bh)DGpXI8*R`^O`S!xfI?;&F673)viu&@gJwj?C|7s`-OSVH>QO2iya^Rk^K(M z*xR(ghV;$b=M-PC9vwNn14{Ir&`57YF3CLmai9gKSY8HHhn$ndaKDN-I_KO2#+A%Q zKag7w#+$ii-kO;7Diu$Y^|6>&WzMgS{yEDj56#mO zYiW_5zlW*hCzf(X5^PJJe`GQNL?n}H3DmO%G?FMiO0P_2)E<@9lZv3~dse0~O0=TZ z;V~yyUpp~dOupO~Z1s{{Z1~=z!$@ZvS^M&;vc_N9=-1S**qQN=QzgfxKM4*o)UUX) zlenI#a%c>}&onz_Z(RqoH}Ds)P1LWfGHt?q>yw;KMllsLqeM)Nf1Dw-4JnOBX+sWh zpKIT2L7fTGgRQzUE)po&K4FA8}2w zd6lFQ=l4qrE>5s42NzG0w2S*Uo^?fQ8s~>WasL4~v25xiJ@FIgCVd@d!;z}EMT`A3 z`D(sIllpFQA@1Rc{q)*enTq@1luS-chM09hCI(n97sk!Qe_^mI&#}S0Y|s)FQtqeM z#~TzSaENsWLj_diLPDqwCQ%7oxOUAQS-FLjM|~9dXgBV^k=J_y48ZU`tqS_0lBc6mGJYf z;y-FJt_)8*>Pt<&ZB500B7Y7b62AN-zB12u?=Dw*JNq4USHM{tWb~QlU@0IF(47(4 z{HG%qvUO-`F=n!~=n!r>{e+dZESzBGWnzV07g=4R$raMT8rn!H*2so?NeG`ypo)2X zeO7!Si+9s%3&Ys8hN0Sc8xTyyg71aJXomno4|<(;#yN|vAF6TtxQ$R*CtL=O3(TvD zJTjN@swpp(_J;cDeSmp)DiG>{BM?KR>7m&yg3B6w=(zuFMJ&gQz6xbnY}&x~2^W5? zE(4}kazBH%(GZD_A)b|oO5vb8>lbr}C|o>HGG4 zB^K4a+Wr)w44Ffrx_hzYbsi2P#Ijm+N66GY16(ox+~<(=GIL|nB{bzFpo22cL2=>w zu$3PK)!e(@y4hTP>r7|*;f~2%Sc1z+l&^xfLtq8tMSgbp)&p`*uKxm4AWJtqA&ERr zOA_dOP9`$HufiPrK_gS<<&NR=8S!G2&m0tgil*&>38FKp_((6}R_jo0t?H93jAEfQD6*xC! zPfuJvEcU;NDZh>GWvq=7h!8Ce*T=D`V5xvnDmqE-jTo)XMb}=+VP zKWFC+4Z6v3)}SB1babf0G5Pvb;lW=I$Qn##W10)aWNiTw(9~T>`Fr4c|L^5$162J= z&L{Wot!)JO2Q41rYk3Ahkfma3$qV^ou(Y4Tfo)OJ5x z?w%&w?2OzM@{%R^!3P7fcM+sRcQ}M&s991iFDML#FvoUs48$u4HLubGC(ksU7RFyj z3$>Dihy%#g&ilbt`TBjVRvjqv0a;XcXnDax;PckW4TjJ6S8=BNw^ME-54X#G4Cx_5 zb5w{v#O9Sz zKMaLcidpLG+3%2fb-Vwpn9gOL-8+InJ8 zH8#+Dj91$4YgFPl*?M=}lJu=iW|{YFU^bUwkNvuEU2EXi`!9?vHsdANz1yzt8Lyk) zjVnj|W8&@1|0z1$5Om6Zm-d6Oeu=1>fqEQw2G7E@;3z-m`a9VfKMuAX0OD$^ROd!s9-iqI9(leuY2&Te+g z0$hGS)xP-+UZsZPB(BNK54s?Bn_b6GFsr!PZhRjo>zx*XcrX8i<9_n(2|l4rX5A%B z)P1e}jcx)*J=UBo|ASn?S)>=!wxcKUqgGIwe)`95o;MuJE(+=VRQTAPbWUAJ`f-ah}FszHCK3g+JYbGp7ykdKo8`Z4UT zSlBD|CRVPExq7rUUZ%h=w7z>07YkG<;Mm|JC3XkvpeJ=#V#<~hc@VsZQS2DGL_Hy; z?O_fr2i&J*UfpAvMneR_WJVXvyw@S9Fiacj&%Uy4w|lrnkF=teQMCsGpXRD!2A}d< z%e*V97`q7j#ny)*4>Wy10ho^AgF|l&sl{~xbJKRz*Cl{+RTmKxD1lipH0&+g(3zgq z#4GjXHr1r;2(^;}iDsH-wd~pJ*a^sQ{-+xZ{vEI@ z`RC^QhmStG%fBi0HrtzoKRp^9K>B>Tgdjh5Fdz4-)!uH)ipl|!L@@ej(3$gL=xRTg z$&2)8gUcvpqHg}(u5#{Av&z4O38#lGNQubc+N66&sb97&>RyQLyN_EY?^_L!r4F^x zXyc5iZ;-^#-)s`fl2hcuTAKrhvr*emJ^bGJT)i92Hhx~?VZUnlG08p2ue>jqCx2!X z{lowhtkb_5i!h~<$ki5KImNOt^*N&a(flS=iYP(!`)x@O;a-%TDP}L&D`(CL%&x+> z;EcXMK}xuWT+IZm%R{>6Wlp5DCf#<`&`$kn*x_8=@ig0nR?+(3U9g%y+*j6DKgCGb zJcWVPGo&U(Gh8{TBo6fLlbLDwo=-}IQd%I47lWC;Ka(~s?s?XpE_ky+`w$k^%#l7^ zW5L%DwC&3e7w)SIA}4F?Do)_t+?47)~S3#66yV)qfaNXmyW>U*&QN*GjV*hsV-#1|6=M(ByRQ|3>F9(fRL4!Uo?^drF0Z>Qv*= zq_|NJXT6GN5Jo%AAOypYJ5pDRcG-nd#AleIzc{T^!pvK zyma?HSY#_Z;?&^!i9LOo4mZXH8;z@w(4>;Tcyuf*3ytR!Uc z*whWybbFI+405?MOPi zzNLg+e>u3p)Mf2MT`s({GcWyQrlIdU>GOJAuiQO)6pi2q85iAF9VBiip{k#y43sXU z`Chp72z~N(hfdf-09y3Js{`~&?BADlc&%+8U^&%7g$}j|Nhcg~L@MpL!~)HbbhYjc z_i&G}whk`*g?w$}edmV&*_h_yk@r7k{=XQG@0lVgJhaVhsm1cm=AP!Sl+v)d? zV2O?n1Fwn`z2xMpcM}$&1GXPP!Bg~cV#Ccf-(5Cl866uwm1(}B0iGzeNxE3G9P$nL z1x{KGlw95KG&KL@`(I}Whr^nEi)TjOKf6S};K0MzLjDwVtRuLVvarc*RXbyULWlK) z_ZyM%9`%w#A1B}J)L%HTkk?HS^0cfT+~2O^z~$*$c0YjL>Id87yIPfq;3|acGipoX z@=x_D+&JQku1dzZSWb}*JAcD07u9ZUS|_-BG_a`hqc&}_W5yM()?ZNK0dqZYYgwGO zP`(rEf1LL&JV&wTnBaUcnEjWMt#}d?hAG*Rn(*C0&oa}Dpv-7#Yx~)y zai|$YzjU%CoQ-QJi~?+poUfin$Oj;)x9df3GGSfUBD-(PwUR?&^FyPF8}a)QdiI_ z+k}0sB^E#D3)x4pMGI`ml~90wgY52i2VFk8+a(5d>tP!5km`eU@vkVs{h?%-z{&_? zq&HJAFZP8j-{+Z~Jf=TN9y5W>DukEcH-5%v3|S?lFh6>0k;eTGnch1TNPSk7G+T0>tBRDcaF${W%(=*kwuBCOT;?i-$^-$9AS_#iS^8MRmj z{Mq_OWKuw0C7Qzh9%>nM|>=w36F=K6~^Z zJW41D!6CFMkb#C-^^+Llto2fS-)zoWR(qINDm=!F?e+8x5}OxpjL)u@ZIfB3=1YjK zPjf9B&o{B7Be&r`)XI<@T$UG_H=nNNi;J!gb1hT&Pc(I%_ls1N#%%*56JnQthrT0X zZ1+sxjx6QqFDa`PfOCohfn~WclZSZMHtQA{lk{T)B?I&he-j&V~A^oEqAWs6OR6 z96jo?!xbW@VDa-du%zx#yoUSCXhg3!o1IPR;pV zU(T`Lma^GNvsg6L@VKC9-ZgA(`}1JDMV`!agXbkQ35`eS7}NVsMIL9q7_(|CwJ-~A z>$1`NsZ^L~8-wv`c3QR*(?x<_yBy}}KI5C9KR%=wiLs54PjgXf+~_Tb>K-VH2uUnQbV0Z_`F6 zjoqi(e+5@Jwo-a;DET6}SNqRbPS;s$rNTcNb?wIm@tuS$J5!=Pe#1Zhcu&i>s(dEw z$7hrS-m8^Af@TcjHf6K~YO}X8hgSZMWLrfPd|v_dyPadGS8U|ahFuR#!)Tqryr3C3 zyDYXM1$`UU5f`97eK4qXXDPvt4|7nLP}zE7xI+Weo<|*S zL^*#a5+WQP&?0zjyxPmmqa1$;4mn+n4{!LgkS#Nw@_uLk==rr@)%g51IiAwNWw#%~ zgYr0{X7AYnZ~@9{=$xhyo=Ie zmR6v_M;BcJ7%+5&%}Xl7+r~KPc~E|9P~jMNiNv&56>0TS{P(u#_dMji4w%XEg^E0E zzDm1mh0nLP(@$e#G!jIQh5VZ$Ytyx*UG_&L9g^43o}F^Ru6|mn~gsmnWTJO;A|Y2sS~urrmZWsTo(bBHw6_tPAnWG)_CrFpwg zxPsC9{iH5et&CVW?k+9ggk)7^NB<@!Uhna%$hc<2nM?p+B&RrW|1NT&?gM8>}ST$FHtRj)CVJKY#F`J4qAh&2GM&QtMmD za5-9>Z&73I-7s3g8r};bdb4w6L$P1{BZ$4DnNUb$NAGWXhLhud(acM*-D)2%KcIi4 zRAs8}Q3Ypzc*4BmER~&KLi066^_cT}Ru``&)|bUkEkNOpw1w$g{Np^WrA==QKCYio zu=qV@(RfN+LgA(zdZ0r=QAiJ_#_^NP1qttApk7_RO-qFPSc-2xjdT}Z<-h$ZB_CGC zeY589p`00C`cbBvar!L%tu9Umg)fi08SF&CGAnW+TryP4qPyx=dr2%Zb#{mMxpp1I zg`r3cIQX+i+)B-bsvVPaUpnH4(yz3cq(OnJ<8F2<+9eFJn)>j$pqurS0xQ=Iz6;{U zsh6GE?Cg9n)I_&nn~Hr@YPO=uCT%+7HrlU<^r?5T6U(?=F2ZY<)Wc;3n7b&doBIda z6y-Xa4X&y7Y7m^3Ye*>|&$%6wzPFZlXi0)Cir^u>Gf zcKNk#{_^FV@8G~CO&>^y)M=x!C)br#$;66i&jqTApombB?t$=RYt@`muYbsHfs)W2LQcReq^4lbcMi_x zSz?Oo&Z_iM8*xPdW2BTlro7#d01dW$n)J!2?_){NGxDkMm}>mQ;NtWvO-ee=4DxP_??E`I-M1Zc(QRnBl=Z?Rv6=nfSlwSP9^|+u3AYU1&7hPwY2Rmj zFmDv<3QaM0T5D;A*^$!9!HmIL+x-k6K9=`AfrcM466z!v(PL4nPv(iwT;^J;q zQ*uHlX<%NW?W7tHFxbw5PdSu<-Mmu?pmFp$f?0=INVhZbg1CX!6M0TW&C4GTVc8vg z(hIw{yTx=)?a|q`qo<>Q%fj!A*VVM|V~YOuo@2bz0`9h; zhYIOv;W@qwq9TMkjQ>dc)aNDbT(M$SZ;1zce%-^?(npjvC)H!+6p9T8^rW zuiZIFVY@xWSnIWtT^+6?(`)4jZ_`PkFp{Y zw^ii^`;y#;E?Uvb&qYrD!IxCmPcCeZhQ4Yq28s-%H|7~`JJW!+jb7M4N%YW>j=vAl zb#Aj664RN1tf7+dRz^EC{=3_$RLvrN;*Kk_JG9gg=7|r2j_(EG!>eubv=mSO{2&C+ zyy9F)5A7JoogfnYu-O}#x=jbi1^nW?yY84B^b=9-LnZ)Y$1B1)Z6A#~)a1^~qW)RT zy=-Yn-;qCOTH>ffrs$01iz9v4=2(hQ-PVQtyVrru9sJC6Y3Jm{gKxqffbr*xP$1`@ zipm@>$~+U&zpR_82{PktdYkItwL_nb(CEKTecX$Kzizl6qfXOgC^D5ADw9{gnK%Ux zyz%-Y`LvFiyD*_o^fx7{`%dc7ye(vYQpcPBf$8@{f$bqxbkhMB=A|UnrR2s`0B1-P zC|XPqRHP`uKb1Dmt6l)rgC|Z~@PaJKdxVPlCSh+uKis>6pUWSEnoEvLg>UW?*l@H1 zkN4qP%UO)unbG^{7S9;bZXbP=Z@(73C#cCQ1_qfjOPwsxQ3DO99LFf7ZN8TGA4ic@ z%rHzGz6}th$ckOnS;3UP!B=A~2wisHlN~Xf#KH6H_E90awoYp3NgXtXQz51MPyTu)|@Z(`8smn z4JI)ki2~`KbX$&_C60x6_B2;EZInR$#F;}$t=sV_#js&+HSva{dqN+j{pbMfoyQ4k z{?n19O_$@PIA(rOg5f>S*CB;LR(B=*wVl;7BR#fEt3{#vs=9sUq<9P4Y_;8rU9(yl zZifRFX{4E6k&Sbl4r9t5A4g?BYegdw4Ba@WWnaSnD2v|9*2{V38$3Gi{P@u49VjN( zfmSIP*sP6q>}VL(A%$;an|k^=MN7AmdwVd_)9<0qSm~8m`J%^?!-IB4b#Eaq%d^2& zCn`|uK@a)HmmE%kUY6sVGGn7&&~Ti#dV@3mV3VrCkJL^f0nEbtcr41gXpDX?URPr1 zmQ+}`9}`uKSfH2GOh=ev$Om_UujaB}@wbt7iwF}SVS?ZKD=<|1I(C5b@?cS1V zA|@K=r{H5R+!zJ;4TY1Kf(hxRoZv>E>)03QbhOr5#Y2Sol2BfmP^zG{dt{AfEz==> ziA92wB3zH57E1E7hCw`OnNs)QjX`3z(lq-nS!uMKx=GrO?*o>x(pAgY?6*joD;~5p zc0T7vNrtZr#7`&}N_@cKleM>KCP8{Xp5KaDtf8-)><_-1pbt&8+a1#SLmVlNy*guF zjmu}u;i&P)vsH^mYO#DRW1=lq(yaz zFWCd?e_-UsBBFg$f4h`9b=BDLGY@WAe6(h~Z2_MIE(;nIgFMtVAu6t{m`k&et45&c zuwv-cp`k_V)8*wC^{YNx^CP9PDWMVi0_npyR5ns%;+i}M@$!`%qZ#D!6Z46CwpraB}>`xlFudkAu+q&uRw6bl| z_*2Roa8#3aknUmbk{tD6;v)}xnlKHBuWBbSJ4RLHvKKz~H*E-r5r~1`VA=+5T+q|& zd|Zq6RC}{JI&+G=l~ojeSg?;0t!Hoy7r}^IA`=%MwnWJDv8e+>LU-Ea6rJi zJ$(K7No!6*0pcyY$60%DFa>TRm2;tu13W>7Y;J%GZL?JKSvBI{#%&PdEAFNIuq{{x z*ixZgZ;EfxBfJK%;;v!}UcB*>7ERHKKT~=;pTr3D{-{*Z<4Z?g7_!6(w~a6%ApfO13!HF3AZtjXkfEaAl##7Y&`E zo*@NWF4J&4xxdloBaLmnFx`xjW`Ax*4vqBzxQ1*^xk|3k*Aj{Un0Mz576&Z>C}t(G z{wb^?6&Nv$_OBIwUQtSsCkU}0d%U!x)}ZD%UmIwn7Zm6(A4w?U46wtD)HPgx^VGmv zJC7k+e3s7pUFo9_yY{!YlM5*=|9HKh57^Hmyi|sy<2p2HldvnN?jtl}YKSI1JI#jR zf;^RR3(P#iDNiwCTn&zcm8%=@AuW8R!C7rQD5XJp_yhGhb{${E#GV1}9ax=hcd`!0 z=dVp>N2o)9Xi`bnNr%V7*X057O-!y6g#>tP7vbS$988%@@@+hc3-+ z(1jNvGUaRz$u11`V^ZFyXqWE=rq&FF!cgYcl?zEad3=QJl9=(|k+FqYpBR_%Bu@T36QKhODirPW2>-7zmU zw!F7F<5_tQ!2au-Igcx#a=aJ`p^rCTw-)O7=%k=X*UnhY&O%5=%VX4{?s|P-h=s=6 zn@>Yu&C6qH(3JJRrWoQw=s=px(;wqhUwQS?f7Swax3!v9BvX0blcp!7>0DK|tIqno zxEowGB!8+V^@=XZKMU*VO0z4f_XNga3ak!U6aX|wsZgpYyk!z0we(g;i#x#UggFQmR7s2w@(oG*H#M%6G7c18;P%^Wb7hU05d*gvri z7sVO=T{Opif0Pd;j`i#=hCqArD57EK-OOpuwB(ZM7IQme-wve*jMMrDQ{{ytA&PzS zGnF$s5?MDgzjrX|5YGvY_KM*Z-}xQa^1Eya-vJ#Re8I4=e)ipC=*f+&PE8Z!Np|qX=H_V|{_yu$S?6j$ z#6RMR7Z_ceJqNg`y1`X_@>M)f%faxCg=u>1&%C0*m{+w?3)dnd)h~wiVhBQ>=V0fA zoM28ONxu`oF=tqSpfBrosGGqXAe;5{z{~tIDBNwmx4Xr;8y;d0?*t+>kU__tMOR31 zOL|_bb#qTX1+#o@ zDdin%DbrgdV%v9HF<<_lvtnza--g}qH#nV??}!lICMhk%SF!6|Whd8RTq{57J!~{~ zYVWJa)rT32VJ-FZ8;PA*?i!iQ7u@yxdMe5lx?h`rhIDvSnq8z4L$k_PPh7n6AJ_HC zI3>0bZGWHWU*MpIjNbKmm_+HtBMZql2N7$%QPDhL#9td}kxv|ecBhh0H74ZjHXc>f za^$7`f{Q)^Pk&f+dqq)P$*>R28ckPBl?Fdd#F9H8 zMdwsEFJI*XMeE)?LCdnw+Y4!V^II~}VF3g%^aA!v>!1R4aD|yhinmu^yxw|Ndrx~t zz3d!~Ej8HIGm4MkeA&7K`og=>dfwzoxi5Ra$BxQT*P^QHI5D%Pu%UjVVD}s8eoq@A zxm5YFHHP3OW4`a6jboj&-bCaNjtBRlqws-ndPn=sT1>%d`@RGx`;AveGfE6SW|IJ7 z0=Z@(Jn)pJ*CFyfrIB}wWxP+A#aA%8TPA-uKlxJ|`g}+QXfC4YOAPbGbnjqnBt;nv zicL|8Y2+GqS>sDJ0Z#WxIC)STog75CIF%QBgs|reRFaVT^&4iUWQ&Z99*8-niZX6# zdfMG&NpCpaWGQY)9IPm8ya!oK@sBg&Vs_@*rZf4hS#P!#9;8H6G8Gsw;f+Pd9}tLhIHS6^oeBUgx3-K)Np*sU9` zefQPm`D3aGB-K@fyzy4rDl*aP#*VYad|`j~#aiLw54Oue^2!Z_ioNfgea}=YB%R1C zGNp`m-{{LFeL}U>VZoS0`f>P;7sLWJ3O(xhr#1e3bovwv=<%I7JDDuR6At1AZG49a zz!mr$wtm4SXB?~ncPG<>jEOM&n)#OC?(uFI=Ox33Ssx!Dn6qSA^CyaqSb- zGKk#_n8dLrD#uLQKV@fr`?{mtargRSq;ZR0WV z`GyU)Rks=i`JP8MMP~H}@l)L|+F33C#mCxwS}Zi)@M>Y&lGgz|Kg7hJuV-h`MC*V z>s;weN|H?T%i#x7P z7wb3UuS-gkkC@2id5T)z2OcrywP+B#m4{M^CLD-n9F<5519;bgQ)TUdi*W-Hc)wFSMM&bj-)E59sbll`%!u^;M-$LXufJL^X}Z>`eH4fY5- zh{SqP+}Ko~P(gji0(XK$2E6pPJi^sJcazZp(vB^Ts|KZTZXI_-T9~tqFG#HaT<9)E z32-&f{5SP8XMaW?yZ*6VTXhg>dZL;7giq9iFVk_^BpKnnLlwpUJd=CEf2Z`}cz$8% zygF`vE^3s?>zXv@?t)+9)F87{ESZ^CG@aRNMO$&TV9d$;%MxRI+V5+IQ)Y!-7i`Mi zoe^Hby$Nx#|NV``Jw-2rbv0~)7Uoc#_y85&Y`nDj4W-BczKJHB%P2MDQP;Q#EqU*^ zefu*2tb+v+mY`$_RDAGH=4{j+4b_si17&45C-_wsY@AP?zh$L4bKd`Toz{CYO0pf+ zBW%^*$;nX2?3;6ufu-BT!8>W8jsHljyXE6sovin>PEV0XKVa4LzdViW_`P}%%N8bw z4d2xQIX`lOKVBSEi+M%e&+wl!SB?H7n=dQZzhn}+5a#5!xUV-wA2i3HsPP@q{6o)i z&I}id5Pjn&IxJ?bI@SIDfkVip<}Abw&ZeD+36_sm@p8MHdU8?e-{ z?_-cZdK7K5gX=hSMlB~bSf5oi#P;_d`&~=2Pvi`^+0sf1cF$U1Lm<8|!0!ZSul(!I zZUOI*D_X4R_zE23_Wz>Kz(F59nQ2JW`~~>NgtT#r=}s^>bKi*anY$i$9LU`$DhAt> zL*L13kvNHM>`Cc^?f5iA|4*<>}&TU3I^$WOpTIvR1kfK% zCR=4)jep|F+?@S(I##NT^*f<*Y8~yDvw1I zw_nJc13z|8r^B>P@`{;cG3E?<)OzteBLlyDcP>W+e8t5=FM*Fn=QS+0selln;1 z4SipNi@(44mksBmUM7KPA7hkB53<`nG`wK3HUm!nKL5Q1KG?b!=2dXRzp93CZfMJ! zD1RcFr3`|*9HsaOJ*qyVQKSzc4Gk0d+*?Hnya>9%DfUJ$<}B;bCwvfq+RwnbM0xPT zKgqU+{b`qfYiY|jQA#?dne4SrV@`PiY1ck4Vjnc$h#J*Z`|<6^{1kou8xs=GYH;7D zLuAX)hcvDAIe;?W*@cS4k5s z#2djNmF~C64bJ{C4vhz}9}S)l%uf$SizuO>Jcm{M1x0HTBZoeQ{a)9+e+zTRX&BuXXhw%ATC?9r<{> zl=8g0R%YCZATOh~1Cr`xNg_dLoyeli;VD0wFJ^8a%}2Y(K(&ZVJOLdmJyxF4l&8_Q z=*w+~5D{ z5^YIhX6eFsh~aa{U%ytH?za$o7O;p0M1|;<95a{x(CkJKxDr%{+%_cR`DNb3|MjKn z_I9SvppCapj;pgT6)KFZvZ|Wjb6;eC-MSZ=(@A>&#{1tE^ba@T4DM?S*3beD=u~uq z@3Cy1D8=Y>X`aln*QW!o+gC0;yPP45>~I1~)Jf8tZ;CRRk110{416lPKN<3rh?oBA ziiHxKe~Uij+C4NN9v>l;s{QRj0~NgghL!txCd{sAczJBg^5(HBGD~%9BgWON7fhDG7<^IWQKoWocwBo9QP_zyfKlsO~;K|47r>C)P`7 zL}hytboLF^rAw7!~ zsnO^Z41x}IzBxo`i~-MX?xYYmyndc3k+F++>|`8{*Ld;%N8TWF8f>YZ2ybg#$_}UL4|U`9Iz_$`|c&R_MzxM zr$v5RpZc#SOAC|fZCR##AQN1mG>+|Nv5MCtb}r);N(9-juh(^@EBZ~rP1Rj)@lraK z?kVhnjH#VlT@-M&9g6swBPIFfTWMBKlhkB}3Z=OE49?|JlFU zX}F}#N@8zo|}&)e?1t@rajIwhXb94Fe_4vIfe@RKip`8B zt1L;cO}rwk6Czm*6>b5ni5T4^U5c2F3@~R4&tg(9_`Dd7!z>_S;pL` z=d1@DQZybudBn;NsRsERIqoxvh+jdgf~Fc(yeSb+2f|fE38in(Xwc>Al?yk0FQYS(HzUJFCJ&71K!+jJW3l58l2zzmSP zm!8PN6>K!pSjp|fdSUSlUR$nz-XL9qbZ}U&R=c75AY_OCK zJ=H|lO`<<&O-f+<-u5c%&r$Nf$SwwZmJUt=!J5mAWra3n+5b!8|36K|u|H95XW646 z@+@`Lm?zc}F8nUfO7MzvvC&z7avz3wvFYiFbA=5QT#f^ZsBv51$w(&;#=ajj}IZ8s7Y>*8h;HKBYtJi^Ynj^gdN&hTl$$Ho8t`4McWS z_~Y7a41Yd;shNwqN9`$UJaekoO_elO_m$I%HwK+2 zgqWh;MOWX4UQ_i^iD!2O_qPD6c+@JWmIB&Ck|xKgY=*Lf${3NqEhTPV5u$R;8Jbw{ zm9zDkz9;uU=(3H;8r^RkDX}TduGmj(aOe5v(>!q3GxSnM9{iFx^@do!*6UQU)?5+? zDP z7fW_{I&hcko;h#d*S3eOyIQeZ2mmR+k5{?ikl&MvGh*#!_B>AjOhp|R=Ga@ zZ(o+6q5fc}>CTi27|eHcRe(NB^bB|uJ^wRf&OB`vT&_N7HR{EtUh1HP=8zO=zp!V8 zJipEK?p+av&FX5E0Z2Wh!S3%wZTiB{;7*4b)L@%i>Ro-Covzh1F{VNu1}vqka2 z4SlDxgE~i=*th7QH2+k|MkboBR3M5AF+Sz!)6>cthsmoV?*qx&9=I<{nR8=%_v>A zo7Au7=DKX-81^?_vjB^cN7v#H>v5PP(k^+XfO1)B^6i%x;`2eFM){bc`IaoV@q#-k zmF5SI_Ds0IFpKpl9uqU13n}v;6Cq@`@$gVNhv|*o{$nprAC9kMHQV@ij==tA&{lI8 zTPJ=zv>!J*gyWv+w;RKO+TYs{iBC^ry(ym_r&qAx{QJN?kp$R|!dI6s5mT6QhD%v8~w>{Y2X>|^!)`}ejrBY1zYup z&Sdad9R_<2%wKdZQKseywJ@`yEdFzNDm4N+4-z4qFg?TzbeCmj&4}~JQ6*DQI8(IR z>(w{5r1OZDiW(~7!WT+mgcQ-DR%x5tgc&V$3MgC1vh5Zc(L5{2!Fff+syfMvcbJ0o zFC*{~@4H{1-P(wW1aDvMNU7!zq5~Wt$~V>=> zD0~_KoA8KgAk|rlAM}3p(tot?zhEl5)e=j|3GXP{?J%v=oNe?LhKM56t)NZEdQHLJ zkPJkL>GW3Pfd@`!l{-$^Vi{VN44>U^vF0okem-J)!iVavB-FyPFd9s~rK%=k%^9YL z4anD};-CL(L!JrJ-$6J$Ki8v>mURV6S8(s{erM|uijNA_6p_C&{8?PF@&zJo0xUl6=;;-!KxOJMAaZ5w*46>#HDB>L2m6$py zeQ7WHA`+0be|tkR)@GXFvmdAL`6YghSC~yG_X`^uCkFSAh0?RjXg9ROg&6$yzbjs< zDLN^>ZQU)t6$+c@9nZID%#PCLaUJhO3Ek&tO;J4Pm;W)Ra;41guDhNZr$dRlVZV3P zK3xJEEz~H`+D!~osqZ3wNK3~@UHvADzdLf2TgC(gy+_jS`REXRw91aTl5PLNuO|Wj zu_`4`BHyA&d?@4*Pj;ZNfp>$nXY1(K9xi#k7!hd%__lC5oJeJ=s*hl=In9ZYIr8=z ze)|I87_0&)$Nn`NdsB#U7(zTcJnLXM{E6ab)CZlUF6&;Oe%XCllaj2&bvdy8*3o*c zpO$UY+#GM*f=ES^$S;NZ;UYWlH*P&P91iM05PZIS1s6;^xl1x#P!?>aU(=P^J3_Y% z6F`y1X*kMAZNJknXOAQq7vZi3es?x{rP?Mzy)+%}nd}0hh$hS!ko5N|DyV5gss;X zAXd5e?8J(vB7(u{KnD|)yTK~1be|3A?7-HNr(rZqXS(AlgSI@bgZW>~N^uN-xQKu$ z@E1UHUEc1Zzm^evB*8P9*F37ldRu$fZprr``A!1sY|r#qhp#3x=|*u99VGGtB=W+2 zd#S|d{$IG-G;fcozgK<=UeP+m^_0OP6`_u|1MmgcPoBTF;=7Y6sZ4`wNrTD?5G)1v zFH`)%**Rhzl)cfaAl{qk)AM5}7KON(eVFNBaSX5I;PMh@Skz$>Hwp^$3KPqwnUWV?Nsi>pJE^X$kKCC(J8dN1`EC{i778Xu;!pW62m7KC z0DrA~4=b!ZyltF35BxhQUB|D&?xMmT_+)nDi&@_ueAdWPa6GH=pj!70R#0u315Yn* zXI0x!VPakmvY@Q0)+;GBi&93P)095{;1)p!krr%$$lc~(oi+NFECf86sZl}oPd9Ic4IDUgF0q$Ozy%-(?oN*G~dI#rkQl|e7nZ`I!NX)b;yC^HKUfR zbjUbQV-p@-x0tB3=NOOI65#jc00VD6`**{CkW}8%wYCmF@>AKfQKqm2=eBB9>Jkpn z;J<*QoCXIwV?P>>cmoM%Q;fYG@TThT2(vm?l+bQ3RsXvL8`sXHqnx<1(1FHfvJE*X z9g&G2iRW=FzzWL9^2ZeU`)%hZIcLbNaHh)DSz6yFcVdp^6Cl;c68d&tk_)GKSw`ph zkUN!C=;N@WeRbHQNb0WXAxM()0Yi!ly}ZJN#`1-kR@l+ZzM{^%O-YA$eXuk|C>8yY z1IPV=#7iS$b#Hp)lH8BJ|0}qyxz60Lj264VJA`d!0Wj40-`Q=B&x19wfnxE2{PRW8 zZ1YZIi#-yI%f&#Ui*xq|y5RQJli7xPIuoqGK}qII`klxhD~@!63H6s2R{FSuf*azQ zd+Jj{Kw5yZj+70Ep!`<7ZeDYkI~EeH9;f(A7XFQPBH^pfx#Zc#a6Ya)&mB`0fb(f2 zwk&h{eSl3^Ey&PduoAo8=PB5fXdo^sCRGH&M1_Of^12-Tiqf(iMHDZPKWIK=pA?<@ z1oaCaUUNf-o;AVKCGSkRRaZpYC%87Sl#ALaqHC(p@165_j|`+;-sGE&F~)@NX6em) zxmI((ikncS7*0=5Thx@uOhTDRvb7T;VE8gL_Y=J7<>h;}2H{ri9lR~`-nTS!p@XPD zJp`pSXjzC)la21BjlR5ooQ9I*HKiclg14{|W@ms!kdm?c?N`-F;7NPG4)a55n5$?4 z#@K^gidCEA?_|9AA42SRyh=yS8f-)`)vp<6Gh82lR(W2_5&O1EH8i3aSy0lknjs=@ z{}JnDzZ9Vq=EV$XF7!Q03LywIq)+9%yMUklo-4SlGd2U=`T^q17!P{WQm6 zkurt2x_`@sRl7QbXB}ppEX^0E_M`4r(bKfAbg&L<5!f`?L#cG=qBiRJdwG&$GJa0d zg;3~S#?b0!%Ax^AfZ#3FT#(-IePxs>CE4upN2jqVxF7H#!5d_?;9B9}f1#reD!VRK~o13dx_;TuS`SP&d$tLOV@#GPsXKMUCw3);i%Bo(@qS*L7^ph#tb zJ9|mrBD@4&TL?XYr=2Cr@x4}fai{z|6kv9ta!rX&Ls^WqZk<>C+V9_HCI1RHCmQy~ z6L-CZT^CWx2M78pGplF%Umew>!pRL_Knzj*Xe1TEcQYFw2d02R=HeWrTjD#?t~q`h@qqP9bG>n z5UGP{X)Y5!UhTm1g*!ji!JKpU(wO$#wKt$?sa$%Qi&b-x5DOPbNld}D73m#zRM>?i zU~Y2tENJ25&6qUN>C!X4+s^IWgCdCC!8OQqTrqM7u6v5iK)7Eo(!HE2Pj4);2P527 zgnSRW>0Vevj~$RnI37nc`JI=(pOT3FAnxu0zk`o?3T44N_t$JcLV!M1+TaY(N#kuJ z&ArP@)P3Vt)#OI93<8u=VItk$&jpcSBwGE&BRbW!LI}os(%Hy9#s89 ze|n=j9P^Q~KQHO$C)E|PFO)FTD}pe~#GzpETYu&lP@&pSGljdYk+6rc?jixX;?LS8 zYL(NUkeMp|oh535BEl?URps>}>yO-FPX+StBZ{tdaUcyx=rz(-gs#~XiypNaki_hr z7K^wmmYYdfJ@p>tWR}6J4X?N`ottb*_3Uf^?fJkzz}H0>hpQ>SuZW0-JvF6;xzHFxB+@op8z-N5IY(y#dg4zg(`Z+Ev_9|s`UfXPKw<+pb>i1F zAm3rUI+0SM%B#M?BR0})*|ZixHTn3J7K|Rw!U>!Wj$4|Z&gz7fCOy}ge%)$*fQuKw zfhU)~r_~8n+7mG~rN^y~#o9~nGL7C@g1@DQYV5`jhIi)qY(Q{B>`Hh8+ekdsk|SKU znRfn}c;FxMxuXX+*qQDEvBK>Zrmy-h%dDA&v5K`Wr)>C>*J>I-R1Cl^XF#gp*SG0K z>1r<5Wzyd0YD9$mH1S^ZpxQgcp$YggCXQnLfZFp~K&%E|!E)DPxH}^QRuMyVQ#YJk zS01;3w1=NgnzVjy7Vy&Bi9^%;u~;T~<`NA0klwhS?$Xlxiv4b689T5E?0|C@tjVfg zqvSz6^x`ASPi}Htd23?ro*lCSVJv#P*YNjQ#y?Cug=wzOBHQH+G^-+G5LCioF?*Qq zWs(66u`aNnac4qaBr&lUCNr_;bYc_>Cv}zzC&3mK_Z~-7%rp#&uYPNkj171`qwdDs z^2T^Htq(DB(bf~!XoSV1J=$>HVGbL@qdHqQc&u;UMi~`9w_}799J)$7Tvd0U#!sb0 zc9=$rOM|)K37mu^ppgUBfmG8-S?P_%BI*kN8~EYM-&)GGQI}L@pE_i+;s?anPcno$ zM46I^4-Mg)yDx(v=jQq!>y69wDM=5zB#Tg`Dq}Nm$?AB;TaY-^tBnYnhLLH+LM@z0 zyY~$^Y{a4hD3X~GY?uc~Vvn!b);~6Al_E?m62S~^p@qLryoC1pP{}Njmn}WTJpguf zg8DHeg)&RKB+OERM|*aYLFHyGWHnthb>X0T9OoyU?sxpP_aD8StXm`T+yZKT&wfZA zMvh()$XaCA(`#hHGcqP9F_qAj6k-_S+PZGP*Km)$Q#oe~IKgV+eE6Qo&CbIRy!mli z_91aIUF2cF5*DI9pN}U9`H9EIRlVgl0yjDZH>CZb0Q|*X#s6oyX^y#o@6^dEnZ^EI1B18PP<7UZc6KdMzm5nN2I|WI&-WdYOHvn%y zo}NvCqFA7#t@5vxpX8JbPsPYMQ$?|eKaL+-jf8m3^NcuT&;AtCGa9jJ8hnm%@``c} zRK-He>YZPAqJ*B-KBos;9VY4$39N9i$-Tzb*cay`Kr9qYlh{~NPkH3_BRb6(;rzF3 z>6*fkE14?^iOm1b3};p^bPZ;JkmO)NbT@NZSHyQGZHtEGkDW&&@$R3UbX*NQ&FiBo zF%KQHepn3MFdk>8)11%T8lc7jeyEp%!aE(}R9vLhOX$rQ38orbp6X2$?-ZTe?wLhg zF66=vN{E`Y)wfld%*77(PXjzEEMW`t4YT#Y=Wj6Ma1sR`6-= z$`!h%my=zo@(aYEd_Cx@L7nE!IZUEtNa-8Md^oi58UUdsWxULcsob?oOi4P+dh1{k zLK$@*=rLuGcRk5MLzj>(Ec>X|)j8Bid;aPH=QOJKH+mc-{~yfk;>!tk%z9cm@p{l< zMr##8ZST_ii+t_aV+dGd^Bq9qweLUs4bqsZd~r}QV6NC@$OnPU|}qhKoEY;H6IV;rRpE(jHbhd8eNtVhEI zNV=i8WpjbdocGwrCO!FW?Yq_}D#@y@`~^gu!EWgJOW7K>m*`hTzc44XVNnl0UfNCy zfxNOJcKNTY!cbmrbhP@sC!yFhC$<4WQg>qP2Nqk`*yCbx+499Vz)zG;zuqfTDov{X z>6k)s7VfXSChO8SS@pIBapOk4QHrv6b@DzfQ7~$(;#6=3;j)TT0?%_FIy#y`3OhHklVvT9QjbeR;_~3X`@_<(EOd=9+=7|O*Es-$b^i376 z$PXQCbS7c>`LM#G`)`;)wXoGnG{tUACD~Mx8D59BKyWQwrSx7F#3GJ7;et>?7S^WD zDA->`@7jnKO!O~UdSs;{(Nh6p@OhyW49u4oAj9-qG6?$fby{-|pHFa4^I zSUoL!ED^>CWHMCa^!?YWxNYG#U0d9vc?6dWnjU^qgXMvE(-yh~YZgRFyv@9c6bvvw zOZb|+7VbHjY(JF09sVdhLtT(ML6u&Qzg!|nKEMRAIBE`2FUp(k{_MW|=;fzVqBQ;F z_tVdiGYLOcXNqktE2U@l(95{&>+#-wV?!EI*aR1c1Ie}BNL=4>oN^}jT(qBRj2J*u zDGe0?5Y~t(_XMY}NVJSd>yL!@r(G$_x4Kjva-k9Wc{;Y&gR) z(ieS?HVDTjMJnh7;3i)evocZ=O(5$fLD|_pv2EiuP(784R_o6leF>p8&C60;)Scb$ z&@?9A%bC!ObgxEd2w_Y)4)@zbJOX}5trFdqrgM1ozr?saJ{FEQyw1z%T=C5)d!m+w zHP)g>=Q-HKae3C-ZPNS!fJpVt?XG5eRq+qT3@Sg|_&ffwPV0!q-FiPq?`Nv{szYz_ zblzA?KBBqIlob|#ZS}qXZg4dSdNfss>}dD0c~g1+Xy1!<6}6zr-!x#fX3n<_x>D6E zmhl*N$ehg`C(^C=LSN3jN_|r9ZDa_xHu|SNeYnH@@yA(#NErOg*+c5aWYuGT_>+P^9no(+gOi|O}Hzb%yNYyS2kKRFkVq|5$)Id zdd^~{c7gkugmitvGwF%#)&SMSZ;#Z3o4-bXg)=&m3%wgQJAL={BydnNb+4Nc$s^t}Tml+LY?zRnM9;O_g}RUrw0I7F z5L*X@^YBvc=#eow$GU)bE|kkQrRKc5sV7nyC?yV9aislR=a6K5ZH?|`iH&Vmwg(vl zn@iPeM;pX_2CtR!md!IR&VC6wgx3^qMB2paFUFi7<_$Z=(;@3?=^81`ESBPMH0C!Z zgt8-cEZ(A@*VT%H-K#)F{Ul41V(#v>UKP?70-mtVUrzhqEOdE=dzYkzfVsZwy4w#9 zxHli!5yByS_iyO9!3C=$Tehnl5VgRLX@lv(ne-xLf4ro{(jos=I4BK4FQ;f#lq8z}jbP=Q zAS@-SaV-hzV0&{Vd|}wGpU_Dh@t8Nx70LP3mI}y#{ZAF*Bl0ezU_cC#^d3N+2l92kgSE&$`^?vNC+Rm4`ZfP)T(+L6R zIOYb=#E`V07QukX9e!QJ?agLZH>`i@!vIh~ufN*;q#)To?+v~a4*w1NCMJ}x<(jS(s` zzKO1p!%SSLgPv6;>ULU?l>aduN`(WaSMUz@@_lrZ^SKHc)+zbg+9ub_lP+xL%V!p6 ziEtOrY<5=Oe}ci5SeBRY>9-Rrbnn*(PJKOoT&8F|{xdfi3ll6*IkmW_jg6Vv>QHG* zo-hvWP}}i~X#2}vRoAdBbD+Iq_qv{w?;v69S*=JDknqiG_@Es|oqifFvLWA3u|V*$ z8h&585FAU1nEjA=#{;JWTM` zlA=gE=7fe=e5XuVN=_V4FPx^D$f_2uL%lwvwcGNr2>=z9e!?_7K!bWTm@i*J9@T?GBEN zcx6zjCJgdrp<8@Y9A3sNFyB@{aEv8@9VYX+}IxN{?amXT%~*2XcR5 zz3+#lR?~kf`d&@P94V3v@4B`(I3I+n#bY0~SqVOl10I5OpC)sIeOJ;(BfTB+5L!Nk z8VJ)c*)+~n{S!mdUymLU-qld(M}(^EUH-BLxCidbYr!95a{r6$Nicbr*QBM>KVZ{m?6i? zKzVX31~lN(p?uO7VhodzI%!)7&FZAK?wRe##E3oN*q|5}mxRV&deW>ug=`teh}Z$(`PGUbu4p1XK{EovKv0&h_7 zpfei(^ckgGpTSR6L^MlzQV2CVZa#i+d1H=P&Z4IfU@rA~54V#gE{67TcRJ1a@A=-` zGxtouO1k<3)Q*2bCX8O6@2Y7d3MxlP(O40i&0|<_WE-;a(oE*qUB1Ve^!xJ;;7%rGWv37~L2u92bEE98zA@=_-L>fm8=5V&@%pA_8SRG zx_0Wp_je=M7jLR&-$81$WSuvpOK4=oSe3rfD**p8K?86R zCXA}t!0rbG9VMvbNg(vj}c%eDAl>P0Iz|&8C9qDDYB~fn6?nQkk z1zZ!sIh7&IbC}9wHV2%rt(M6Y1)yj5)B+?;BJ0>1$z1_KNJO&ESF1G^Ye3|nUgHOs z)1U4wjG74!_^#i>9adf$G?#NTKg9?*JS~*xqdewUw=%fn9=8tBlRNPZ@RhIS#C(kI zRJEM!nZ|Ko`*OIIV*&%BN+manpY96RW>HBe<|&%lp7T~PmQ_t2!FkF#(cct z#%8O*(|-j>f3Y#SdHg-_NvJW8x3Del`J~KI=XZzpBF+A1HwLB7yDyEZA2Qz=z~!qu zA0KsavZ0@#janh@2M!v6%=s2SjSUe^UB02&*bT4O{=;~3%)^}@kA1l1M#5(cBL2$~ zz$;O}j%N2$Oqg%4t`qpsO0@JzrCJb6bdq(Vp^Fr14)FrG(7Km!;Vzl6dY`qKpv}4z}mrdD94?@Imxb zmjoqsy$zML42^jSDcCXF1C$=Ha8vbVP?Rg6>SSP*)b^$w~W$|aZzMO+fa%T8} zndvG0zC!d89k?(08N(_bAf6G~YTarzaMm`bYRTF%u`De-j$ccK5l8Nrz4$52BMLR< zkWGR1ztW_0sR`yItx|glzIC-KS)jhE-_M>m8ID$AGiFY5J}GuH_qAlW1VVatsw1`3 zp**5Nu+Jm5j_4HU1;}wZ%A(m1BmZ(^Uz8CIK`=!k zCLD(DgLjf&{3Y)eV+&*kg0x8sCK5guu$lV&Zu`kaa7u)GfVSsw6??*=(O0r3sl1*9 z{nwCW37c;<7qD(82$Qb*mL&ehv7v!wS33FRlp2Klkf)qf#XMU$iLta?3o zQqIkLxO9+v z|LCK1#F$ul9xMS?_EvwEYCg;8WN43hmYTvnWD7@S<2ANoq*OFQ4p_$b->gSfC=+fy z^;m7609UQZKU?%E8@!h@IT=+$@3S6~D~Ry2hkP1QxZFy8`{L=}&PjZA6A&+{@8F0> z_O5eCW4UGh-CnM@GJ)4W2F;|jypb`b+xVQpPOIHO`w?;H!d`!SuVcaTr^Q&MRuoF_ zS1@z^3t2h;qK1mUua#;!5n=^gNYNVa7}_lGw@vvd(_7rl-KSBLTEm zCv{oqm>03YaLb9bxm(!xY|X*hA}P`Qs5Xj^hjVs&6_3`2L}D7X75*LhQ{#47UFzo} zpO?@Ur|zFyS%%l@vFAqti_MhQO4-Q#??*;?EzPZ8p)`SM=mI6DrkpQddN&krSr`ff zpCw$>vIqTL-L5W8&>IF~UV$l*B!=26MqRYS^OgOzu)f-ptn$l%J2WI+cOx4)zVGO+ zc0&hCm|>+uW%F-~r3rtFmteNJKH+W}*-E(eePOk>#*S~i;{wnU8^ilcPPyP7&Rm|C zSWXx0`0|-3@9{bjmUhO!CahADs_CjY!v?!sLS0TAP-Zm|AyF8vpSN@BMVtW;olb*p<3B>7ZQ-sVsT zvve3YPlWbEpNug1B0g&evJ~@`6uF)04nr(u-y4&Bd@__184&q(%vjuzoj$9-X4x)g z99U24ILN*P$4AT}OfBkycQ;l^p*Pb!#q>{-Ew7tCy+(ZC)KgVser(BUuVcOZB=c|0 zO4;XrF43SjZTgt6@TLs~(wfGFX~UTtp+rqtY2Q_x^7H0XjbI2Gs{R6AlkQ7g7J;O+ z7DiDi_=uzGNOa{}5A4^bvb%EBcQHQo3|kao>mU{S4e8SR1FwSRo{G}Pz6ooDIjPo5 zlbzwemf>`l8#1tad&PZ;;6tF=ONpJ~+;KwyuZt~8JN^W--}AZPebg?{jC9DzRG7+e zc0GPMYNabusJ62<#iDlqh3sT>8xdZ8s!e>V6irjSH_e{`2v;g{ks9>MmTLg)DMmMa zLA~@oDwsZ;%foku*hkK9ApIdR-2rH*3Z2c8WvgJer@MLRFY|gCX4DY(Vr8PPZ9R;_omu^!L_e|ujfyg zH=FA*YZaKRjb?73OR_ccSaarm9%dYm{^TO`b|~$|q8cNoJ~VtQ+Wl*OjqaGczr}>j z!Xw53hyIa$`FOFgs}Of1n&6P@Yg#C4u!1|KTn%Vw`nmMyUdew2&A+(oqv;Zr?E8@z zuN(gDyF)uFI-#5EXCC%40=a|7Dgf`6d5r(}X7Jm-d^|RL- zfIY4bd-$(kMjOfsdKFyZch%d)$`$TV>oxwH%YdUMHqw#!@7z=9d!(Z*Nk8st%#yF3(Gpj>G~#Jhfv)C% z&PV>*sl`0=G#=woEOB`-i4PWc3Uy?cv8x7ZH0nSP2fP){i&+O;bp3i<%c$lGq2R)1 zd!5Y=n`M(yN%9)HOjUoEmp;L+!$g^n4D(6{5f3k4{Md1|pqbeALJM{}& zRLL2@+Kn9l%PfZC$}32DaGR7LHYD6PV5Ad3wwI~oHx)bTh4mblXMd_2@%c*8VoRw5 z09nC5jPyNZ7**q5NIOGJ>!Yp(O%PsJR)6&xN_M=cGu@})10|(Ss9A?RHCNa>#&8{3 z9kgyZp^KjjanegP55I4wW)H@$IOg!b`f%+XB8`PQr$OD^;+?BhlD?Q(M4fTBO$Kp( zILp5DC6A%lJNDex3R7WBVzRlulXG4FRgG|7@u}^Unj<5uPF~Q`so1N#|ELxHPrV2# zc6erfqN*qd?xoD0$U?(K#;@%Acubps{pFX{JpLVbt|jVLqGDHdqdAQbatx7%D)+#wQWvta^{3{k>1&eL!3TbH>Zc{D9u_taP{p;E=svfurY=}e{E zsq67V;QaJ&jL{g|B75Ja6xY^vppgcbKGhj(u=3>rG;+gkokscl&eu>hzBi*1=DfKV z*J8TAcvD#;WW%_i43--kHdg51DbiZU5zH#kGHx-#b)E6ied+J#dSuazVu`zU*HJ5B zlt%b8_^?>5V`OPJmaECtV;=KmS}zlhs+V5)f(te78RJA(P9n1#QDv=`Zcf}qgujbq z@V|KuawIynhHCv+WT~V1z6VXj-{maCA01E34$to|zS5!JZ>G)mtSZWBoa0NNbsHOv z6S6<=fA79VX>j2d?FP@aUm(!yE$c%Hy*{^Q2`RvxViyI+KgZC!ZdHl;)?w-jy?%NR zm+y}v62y`A&;Ec=N1<3%dScw%j6lN?Gm*8+ap;V&IBc8rOr8lV`bO`Ec<~NWqbVcx z1U5?H%-bn2ZzLrdPms~$l6$}^CQUL7KYTqhtVszOR22>B@*5L7=+HjbY24>O4#Dtt z9SUX*b7hmQza8?E-?9AtA2OG1SdxDaQcQTyHx1u(AsvWaI)Hx=@G>RY{cAz03-8Uh z-$HPd!{m0pAf9lqZ4<2-aO6MBoq9+H4W=5W4Fbwp=n6t*2fxuZ_3n^g{*6Q8fCPLyvt^ zDBe24oB`p~ZPG6cpRVzL+jbJJ&yJrOKy41+Emhag(w_+kzu{owXcPLJH2xWo(Hom{atye z)XWk&Hypr97XBGi;9>3-YK*(^Y5_2xAH#v;5X{Sn%%{y-kbOYipeZQMT~Fc-J2Lj7 zDKPzwcPQyplz$`ce{R^7Vp!caGGQJE@FuFxmJCFff^NAPWeo6-5mOGxa`r3SKN0U> zH$k0@GXwDPu`?es0`Oh1GClP--#(_{wV#_pX!hjIWwWRqL4Rngw@7}*AXDm(CgQL3 zS=v>x9KU`#HQ&&?gRP3w`;;Jr$1t_7M60Ju7u0R~zI18CF|D#>a!U za={R^JHNzzqcyFH0U1DPd>7+#_THQ~?oFjarr6^`uvMTO*RFU7*KP#Txhld%t-=0Z zpgNX)>gCsm1+0t8a&|uX47ppZgwxz$#~U|{2jBoG?M|G{CUnpF-t#qO2~ymZ>(f*3 z6V^VT_-w_+`e`SDL1IWMD}1m?p!Tz76MhlS1esBP_mRK0K3 z*Af2w^O5%+(z}-LqqcbW6TZLZKbI8^x__P8Z-ko;NY;F;*Xw>NnP{#ElJe#TE^j;!nXbjkjz#V z2`AA<>H*5p&a-(o>_R-A=J-2p%01Tpc%bjBHI3sK*th`+xnUx0B9*Gti=NRf3_@uOT&jJUzn5=Ld7C;$RG*&*+)wX`!MLT>$S8B83=RiOIC2!8B z+LL{w>)y&(#ID1K!8g6r zY^gOx{+EhH(B%rBqn^jWpX6Eurs$6;52uJU592#zW9Wpr_nLWKs1xKv<>xtoYCCjxTFiVrUbqtvYlR2a-|!Jr%g9vAtN??%WqGkdPbaTG=+8E?;XTR?ZjtbFT~a{0V`iqcnf z0~)gVm#+~9K7@>DZF5T)BEB~^B`)%XM`LNP1YsIh*7TE)na#0Iq2TsVX2W!s(nLuY zcJ}u$XFY>B+CrN3aSB@nCg%8Q;opT84u5=IKWzAHKV_&mA2>!NJbg0R095^O6Km3Q za|Vo(8$EZn5wUXS@pBj5e@;%k|J0Fk;eD~oO&13?6Fm6Tf0}|DR7T-IQae#3g!>CA zWz-Y%NJ2MIh4ms7$@y$7%hYO%XCh!N%XU#+$hph%D+@EZMA5s^I>Is}#)Ko{(w<`g zFYH{*;QHUVQ)2q#kLr#ro~RZ6=gmqrZih8A1%q#be~UZ#pi3rQJ{iOgXNsckMq(}% zqrEOAbO}h??r3}Bz>$|8LEB;URO@$nkRI?+^jB)O`FiO2VplUtL#E{>X2i- zo7a9>FVq#WW=;xJU?klmV|Oe>nwyFgyc9cq$QMzIW>P$$bp!pZmlbR=bkmCFQpPu6 zxs5-!Q_2)>w6Aj*@>!2OL`Lvd3Y+b-@S(kHg%jN!;l)v~rKpa_!vKqDFL4Z8%2sxz9(5H~-Iiz+DkMKjZOYV=ut{7)E&Ksj zrq=Y1MXp|%?8P;C`H5Gwh5C-~9(k7;dll~bom5S!#-ofv;qKCHQx@UhaS-WsxZwR> zH&=-&Yv1+U2Y-k^U?E2AhJM`wpB*0f!UuCGOUaI5P);VO%BInvO!`Oh;$n^Ay7lp( zr~jw7B&Vl7hU@OfgCW|WH> zu^$hp`X?pAb3#5z;4%hNs9+f|_%_}sRZ*x~<9p%YjUfpKdJq<($B!@jwbL28Xtgo8 zVb@5}zs;w=)ou1%l8Ms?Tltsa{j7M+U}+^9WSqO~LhM>=rQNH&#Cq~s)pdOvi@@Ox zPAaVz+(%TA4`nI{hmrc1f%5KQvo6{zyep>e;X@Fw7r?PR(-FH4AWU{orD~be%~=SY zRZDvAW@~mzs)q!sc{kdAoO61T9x2fB;FU;=_KL047c$K_lqC$>zgbOXpygen-kz$b z4(fC{>zu{~1yyQ)&fc@zcy3vVsa9oUI|@9JR3mkv5bklW?zSbG-woMw-^auaTO!Zb zzOQ`+sD%X@-+UZGbvUjzMno}o#8DmLo#0;$&d7bv1HVG3wBOrqp5blUi`fk5FLO7q zZ|;t?Y^rTQyNltu0|)QRY@}jzS0zh__->Z(s3tTqLoR%mXS!F40vc7%c4xcg3u@o4 zd_g~cWl(Fs@`caNQd7fxYS-#7?aVj1LZiq-Pxs{q@~s(n+r|p^cg7Z9Y*fgGOxrS~ z1v^T9PeZ!q%op-|-YFO;ImyM&+^|hb09~unyWQRQ-z+cVP0TBIGza^ zS*Hy3OmenWNn0|Dizpd~+Og^wm4G{Q+*5*Bu`PIvbDm)MWTDJriQwhSA6{WJWLi7%w8MX|lUpJUc!- z@L^vl4ib-G{t)YhD`$n^_Pe-lxbQ^-B<_oHqMSFm*Vv1MA{vELvsb!yVi^#j+p%I2 zD}V60FHT%dqW|EF3>?VenIuLb%zv%ocW4rkG{2U4_9OcU1$dg|9gEZ8gdP2yCwBU= z=U>~=5%-+F+hbS13O*JxP;H%{J=m~6ObSth@!F7`&`;`JIsKI5wOl5t{F}1I!U;EV zn_^5j&MlhsgEGha#bTukAvd1WR(+0gEq0KghYj2gXYBdRiPUuvlf-;7iFla#vP6IYi`#T=cKiXznqhNW#E!bV7V|s^;NpPDBttGsMgKr_=$wqvpvYKb= zhW<;Q2wHQnGxW0B762XmUOoOlxT`HZrdD$ME7+;6CXQD5?1xa`wcmK*5vZGpCcI#^ z+WY4gbN$palA15+O8ThQTK`XxX&%>oV~4?FOy~rj7;nG$xm~0fZyldhr|!Xhvt*0} zJ5p?%LRUE3dgv+>!xR862fpbqn~OUN*+ETX!ifF$@>Bl4H0 zcYzhx&&EX-|1i8mbQUx|lU9hZN7v62d~}t|ZH6d3e}Qo018$^l*-9)f%5=&^&;@rX zlcYvifN@vfv;SFLhy=2{>A3$m$Mq{B5j>f8mn&WT<$LB-JXTF_t`H;8{wU!y6!z_s zaBWg%k9H{Zp2OncL)5~%YrnzxXPx3Qa!wtr2oc+;&#SW_pbYBHXa^A zC7AUg&lf^x3t4vsr%z86xvRO~;+w(TZ}ADu*W|bO-9|gB*lcGzwmMi(;O`A)zLM17 zG^#(iby{%J2?;U>#+d)qCeo?Vn}zYoh7*||H@L+(f-9@gV_rhTQ@V;9gU;C z#K%$Jhc%C5g2;2n>mzPo=&t`sPoaEnv^Hc5%D;y40Ts(wUm5EwV?AZ8v5YmAvBomi zR>s=Ol*`ww?_e|5qaCjQHu9lm@%%cPlDYuvG92rIz4zz>$_e3tU`9J+B}CPxHELV^ecksiZw;Q3pk5$%9>4GT{K_Dx{n) zw2p)e(}7!OZrq(PXmyE9Yfo^~PFq!iYo5&-qj{|{&*Rz3ku3G%KiYtu$NJl_o4tU; z?(W@<(Uc1$cSmD1)jZ{O6gD=d@SGMIniW@t^4l%bRA#&Mi8Sc#pd`wjNOK)j$daaO z0XVi$_{Kir^GV+Ww@f?(U6LyB`+MM7FO0FbImX)=A7jP%fH6Mv`0crbXGd~4o)LaE z<>#1nX9DS)O~0q%cZu#=X5d%vx`tSeSAChA&LZxf-N0$wvXlC>yRD@XhG$!8&A%{6PwJW4n3PN>LL#2P;Z{@)IJ z;Z}?4`38GouqEaO*^+jbRpi+0$a56@Mt-QlL2CbKpL_@9QDQ+nk5ayoM~QO9P@b25 z)|RK!E|${oi`l<9%Fb-G)VUcz4V)ktbnPMW^2aNiKh zNke;LXX~6alVo>gwI$|J;8Hs9iq>jCbQaZbk#^al*dSMyLj2-PkJ1Evf4z(Lz*fwK z=TiYpC@-X^AXw0#XPEk(RphV>j$mmO?pim+oMBJNE5M)DSW1;0;Deqs`Xr*G+BTL- z{$w0)&NL+Io9kV^vrr!PtZ8}kJGrf z8xoh1-hE?Ttlqn>CH`(7k)Y40Z^qyE@q2l#Yec58x9)C8p-%e66~hO( zd0)w&H1~Cl(N|qv6HEvemH)Ur$%MzpZNOs%;6b^%dKok+R2HzPA9;B^#jItm^hw^d z$8X;OSWrGEJ@z%Xe%$bxJ98U{g_wVxnEwZX^KUffU*~%1c!um7$YLr6{*;(rQY7Ed zDi_dOlnZElfA?QDXDJbx(TZMJ@6tbe)g71%D28$Y@cQHhHN!tzcKAKWS=o@Gi1A=bCm3e zI%#=C9gq2-J^X}-zg3pz>GB(Sx|DQ8N@Cwgs>k=S+JW6v&>dnVXWRpIfur$-B1-G{J{Ukcd-}%L& zj=($f(LTX}d@$RC-aqOyYQ|msh37=8FRqi;G+3sZwf?kFYfSAomlJ6mFF_7V&C?Xq zH|eER;mhG)rOTD8Fz-89QgyM;Z9;EF^1NkDzJuv`np}0PP_A92E49VCLV7IzQ!0-Y zww&W+tJ>|7$SJI2Jby=9->s0Bw$r#YMpAI z!2PH2e?Y#4C#9lq4Z+fprQWOJmwmA}vOf3i0g zn04b?`WM8eAdBB}}wlUV< zr%uW}-5AZ!D*+pA3sWhtC_k?}*f@pspe&yMVpsyj+c)`eh1W-itjI~!I|=sv>%sjc${KhK)uEV*y>lwT5m>lvdSypXFto6X~5sdniVdHy=}cGGzhZ?nrU zi983~e6xO3qeQug&Ah~vlQ@a;yIm-jysF5P_HRS>oox7MZ;Sk#+luwBU%Ry|mU?oc zpy?!=QtnPIipAumGxbr!AJW`!)P}z3tef)0(|#kL()>`CZsYM#|j{gVwRpy2;Sn%`t+zPkm zVW}0TjwbSaX^}qRGu@qH9z||v^I2-YqEj!oztQ64xt^CX)jzRBUg2QQ6~hNJEeG#d zHTf;jFJC50-Pg`16+ShXT}Qe(WT5YL;L34b`f7@(iT9{6j;t|7k{(;>&aD)FA(T&^ z;E{h#@c${7Jjv+Sb%H+YlGObB1MDWZN=apZAIv-xN@eX-acLn0OQz6@aTPl z>svf0_%r%6%6VBat=esSKNzw^sZxizYx}G*v!E+%nq=uYZqBa~#llnp4sn!&46qpY zC-kwm3mZ2qoY^)9J3EGnv$=f>EvaK9P0m|pRr$FFWX9}nQOt3Cmo)SvJDZ{UB-`i4>X=gK14I|Tb882S>) zoHx{Ga((!^4H;79D-y4FR93{C+GCRX0miaHVW})x8nb&WbG{N~aV~<6PWh5$uO%sU z9*d!P=ncVj=uu$E{)nyJ-*dl_Kv83Fu*zLhta zrBco2b^Tdd0bsNSWA~(fDtnF!T&8tCY2Y%Cr3j3B_@^bwrZtGThbe;+^k*AfJ2H#p z!u<{09!2;TBZvJm~Ypzp|_Jlprpv)w}jaY4WQ>Gvs@(VM%vSZ;ai$5x*^& z;`bx?jrAO!(3rA!A9F?wW-+gHw>m#PsLAgR?8=mP!&pRj7IVX`jpI+x=r9oD&szE@!nQp{H2 zmvzy!{`;{01z7*WopsTaCnbAF-4v=NpB1q7x$o9Rw^(~>Z+RWhfkk_nc>9JZ)`ai0 zR=F!1Vhec9Es9g|Nw4D`>jpUu^BUJjtY_|v;+YM!ZmsdDJ4>?N(kSq$t22SG>%clO zC-;kP{<~|Ps~m7RvbQnX12|+~(~v?i)C(K=*!12Fu8@~|C7SUL6z5>Z)0lB?vy2=? z%Y8mx>w$dH4jb__TkV6{<%y-TZxB-}R-bl{>7+?P$4iu8L*}J81HHr36#Js^adled zzBI8^iAVvSc44Z?|Mh1-b&u*K{PFeW&oujbQLUZNp5--7_2Zk|SBnK8c$>ao{JqLX z5p$CBY{DOTComqYtr*kRv0+qK`eUQ^O+|-q5__Xh{g6-UW!N$wdJVL7=3urIYt8Pq zsFXjO>SO5p-xT#Rp0=o+p-(%G7s+;OvD~R|vD`7bSPq?3EZZ`R<<}wSEQE}+fE6n_ z&|S0DV#N!-?SVeqWp%OKxuh8H7USI#yjy~Ip6xJo_QPh{*C{(k8=7y8l{}+y|G2y8m%#x z3)kKew0GI07imNsJ6V0K$ypE5q0C3ofdpTqvJKS^MGC)Z1# z74bY>DZX>Nkw@;ff4I#)^jstUjP}v~0SQh2&u{7f=b>}BmEUkbMlRn&&&ncNd`XYy z_V_)J1MXx~ZDo+XyEE>bfFwT`|0MUfyMt-iZX-&EuPV5T2zT{*{y!~RIJiy2a zOM9Q}LqrQNf}UOaK~MRuIG&2GU0h~7-)%hq(jkd*7TMCF`!Y>=l*?_rh5#SOln71H zUAmiW7i90s4~Hymv~TX|kPY1uuR1?#af|s;o8+TOzE>4@RET-?fetj%*A)NSVm?2$ zJs&=o`#ZY=>%sE*OgtdwlS;lAnlic7d>*CwO!}SqRCaASAEry>b9x!`8Bx;MKM3hJMaZB@&$<(}4~X?!FLQ4QpZ?FcI`Zsr3u zZFyeb9U>NWG)rooKd`M_NUie+wtgn$#7pCrvdcW5WyKv|BnFk(258W2gF%DpXL)(f zfQp%&+!P~B_QMm>WnTBxGr_0m+_aw?^AKVi(FLjUPpHr;(R~0L~K2qztNUNwe67@n@^#RfoD9g>@$KpbWB;4G zKaoGP@~5_+nZ2Nir%|?3 z^<7!NJ0O3FmoX>tSMLNiHBf%>;D0apZNbqxsq4q2HxA}Gs5ESUx<|4K*9|N_rDgsz z(RW}Dloq)gZ~3=1YYF9hDUw14wNK#n5f15X=2vMk9wYZ2~DV7?TyNuwFjro>GUgEVLNe^02F(y<4YlN6P+2}ljDA!HE ze7mC0;{)7n%{k8^>I2dIn&$tUIsXRCznz%>?kng2ESJU2Jq8&jB`JaUrT+ng4jOPF zUQ6{!uE-AydQshnx50D&Hpj{65{>VxlxbsI=LK#pKip0>$G+zzvf-I}QhKX(;W%>c zl0>nsWGf@tAv4lg6C)m;;P6$=;|Uep`@6|bPk9}wX0v8zF{B5cIL5!LOUO3-cAZ;4 zug8*|nA;A!H_Hdlr3T0dA9re!5lTzw-0gemt8ey>YfXPm+wc4#8S=}OpYl3xr-m?g z$`{9Fpo^5hCz7e{EX)}a%$#$vHfztGm)b}AxQ=$XU1g%}#%Nx1$~#unR`T{@$?YzH zmkfuDNzdCaif6w$l4$0Lrr)Q44`dtu!Jwu5S>LZb=kww9N5+|L(6jvBf?uS=Oa4F` z8-5XOOgqBoOZ7yvp`UX;`6WyC9c1dhDC}#<>G?ZZi`X5K0ZjRXWCW52mb1@fkKO8| zJQ6b|0awn7^U=!-HJSW031%ap&rnSevI&k@62{hnhI$@h{5+q0Z1bmsrj`;-{hsF) z&if~L>dZ`DkDX+Klh--e+9A*f(r|qeAIiHt)&7U%nXD%>>f=9_eO4NuZK)>3%U8#q7?mSxOuQE4|tC-!#-DdvrXD>C+%l4|o=VkXxAqS)cJw?nZ z5Btpn{!;~>R50|{raTk-LRmWTD(^LHDz68@?bfG6j){o%)_F^f923@!sh8*z3ks&iz=A_A?_-;!ep~wM%lY3ujaJt<_V!k$XT3_sIFn^cfe$zHiarJhbZz zV=+`?b`bj2XA1cI@R;a_{QUHGd)?&6mm9A~H$8WMEBcK6M0=?l(Z|)_^1Vg-DU@n_ zse8C=NjeY3|M`#YmaC4H$X+i?uafovH%jGo87#dT<0c;E13#@UE|IebvvjK2nBSkJ zlWxRm--~o^(j2p7?g^4%$bM(Dvg-&J00XXPr9$5#`m9^e3p?L-BVOdfSMC!d_b9Xn zxW0}3dSW7E%VJ4s2fQ|O&sE&9+fDj9)m9BjzBVy19xy*f#C7D~&XTj?liJ^E59&oJk1@#}gR^f2qvotCNI z(Zv6MkSNbA$x9t8J99dazsO6|akMB2NgM?PwdoAULfwYGUDV87+D zv^Lu~{#9ZsU_|vHf{r-2A8WrwcD{!xcK^)XZzbsOHAeF}4}2iOwg-EjNKk z>+5ybAnuFR=;AzkvQZ1*pw4RnH1U(9IZ{83@+cqX^#MX&sE?<2sfI1pBI0($`JFkR zu`Ly~okRMCB<2IgbVig!(Zy}q2PF<&oGrLOzfHUt1|GDbo zzc}|}t*gL~K6yk+;&!cUmQ*#8Ik)|ykFUBPbN^0{t%mGF`C#{DsLu7jgt7XgENR~> z%z1W`Pcmx?Ri0)sdA%$#`@H!7Z;euURKUHl79P)*mjPUNY5ZLF#GD2x$_m;?IQgL^ zrphI9B;%^^alE9bRO3H7tEW1eHNea2z5;GkA9lZm=s7-pTgudwXYH%yDG9jBbhZw- z%Fj{_O5iczDg&-E;3@;IGT;zc`sV#NJ|E)+h~7~2*s^&O4BJ%*dx7=w&4yduU>PW@vXoiK*-HpWoB ztvU9%@LWS|TkDk@-^lZe(t7Z9G1dd}ovcH?yNGqcJ>>|k(UeA4`G`WP9I_7Wp>YoiM`uoBs+N2*#mUbAR-_e|7H;(w&!abrMIppTH^cUi5ru<2Kt*H+A+g~Jd zpXV5+K1w{zw@dJ})CEqWV{{K-wox{sf z^#2C0!p~d63pm2z$ZaeUbzRG;dSV2OL%R#EFJE2 z@VDVLV;_fC5cPNVdjYQ-SO5P9ud($4USG2|;borFP=9Y2F+K#d?Ex^mM6jHHQ0$K< z4Y;Yb0&bN*NQZAckT@W~rmgq*#eHg+A(stj95$wG#^G}Il63gu{>0zQpLW<)HtzRw zxdqNy?Egz*zFU5K|8Kiu{~t)?d2Z8;`K4Yo_WyD0|NV(4ozcz^^X&PKpE17-ZlCA# zS@3g{97=OM++%;DNdsvAn{}!Xx-I{7-2Vk%uU4On z=)4W`O4bHDJ8=W#R`A<-p)A?I=@WVGt&GbdC#v<77P%vLySe?eIkvyqK6hebV{>kq z(M;7w7`~cATjik56m47tFKgXKQ$EQ3?Gw!WHas6>A$}KLS#ON|{m2Kn%rRKx+R>LUjxtVrpd~bluPA$dot7KXQ&-HEa%#lk|Q^HFzXv&X;=1iDLn|amHf& zQO5W&kGAZm<+!)*Wqrog;KAq74&&Y}a@?G*YnMPeZ|n6~7m$yBuCGJCtamyL*p2^o zQM^D`y=4tGvd2d!wrRs|YrV4#+Ys5N%a&P^JU*$#`Bk=7EPL{bWjo7~I=!4Fl^OOR zvS()lw-#u{N={y}Qf3jhQ>x)WaX8t)KYBg~`=!ObAsO5Tj{A!CJd4TS*`Xh=okuZV zJ3I7maYhDNg6C6)TzLZ5Y{-42V>F$E6hO!LfTi(u3DiBFVo3yV+dC|+EjW0vKeBz~ zZ`?dC8^+{;?EYKh$$dtTZT9=sqeGG=B~pI7U}J6d*Zl6Qt#xhh{_*;FfuE&jtV@Rw zo)ejW*MqORW;_6IK#;#L{~dw(N3K#&@5aU}>*?JV|C_kb*7@ZU-%gow6#0+MmC0^Q zG|u}7OX9h6j_s7RTd97buNmIZOKgK!8Y|hUv~{N0RM%kI8Ml7Km~W@x1oPa4-@93N zlik3y7f`-S%5_O`5P|tFDF3dwK81W+6*ehKPUx@1f$J7XZ z1|WCGn3jh|v9c<=I2Vdy>YJbid3P|?0lBx}_*^-!7mF!~wm8`$rf$HRUH>ZP3EeDi zCQHiiEAk1`JB1a(-tQ^t(2sN@vgLT+)MvDyY3s-Fx+JCFcVYkA{DcLN%L^cv5AMLy z9k1#sg~xpo(X^_&AHO~CBvbP?GEr0N-B!7u?--ZB;}8!uxaS6`64eW$n(h3*n}2ol z944TBcC2ev^y9a0d!BOmu{1hY@`r%Vecgqh-CcaR3!^ipC69!&?DsniFkzN^u<^=y zuWg*6chFr;ZEn<4nra(OJMHHAzzHA7=e>h9L3fGY{Qmv8KVNs9Fn#aONWAVO(MJCK zH~8Hb^igY+s5TwdsiV48RIARcUq|)osD>TYtTXG?5q|v3uptqCd~5i`d4U@g2f~h?W2R zw5TUTR1O!4|J8HPyRR2`+06fnm`Zj5f)72Hzt{4c`P(mHtV@p?`IT3&w2pv5c|&h2 z!KCA6mX!NTW2_%@&W+Tg>D-cPs?fNb@=9mw6MdhV5eS zSi3Fn#mH}r{Pa9U!k2{n(?SeftC+FI-GW!%8^9~?0H%4EY zQzUmx4a54_+0vs926*%Hirjm}Sj~0Jo!%I2)+h8Z5$jCn2Xt;gu$gY29qj(vO?Eu0 z-B69S--oqdgSE@L9c#P|pCMTLc-A6+cMV`bYp-7x_7d}KBE~A>Q>a}!o6x7B?TSWM z6~^BYG=pp}RkZ#NtTD!e@hT+Cbu#j=nq#NBhlCrQcwIEz72-RW(E2=v&NS<({+X|3 zZbCC(A^AJ4IBRDM>pF4yWGLwKpXaG;e2&U}_}B|$;0o=;hBM2#ICc|Y7kM_E zy&Gj`)9{%d>|i(JxjTQ1W8a;QV=K0Twikx8!P9X+5@UPH!QOqw!CpQd$JXOhgLc|i zg|iz6+1cJ(?QHN}=p)j>dO*KAiqEX=;q0}W?d;uwb{6?TIJ*h$zc}5&Uf3GP27eI8 z^DwTsh&Be>8PzVI)fdm*X=m-x57oGS4dZ1pTi zdrLUR=HT;tIWmL$(BJ%J9P5EG7vY_$_&#er=D8*u?K{vu=C~q`y>KC%J&{Y}0PnrS z!E@8>!I;-m9;a;q?c)Eb=R_Mf;~Ln`9?X6HT>Qp(BKJVA#N28yM;hl%7-##HaXjzM z)JO-<4@7?al>g{Gz1XHL@ z$}t9|pPfC9=T>6(yzYqSXpa;Cj|t~x^hfWu$A9a9OP^v5L$?SRmgBu^ zF|JpDmwV72<-IEBYinok>=pUa2#00-ruX-LDRASOHwA7L;QPBp#&i8eAA8S8#p(Fbmq6vre-3=~+ zO%ptgHtGECkF1Ru@5kZ#G76m+q`{yXv*(j0gjdGn840Z7Pv|d$| z7jIiQ&tJO_>s5yJqWowc{OA3!!vIfF8+oh$4V`ErbfUMIN_uq z(quzB9mc#Hp)0L2Y;W}5qqy&kcD_QkwqY6a{F7vJvp8QSTiba}E(eV7*rKOYNg47X z!1!$E4Eb}wzot)yd=N09u@&qS^-eo}Dq_y6b{c2(=%4&Q+R86#>RYC~%;g;;zq!YN z0o8E#AJb&AZ{&{toqVcyv1Bg8O)_$-KEzUc_t2wT$G^1hw?+QcGmTfzpZc!O^O=#p z^(bV*$5i1HF%`1l>HQbt@t=(UWb!Mbn8fDzYn}U?P_D1ZkR9pWDMs$>$EXgU_1}rO z^8DKPU#52OoQ&sX{Zu{qI4Tu4A5Elvme!WP`_=Xj_73fvL0_8t#*#D$^Pv2J*&Co& z68;6?Q<;fRKLIaR0WXdP;M1LK%zgzh8I~zm(K>Cp3T}NV@}F~@TqSU_3AYHRfLqnT zsr`gg8wF040jJIZr)W=~1x|eqoFX2`#|K=xsa#w`KNUEYyHby(aa=$fH6t_S^LW2{ zT&8>u?^jLCl+O}Q0v~Jk8gY<2#rp+C0XTX8AHzw4?l%L-_o)2^z-f+ylEC@gqTj&5wZOqcx{LM-UkAuMO?!rT+`vZH z&wxWYJ~Kcc58;_J_?&ClZYBCSY@D6l2Hxh!_b2}BU^B)#*oE_uY4Dl(5z#BiVu1Y_ z^!34L2g||l$3Z*&kXhmn;{GFc_5|hiq&$wGdHHz%^<#1D9QfV1P2p_jpX{s*wABNc zQ%=J7GX?gJH#L8{h^=6@%)`c_lXai?~`m#c{Cryd}t1wXF#^or`2=XG6nSE zQP79SOxiNDCLaIE_>boVCtJl046zA=;f?iSZ&v33!+%v$zoWQA*fYAnA?|~d+|5rG>mhw3Eva@kmx06v0 zc26G%`zvs(9q{ecV#s8`zg>CYHP{0(`dHt~!FED-IFHZTJb?%IK;8-kPF{>xA}|){5ASuevwQJed#vXv$~mhFJz{P|hWvVJrfhc#T{8r8sDkd- z9&39FYrD%QWT{;dcpm+)l`&rEQG33KV{Ze;)-J_3fctB4f7}fY_6~H&Sm4Be)D znM(TQI?#90CpLna8=BDhTPW^@8!_5cQwoOGzWdS?(#xje}z#Ujtu!_!b!;1 z^RaF-KL;$Z#s#B61Mj6SPK2B!SZ7(cC}9naT*hI`S6eO@>lg#BZO9A0L~ z$DJ_;8}>~No*y?%$jkX(iafz?jCatUaJJ+T2lvDBzbVFR$2

q8-wCD916i<;T10 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 wsQ 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

i+X&E9A7-t(bC_MIo5GG*173a zp0}lTfLI(SHW2utHGZd}+9O3@`IVtTqxVK>zfoEq!O5Wa4qASi({l@}Dc_^|-*GpJ zl{k~_5fULHr0Ljm(ruEne-d-sxuiG0ayhTS4)K8AFE^;e^%iK_*Cr?0k6k@;MzVuR6*^^OI2xYuE;1-KK9>&{)*+Mng%=5AC|iZE_GqUxI5j|Q zHNIo19R;F2)a)&3fl-Ig$+)hs(~`}31tFx>Mq-aUg6ZnfFZKd�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�PbV?DJ)2 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 ?1 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

LmAqS^|2 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

pFr4mEL&Y4W7x6AQcT7`0*F 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

  • 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Ȧ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%0DPjQ707P)6Af1us; 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

    V(iL`~qeViBG`4wOY0u`Qyy` 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�J3JX-@?ZZzK5#QcdL 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 {} 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

    tlo;aAzhdT5dG+SQDBSK_nRx0pZA9_`m(c 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 z

    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

    Zimvn+P|-g_AhV9^;pl28cK&pednyHqIYMz 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 z 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

    h`b`U^LnN~$oLJH7{xpd zalYZK*WbbIW4sDz%%(Q2Z7Qiv{|m{qxs{`(J@}6;#2I&>!csE2>l;>eC1(=f64| zof#tB4kc=$!9l$k4-l-LN-92j7jkqJtbDhq&x#uQ(*$|-+)>tIE`mHt!K1AZj< zU|fNLa`GyG{^2y3BO1gIf(IH$CK7C&N z^;GLGaIgZmOI13V9$)&i-&Lj1C;db7{sQMXWseh_%+BnX?h#}U>t=!yQo7$}Y8}DR zY&A-WHhg#o=An=s|Eo zkd*_?kMwHyC{HFg!6^Qg1LSB4DJRr8r>F}pfhNPYMsif#N36eTPnf75RFU^JyA0-Q z@)K}0ji<)P1@Pf^rDqVQ+%^Yz7-soCDM)|VN@OX%XK6hi#rGI7vWBa$~k=x?P z0}EoCUqF#}V%4ri?{P5ZlqEq)$<6o+uz>p4w9)Upke`7JP%ql)Up}*RT4NAS`D0z(wPBy2<5e@%0xikAd$Wu9`P=DBbB>!ZaS#|$ILnu(< zG6hlVWHEB#d)D`RmsDKw`=@LFTw>XY7F3sI5MXsl-xHCYBRS{JkGyg4`=vPk#aKA> z=q6b6V&kU*=(}JG`ore2Z8jf5WrC-N+OL@V9YYSeTbmx} z7LZoyJE=SN;4p~4I!X-c>6^*v>4htvbs3y(&u%Da$w(&Xw-v@xwNzM#fO&phw4#<| zajg2jqV4E{yNuDt*jo`HT4w>4^4#j>p)|rd(28rCwA+9n~GCnc5q@3(R%DafRB#?(pK<1KW(d!f^yB-An%vmqnm=#|& z@aP}`YF6ZW3l(P&i(^AU7MmQ@-+OiagZL#o_qwVCk|qcm#i-& z8$#bqzI(+rJOKvN{1dTnMJy)<{BfZI!CPow_%xi>)7z!&6}1qkc*rtM}UWLn?2o zdnb_Z3?K6S!VKQHX(MJQAp9#>QpnITp3-VB@AsliOGsZVPU*Lu1hDawtq5oTKbJzX z={Y&Xs*E%42n&|RaQMlNzYsPJHRsjY=ydn7eg{^JV-9}%pslmZ{Gp0TUzjB~4?8vLRr?|NB1Ww}3_z#ms3_1(3 ztzKnwyf7D6A#0Abv`!5*t23EwZS8h28Vzfi((BSe?gRaf6+PEX<3 zy<4GBIGbMyej0x@P5m*gy9bEWG|p|7n7O6z2RVEFwoMWu?$7#qTGXn+|4Khit(Q4= zXJ>*fF%oP?OXPp~zewhnot!qEe@drd{y_ z^;AUXen0A#>rMYj@P_4BnS$b2jVWjJVlxr`8wGU~@|KsU! z4l6$N?P|y`uO=2Ye=T0tn&_u;Hu|<`$V%^5=LM(ba!KZ(QU;yfQP8|lf8b0zL@l3Tu zs|PO7J3OUaJN7?%IMKUfI}da^1O?nIm>Z_MSFu}#-q7?X>k2-*!Ri-{5FJ+USRpel zPi);ZSkcu^Ip?DArUL;L$;ZBbWF?P&`F1`lEIu>i{dlI~+J|LZTU)T-181y@i%ZSL z`f9hZpv%2F^^^Q^E?9)U3(VeL17<(^s)JTBbz2h#yHj0WK@b$r&&U92AT%@{|M%f( z_M0WdPWE`Qe?&>x;7&~Y%#yd_bUMXfy@JF|Wf`^pr;$=kugm-NU(8)W3pq%=r&ZSaoAF!t>yOy5ypo%ds3wjRW=KOX8EVOUrS_KMRx?QeHVSO3D{83Y=_s+>GV^!9F~WmWhGU zk0E>4eT=9y+OUls=#om@X74HM8v3CGIGy7$^)F}AKYtVd`kU0N$9xL?IUsA$2)k}f zl(xh<{942ster3$@6nU@~((sC>dt_uo;`M%0M3wRX8B??9H`rvl|57&VTG-%y17+$$5OK8$xI(O# z*a;#XHT|uPDCi$|5*X+%t;!C*gSJ28<^qou#AQu<|6PI_!{)&sZN#UO$*geTAD|ZT zAz9+AEGcDS3u$}%KH?oE@{QAlS@?D-6#O^Gj95|s+N*`#y94B#!)oQkciT9v-X__# z@XJAbimAlLVRAigCeQ``BpgTxmsMTY75)Q>1gsl;Ti0`(8H%IiPhFCI*pk;~V}A32 zMSy1Fv*gn>7=Nz1Clh5_@y zi04QLsgd7}PDh%RchPYSqY@z7GLNanXT_95GlyhrTgXRAbB7hWRO*khE3!+{J`nMf znp&nJ%?}rIPbKlX$t&$et!hcNP#R0aysDB z-rlLp|MF8tr)m7C_U181Ph7* z`9kESi{Fgwwr)&c>aEl;n`Al`o6lc1W#uNMKwwS;jFlq<3N(HrQO96lBP3>&f!;Nn zpV{~V5{QtG1^fK}H{hJe0xRCc7Xx*StB-=s)Al+z+qo7{o%jlpuvS&Nk_w_r#w4?6 z=rJ!_7DmVdo<28=e6$2e|C(*~YzfUc=TP+7w=KjlW&^{8F;cj{EBcmxGD)G1k&Gq6 zor^qVP7kUTNV@?pDc%dT_xN@RrxisF{$!N9k$cbPlau~aqn#`}E+@K^tw)ws zYbjNbU(KF7@wtvyC^lb)XT%G?c!7x3>ZZ>^s@f#yI1#I=gERhF;O9rDj#B z`WD^P$a=nM_K^%F;%&&ttDzJ-IUx*YaQGb~OK>*+{JvY3DAEQIQ2yq5Ci{Xp?IwZ= zc3C;ChwstCwpC6=P(5-EI;->bVX9thk)eEE`9tD#2gII0Q+w-emG& zDJL_<-td3F`VK3ZxEbW5>`YJoG&c?h8QM(6Hxv;|7OPy#H* zQoT{SV{Jsz1xk0tEbaRO(6ZJ*4~`-K!4g`rJ-=<9AHLoJ zmm&0y`qaoL?d*^5-_J_BNt|q3Yi@+qQ{l?mkmpoqw&a^?RHFs%u6*274khJPDV7^O z>>)JXaQLDlaeVFXbpT^-T&K@r@P?Hj){67)iuWCMo<1xHg$uYTm(H59Z*QwMSXjM6 z!(g;Z{RwUE@C;bpI1sfe+q+bfSs+_}O*%60sSGC@=zUW+G)Z`9hTZ~<8zZ(9fVrln z)8$ERuw1!P9DYfTQ*eh^_YphRkht{ELN}`^CCA47mg|3Rm4`B{{Q3c0*4LmFi3vwYEZVQ(Sqy}~K zUUhFGLvvKe8NT}+u~m}0Em12QWEjOG9q8PzDxi zx_ay1YTm>aqZ!-M)y;XE&&&Oy0&ebG>$k3BY`=|k0)qOlJ~FDQdmS-XkiZp^g13S9 zjJJR2LAhzsHvU9_XFx^`%kb{sU8ZBpR7iyr7BfM>%_Ky&|!0!3>pdQps zBEg|PwQ}$XubfK6IaywO>5AIundBKP)nQ9RdLncyx0p}WsGApKd}oT+N26pXOx^~X zDyUIiq4nIN+boa%uRg`Xw+6OZx@cJB3sqIndA!^w5ys_#?8TB*(h5BQ3J}K^l>{v< zePNwE-A6_TIbs)hi$r9N7sO2buVau_7Iy96q{8h_O@g|eHqUsEO+P3GE;!XKd_G7^ z^Gg+KRnR@4Sa&p}eLqXgw=us>C)@P`R;9)0ixcnL#%!+nw4+`@Qj7CwJ}_s!~agE&Y{2Msp3#^>k!$yOoz~sG7Z`K|cu7 zFO}tGPz<<$@}Y7u3NZ`5qZa_7NqkouI_A1bWyQ+celAsM)Ws>*Z-XebBbklfSR_vY zYxm(V+fz!#itxLhC=tyX@^7Irz)sbiq{7Mm2)?7QByftDr4YQh5+2JHm$^@|p2Uv0 zT1py>4qp(58>b&P85htOCEV02QV{GrdaL&rv$X2g3-Ce6Hx1j-D!AN(kVMQ%zi8@= z_obCttG$f_E#v%CR-rhO_y1xX1onPW0bOz>R9>QemqMG(s5iN%IX*? zJL^#JTMK>uc-#O~S9v|a?eoc`R*^5yj>1de6T@%fCO_0(;PO}Onvj^jIQnSTF( zO{IrtzmX{VxYl#na=r2Tfi?uDGRka3e|*}A^6hz^UA|JX=AB6txX zqAYU0*&gMrMPr?BerYe)#-rew3P~zlnoHP-s?hLU1WXa;d1r^h~KXQRf3yd&@V z7ItXnOIPT4Oci{IHydf5%6-2xt8urbt~tgKOI5!`ovpmLP_+^N;GdAuz4e%$&2vxR zu(NpdzaO5iKUx#BY7PNU@!s{>QPFScwyG5KQA$C+6Sd-f+Do0Ec6)YFB?ZY$5f!Kx z?bi?b8z%m_Ejn)KXXyL3|C%i1m%?UB%}c*Wwa<+2zc+6XAG$~+j^beCCo;wuc_B7I z=r!MeRQZQLRc8ci_s24IlVnoi-|Aait=^)xH z`CA^POcMO+svPqD`=T)0C|#gV+|;yGhz(YRM@qo`Tt3+jjkF2v;PCZE_k%!$v)nF= z3y-G6Ehx_iz={9Lo*kb`Jn!+f0eO@~hr%D=5|}^(GKW3Z_P68cmxlb=r#n{5-mt+x zS6k{g!#;e!Ay+WM_;#;2I^56)@vf%cXlW-}`pV`^?vxnPreOzhn`e*bqy(dE2p3a4 z7U+AoXzIy_WI51|ZZZB#ff@UhsxsUB#Bh#;sUfB}@$DVRSs$1>y9*!gu+cFLWRVa} zEgZOiVL1``?Ls#qC%;?a9E%n8>1US0od^XVPn2f{kNZe&s)X`*klCnouX~b+9+rv$ z_Ii3cRT48E=rR^QO6Y}{7yl4D;#6W=OXX~xP;4Y^IPV=~o~{YhAI|4K$A%h(w@a35 z!`sa#^-TA&mEwzTYMB@Th^Gs>)18gq)W)GJQr8mYkpV~MhsujRTNdtxKH$L~;B!_1 z8*lN&+fXv?YBfsIp!q1lED`W>#H8+{J)2*rgWaTD`+CKfXJqUCd~^{AC76?qL|p2+ z@>PK$E%XaW1oC%pu^EEg{Wj=xwRx)EzYP?obCDN?S*g(>7=5V|Z$|pz#Bpgxpd6o} z|0(G^kRcf%YRPeBRQIFk8f-=jR!{z@S9C2@&FywT1vECL)Q?tj5k~3V)RGxN@^Eg~ z=ShxjnE9_uEb*d5y>04}_gfe*irrYuzTZEpUp;`E3F?~bbOSVv|I$n23RXJVlRkpz zbh(8n7*PQJwImA$wtsZ(m6_()?;EkY1k#=g>#Gi^5n25dBW6%Ae^$1o;8RfbJiwZW zi}~*c!PqZ_VB}^0nn@^DCKcnL*=$Id>93wotfoT=#^hy8Aimwr0eQP^$95Yno~mzG3uJtfVidy3+`2X=nBNSpn>1ZFmc8Hde^E zESW8JZ%4V~JW&!M5Hbb!$f#CE)u=#6nVp-ie;-Mhe^?9+?h;UN?ABgtzF>o;av%%) z^2f!KBgE{iLe*R!1-Ew?QN=gqtIL$G3*sQ+{rtT$Z^;}lsVeTvAAcji<|aMx)AHyS zE-?(b=azPVS{A(uN8Wfj@~1wdkjYWoe)F#o!BVc{k>$RD2C?|u4=Q4LPPyl0MpEZr z4Jh?UX=9o8gV=8V!FFY21ldl~K!3Og#Xux4-Ca<6&Ne0&ANURXl=dM3@pmPldygt( zZYGc&aNJ%`+VT^)h8d#Zfsg}Xmc(nW9BXvnNY|OHc7sm5>xddk)(mr2Z@^FB*o1)A zf+(}2_uT{7q;P#N^zjH|`8r))b^Y7{-XludHBDMBxV0ys&*m9xRmM)OLg}v^nd{r| z!JQCuS7lV6Rq^_gX&pU>Vm!uLslOVU#($o&mmqee7#0&8Px48W9Gm#~kH37xqRZf{ z-RuPrAKG5{yNK>!`p!%0dmD2f+#;(IiPRX$+w392LDr0JKy9|{X?m5K!O3EMDOc9A zc$&!bfbt-qH_x~#DJP}sm-^PnkF3K+G3qD(=8BYa@1?zciuySQ>z!;l?-F&JV0DcW z<`_^Yq0LVV1IsxsCO?%vTdHbKu$L(a@b#O-?+X-z*(`{reXPQe1Cwm`^+Ao=fK$KG8 zA%P0ZWzjbwy$aG$jP-k}Sd0b4zhCqRr%A{$bJ{LbuWpmAQ6Y8VVhnvHknDYD;) zCl*)XF%Reu^Y542z|Tpi;(tB+{I`F*5cT8mSG^s1lE(Xo7g5{dMCcW7S@ z*3XT4q zxzimf&_&{E7%`pwh4tc7R(2v_IJomJBW2q>wg!dpm24F+e{kP#fF2nH&TRF=6S`Oa zoF>>nG}t7kTVSO$fLws%DC|plC5WkJ?&(sHQh9~r%$7czNM?BPRAsk*6-1{&xKKd4Loen%V3okvT{ zH5s-8SWRH9G3TkeR7#uP2j!CjFTj(!;o{e~VX;M>VQ0riSauTtOMp6!+%4mwzE|X| z68h-cAb?;$Kj@OBc{O*vOj3LdXpy1NHhnw1uouUIpicj z(_9h`7M7=x7sn_qBGG3eC3L&3veq$A>vM9;=JM58uFQO|`S8t;``@>#ahLO6Ho~s2 zbVOQoaT~TuS#VI*u#|cic)`fK2ejzB#iH{l^ts@vQX|pMR2wmC5MQGofwU`Mw^R_e zd2l8Yudp;?>y_5rd{e8pQtiraTy8iGPsw8+aislZ22n;?1oBAzWNEL4!;t-<<>;ly zMv*$vwvSKt#Tdo%KFmL(6#|(2@i99As&cKx>ay&UI_^OsX2fahL2QnU%!!p-rHfUK2cJ}Je&cCcYzoa#`pWt(7iGx- zKpun}@4z+-$!`~O>`vR}4cmBlX6sBDQ5CIFm@{q|9!{Xyh_o-y()xegq79ykcht)w zIJJiJs1H8bUOI#L@XN6{9G9+{jmS{LaE8HPS$49Hpf2!fPn2r~#cEHNevi!+#e7}< zA*N$S@x@~GbWs!*+|u}9HpcX~t0NSC9r*E>i}j9Pm69>4!x&*jDEoR)s!><6O6k+c z5sKB7gG)qu1K4;f(HcV?Sl=it|^Hr`+^eu~!3~m9(ekXhn99>yC zfYj0-5L@!@D`n7|6?-Mo_C^=ga)xQNLy?LQ2rymPr+fLXaIF#blU z33}r6ujmI8qz1#bGZtuyLX)!##*E)#y>2l>dS?*%b3aJ=kQ+A_=w3QWs7l2pZT%!l z!FlQgDELVCq3vHIdASyoKgzO;K$0ZjBUT()%m&q2*jgAznJ?J5-pEdwCe4^tC70nm zty>K_2bdP^)Pnyct9C+t?`=|FG(qvATB1lkzZVr*n8sSO9sVdw(Ceu%Hn{Yj8NBvi zRSp$oDtTMc+XiMk3JWswy6Zqcmia~IaDB=3$ie_|e=2Mo=+Qt0T@C)wyWHnFHqj@XYEgNF-47eHmf1LmN1NV1rv*t%!O;(; z<_AKxV*5dvDno7m7}+{_-q$k?)e=J!mhKY^i$8oZD)4*a>6biUVpK}scl13O2K^F! z)-0embLY#+b0qrhv!;C)-ZNZd)(t|{%J3Sk>+?s6&Y21qAK+4SZ?7A=2Vl;|7WI8@ zNUaPvv*5rhrb!^MfTbCrIbZxoS6{G4%a#&Ykt zbUTtkJ;kDC`6Xz2m03XX%?`R<{6P|Js2ic@4D7uS?uAT2fys^^em;5n4WR_8U&?<2 zM!)-RfY7}@gs0uVuT-WqxYVV74`S%HvU2r`V!s5(bQw{d-9T(TB6YvLc|BN#a37#; zKe8ufrg9xZT~M}t;qf{2K%3FB&~{fJr%|#l4dpvZciO9Unppj3_CWsoy%+fPea2LS zRd9csX-?kX3esX|``vWpk==qS^v>KA@ZN8)ci)VdzwfrqN7N0OtE)%9uCi=y`4Gr$ zS!bZ`6j;R-q;fk@6qY1M`aJe-#8H%%!iOFC9BBQwy-A>Ke&FBdtaDaqGIV_n=y^+b z51}MQUaP&h;-RNzm%jd(-8Xbe^GSa9cf{v#y~oi7?|HvG@Du-+@=^3} zxIpprzzu3^o^G2-bVl^d#+NQ$<+Lui9VJh{b*Hsq(<2G5tioqpkVRX&OY>8~K-Rh(@9xcTblVluV)4)JgSp z8S_vml-wYBOE35H%e}nMd1AmcH8_`iAV}$MU>Q_=!TQ=c$$qZ04ao0K4A7vRtS)_c z22m&Ir_rzDpSGl%c9w@1^Q#_trBw{9!7VXtsqlwaTSLfU#+=>BW?r%So?!*7jif=K zlDOX#0{QbADZ}&6du4B{z-GXXorowT3)MR)j=y5MahIT&X7I>opgzSZij{xy`kr(j z*9+C_lf~$ZGFUrVYnRf258FC9d|C^;IX@S;{F$zyR8#(u4nXa5&n=8-Iv$+5O)bVb z*$Q23q><$Jf*EekfQFm_XHqK2oOH5m`M_>rl0pq@)D>I$yC`UL4kS5B^A1$n7W|fC z1eiGf`8^VX=j3w(s8wo(xw#kfg(e8N`9OnKO>fUZw1lAvpzb z|Ir(x>4AN+q2FVvIFx&4JYG%nI%@7ETv)$9HwpLnqVQn zZr#ScDAN!!hRgV=w{lp%!t?c;g^$U)ND{He11mV(Wi!Euc>3YW@qyo-MNfR{S=H@nS*eqf3+| z_;)SFmOk@WOpEAvDNsmXw*mJu=C#vX`cZKS{l)HaC)*D8DmMA;%KNI%wV#WL527tP zsCW#@F4&xJt}~hm0?j!fnD(}Sb-e~E(_+g}In5dp0;_yiPZ`)J&5KAcVGqlOf9DK$ zgZkkn3SWs#%uHxvveqX0Kd4D9b~l^IG%D&Mn0%pQ1D&@bdbcJrgQ8%AEU zc^@fh=GOIN7-P=oQK43*>|Emq&B_KkHir;p_9#cqbHFArdy9--lJoBA}~UkKyEvW~iLKSDMiH191jyi7sd#@dPBUGYi#6#q$pVkP5Gv6hl_ z5!;ja0OJFBXjG$PY_jhglVN>WJL|ED<4d6$Vi-YV3BLrgUs{!f`Cp#{>;>*VfSWCt zcex|zY-=DU8)hC@mMqV~P9^}caXPO(HWXV>4zaMSg_52Q{b;vktDvM1#%{{1OjWE4 z7)njbqiG50*C+V)8SEMA(7(kmFKNs0@S*|6d9YrAd9EXE-Akc>JqxhEx^F^xOFD(a&3=JrUgNqOF4{<(4$~(RcKjMp;*QC45N|5oR_=+$daCFa?i__S|otI*7 zaqD*$7B{rgh8}(pU!ZOM{pS;E%KGiRs<5Une>q68X7o4=|GSq&72IOIj|`ueYUhF~ z`BORuzl0mgW5j;``=9J)w5PrOYzcDTpGbJ{<ibyUEkLIC^%hORSHu|foAC=ur}OR8g=M4Qo&P5Q&vh)rYsnS z<4(`M@s3u1{DZEH2KuOkxhY1)M_qUsS4sHaTIgWY1piKCN+aF z42rEBJS25R8zY^LpGRS(y;THOO&Jqi=2Lqg4nJ>VMsIim7)mU|90ss~S)OtJ@d#2x zpk_8=_2(n@fhXA%PbC;t6uitfJVULonTz09y6`bnOYT9)rj7498Y#*H=wS8IL)0!Q z*?D9^wR@Y%xsUa$xW}C*?V{RmflNtZ_FR0$C@EXE_Y@LZ@vierS{5^_gF>sG%W4wL zyNt*Yokj)aey~J;nXt)d>fF0gm~}r&g%b0QoclXWa3@S?{D-SYD^ofCPv6R|n97XD z`okTc8;&`^FyDTgF??$dhU&Lh{rqT2(FyzWIn6_r+w-|0%MYZ9xAm6MCB@Vd9COyJvG!9ge6>*trf z@#ImjKtV{cF1BHSf-$<$y)y!^vvMTYZ|i(Pbjj3SlfAbKRpg_QoAQQpsEzeIGJDL> z6n2M>Oz{c=VLYB8a#M}G{6WfDV90_rdX#pu-V^OQrI$PC7JT41yw3-I2h9SHo_w$$@6r=j>jpIx_m%#YCxl*#?I6~sjA@br z#sG{lY)R}N_7EKMAU$mY-XQexjZmWqOMb%R3Nq#|n1lan8$*8!gHjj1w)`$2iy2eYubKZ@8Y(v>m*T$Iu7mdOH9uEBC-JL15tC$A4)^ zY61u)@uFSzD&`DZrgwRwMjPn%W2^u%lV5a_&ekz*w0m->JWO zNFPLiEh4fP8>_TeN}MRk*`67SX_?tFgW15%Y}x-3=l1DPi>XrmPAVRter9baPV{-`auH}z0G8r>QC=&yKZJ)mn^ za4Z?bRAQm<$4Q>9jydnxK`l^py!a%NbE&!#8nhX^GIClO->2k*zi(XXWY>TB!0Uf| ztW`rZq&|=21BKf<+o;tGI^EySaCj}QtKC(vBniKtD1GxxP`BXCYo{>Gx9{VceW|?AK@?A}WaQQo+AqU{;q&>X{U~T{R-bDqSdqC8G>FnPW`lLSnSrr>WPe1Q& zsKb!ZGm5i02yi{WT#=sW>G|ieu73m9IiyQ#)*rG82Y^mq@y)3Y>6;K|qqT^K&J5%8 zBVDI_Y3mOj<~F&&;153KnsZ#6@SwU9e0RR7B-Y!%H1eU2!mns)f8j5e?1^B-F{`U1Ui_-ci{%qW$gg-?xJJU?`tqbJg zH89EfWUE;f=~IbrTd!;X=3hu*ZWs8gAm8vM_r1al-{Wr#IOk+b&ri?b_oRde>(HHB zW<|`cwo!$Wec(?Iyn^-0m)l(T^kmpU*<(Ja#Jzbq_0L7Ybg8D&z5Y#3V!ewz(+v(E zmA8ROGY>i#*s);Kln)Sff}Q930vYKPg~)Md7GnN$LaI1uqfT2Bk4kIL3uBF5eK&F> z$p7JS@4dQ)#QwZ-h)Wg$Np&A-8*Or6j!$VZ1G(JBws;Hp&l-Iu107|M$s!Ls5 z_>^KVE+eH^K9chG>q{DqM)bZX-tu95X?_FrG`{sK&q2w|kC@W+o&AHlf%=@qf0~1U zs&|1m{6W`;K2x1Trfz~zJ1eqg#lC6ARHj{Ri)lSqX<$nI4lGpD4v(=jb@CNjdLv}f zI76k1y^(zHvqL9!#RsCmScr#(fKY_wI)JmnlR&5&VroaW$FzJms5CqW;W?BpP& z1Zp6^e0<*FAVT43Zx>EEVLSl=Wt!}(QW-4RFpcpzFhT}mfc~yN&^0eyEFVe&{bE+) zp?>h`aqYX!aP}#4g+Q8UP)$|WPO`z&2AV$*7eZ9-t9EtNP5NHNkT>06o$?#4QimJe zKniz*o#@bP^{=c5V>5Lz8?qG}7ps!Z)2PNi#te_GYLr4)NNZ%I zGnCaeM)FA-TV8Yz@OVGc6k$K0YH8C%&#{W?ucy!WNUYlk$!+U&N|2fW0`IBnS^dQd zFFc|OncH_qB{YrVNasI7|J;}rHQ!xCS@D9EozRMeJX+Psb8^bU-VVP05ogW!eB$-x zWB9f9r_5y@SJ$i5!>0QYFeQvDpt|yHmB_eBp>MxZ1M~P4d>dXL-jIfKLdppR`Us5^ z=DL+Qc+njG>psP+hiB@`QZhzG4=)bBgQ`mII!?ZpxZE%hqGY#zi%6vZE-~R(zTK;+ z&7DUhX1LVv-?**Gvw^vg6i}&Z?XZ^er+vx7Wdsv_8j6v;=ynrM-XVMRx;YNp4k2>H z2J7o0;+`C$PQ92ZU-wHWC)Ov;hZ|bqQNlg#c5O6OPM{BtZ#+`ii5{F*uCTH*5guPW+DhsUbwYUZARKRH)UwTW+c&3)*w>p-T>?dz4=nBIdbr-GA53~$(xh~4|TzQ^;j zXm$6O4dXLLIhpOcrkr4nAD5&t>ampK3TVF4Tg!34exB~J$rk=YyI~)q3-l+rYhQ#> z&PET*6j7v2g|x5ortZG2e9wES%MJQsd-_A}K3FTaU*^`r-8>dqqLXZ|1O!#$Gm6Vd zN-stCV55|?9NAjlmNv+2!BwTmt6&dWPi6p$ zm!mY!x_141Jqo;nx&9c@DZNzKpIXy?Gh&F8kV4I$5s7= zM@gCqIvrgK&7k@z&fS*<0yB0@(k@wzQ0j4QLA&wHpJu0vX1X7?r2HF5hh%Yuj$Ckl zU&v;eCQsB#E%N9d@?w<7UUM^Jqj`;)S!V;uGVL3o);6x+bAUvMfMYLJ*7<|J^z+)U zOf#&0?U2e=XZ*n#z~Y@R!32?5K{&YOLgz)0N8dz3R{YMCnGP~c3b+HjVRx_l;fFapQ6+-!ri<@-8mWQk zm-M2za#w#1W7~H8L5W8UtUT$zaYW|WqKdmz5wf~}It(VSVor${`2N3RQ|{>_m~$?D7VS>CY}2QDE<>#ndUW;$tNUn? zCh07Xb>>fj1(`UEGb6P4S@yfU`<2?m)Wd&C0yXf#v$^v`F>)=Jmz6m=pWl(D0iTS2 zAy&6QKSXqC8?5+n^z<7}Nr|+E9`SE+k82uk^^6J%^)Fo6*1T2doA?j)%QZb!E2OP}>Fp#Q#G|2QF{b8!GR-M$fz^>Lu; znLnDOlT#MDH_gErTojZNxcu|+wHjHW&DNPh^advbcq`bjS;T^a*Ipi)w}`_W-ab$e zeFDu&k_br>8w}1Ws;Olhl{?w~Jwg>WjknRN0)vh3$e3^IzAKK)`Ov>-jeP!Aw+<9v z7*UliSsdRmOiA=had>iwe&hQr4GxkNtKhUAjy=yh9oAN*NA?KI-1O+DdtHq8B z$!FJlNO&74nB0D@fts8+yq}^=9#bV9wi_gsB7_;T>Fif8-G^BC3POImO)D`KGpDF~ zOTplem630ZzOLt-W;Y@a$)xg-G`k*sArHyO{?$~ix*RTJ59vZJ|pt`y!N~F<9;TF zWrDQKIKIo)E8_5xg757~FImgL@>kzwvX1>;Gf_f9ffcF395Ya@-g0FFcJrC1c?|l6 z21dx4%!pHeQKv=LJ%8zn&s--e+rPh|UYR7W?{}xjcfHo6AnrwZ;+H?~u9jy#Bf|CE zR;8oEXVm&n2>`$NE`?_3O@8^(^1wqFno!og4>l>_@rVI@1{@AQ?WZ*klWS|%10!~b zg%9Efmiq<6+&bg68E&_Nzx<1;P-CA(a-Vr=m6F^xE}=7f-ScV{+`n0LJob@RHVj_W z2YkQdr{(4i7v34H3hO^DJohiFhs@<^RQ1ISq3>1WhWxulenl|mZT z?k6RX#Rf||WvCy@=6cAu*9KRc6PC_bhJ2{c`8#JW;$?mI`S;W|LBAATmBK#Y;5wb( z&TvCPb@Dm+(t}T3fV07=#(Ma>y{y^ikyp2>zYxx7SXd90gJT8jbN2p@jPC$?o8fY7 z<++VYEVJ6y-H@Ja2dw1jbo4jOoKH!G0PpwD6>lzmGbcF{MiTwDOfbB)D|Ugc?9@3_MbTMy%BTU9da0q;Y#B?;J-{h=N~W8C&qD9FOq= z_act72lukE7Jsk}TE_Xf|HsmIfV0`YZ?`pSk5~yYlbA7LN9_@bs1aJbN~EZ^gbrJ& z6=Ea^`r4zVuPUmltx!}p@r6Bypty6xjOU_%N-bg)2WR5oY}LfNp(GdTmqBR(zMIv`2_l&^V3PK z?^HfCw0zhkaF5;zFhtU-8$)_me;+nwX>7HB+WeNrgmpsc02d}jEm{85Uab|u1&2cd zy6(LHBoRmB_)cxk{{;0NNIemTKnJJ@s=~E~->l)JB7(xYTbjK0Yg$D*t1GS6XK*p` zAuRkKB3w?Wi}+?P@dwWz`@8(vYJ*kii{FF34oJ8jvZ1+36^|Oazs=t{tMzf;Y`!x? zoVh*_15rW_;O|okuF8ZI4E*wL)d}f^lA9gvauX{vO21i`#rR~~TQVtYB03x|2mQD5 zZ>X~2UOnXO+7%1du-y_)R0lnL|(gd{V#rj&x=(0 zS59A*GjyhnW{kNuf4$Br53?tZnh1_pxJKP`7~ysGTVTfLOK;nF_gg)=xbKsX{^K#s z!$DJjy|Hvcn<^$2_k31A%sWO#QOb9LL?|>(g_RnmI%C!_qg}9}Av+(_&Yu~ttCxtS z$J})Ek;$n=h@6}!Q*T%NHYq>U`J#HsT1{XV;X4lKE;64xb_>pqT6IfoIFg3^@`6B^ zhU^|0bp7Rr$iLurs9D@AAHJ_^*c&o$!Y932qQo?;y8c7VZ0qE!EA!2r%7firpo5Fl z7O~BUp=!7geVq;6f3DuNOrJeweh!n4=ciCBPt{K5Q`;+r0xpYcJqk+=Cki7C=CeR* z29%PclCE52`@Z~Nv=l+1ROS*^TpT+}&y{vBeud-XubKV3_E7SG2AoIB1S*th$)qnD zS{f1J5_-16_RkyLC5%!{G1nX7wk5fAS^&lzLJCD==lzGy4RNQ%XnK391<(JL!+X*_ zHPtt5`d#7xCY{vhi-_(i_4E=l^5f2p#8W?Sc_#JmA;twLC;r>mzHO030G z;}^Y{cuTqb*|rCKE-*8zGMSp)vwLyDSSBR=y8p3Qh>Bd^0I1;P)?U3FLn`tJqv*KI zM>Vs1v^m=R%K@RAL)J}gT?TBf!6*KLZ2^lk)KWwMvboLn8Gm;hSSGF+n)z9+({v=$ z9nns!S@cOJF-IGNNsw45J*aT|)p?^od^Ft#Ts=cJN!uuM!j*aYDnoeh!u&`sxT;fA zff8hF5f}+P6W^TC}S_D$h&>H=eEs= zmai*gn{F%j0sH%dO||6`{S->#%d#tu@V%r0%xqs;yrX@V_Mwr93NH6iV`V~HA8_WM{n^*N zzfUE$>hv~Ub!$jPHgCYaV7K*lbbJ9c`ufxB{%8R?-Pe-a&@crncBLDC$sWx0a!J5h z$0f!<9`_2DB@ghsu3RPMz&6i#_s4>z75p9Ta{e%-4L9+JX7ZyP0rSWH5I_IDwAj7q zUNjn8#;eWH%@SIg`!*LT41FYnDpTjes ziu+XSx<*}|ep}IYZ>~k_7F($7p>9X@u*$Si3r>PiU5;PH?_zq32$H388oq#B_#nNP zG3H4N3I&{8%Ika@XNu$bE!V429xYyw1kFQR{0UU*!DF!y;_<$#Y{OD`BH}F{1RB!? zBpu{;XEA|01vK18)oo%vPsKD5<+qoClx0y6$Y?aLV>@#H`oJI}oYu?P{~i!79Uzke zq|;==fmYiVy~Z}UUOF{8e?0qeC@p{D8RFM7pQvi@FlB>&QA36PbG|_>DMd1Gq?5|B z$2!=r0h({!wKeso(C@LIC*_&!l_-oNg2aNvUDuz-lY!sjA zq!ad7!xNvnO_tF_AJQ9c5A9r$)y=B>nYQB`8R)u=7b9raXSRMOOFU}0|HfO;&YXqt zDl{tSLWDQT4aYWZ;;DRUQt|ad*bE?d@sj3~UOSX-2QY-#_K^+ko}&H~^z|ih^`)o< zdu!UOoaW)~OFD^xI(poA*!Vr*^Lx}(-G_@0AOk~d9*GNIdvV|mg!hIP9VdA2vtPNA znfY{I6m85C$WOwAn-R@e2&>Xt(IXp)qTijp|HU)&Q?+x!Emzt~x`;k-5J*aAU2n(%9Smh^W??Otc+6oYb7(atyKkb$W9 zBigy^er~UWZ?qbAfGz_LHw)e=nBKM*VIBDG zEx>{mxoD3P%25^d$jAD6H;(t6nNuawlrK%x9TB3HWJsC~H2o(uTIB-`1~_s=)iEod z7vteaxxJoxSew9K50<_);2I2^XT}e!eAs(JF~KPMVR@NA3!4GM|CsYV?;h_OQ}1Qw zY(CB(4cc;ce_SB)(E=?)6aB9Kc5MDYq{w239=qY0&#h2)W7RpF-p4+2ZSnUV2&pW) zQqh4J-Ia%3_y_gVh|F$7h^5DED`1I{LsM~{cVWpgiZ~00#NfDzmo9GM4Zp<~-UcVL zd5fjO*H=tX&l`0jKqiS;(uDuy z7H>ZO=QlK^xdI9afvc<^6xnC*?563b;4FfA)~vprpTL8>;g%<6`W2ap2L)j{T)%LZ zpXo2SDuQ!|PL@|{QPb2rq6E^{ch1vCzg{g!B)ZAE^^O>%)j^?h+?wO9%^UP@+Xnsv zX9Nm5!}4D!WAeScR$r?WXDs@dZCa`pZ@8t%V;%Gw8k;v>TyB^c&s^ZnD%J$=YI_56 zE7qp_&{kJY+X=rW_#k_%mm0FoHok51;b=nO-PXwUlbBr%*ZCdLS!CARqqIRL@&r>F zzl|EjAr=3*3j4~BxDE~epchQXWDj;+=f%kL26;D_- zcFk+}!Y|rZSK1DQT$5dSy&8XiJdtFL_*^I6f*Zg+ZyfvZ+f*dhbG`r#_V*t|FbIGr zwgYE!QB)UYyRY7Ts3@$P1#@qYgsIZ|F$@g#%?MS`WN(t}`J3HYzRHx6=M}q!pPGz< z5HR?Y`rOfSF*@DC7FDI6F5$8dyvp9UFsZ+3b;iXJe#hTgSa`YP+qN<>^*m(w+a~+O zRR+KCFfZyi92_ZSs7^~7wKCu;Sc9^#tZVht(I|%Ip(%FB=(fucRA&=bb;1WZ6V9znrKZ zcQD!92cWT)(PRc`DV5idT~>d(hSRz!neYNz{1rl9L&nzod?E-%-qF}Q%+~)?Jn%4> z!)byIYm(wOfNqL@pDdlO*&tsAzjHe#b!tBH!^88HzRxA8QR#Dg;^lEqYPok1p(?+V zckgkxugPSW=mc{tZ*#p2RjF<7yJ985q5#QWbWyM}lbwn_Yw#Q_b8Enjqw4BT=L^{7 zp!Q^U#;m@{h85&zV5Wzt!u7~{L>D+VH|T?%IeS|!{U1s1^N8-sg!CJg`An%IZMpVF zJOuc=+-*2Yz3ZGW;LVbi|A2HxoaXE>kVO;j_DqU*ODeUjkpNG361}qJ<#spI#N@kQ zdAk>x1m|z2{iPa!(QHI4j$>usc^^2)zC_dbI7k)yh08kbnRzz|HF)E^rTs+Z|QpszpD@CE3d|GJGCurwwHCG*C`oe(o;8S2|J4(wlt+aR%mmxDwG&R^&+ zz2=Wz7w+2DgKUQ5C6fT14CUJHv*zW=Gux7L2ur2z9p67tKCOM^A8DXut%~K}`xq^t zg%)(l?v4-(z@7mKR(cT~b)Spr2j9<(r|(VaDRR&;Pi(dB?#I<@ANs? z0ZxBm=VXCr&~~h~RY8?Jk(KkGr+F3b+&NUiG>4Xj_2vuf>2JC&?2M_|J7wrQ;xrX; zIBQ3^6+`MpOh;bPI6xjA9fxwkXEt`X!(yg4c9*w38pllb6?eJr2 zRlEGR*>A`*+s8leoP2O|_g*qzIx&$F`s^APGhEud7NJgm0+O2)ZTmsi)}vc~4-b}( z;_``)ENro|{h~AG6bwxl<8BALTIG)S@^P|HcZ&v*bsze5eUu8sQ5WBJlgkKqQs-K7 zLRinM_jWg!A8JEX3qPloUm({p_@mzI70e9a`nVIV8Ad9+kj8R(s&y#2DUE*N?+KIm z>X0=}e)=N#)bx~*#qWQ z_*oKKurFC!<+L#mE6ZtFykgZ{Q1<~^uUIp#xa=e-v90H?sz{1F<|7U~Gh^4ACw=^^ zTMkr!mOwg=w~e-Mkrz+CCSN3wBZZH+~c z3A=QhE)|X8c`T0>x}#ZW2tTp{nDz0Q*QlwWq?hpcrrXQAqL+@jkx037Xm9GgnA#-&5Aogr|>Y z4JqFmdaK@J&A>yEWZSZSE3pNopwU&(K*m_4*1a=3?|B zkcmuCDGC&Q!{E2^Z9RuHbw!%i-L{*}J*o!z1E_`>M9YlUIRMIh9(YxS6aI2<6p7`} zB|8#+1{DU*9<*@=5F^{?y4qm(8{TgkzU?<0t8z{>y0P|}Je&a(uQuqPImsukpADg2qfij$pJAVavUowf!ip@eYB>7~n zcYr43o}t#l=KO@l`Z}XxNu5d}_`A5cN94Y|$I_vs+ZMM&5VW(zexh{<4cA@`VOh8I z*mOQelQK=755;m3F%bNKD+jHt@>;c<9<7$(2Xa}Wv3!_%``7O~bH+C|3&$o$do$iB zkQXVfJDOT##`AauPx$!J*Kn;%mBF^8F+P;6Fwd(^i7PV!>0jSalVHz;Fbj%RB+`%nYqFbFgnVmk!~0!IhrJ{{=wZ@gG_4Jev%Bd=luA zk3GJFaspd;KZjlkENJb>!_KAk+JE#z?_5M#y>6iP|MN-(>2q9EU}g63)E^EH8{ue$ z7XC{n6}0~6EWN3XKil_TVj%X4tTTF5H2i~l9i0DJebOScMYdhga{Z~d? zS4z&`EBvd>-wl&isGyAd@;t68QM@w*+E;%&Jl_&a%zQ2gzli0G`q)a@Fce<3KdCR5ZVK|89b>k3{TTLYIuxw_{)LZXI4b)!XXndqw1%eU4Vl~xHJN*2prKihUN%dQ4~km;3)ZX+!W$9ftRnjy zl@TBL3zBMw>iQabyFibvKd)}FOWhzzB?^8&G3Oz0^(ApHw~A2F(rIK^YSvJ{bbICf z?)yJz!mJHVYccWn?(Zp6G5|?1NNon_;1t*gI*=7FzuAE$b?(0OXNrRqeL##()J87hsEC3s{^OK%f6`pZA9#o=k{vq&lk%<4_-!oS_JV(d}xrjoaRplm+PA0^u7 z)@n|==bkpGTGvTaE2C-bC_~7~A#g(4$CoRA1I2EBoC&IR>74Nz9h$y}{P$%%UwyV6 zMI~Gv^^v&RqFf}|%vT4cpjchNNY%o=O4%r)!7Tli8&77`Y~^-C4g8IfpE;~8WR4lB zPzDvM#x5n12MM zgOpJ;<{dp#`;SEQ>X$&IiMxdF$^4-;{M1hilJHyq->?&s`Elm22m zhfEy}ju%+0l;XBVTdLBG{)XtRs9@|1iv!; zoTf#`ltc4pbU0KIUsSdB)rWxrTdl)vL*qkfQ^mmP_Sx6ql9a^C42rI&7ufk6S_+04 zuCLSG-d&FMJg1wTT>*Ol?#&xI_6$}{=R+~~^~)qNW@W0xzIqO5$$4^Bti5OSypp&O_2{A*`PpXClHS!^c;UAhU;MA>{w*7PmbaxrE?N^&SF^bDZh}*50zpMQ%EQO{^q?6S zdg=qBTPwpF`t6Jf`y3Fl7{mw&6|#4B5ZUb48Zy5{g|sGwF=hfXTZ*9{g^|dda}WKn zjKDs~7N9$Qy?K`Z+1ebN7e*Q)CtpfFQrva=7i#FU7 zk;WMNiT^b!PvZtpicTN6Tk))fE--0y5;!a)U3r@Wn%R+O%nGa@nrK$S0G?RjBs1otcI}M)l2EFkkc3@5N8Z_8!nR=MD3iJHG%Zv z2A>#TRz)W5!p`JO(E^#%KqO`3sF>rDJt$mz6uI)3f$2cd|HJbmq&!% zx3G9|@j{RFaHEirgMJC)FG;eBD0^bJshI_=#~fx+-n9GmuVzH_@XrU6;A_u*6l@fS z)IMiX@J^;!BeD`;Cx#0g_>ZYSj&@91s!F}KE;jqZAEPmsTvx7M_m8@Nfm^`En|t>> z3FgIB&o`RXe-^oD-wR{tXgVM-m%CHY zt(Pn0MqR>k`8^S1w9QzbyZVXMO+b;@GChahN3JCkZf-?=Nyc3B%C7WX#b=b;0&SXm z9*oHa#@kzX(414Z9TLSJqp=^TuJjAUsE5B{@lZO>{Nndu;z8@EUB>OPmt5Z#pQFGx zcL)k2LiIgq!r|(DuI?u`x8{2k=u}Ebwq4H3a;Pl_E{hZ71sCWx8a<%Z2v#cm)%r0< zr}yzGeN5iw)cL|DnOvS!58JmmzJ;`i!NV69u{z$HG5Ir8D*2nco+sjw`u-F98oae`6JA?a<6d=V1bP(9B5us=#{ zw1TX#M60|(Ir`%^xl9{8JIPe_nM&oZtkq_L1y{cLwa{7zSLm{d|(hAV;mG+tuligPeMJ7-VQ zi%TtTfzrz^ljrSCG)VEKQuS4MZqG$)9;g_AuBNlJWJud$1&L7DgOJ8^i?Zo`(;jDq zst1Km^O~?VnoAOWuW_A%AwV62l?<|n|hXR5XL90fS&d#6g@iN#NALZQtl|#2Od!xSneOViT%iZE6rxD~VRW(O^ z4rTE8kED|xl%0D2^&90%2D+Y|Iybi<@+2k;khh{65q7JY7+2*(xnO5{SgHRU+)9q@ zPB>@9n8*J8js^D+%PJa)L2+sfSOcth-RHl?2Cbe1pt$^fco*$ZKmTmxW|hZ#n!r!< zTQC@x%g$~xkB95K`EnOy-zufW55q(DJT1NgPR+MrB!>!3VLNjdMfFbeNQDnCm@`dA za3&tEG=-&xOxWcq7x1%d9-3oWO94QFq6RYTDFrQd$scRG)R6tuy>$dQVBZ^5N~$er zEjsQ$qru)18xkk)O`|&24FZO!p^&JT6W`87aS@<+_)Pb`n;*OWUW3FZcdyTWSMEhy z1!^hMGs{D|b$KmxKqE%sRbFA}fxzE}sWRW7&csbdnNNf$}5fR05!VL;#~6vc-B4N z@Ha4j`?Dc9QW39sy*aaKBIfH<$}XMlIB{<8BIL-8A?MpKZum%bDTSv#jgL-x9-9r1 znVd>p-X&KQ44BeZ8uyNU5-PtO|2&Essrtt3RlR_Fn0y$^{~QWccwwZeN5B4l!AM6y3L@%VV7H+wEiq<=$yPkD?8>wv z0-ng-KNkq9jF8&Ax2VKEz?=5u2J~e2%RO9Yj}f0+B4ng|nD{57MOAA;Ipjw7uI*Z( z`SHho?0@RL64Uh*3Sdw-Omf+nF7K*G4L2Iie6cv*Wqxg{U-$yidP;{RCF^2cPb=pI zO6)!b}y5J=W?;6-FSICCo)- z-1xl55Lj$T_yRa8?uzS|)6{}jM;FrIBbi;uUw&mU1BMP$p;F=m?Wr99Ghy%gtpG`9 z=D?X>dPuk6#ajn8RtRrN9s94JAFBMuu{|2p<`anAhySjvV*Eiae@Zb#Q&Id1o364I@lTOZEfNW?}(9N{PScylp*_dEMWn^~u)+LCHeK(wC0=lUM zQN(_n_3Lw?LRs^y7Jek2hz;j5YX=?YQgp|9x&c!TNfq5kGbm>q^_6yK`oc-b?Tm$h z+|%Ui$Q!86{D1f|&Wg&%xn=he?Qpr?QA>B%vD9FRyqEi_LmSnT)DhDOeaJqF^X z89{T|E#q11W{0Z%jv7Pi^bn2aJJ@q!sb!ku&$$qtQ}g%4JuRWBWtDM?*Q*xJ<@%M7 zly=7Y&X^6W<^KM8XMHrX8f*5te_F3i1?!Orlnxm-oCW`7Vrl-m^KL#j`Bc}E`J&DQ zUgxqtQD^V?m)>0UB9n%FNP}i8PcOG=q zX;Xg**#43)@vC+bJ^xVj^GaEgVQ-!{iQ7G+EO7p`xA5Zlg#2SPBuPIq1KDO+AJ0$8 z^RYJ{z)?iMH^0rft@f4=GFicwcCsvS()k^ZCwb{_Jxj3kv)ap#{0Crm=+d33UJGAm+i;U@Fx~pNMjDZv*Z+CwUQixz931;F_?TB_}6(W98Hfw zg!>c_T0_Y61iHZ?e%}(>GlEICV{7=vFuIrp~?ZN zo;I1r`^H=U_&rK1t*I9}`LSp8%V0Pc9(>-WeNrB65x!DREB*g(qR)pL-0Rx4fADPr zXDaZN$$>Fjy1ued%)j%f`<0w_i-ZgTBEST0-bglSxIGD?z@YN1E=aSp7Ff*nJZ}~3 z$EyJ!@kv=aqF&~97GKpb%tpWG=8XeT5A%T%b(C ziYqtv>@s~BIB(i7m2obm+4R8JX+Ll9(|mtD&j?%#D_$fCJr+KSaTIGyLUy780l zPdLz`?>8CK4j$=w0xE?m+2|~cFXwv zd>HRNqcWP;e|{~KEC1a(R4x83S#ith0}-5xP;_j2t*GaQV8|+=|FmyfSe$;tIAZMV z5f=YD1cd&3;#}ePZ`sq7loS%!H}Kk&GYi z%X+)-&MCPJZFN;~7hoN|r#g;;%H^3r1LoIgEDY*;!#;|c=z^Mmvi@qW-kd*+qbbOc z8j={NIiCB9z};t*`EP`sIYw{A$~H1XU1mO}k@8fG(g!5<;UcKiPnF|B8w=#7+dY3n zKXB{BojNF|0M&y@iIu(#%@YFmN&Wf`Yrhz?hqZ zpnc%i&Lilb%QiuZzJT6yV#H&Os6{ppGAxvkZI}Bsi~GcZOm##=E8dYFk$siPM?Gyu z$fYK5^4`xEBcsZKWr`w04{t*f)SsN<(8|}cj1FblAcF^yXrVg{WuF6eL-B-75EZx` ziv}Wk=EH=M^#vv5*U;jdiD~GJj9!(mY#0rF7=`NtjsK75xz;Eh?_d07g2u-GfL=2h# z=cP=cYN}H$1q?vmDIj6_ws?2f*R&V9R|db()UVTx-NJz`vNXG5-}3Iv77LD>I~A(y zxgZHBB}cTj0>A1N`+}g9o-1}G+dc~++hDvVv}mu-^eI)+!m&bHxuAvmdjQ4ptgJPA z%)~P>Z(#M`v=A3(+6vDqgo&%?w`efrigi7pFMvBYl*hePIbaPQJ6Z2bi(~NgZuQ)R zwF-nfD=q)VmB2NhEmr(73ZJ(1PqQ3FM+~xMOV06`_Vytr&>AawXWYWtF@mS1Ufke7 z4bx<)6y{&@7>7?Z!)sIM8-uU1;rqbU?VoE&;8Ids%+* zV!V;8mPLO9G`rSdy#2LNps!tw2!$r`u+IM@CS5_vWr#@@T0(Q_WKqQWd%W>^h&~me*^G-TVIB@L1vFBZ(iE(>El(z zUM`0R_|No(7-Uk0>xBEF3?@~uK>MLru;^65!`*FnOQ^J02LFo+zLteo=`I}fy4#fY z_T|@#VjoEdXN!J7w&n!A%ri}eVcFllFCA0tn;I)1Ok^L})_GBue8c{{)PoL`v+(>c zQC~oldBrv#UQv!$tJddU%kq)TAMuc_$a;R1qc^(z_N?g>dWYx*V)Q_f?tP$aJ!chR?B=r{esWk;PnkRy0>0TP82{paKi;h6|2P<4r76f#}Z3%hhaZI&1GPEy-yxz{ev$a@0z zr@Ys$mwt#?uzJ1H(_c-1T-b~LqMIY{ZPf9pBE5|eS3Qh4#ssUh=`MQ?(oHuXSNX2G zE}>5}k=Z%$xxe`as)JQ-w5fick@&d|7(<20K?;uHqcE&9F8K&tkG6c2Hvs-xEO%a= zR!xu{@l-np$gL5Kq5MW$fZKhz2!!g&v~g820nBj^mk$s8bgY7;oDp`$z(*g#NQg%bZ>`c}0!NduniUC6!}XcUAKGmX zg-;|ieMwe>)Wqj+x4!@^tgh4aI%CjaiaOoPat!*m$H)L8~CMN(G`mKNVRAsb|09Y~gz#@rsuIjw{M zOdI(=3$(ZR8k|5Qt5I0Ab$*_7<_(Te<;5)6k73Ik77C^0q8&u0w6Jr^!n6Ko;5lG) zfm8c+XK}wWG+gN@%l$kr!pDy7&;_A`62Un%YERGKmOT) z`5$zPt@?GRMUiy5_q=9AqXgtP=Xt6r>Y*R@eB0w-*~;Vw&AJC~!tTlGOgZFI zV}yTav{a@V3eQJs*QeMvsRxRUF9Th+3@1;`#j^DZw6KiV*e_hWjF3#{V+bQ;W*?W> zmO-(GJUE-K+k_e^(|t_ncx?Sz7H5LqHW6ED7-*vY}lYoW1V7-S%E!mS$&grm9jEZvV~` zz!H)#+d@+EdK~^yWQYjyE5YZOf8+a zo7X2Zr$unA&$u_Q-&LE9%lQF}RB)R6bIsYA*3e@Ee&z#?SLP?VQQ6v3ny5K4qJG$= z|GK@2yw#GV`7Z!7u)mM8mS%;jMt=FO==y-W`!g+@aT5{BB#0dfOCwi8x!qkpt#~Dt z^B>4BCu6``?wDUQKuH4--WwTyRJ0*%vS^nrtOxXtM_hZ!))xC^&{-HDCXg#=N8y|p zd&?X`Y@_JQFiu3g8ow2*(6rg&KYHHiT=UyXf^@0QMgqlnkV@lHY&Q1q^kq!nqL)CH z)zUy>OU@zojLA?w%qK$ZRn8N}8j)nWQP;zhUOo5bRomBO83mVWjCd{(y)J&}TMw_R zht9lmGQEV#>*x9n8ojz|wd65D1Gj$OBuRo6E8^?jf>Ij4sB%j5$riZTYA zBZpSrI@6p7L>X)Qw}0=EXKxmb%SSdg0FoRxJQwukFIR5!T+3u(Kn7!FeOnA!cejL* zY8-{JO>s^B7C7PT6{^Z<)zf#p?pbgJ!;l~l9cy=pO^?uCO(m|ASD%|HmA>p=XFtqgG z>nk3&PZH}xTo+Q8M+$#Hu-#N+91abEAl>J!Tvy66&JOO%+0qb84Rr+u_ru^wEc+#_ zgR9>V8wKK>-Lm5&Wk&W%$tOr-n z=b!Un`3YEFCKvCh)VSP843o#|0AFoVkRdF#z%j@_-?b_DaI95L23IF&Z}Q)-n8**r z%-5cm`iP2(PoBEGe45wIf9F!oC40=IxrGJHO~`WMl9L$>2K#(N%h6iX(b4gG72{|s zD=YhSUFlI(Rp}>L#fMc@d8d0}i75)#BLa7~|1mIHI{1+>ssAQuBWxYH`(?Q_@%4Bg z`a18U3^HkrRpPclHf_h}f!1Bg`L!;Fa&`7jTQeKrUhc>8!zK{DraTX9fO2kDC~@x9 zvQ4#p_fL#)Fpv}y<6risGD%3gVVf&!yl@yZp*B7!qZsf%<|H$`ygHpycRt z(9M6OhTTPPZ5}fy0zm0w{|LTX>=(}LbSTih&Z6)7zOI(3GLa06LXye$Tn=)L6-r{E z#cvhlc1RqDD7`Z$8)DP9BK^xJ-1u7X zp`aXuP+gM3FB^P!k-2!kMP$)~%PNz_hE@DsUf}`8c57xXrM>2K(cgc|b$Yr2H!K@&N z9kvdobSk9CgOqPCib6p6xRqRcF^p7N!FZ2xEg^oEQ&$y0k^k-|=D|fs$%$_(*v%u7 zis1FJ%Toiu(@g0voMEh@go#QocQHu*?5xG26atLJ(O(v~=j~gG|5R>0Xz9)$a7|Rb zV_JRTv3%JLM>~s)52<0GsKk_=E9*6tCmi!b$Lzl~)#ZT}WFOWICFBr_jfkWj9Xh&RU<`nJhs!e&(MtihQMPbdAmN5>*=RfgiSM2Jr!cu- zcA~#6VLOmZO(bxHgtkQWE z&>wPe%U4ljm=JZ~68oZcd1N4BqoCY=u~ptvuswKaOUn#_ZODzYq^b#@DoyGUW4=oaf zPlsKeN?z_-GdKiTdSiJmO^{h1`bq!c|L(PDZ|-t^Gb(#I9XyLJOUCdh@A%xW9#+#i zC-f_)j$#&#Wx44-0Mx)IaK}kPBxI7UxbW6KOrw2;;%kFvP35fw82^y+_h+7Moeil( zAzv{{_NF^_@1KHrVjMrMmo+xr z;-y@q7l3l)kS~wZPRtuThsCpOyu4t@j$XS^KyD=ZuSLqW!lRjA#*>9#)4TkJy4iI4 z%~DVxA;&Zj4e+=2f_-^{(kfoQZR1)YpqFB9Z)uhYWGv&^zY^bN4I9U_QR=T+;!BLB7Cj@{?l3Z>Gy zD3N^5KNowQ#f~LQ`uI%vFI8hW1J+JTLX`1qhkQs3z<)sWl4jbAxd8j~&a~{xh?v2svqMcTF9_H8M0`S9?p$^*%(gjv14mMA9+XmEG5u+{x^4O>z0+Ph8 zZ?p`?oP)Xdj|;t^k{5$ym*q?3VVZTZC(DKL1yX5T4gGW0R(akxL!)E=q8Q;bC|=&1 z+Rai+mO!a%EIEJa0{k1Xc__0X>Qe!~qxtO|HuQD+sCm-eL8tJ^FD5e{UZCL?=(l zgdO8MOYS-Ohujs*-^m=}a+Q?BK#P~5f38~o>B$&7!Nn_KT}mrOfb&uj=214=rhbkfgqG zwAWFYJ%EHyRbj=%-SJQjxKBbMA_SUR7JocNDkBvkD4-?heh!jR=`oe+aAWqs!B^xg zL-8O&D8il z${*B{5gO-WzA+Q;JCrAWCx;u|-}B6Rwiu)mRx@`Z<}GFd&CKS!U6EAH0QU76_4B^{ zLoA`%f{B@)zK9B5@d_;- zT{cYI;4A=-Kr`;gY%Ce4LuEml#QJX>9{E?7Id^aIz?7BqQ%*W;aIWgTf=XM=RS))j zLD>XPsII`%xYH$??g`|^gHNX`*GAWXzp;**$DA#sswpj-+DhYFSXR;Y-t z;^7YXWyGSwMfa4G)b(c>6a?jkkK~UU*rx8|6bAFonM^1gB3wOX{Q%)Bxh#} zfm^IXpd95(6YE|npd~j3 z4*bd4$#%5MVtp7KtF1>jlT3P6)`ml2!+}5n<|`LB(1HpJ%#W!imq+Z({jv5>Hd_)6 zvSh62=JPMQ8AvdH#Nk~Iy{O4&y?yXDdG7n25%VX{?){lDZpZMIav7+G30BDbes=qH zFIqqFb|j#eMb8bT8z#^i=u<<x-zQeu;0`$y>BH##{$pWgm5_XI(>cebo_gqX8l~ ze_Nb_a8g^X89Z}{XjC5eq>;GyUkei%5BEL+4*m ztIU7OMbBV??9wuQ=vn6Fm01o0{JD+Kc>xTLjh_gTZhQ9Td1_%uZ)XN@u!;df=Vw0W z`|hR5tBh$R0*5#*Y|KUn-!~)4q-rRXE8gKkiExE&m1FYkJ?A z$y2>7`+E9urtb-v;|U6TxKR-ZB_kLVIQM-{y>(qLN`K>S3){T0>1!091*)OH^g4r$ zst{oY3!XW{5zA6D6o!Oe@uvjStK^|s0&^ToCuyw<`fWyr~#`V*%`1?m0 zb?rDa4^iC{`CUrlp5h1(gEN8qs3vpxZc6oV&og9gw9O?AKd`Ix^?7Nl6(pO6<;GUt;mRK7o{_<Qj}Hv{>1O!+83fiu>VHP zx!;YUdEVKTQmN_!4vv0R&i~9Mr=(b+F#p@KvO*=2QcxI7ibdk9rl@=C@7IpzK1mk8 zdV4UvTNJYXO4V-&CoJmJknjVBIzusd{Bo*e7gsJ*Yoy6TLAj{R{R_ej_n~dUPfSK3>gOFF*<+ZV7j4On;MT#Q zqiTd7aKI@$N^)TF*T$s=fi=+MVwIIk2!9bx*T?SS@$| zAkZECL)c)r?yZ$}5KsGm%$)4e_fOccS5oN4zP7vqE)#J;CD-5zVTSnDd_XDDIE3Pm$PLvKx=W?$xwypUV$Qt`SYmE<+ck52ym z97P$R$GTY|*@iaybc$gjkQC9m56BLwfGTy^0udzax%BpL;MDU;^JZK`WNr&g|63sp zv`9#Jx&|k;FBmG6zzYq2+6GI&v@}#Il<@hkOPet%%}`|v_mbH38l#&NOQ_KX{z+eQ z)x<8@ho#Rqt)Nm$s30o+uo4d%WOW0pkQYY9rd5H415$DXYeW{y<%X^SBf1md^ZP5J z0z;1AlkPW6w;I(lK{V=#Z?G9Z3@d&Sc_?!bdnQiT!u^ZV0-MPY5=YI+QU&=BScP1S zjL`Sg?u^){oxMDT*-_H*26`!sa3ieV0(t-=&qR}Sv&t%E+D_DPZo$SD*XcAvR%fe& zfSos7vxlntCg2O+l+4QePrBPjb`37BmdWAwj{hmj`l~};uO#kWti__O=+ysCfQ3p6 zoy4I3P)_@Kc!dk82R7%O>~}uHy~>}Ovefo}$M1=|bE|cuFYCVk z+;Pc#u*%uBYWnNSAi80FZr^Jdh7brXNsC|qEam^7*D^u-?lOL+Py?oz*k&l4{O(*W0bm-PE7C$oxDME~e#{D+3+s+|6; zp?@n1CzSYZj1vG=j3Dx9Xd44Cby6eWp9 zn=7*;Edi(PKZQI!*ltdXmQNt^_F=nga>L0U7Q&3i@;L98JxJKP;Z8 zf?VCm_dY-`Y})s(kN4Vl>*nN5R2~8MZTC0zX|7fPWOb>^MeDk$=Uw9qp{f|CxW0RW zJp;<&dHsSKsT*4p793SBu6_){-SazM%ns-emXYqKfSn<=(3 z@}-Ilb=_mVH03cGL!}s_f@w=xA2o)A*CpHLs6R&8E1(btY+jmx|1gNn5;I}P$5;0p z2wqo;X1|hQTd4}y0;O*IC%Q#$x+Uff2-m(BlR%nrVJcwv3=F@n6pVYShbPv@ALMr{ zC+PxCimZlLk{9~Yrk|6?R6%bVDTjov-#5zllu$pAs9JYi{*95{2PC}f00*jlyB zW@I>a1P-&Vqu6!m(w3B6BVJQOW9>659k2N9rJ^=1dS`pq@^56y^KU4t1CDQYUDA%j z{T0V=zR|~mg$^YQypeI9-hQP4tECySy(bIDQGbqvebF)ra4UKb8-BP>ct*007m%%n z>vv1R(G+DaeaI45>G=&9VfzG#s-~E_2KP^d(#So()w@#rhr*f)h8&lu(JWzBS5k0e z&Q$e>cfR}Pj){yOOPD|3is$YmQS5BcII~VqH#K&uJFu#@in1 zTB5%Dl{}C@LTx-bWZV8kYVTSVy&RD(cnM52$*aRseDl$=LnaJO8!7+Cs84Lo6I_(|s zA*l78e94V``~&5?^LruRc|SrlZ5ElANlJ{_5cw}9GvqJ6lm=f~n6B?;P(@>)|3 z>Th&!-THHOWEYsUImnQhZih?|vb^Yu^S*kfw8~ucGYYDM!AoD~c_)ge&sY{xP{LY` z6%VvOOm!X|i(NsQp2rUf7nKs@&y>+LRh~VIneC-?XHI1uN%=C}8Co=3j4jl)>`usp z!v0L^GZ7u_%)~`#tPfYpRLwv`qUpTP6MK}B*rZ7^gSZ^o*OJm#FllL;*PY+~w(rWQ z`{rn~Xg%LA6R2Rto}R(~Pmk)yjF4x7bsd*E1eUPk+*r<=x4VDqOcniM;-gavv}FUrqd`eA#)%`@v7;mYBerZUc?7Vs)F!ecoR8%l(lLKcPV) z^cQ483cIkg*ZICLx-Ak$T`@`Vr}j|eFS!Vbl{e=0YUW~Xu_(vr}c`lH=(_ zyp5=<`Lj0L{5j2xnPR#x%p$04M)rv^*jS(bm+IaRba0WGm%ThxT>xR9G$5D66I7OG z-sw>-cp+QU?<2lhp6PS$AO>05REMUeSIPz4=nhlexO6yOqeQ5dAxdssx?<&LCB|Td z^O>##Rv-Gm zT=}n(dzrF3C}%luDTwedd7u)$vH|jrueVmluGvLoj%W2gNTWfIP;&iu@)y>m4{r@% zF;A*oR4OtMOY_n4NGn#PkJgg?i-`)7L>X^6jm9;IqX=IPisuqZhn{JNCG&MAm&E^i zITx<$YkbHypm4e&#B!H5zze#Ndcwa`&V}IjovK;~8PJ`vbM`1F*{Q2?wU!~`LaSw} zcypPSQ8);5x-WiCsiwZ;BffunQ?vBD)<=?oq0jo{#vaoi6&Q^7WBIq_Utuq&BpZ?T(IRH~sXqo#Tit#s zKNL`xUFXA|P%^W#?ZQNTM;f|501OEm-+)AD5YO`azZq1ivS69Vn)4KoYSl3BoQVFKr%lgM^+??=<~l)Ki49>+~yuo%Z-( zjxAm?jORBw?LFAV@y1}?7sNoxd;=jz~aH;g_;4GGG}QEY0L%@R^N3cF0FF;?j~6vYl$C?z?Cwu=@<;KLq3) z;wkcMuWz_9e$2fTDV7_wn06)(VCGKEyQ(0z*8SK0J2{?ANJP@u^hce$wj&|Qncsk7 z&73+d^Id{i;?X016dM9s*US1_WUOxmFJ*>l&3x_VdRiiv?-Fb=-A;RPBj}e~%LYt^ zovbD>nyULe;vAqC7=mffYlh>kePSzXHrvS`c(Z@Gc=T=6SE*U@%8o+5J34rm;=Jtb z?MutbaAn>X6EG=y-<_)*E~X$wU#}&msL0BOkHKJ-Pz$`%>L2qtCR4Fe59mi;Uic zdshFc_qfxhKp>t}0YheJIuoWm>6q4I3FIxxxE0S=zZOj zaYJV3DHJ`A!l{Nv^;2zKoUI;M9rJ2Yjj|yT9v* zPcnZmtw(ryxk`vQU})v%{0Znh(sKbKytTmQGK8?Pv$*J*98=UrF++ATV- zoyo2v_1QdyA3P@v^0OfaRlY>hQ0mJ5-)7QVo|9oQfjHPnw4H_N}OFmt?(wd({};&|*#EuPSL_8Y#u zx;@wawKDY#hdh?kV=HpBGSy&@KbudninI{{>H=hay3|~NvZKCizfGZP&finBdebdk zdqKVSo85JqHqZL))%kAqJD~9k0vSGIeQ3IokB=Sd9li1PcO zwrI^$-4sXN`bwVrn${Hod?BgbX%xIF6Q|qI@Aky6OqtVVe#bIR_7nB1@68Ii^G0{w ze1X{SeQ8aV52R7^Z{)&00;tJ7tCh6w47RdlJoj!ZIqtNhTjzm*zN(2iG%+3ulY88c zJ$u1$o{|U6q-ydI;G~Ed+OlD{Ot~^AoWR`|rQ<$NGjJTw8nXpmY#hrvKIvk^TR-dE zdOtilALpCu6bUdEy106ac*upv_+VLG6v|}oG{VKPA|W+U$&w5>Lye_`3=?8Ij&$W} ziz`u3Kaw~1=qN}UGmHL(Gr4q~&Lw)vzb+UB>QXvLmGQ4ND^h1w?P91|`>LW5rJsKt z0k+(pte_>$K&6{Q?zs#>*#o%H?%iA`cQ9|k=7nXp_nAGpWQesWXzz8NM~Nmm5fe$) zgtIfxo{KoE2SZu7d;rqR!pldh9&4Q}IxV^u7*+;{d{vVfai%`?Ah!Fe%T=B01u_{V zc+Zj4hl`PHB}Z5B@U$dg5imf>D_&wSIw0S0_%uY_m1wI^z49e*U>!ncu;{m<7cw+k zXiOCq_k{{FJ_QX(3}!rH?V)JOP+Ni{xeOrZ(b8#LJTRq8TZc{jv}_+-?>Ihfc!3Nd z8Ad}$Zv|FFkl8hkKG$8!a-}6{djcd6x|2T1@CDbm#Q`xEL0%UD7wj*EUPLf1ak+XT zq2ile!+hkYM7Lk`I_9EVp$(|Z1*2;2qnf6{ig=9C(8`eG<#|2rNI+(u`SFzQfk08N z^n8rfaV7c5PMyA&VN4SuT>A*(&|GY0#Ng-+i$T{{onQAahd$FJa4&~&XPnj(eTf;- zSLWO@2!x!ORA_}DDqu+|l^G#J9oy9&E>{)OMfgMxRW$*)*S$dOzgNNT0ofJOX2`bm zPuT_JE8gJti7Ir3k2x_VjsZ5S9)ZK~h-Yfw0THmjxy&s>ZKF-yJ_B##J#^yvqK3l-Q{Ab-#Wv zr;E%-*$kS%Vo=Iq&dJP({iD2&zdV2L5ld4kJ-;&&&wH7}WHCE>UjmT1EMOf`dn}hY znXn<-OA`#H<^mFRbB%Km7585g;@J;%-ha-!`upaFPus?)&8wb~fasS9z)1wTaj_?c z^Y2UWpK2zohj7r$_3j|39Buj@qSxGX1EPX;Oee-Ma4TEo?)h#-c9*Lx%LfBbD@n1< zMpxI|;@F1#h5!LWbD2}{FhP4dQT9Jx(Q;l8Rv|JEiE(fZO6wQiq&c2* z7Nt&OzdU~|xc!`&FI(1?mVO)Y*7=cc-?=&4_wU^RR8tWqbW*CYW=p}xEcko38ezv45LKqFr~$SGzm6$&zP{YFF{ftB`4ulI z0c!%RtFk`(i&I+DUi-C)N~P(Xx!kqMRm%dYB*pJ^vmLR;FTwX~zL}>4JsoI;$=#f2 z8`vPG{%}j=y||;C!1+t=&g#1Rv61CV4J+I|V8~WT!#*D57r^gUj$;HjxDCn=Z zZJBOnV$aVnn^-VAlwz{|Cs%c(`|kskx#+1|-sbe&FAF;q4fOg=B#oUm-@NcG)nltP z`E_NuT=`AV!rPut{T+pAcx3CZ6Au+npGs*5_BUz3k$T}t7=E%Lak*j6!n`avcydVO z)tiUq@4L2>hhkv~jo;Xc-qio0m6(rp=R-F}fK&^XOQ+3@SG`Uo$o@!*;`hANfKlMr z_qwlhDTf%mN>7Amo4lK1RY!y*M7H`s^kzQ#C>rJ9%3o_aT%Tmf3iM71aVa6542g*6 zyIl@4y1(qBP=Edwl*k9ORL^Aj!mIv=FFUyr?z=KHHXo%Hpk%Pam>XmSr6(tZcTPSZ zh#1IUGo08=KJeN}i08{;#?j3reUpv8=+erv?b?1JZ*iTroN?(q5}O%FK9Q|Q+ka<-;Q5$%iltdNgR!P6V{5u8CG9~_SmSsXGZte&N0*aD6Z7y1S_K*2 z#{di5h%(k%@*;R1Lsi0HS(9k5D^s5{_b~ zc~kJHS;d!TSdalj`Iq=sA0DGb*83=8Bx$@$s!r>iC7nv;Qmk_Ov@)1KJbTDAt#n88 z_Ktqhk+mrhJ7708$VXD-5o@i@?ds887?adNKd`*(3atEh}y&#LyoNQkmyC35}+ z;;(NRCPX)IAt)hm<&np@&om$)IKIIVj;&$*2;$j;DX?QfLRg_RWsfyUMDHc$u`WB5 zI%;!u4N0{$8Dw0J%h0-H!^<+S)xi9&-uYJ8qFAS~YSk@|yeP~s@SnE#Uh z;F)dZ3!@bq$_ST%>F3(%#W%U2f5GMQ5X?8OzL2z9a>c%W`SD>|;?9+;1w*baF+{hs zt4psWHBwI!dh>VSg(CHdw8DV?gis$z*aRF;5~+IAxs;a;ADL_Z;OFkUgUE(`viM;9 zMOFI`RNjNw(#?hy?$f(sk6Nf)G;M)FU~;;>fd6tq%EY#U7aeEJZr9G}c5$RP*rS9z z3NVsePMaQbmi;mrPq@^c*VG?4btmJqn>6d|bUg=t7;+KG5XElkQE z?E1vd>gR?_%&N=2dh5LM+Qp~b8Sv@-Lid{=SWgpv=c#Yc2J2dw1nY=urEbVVl*BRj z(z5>HKDm(pjG5nz9xSCW(7*nMe7^wu=PSxHWkWiHrZ+N5{^~}S>ZGxiZD{dSDky{g zq*bncvAWrLRyC5L6)Sh`f6#>Yf3@HK5R=*9!H{wn?W^x{rM}KL?{Vk8^Wy24^jAxJ zjJ>^+8|Tf7ikkFG_D&XGWgm5veM(755mi(?O zwa~U}xAe2ol@NscBy#y+!Tmg|di+TmSx1JRRZ7nM?jQh3UEsFZnK9?;1$+*?%fa+m z0Ya|-Ei9*iT zCu~W`ZC;U67NPeUCvMs#yPX4=bF6arQQyBHbI_*3B@ft5YHrnT+-v9uLC6H@QeHb9 zqzRA5&g`4uyL>1Y#j3Jc*~?S=v#!o}>yy-<1e0cCf;LihOJCK| z87mY^H7^n=Sec&K$bX_XiWUt+W{HaWl|wwp+Kj8^|9;J!qQ;}MsMcwI&G{5S(phbvxCjT`R@AK3CGRgCr7J#y~enL6L!dX=qp}2Ygqqs&eJgL7 z%e<`3!kM|LoL1V-Mlpwpy_vGKwyGLHzE-CxL}vID2$pwC7X=araTZJV6JJm3MfW5x z)&eZtsVD()khh`+T+Q-ojB-536T0OQ&o4ypd<56_Rai%#`W0_<&n*w%wAY$r*}{q$ z3l~`fg~|!cDvv6Zf19B z1*M~2(5^c_+a7_M>50zH2`w50>*h$v0x%a2#JrOO(N{O#{DosM(y0X$9UFUNCS_zU z=kVNLi9V%hD21ZvO7Ex~ri|2$Byzk44hji3bbsJ61r)ZqDu!(F;@X`F0R? zQjxNhTCkED_KcjeqrI2z;u!~^8CcJTk=|3ga%*$!!$5a(f<^`~ESK=h--ZLgGOg0S zg7y^bPS1AAi(aMboN)_YNPe+ytkctP6`R+u%MrK`2*9&BosUx^&l2pypN8z|$*I;) zUSJ=bU+z;qENf`s9>Ou&huu z#!O|*#3_7bh;P8t*8^O7Us%P*dzko3tj6EkhsE=Os8qZMBo4?R`z+kZ{dX?};$u=z zya1NxEOmRU$4xEwd-(=t?grDdo<0hR(|=Mm2QUD6!=2O`azQ$#Xxh4S``@ zFgv^b?Eb5bp%P9Fd?y>v1EJ98MkU9aC#4Q%X0E+R;VHd)Eo?yPwLu9PfQ2L^e-Nz1 ze#{@n5bYl=S?-jRIA582vi9uc5Nl zq8ELRX}W3D3AC@d3Sq=*2GFm<}!}ruJXFUtwpKaCI2ZVFJ$kbfg zZ26BQEo}il6hmNK6rHaIG%sb{k0*OTiSjPs!2a_12K%pL#$w{-0bCV3+Sld8Z|ihV z+gzclH*B^&2r*&MblD5#7e4C%fOuKbJ@xjAF_RhKfb%1Cd+I$Kz{a(j3OjR)Cnym! zm$w)0MzUeLlS>&Bmt>vB^6O+IM&7>+&qW|3Wj0EMbuCYGpV&n=2sO76G^LtuBO(tp z!BDmrocho5bl=DL*n+kh1Qgu)M&`dV)`M| z9zMhrnd@}Z&zsS48uz-2%o*C{6A&13BZj_3k|cuBRyK8esvq2RAI~3U3!qLjbZPL~ zI?X1dix+j`(+mczOj6_rkm|*y)9Rh>O|*30vmg6FPfjgQt!Gc*FS5kr>r0E1bGKt0%1xx(;aO8G^9_LFeyryFX6D`yhJFAEElY+#7tsrxtT|7Dr3dU(Zbv z70MJnx*~SpzVM8jvM`@#aKWvJ%zr3mYehDw*MLKg$I4p8@3j+k+eKbv*4KA028fTg z7S>fTh_L9XA&fiot3mT#b&Gw&*dJNkLS#hWIk(-)CVA0I)mYBygK;s4%mJWJnjW0^ zWW4hgQLwBDXUU}OFD9P7F&YJ8tRpT7V-=KlAJSCRWdJ1StgjZ-dL-p5!j3eyY5;mE z=0AIUxnFcnEuzcs)U$?b^ub3}Ko(a6^}&hs#3dey!QEbV4&5yEk?~$Oyfxy%z1%Oe zW@n<~p(%N55Rw@Z_1kOhRGTq@ybtDvmCx?MAUH_eI?a(zuKW#F2+lm*)F0R7`M|hqf(e^A-&|@aiH6mR0T$J zJjP`LRA76d-(g9*G=TyPMv=`hR%04Hc(#T3UDm$4E|6TW7CG~MZ@ka>@}@rJIp0}! znRo;9G<^;fL%PolZ$Upar)f5b*<@mamaIGz^Q>kE0!*Np6bDDL;`LtU5Et}{!o+d) z#F)GsD6la|W$rODV#-nihRjk|#94@WtcvA7-fo!)QZQJ>Z-Bae*RbaVLU}%@>(ana z{D3!i#`>JEjoywNb>&3!g|SD9{lL0^_bVa6T9N{y*U+qC1y&dJ=%;n3WD=YbrHzLj z{yaos26c1Jr35FQ?G<~Zp2cD{V`4)$cM4bUypr+-_7}VyWG0EnCq7-)lL+leg3=i` z390jI24j@APSMCdT1NUS=+9IS0<*a1HYyW!)fniH3#SeTc{Z@M-v3?k+w_mH%2)^N zb#v!%a?DJjI53Gydmw^*Dw1WChzn(pG8MYxkC$1^#VPsYrB-v1VdW{#=^JSiLxu2Q z`7$W?a9#FOr!h-*8R!MS5?Joa!vI@ZorNnHNgrFPe7VZS)vM{1HwtynG6Jg$62%Ww zz+zj0?6UqQ)gsgK|I9gx%yx}#Z{zak@1N8gTx^JIm#*7}2b>7R$^>tzwp3(ar5K())Gk zS7O}wX(NbU=J!k?1%}C=0PXSo7R*j7_`g@bZ%L;^If6;Z4}j<@NP_0C;51oRou67; z=xwj``L6u)8ptO|Q#ObSQZUm}KzX?St&M)htVegIFM&O*vKVA zZZ1|P3u&V&Os){6C;dP-Z~LUrEjVX^ji%?!j7{^ds-!Y?$kpXi%}f;iN*}1~GnmwG z*_k2dN9UV@j>LTV9{*0Q`HcC(=g|_|E2h3@5lGxXm@XU2xwt%bqC3pSwhj~ zz?oyTM}xrkZdpJf$nvY%3~X@PG|2jbHC2J`z%2*;Fk;IdhFO{oR2_~yZv~|_=-!P# z!bG3UC>|na=~ee>Il_0OzHW}-FZq%>Wg=mUctZ0SgZ=6^)f3Fkb3mR50PTT4pJnyva$zP<3@&R|d~OZji-gRK0C^pkrp9 zm#6wKr+W?`Y;uA52fQDY$K3OQrW*F57GQ@rDbja0+jc%6&Y}2-?(?6j%9TApWtxi- z)#XYIEzC0+qgD)FV17Jr#wL=7hiskP92bBd2CdWn|X!jC3{;#uzmNGJ=wdAPz7)EX-f3@v!O@9Adh# z2HU^>%M1Fg)2}?x+9y4MxFh=E+MX;~6_i~m8v-ZO1O9q4&~MP4#@3pyTbc4N)6Z(W z_Zrva5AhBiHDML-X|l2Htf?vuOFZBy3AD4cDvD*oI&6W_Ba> zfP+AXkENTJM;^JC!o(ZDEg?5Od1gLWMM0Dwo5 zZJU`P5Uu8R_ja3`oP4R`&2rA&hlYTzo>=`4Q$yni;=b~8biY#ko{_N)6yoobrkI%L zorwIi89heiV64;}sPGip$LtUV%EeiB0mb?xy>E0cf)(6Lk{cX}f4r6`&4>d~Ox=-gGyuyZS}4-=sb+*bEg501p`d1 z0Vn|XZJ*?v`d-%K6PPL+L=jmybnv^GM>jej!OKuIl3lR=050%=7 ztyMyyNpYHUCphn1u0fQ5vVYe$pWxO@a8>1m9kop9FLEszkb*Dz zF+y8b;urnBNH6Li?EV|Z3tCJAJfU0I%JvQ?7XqH!TVnNAywe9JgGA7q0f7m8C?O|$ zkFo5jCrxvEx`D}|F}+_})gn76t*Byj@6h<8UyQ-QHRkrY%WVAJ&|8gdlnd^?!D|Z! z@qCFt{;4A7V~+m`6tdsU5~wbh6Bzd4IeDp8+gO=_v}wyh^2C$7WBXs)M^Jmd#Ws!S z08c=$zer!+WCj!Sy_ISMmu)hoIsq2k%By&&Kt71mJ^H-w7w4;T5na25Uq1F@_zBfg z!ajvK6Ep28knhZ$$9$cDoII}ff2Qhb?=vCL=?x+n%XqD5VKeK>&DI*1Pr-*#>AC=_ zxriA)zJ8b}D65KMwWuz+=8km`p4kXGd8@p^tM{6}&)M7P_G3D4NG$>SO8$k!olgM8 zD$&X06Sg1JkXObM777cv+A(7+YaWR6MqQV1n6|y+EJg@3ymaOOK}R3%8r| zrDcV%A5T2xYB(RvAjmh%Q#)-1UUo+(-XpumMdiqxGa3SE0MLU-1~xLn0A@Ta)uluR*Kdxd zyfGGC0SSD38@0YUh+1L%ZG*>antsTh5dgw>Y^($Q9@e&r2%9fYahruJix?QhH4=(iOXW8w+~HQUHa0# z+z*0*j|}fbN=ccJ>oxU}`@mBgt0v=D5+yQjG#i1DN{X}3efULxSBovVqG-8-5DX)M?JGH?Ja))f+ya+yi$ z(FJey-n@RE+VgrUl_?(X}% z8Z{!bT;{iJgxUt0laf?-k7|kv2DAm62mP}1&aSs6s2s&y+aUjJud|#?*D#0qy371k zo6mioB#^;HD7gz2z@Oi3*V6}>av)dHywjq)1?Cjp%x}8s>8Xm0?c%*eittQUf9ae*GLD+_UM}k% zGha6g9fvx7_l5fpH8KT~P#|cpo@fi>osSZ|o)h~xC^088=7gh~h#7#clG)Su7tc)6bJ7rz(pz5=mMy+as-qSLQ@-|SG8t|98*-n)XjIQU=xT-d8}X^2a|jmj01 zpIC|9Dh78MkA&U%W%amqoF=gk9CExSPZkfk(S4+tbpFom3OUPXcfkwhHghrD2e%3q zOmR~Sq4T;qaSYnJ7BKK)JSV51E&ZTFzU+p()uroIcMQeu`$`xN#8bE6`=2x)3joji2cbeDS7VN-hktdF@yj3kFq#?ySv*4=Inv>T{@f zJKxngT299!g^K5LN8H5a0z=Hn>z(7#Z}8hZ>pUMjUOVa4F34OuW4cWNn{E4_4{hMH}y z`HF_9S~&9FASAVh&RBX*RHRn#eMs+*MK+-hkA{^&17)$b)^*(+5sOB~)_}bd$ZIc8 z7)eo--q)Syg|Dg4+2*Bq`ViBapoYV~)U0#8r_Bp=kCP!%>;+g3h&4I?#;yGu`If9Y zKP|;As$hwD{-em>dGYsnU~G20Lh%K02j|#>n$|RtL%|37f+k7R>1W@`NBxBiy-_s%)MM4UFcdjCu7MecCHMu|)1Zv*EqfQ=ujJ66PzinuVQ35QU*T6#9Gj1%#IUzHh&LPn{aHpho9LM=GYJv@ z$fpeiQRG7{_Jm}1tR}3s#j$Lx2@6`@x9fpdWG*+dvA?f$6K{B>C z6FN^WQ%V89`|lvV-y3H8aVV*~OVt&Le7MI4V*gaMhuBCi?Huo%$MS(kC9J$g(PKi-|V&?=rK{=LGuVig) zcN!-ZKj3>Tx{|`U3EW3;l9GvMMmBB9HB5x#k=R4(3;Zq52 zNfD)B1L@AO2Zr3zI;QOd+a6!cKFIYvESu@N@GqKrq`?13)1pmPQ}p=92e#`*Z(TEQ z%DNkw@?4M!p_IyqA3EoWbYd<&JT{HLEOXL`KGga3Nb}-Vjz_-c3Brz=-~*!&wE`$P zg{j|;7VKl-66$|9C0WcOR2Oi@gDYY^YDoc-8 zcl=lb)D1oJq)XULz&ux3mDF2ir+Uq#IUHDouLj@z8{^3=h2~%B%v@6yEHZi<9setx zW1?fNcb|TCQSh(0mUHZHi_XZRAXA={3bQ0uyWg`qDa9FKRp=%WPRWaYO{$HY={Fxv zoSjLi%B72tWO7PsHp9m)Q*d1KnQ>e~S6O;WdV@{zm{l)WqVUX||dDHxT zpU|uzMXNyJi*=UvsxC7!k&aG{9g(2$Gd9V_?4paIN+Xv!%vdk`WRQ-AEOK^~#@s|> zf86YUP(X~#7+QJ6CRELFXT`Lb^=jya5x^6NgP;~bh$8K3bl+t`oMXKDZy`vKM2Qhc zyUbY^ddaiR7J=4SeZi~eG#Wf$aeR;Dhp%2tH0n9{x8LN7eF?xBkZj4+!$;i!IH-HH z3MJ^myeNVJK`jwO7FRZv8ZsROZA(~~9=;Wgn@p~gIj7;Ax#~J$ahAfg-&!E}3+!BWiR=qZl7#hDn?Jv3Vm#};S4vqx zMv1#g!+eSI1cjJ$Oufpodvd4QZVvgvXcj6)3jUtCZvyJhkFN)6NM#MvLYcIW@T zwKb79HY+s=>Dw8q;vDwmFFi1i|FX-;yOt%QSfU`SR{7stpr=Jl`oTkBM?5X4WFaQ` zm#2u9g}CbsAH?;Z`QNjpcPx%g_*bN3QtWOSoWG+S^NAi{y`X8_Mx0ySVUMC&dzfM%FPhz9Yg|C}Q3QrVqitDLeijR(TOu4;6 zKO>uYLh>8)mR2_sdQ|Kc-GJL$o)X9`ol>}_;sUwCH6>D+PFUf0g2q@~QiOU=tf$Z%Un~UTQ`?~3*NTH&TpJI}Kk#~inL?y079Ft!3|A{LvP-A-V zLq4nX*mMz#uri^2a=e?WE#88LmT+)egjjOQsyV^^FFx8{`)6L#yHGGn^ex}z3t)*a z=k@YOMMgw8Gh|rVEzVkvm7L}3_zgI?CK<=)FPN1Wz)^O^SnTBY1kz__2L zHK4tL2nssPVyUtWv!2V&`+r2e1yqy&7eB6ul+;Fzj%{>~aHDf<3=jq?NHdU9X=#wI zG1zEDkQ5XV5ET^3F;YrC3W#*6C?V4Eo8SNW|9(5;FwWpP<9Xlvis!lSdkdZ9HLWMd zD!5;FE*R)=%I`?(zwCH#29?}IeZb~$eZI-4aL9Sl=s0uCsfU62CAUAyV#kj;MTL{g z{aKa}XSU#Mx)DQ{#xBP1c1O;Ts7u6)daI*gR{^A{Vw)r0g{caYSlGp0O8a6?L;zr! z08|w@5TC$&zk215onbm9|E^gdKZjD!g(Q{Be^zXGOhzA6DV9Sk>gs(1(z+Of=Hzd4 zHe)&aPgsYH?n_(#dF+ak32=mJDjq2>>mP==m>cbR59#3wWIi+Dumw+8z%U1JR~pE) zGxUWgQ51@|0RJpm(tN_{?!t5>z)?c8i7nXEa`&h_$*TctGYgL6l<1Bi>e$v8%H5h3 zk-oYpdqc(9XxhxRzC5odY9e<0V+z`b>08`~7b#u4H(cJCF;|~PyY!_C$w{7HtbN`U zqwzU`l*YNMof2GycJX1F7KB@Qp?_;o{~rxm=t5;DLDcj&kkVKkU#0jh1LSs{Q`d?t zbKqM+EB71V6A+2D?!$61KC{Xusalq;dKlHq2bA!DpGCPmH_weoG+(Wfj4`sg)upF2 zAjP+z8qEJQqFoV-;Q=#68IaE|ez2$zIX4@7B1NU%;TZBc!<2AG$d*1kDJ$uje!S}C zcQ%(ybYrO!rX#*Dkz^4EoA5l!QjEbgcd!rzE&HU>Cd3|xkNz%IP)Yia^=r4C`IZ%X z7ke_33a5Gym)0{av3E>PPB!gw0-5)MT}--r6Anufa|N6wBn~^^WL57`KIS=qTAvQ# z44Z$%8Kyr`O-})=LLPOo)NQ7*v(y|d-w>q1?c$lQG0wF+3lmGanjl{d@%?+37U+I* zj$rv3bCQ`RxcHj%lI3?@4t#8)CHJ_d?VHZ5)|XFGQP|>V)=w!kBMNSs6BXQ`n6z7c zRVdx0B*k(rP_#InJt0NRL@C99hHo@hp2e9ikm*EVL~=3cLLKyT+6lWwL3C`Z6wS7v zkx}-o3A*kWQ3_*0=QidfS*9!vcyOaH^Pytd!Ao*l?X@ck2cmzN_ZTPo>H(=s=IS2V zWi(UQxbv*Y+KHn2N|M>EU=u!ofn_ZB>l(IHtC6XS8kGC9c;wN->rcZ|6Mf@HRm$iqnoIih5;ihKx{a%$6eaO|y2-zI>z`=?26Af?ev7h|%kq;sN(YTFqMWN_$wI_9m+Ay%$gRmA{hiyRo8cZpX6LCk2rodXd);QU-O`*0622|I7}hLRDw|xb-4*2jd;Mv~8nO15WswwN{I|ZK zL}qCl`P?RuP&33HEwG*2UXz?(;XZOW>&%;bKrVu?QFC2(h`cvHUz22 zYia;8d#}_Hs1Kx!)^-<-zbMW+SKQJuvk)QOpnpNHBI~{zB)yAt$u{iWRMy=oy^BUt zrEiuwFBQ6|zRfaXHOd(^aH4~UgciH22`u=e&b|KZ81lHgw0!r@XOU!hPvNdR!(5;# zmui!sM1c6mwTH@uI=-DZA+w7z^4iJlj*U_plg4P)iZsSm;7NKSds)h$(B2r5N4a0S zBmzr(R-Sq>2}YU7k#06-sn08C%x_TG zH-Lf50J22XqSJ2l?7E-8ICNBGUMhMlMpRBk=We&p(pq%ImP>P(E_hkYEoP7No81&| z+!z0p*JAice49HPx${CZ;xTwfE=;Pen|aoKd{fP+|3j}e)c?*fbjQ&u_c6z-7i!Y} z{ZC@8j8~&-KPh$FYi>S`xr3P?8rTw)0)~3_FV6Pn-2tzn;G{mWwLXlV$yP`;KO=Zi zvb42g5rp23kGwzO7sPd!R);(zh~ADVP-;k(9H<_YLSiVAMI;Ghmb-{NjtZTwBSCts z-a+~DjWS@jHWL9j5FjFFs^}0PTAV3YD-tJY9Emmw=u;>}mttDSYywu-U6NV^POf;g zPgJCGPs0x3fqBys%?chcjyYbB2eeAPKO_#nn(bL;0jJkR_NBBjR<|0ry|TN62FAM> z)z`bf;_PV!i$@Bwn00(ukHvQoufW?QkNS8_2b50B5CYh1)f%_pM%6V2%fQw2%}Kkks9_Y?;IK4BN{Y$aqHYpCz{;k_G}|b|lqJ0z|lK zBNOK!Q@PBIlI3yS1f>p!;+I&1NnKjTiY#Nmdz_Wtf7IyzGQ>?73*Hsze#wDDoF;7- z^OtmIDvA;APWd;D`tJ(jig0l!SEtyp#@%DR7UG^U=`ClRfuZN0AoVg~H5w07%$pT1 z@s=Lk-D`%l;qEKNuD!oaZ;2LBTM-E6qy|gyt`cx$zpowq8nP8N9ERwgB%WUMcu@Y} zPvQ2NpG#aJ?oXW7YRcJLv56Xe6k^BZ>0 zdO5Xzp1&0B9nanvDR^C?Dphk{gs$6}8tb;G+BzX^~QdV<$>fV1ROq;2jH-6>=&?r7G74njV`Icx3%1~cWT1Y1nD#=!&~ptCB+;{Nod8rOZ|ke+%btl0RaQ=K!HL>CXrh+X`vz?5EIZTxdB#pI9E^-wv=&v$p#{0Xo z(UU@}q%>He^}hEj6c&6k)}|(!XtVT;8b?a=+)`e*dSPzr$9TI2JV=`W94hZfKf3%% z2C=O@Qp;^-!`Ju+c!Xr_{kM^^mjPFpcK&kcO{k;yjmi+u8&3B=JGwOfm#CSv)#~jc zFB9W44a*9+Tgtlm+%`MZ5qBavZ_)Tt6=CRPJX9f>ypEGD{ldX-xWXXFsM4GXXSK}c zCJ0KbqnyNj6@7f|tK0f_XYY*ry8NylXkni7)-=9tc0zannY%3}mz|?EmEZC8upQk;`@wqEpbtFg@yj*|5{e(Of&CU7+>-j zH*op|T9a(gKNQ)!w!73PB7?9N3{E&N+=ixW^_SjvUEEwM&Kc9Sirn-tBe0-dLeS@z zR=bq)|6|3K$(FLohw6|u1$p~juLU%B3?%d1Sm0`}jU?Ye{V1>6QR4XdaK86r-bQ4X zoBOY9aRsa7HLEI-VB?KXw{PBp=Sg9;y#KSz6925--Lf`G6pJizFUE{duK&T~cxn6xmgIV;6-0YKWIZ!_acKQ}5ilNliF==aL0W);WCw%3> zi$v-B5>*gm!bR-d?RzjX>KDjr$bCs;gZ>T%+c;^!3q^F;cg;DZsJoKLQ~P~23GKd% zC=({-gJ|dbS)`)!__}UoI~xNUUMciaGMPqs`-}(I(OwbZA|7xAeszdj6xFDHk_P^c zcKW<}MLSv8l1aZOd|>fTmo?E>eAnys8220 zBpf7$s3d61SrJ#Y#2|<0VcMx&PcY)vvQCq{}KNwCPdL?A+f63UC|B`Ry z$TS?xh^sX;WmWwyCpDL=sUi00Hjiz;Xzx8cgZ2X!%B=UDS=ZhnW>_FPIZ;ZE!{j03{UXjUQ?!h z<&5J;ALf)<5X3w9gMNm!0(JTNo#SO8pDl2Dne~`H|5K2QxJ*pPA7BnAtWRU0x|AR~ zti-c`(4TUjSuucoHo9SQ0|^Y9&mDwQu?olrvx~Xo8W1;3lD{u(YBr!0 z9zay-)KU66Ns^R?lRhM~(;Ek(zW~CjYvxgO1&A)GSLce^*|7h0LgpQ~tR^%ZxnkiB z?;dS9V%U+n$Oz7SR$KW|n{|ckp9ZJ`#w_O!Hn|b=;{=|>;=DA|J}Y&gsu(mM{)Mwv z#&YaJ8ZnL#sxYz)4iz@gGNFA0%m#n&|BW*{^smY)y(Wdjr{a=ormutwwb#diumts6 z1lHk-O_0c$;b+LoPt8PV9@SvISC0>>|H~h{C=6KB+$sSt(=%QG|H66uX+h`NkiUS)EB?PrK7(T3iu$OWsvXHE6U4QPpfiirLp^3I2`~QMR{F+}E18 z(uhSm@L|p}hmY8>_h0;koA)fM6S1Xbbpz$qo^Ck>Za&1iw0F|d(mx26rFS`?QqsKA zs}HSJ;?u&f`KNITYTkV(4ejkl{I6!xwJvRd^S>LD76wL%_cnhW6;1tg5jqe37<_5} z@6Y2?$Nh|_gMoBoauIztpMmca&wrpq<&67EA3W^o)J+qH4Fue?P20Q?{d4T5>stq@ zGHDhJW_rEst-F|2v+vdWa(ayAiLn*ONGtVq6SmGwb}(85ECJ6IiWFXnMDyA9+g6RA zfCAHFIwt3O_=+?6&Ac#9!)~#aRK|gyR``os)kLM8Gc7u=eX2EJl`RAuW?A87*BbLW zJn#&zz+PsVsgC_A85b!OkJjK~U~73V5<3n&Z(TU0`T0h6;jnDM$k3Yu=gHgo7y6q^ zC(cg4ao>H_;KosaIA#i={BZni;O{E;=FOJ}vUh{rBypxI_S`Aa88#SRE|pPzdac3V zIiVOwKEKg?s#)ox`~8w%XxsKaG&OvgvsCx!cCYL*X`4KrQHr`t?$q$Ll1X=e```B|H zVzn&fK#LMv;U?O-scLes+)tt$lC8mCEZhtCUW}S1IcTeXj#*_Va68 z;hcR>D}MqcYE2ol5SskNw3yjH{QSFDNoU;U2#!t`hBYppyMX1n5IdLUcd*3bpx?KL zdICerp$6NtV7~=}3yf|RUr9vYzbLku?cIAGcuN` zr6TUumGZ1f1${t%|8HLzp2)IJkH5kzQh2LuoKscRNHdjmP+zGhN$+}yNlkzjHXI5N zy!|bouVGiIe&Tm8D36z$J7hlG9X{SM)0kC$%zwQ`vtu1K2kT<`J)iqc?xG>!E##ha zT%zoMw}m~ID-v)uWl#gW>>0h%OGEbev9*;cq@1@!x9C6v48`=>;Hg}OMo~(Rv^O<4 zM2mD72N2wil-~v!($jet#S2_6j$}G+r;Px6JM&bA8;H6ECny>(figlB^hlBNsv?Ub z3R`^gcd6D&d^`ozR-%Z78#)N6jOINqX$5A9bfqj>FwOPMcE1#OB5j_t)>N4pi)Rm~ zjgn;)xFwD45m;-?QMJ!hc?YultWii=aAO|oc8ks)>oiZZ zMFk`Hc(-nnUr(VghW(PMo0QM?`N`i#xV|8v(&yihafHE%(sFk|9HBCOmIbdk1VLc4@AwQh*J)33U3S_6gZfk#SWlHR_0LJJUJiq^wryQ|@ z3d2=4sP*qB_oT|DpHkKEf(N^Y)Dy|xKJ9EDDYOw^N@ZV0P6Zw}I0KC2_Q~#+i}g@0 z&auc-*BlW&%S(ZZd*xVs9Y-Fv*bmxwjVQm{(w^JuRJbT0Dgi|xxl||Q9CqJSuw_hN zX{LABKBEZ~6(>5WxMJT}SHxyJl{rGs25$~j+X$#s-u1fO-(HzHmUsDcV?&)nm{T7} zVKFM9wCAr3aui5}v&z5B#OKHcAospx-~~!$&*nsofqKmJaIW+8u%{>*T=0d7U{kUBMjAd4nL}+WzS<+Y?L@|Bz8Q?n6;~hGAki}yr^|z zwbY-&PBoHm+53ViTXtP3u5A8jkrfLGV0-H8Z*J2V#;Ic~FwWLBgR9IeIv?^5WO6vd zZ2Ti2j;q!8Y8*q&2Tna+RYZ?&63BMAp{dsGu2g%xdQ;Qrjfn5od7CPco9}>m3}tpS zcX4xA65TD&0V&r_@hUr*Wa(|*`I*IcQ+{)i!BM?yq+O+s7Wd5rdodZ~KFr1I6Fqut zmzb4E4bUAPyi{_Z82B=}wYLww`GLY2h)DjKqYM_>7E3OJdzQI;2OnyeOTOCY*AP~W zqn_fsLCeg4Z|#Mr1EGk_Q+F_ooaoI^TfK|T6p9!Ghy`%)Is-nar*{C zV9^ACo&Z|FggZ>CEbgHSdvk8&pb&|qKMf-n4k`8^R=s%`_CudKrzo2$wa3oio$*1C ziOX**?mf-L)tImZV|Kc0uRr@YPRi|wtozI}bq)OGil}R<2{R)EnmA@W^|ZFciN}3w)9$h?6STJ7CUhX5E_KHfhJo6IF)(&S*3;0OTsIT2GWYXw@<;K5>Au9~foXYU2&A?@g zvb?C&m|2^&%_~S2Lgk5(H_Dufvg?jZwj(Fbm@d|JT%vS=4E8Og}CO ztFmRaBsErw*IkZcCqb~1CRXMPN8ByMr5M$4SeM~2{ywNVr#&Pyf36ebmn9n>g-W@tflYHJ2s4G2Awz#qNB7<{BG9`ZfoX@MU|NGmi z{9hUyX8LtLJm`K=h09aN+PHbOnK|EtW!)bEp%OT`HbHQ>N4czAe|W(cY}~m##s2

    6LTh}^CF@9qQg#D3%zGb?3}e#nU8v>-9P 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û`>X)I5P758ucMm!lR~Y*V0#k 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

    !^R||iUhnFKyut)bI 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%0D`gxK7U|C{GKqiM*eZ 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%0A3u<^eagzMq5^S92K3u*!|72 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 $FLAG +} + +if [ -f ${FLAG} ]; then + echo "Rootfs Resized." +else + echo "Rootfs Resizing..." + if [[ ${ROOTDEV_P} == *"/dev/sd"* ]]; then + choose_ssd_root + do_resize + elif [[ ${ROOTDEV_P} == *"/dev/mmcblk"* ]]; then + choose_mmc_root + do_resize + else + echo "${ROOTDEV_P} cannot resize" + fi +fi + diff --git a/package/ls_default_eth_config/gen-keep-nmcli.sh b/package/ls_default_eth_config/gen-keep-nmcli.sh new file mode 100755 index 00000000..6f7c1abe --- /dev/null +++ b/package/ls_default_eth_config/gen-keep-nmcli.sh @@ -0,0 +1,63 @@ +#! /bin/bash + +file_name="keep-nmcli.sh" +gen_file="./$file_name" + +gen_single_nmcli() +{ + # $1 name $2 ip4/24 + connection_name=$1"-connection" + + echo "exist=\$(nmcli c show | grep $connection_name | wc -l)" >> $gen_file + echo "if [ \$exist -ne 1 ]; then" >> $gen_file + echo " nmcli c add type ethernet con-name $connection_name ifname $1 ip4 $2/24" >> $gen_file + echo "fi" >> $gen_file + echo "" >> $gen_file +} + +gen_all() +{ + single_content=$(echo $1 | grep ' ') + single_param=0 + if [[ -z "$single_content" ]]; then + single_param=1 + fi + + loopp=1 + index=1 + while [ $loopp -eq 1 ]; + do + ethname=$(echo $1 | cut -d ' ' -f$index) + ethip=$(echo $2 | cut -d ' ' -f$index) + if [[ -z $ethname ]]; then + loopp=0 + elif [[ -z $ethip ]]; then + loopp=0 + else + echo "$ethname <======> $ethip" + gen_single_nmcli $ethname $ethip + index=$(($index + 1)) + fi + if [ $single_param -eq 1 ]; then + break; + fi + done +} + +if [ $# -ne 2 ]; then + echo "param not full! exit 0" + exit 0 +fi + +echo "#! /bin/sh" > $gen_file +echo "sleep 2" >> $gen_file +echo "" >> $gen_file + +gen_all "$1" "$2" + +echo "systemctl disable keep-nmcli" >> $gen_file +echo "rm /usr/lib/systemd/system/multi-user.target.wants/keep-nmcli.service" >> $gen_file +echo "rm /usr/lib/systemd/system/keep-nmcli.service" >> $gen_file +echo "rm /root/$file_name" >> $gen_file +chmod a+x $gen_file + diff --git a/package/ls_default_eth_config/gen_interfaces.sh b/package/ls_default_eth_config/gen_interfaces.sh new file mode 100755 index 00000000..8d779a8f --- /dev/null +++ b/package/ls_default_eth_config/gen_interfaces.sh @@ -0,0 +1,59 @@ +#! /bin/bash + +file_name="interfaces" +gen_file="./interfaces" + +gen_single_nmcli() +{ + # $1 name $2 ip4/24 + + echo "auto $1" >> $gen_file + echo "iface $1 inet static" >> $gen_file + echo "address $2" >> $gen_file + echo "netmask 255.255.255.0" >> $gen_file + echo "#gateway " >> $gen_file + echo "" >> $gen_file +} + +gen_all() +{ + single_content=$(echo $1 | grep ' ') + single_param=0 + if [[ -z "$single_content" ]]; then + single_param=1 + fi + + loopp=1 + index=1 + while [ $loopp -eq 1 ]; + do + ethname=$(echo $1 | cut -d ' ' -f$index) + ethip=$(echo $2 | cut -d ' ' -f$index) + if [[ -z $ethname ]]; then + loopp=0 + elif [[ -z $ethip ]]; then + loopp=0 + else + echo "$ethname <======> $ethip" + gen_single_nmcli $ethname $ethip + index=$(($index + 1)) + fi + if [ $single_param -eq 1 ]; then + break; + fi + done +} + +if [ $# -ne 2 ]; then + echo "param not full! exit 0" + exit 0 +fi + +echo "# interface file auto-generated by buildroot" > $gen_file +echo "" >> $gen_file +echo "auto lo" >> $gen_file +echo "iface lo inet loopback" >> $gen_file +echo "" >> $gen_file + +gen_all "$1" "$2" + diff --git a/package/ls_default_eth_config/keep-nmcli.service b/package/ls_default_eth_config/keep-nmcli.service new file mode 100644 index 00000000..eb2946a9 --- /dev/null +++ b/package/ls_default_eth_config/keep-nmcli.service @@ -0,0 +1,12 @@ +[Unit] +Description=config default eth ip by nmcli when system first boot and delete all service and shell script after config +After=NetworkManager@.service + +[Service] +Type=oneshot +ExecStart=/root/keep-nmcli.sh +TimeoutSec=0 +RemainAfterExit=no + +[Install] +WantedBy=multi-user.target diff --git a/package/python-pyftdi/Config.in b/package/python-pyftdi/Config.in new file mode 100644 index 00000000..10142060 --- /dev/null +++ b/package/python-pyftdi/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_PYFTDI + bool "python-pyftdi" + help + FTDI device driver (pure Python) + + https://pypi.org/project/pyftdi diff --git a/package/python-pyftdi/python-pyftdi.mk b/package/python-pyftdi/python-pyftdi.mk new file mode 100644 index 00000000..d5d94dba --- /dev/null +++ b/package/python-pyftdi/python-pyftdi.mk @@ -0,0 +1,12 @@ +################################################################################ +# +# python-pyftdi +# +################################################################################ + +PYTHON_PYFTDI_VERSION = 0.55.4 +PYTHON_PYFTDI_SOURCE = pyftdi-$(PYTHON_PYFTDI_VERSION).tar.gz +PYTHON_PYFTDI_SITE = https://files.pythonhosted.org/packages/8f/b4/8578b8e4c1e69faa8297cb1e1fd0c86de03bb7eeb3e7cb63157e1e72abfb +PYTHON_PYFTDI_SETUP_TYPE = setuptools + +$(eval $(python-package)) diff --git a/package/python-smbus2/Config.in b/package/python-smbus2/Config.in new file mode 100644 index 00000000..784cc5be --- /dev/null +++ b/package/python-smbus2/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_SMBUS2 + bool "python-smbus2" + help + smbus2 is a drop-in replacement for smbus-cffi/smbus-python in pure Python + + https://pypi.org/project/smbus2 diff --git a/package/python-smbus2/python-smbus2.mk b/package/python-smbus2/python-smbus2.mk new file mode 100644 index 00000000..373b94c2 --- /dev/null +++ b/package/python-smbus2/python-smbus2.mk @@ -0,0 +1,12 @@ +################################################################################ +# +# python-smbus2 +# +################################################################################ + +PYTHON_SMBUS2_VERSION = 0.4.3 +PYTHON_SMBUS2_SOURCE = smbus2-$(PYTHON_SMBUS2_VERSION).tar.gz +PYTHON_SMBUS2_SITE = https://files.pythonhosted.org/packages/98/17/9663936e52a348b3ad1c85e6ca6071d2abf00a5f64f2df50bec8dcca6e16 +PYTHON_SMBUS2_SETUP_TYPE = setuptools + +$(eval $(python-package)) diff --git a/package/sourcehanserif/sourcehanserif.tar.gz b/package/sourcehanserif/sourcehanserif.tar.gz index cef0a62beedf572e94f76328602f6b2b22b0f800..62000507c33c5dcac1074e19af79664c9ffd0d91 100644 GIT binary patch delta 724982 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

    75`;bWXCwY$zhwbAp=AdZy8IqW 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 z

    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ʚ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%0DicqnC)HZ-O?QxQ7p@9=W@G|iz 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

    {sb?ahYgFhy#!j|)rfZZxc4+o99Z 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 QPmB3KyuFDx)c^nY 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

    x<`zp zrcd}ja3w>J+*VMb5JfKY#y#Q#FbY?66q~rd#-)gG8Hu>BX&McS)&0xZ=cu0C+X zAvdOpG10(S6VQjX!C=8kj*mHCtHmF?K2a)vpA{Je)CDd_cuy$J#KWRQa2vsuWbf*j z7x39eajM?3Lb}cDz*QC4wfc3*1igmwb$6!Ke`W?6Qxt7IfiQKxu;RPpse)wlKT~A^ W(C+^`$>OjiGL*KHf<0G7d;Sm0sfK6( delta 274 zcmV~$*E$ve007Vrzdb|Qk?drI5Hhm&-lI?%m7SeG&V_rg;5~RL_s)5`eFy}DcY&Y~ zp~3`&ix4SFv>37C#7mGU$qUI+qSBwCnIir!L)k^y<@Zz@Q<+MvNLWZo;G~(`L+?GjGA7 zCCgTP_06g^>%RNprwyC7Z2RT6KX&Zev+uy6BYzz`aq7&u3zz=667=7-n|qJXGsJ6> diff --git a/package/sox/0001-uclibc.patch b/package/sox/0001-uclibc.patch new file mode 100644 index 00000000..5c118fa4 --- /dev/null +++ b/package/sox/0001-uclibc.patch @@ -0,0 +1,26 @@ +Make SoX support uclibc-based toolchains, from: +http://sourceforge.net/p/sox/bugs/179/ + +Signed-off-by: Gustavo Zacarias + +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/0002-configure.ac-put-back-disable-stack-protector.patch b/package/sox/0002-configure.ac-put-back-disable-stack-protector.patch new file mode 100644 index 00000000..28e2871f --- /dev/null +++ b/package/sox/0002-configure.ac-put-back-disable-stack-protector.patch @@ -0,0 +1,45 @@ +From 18ace560a15207503805d4df25b90c7a756bcbf6 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Tue, 2 Feb 2021 23:53:39 +0100 +Subject: [PATCH] configure.ac: put back --disable-stack-protector + +Put back --disable-stack-protector which has been removed by commit +70c85915eace83142b84e4f65f5db421cf0c09e3. This will allow the user to +disable it or to let a higher buildsystem such as buildroot to finely +configure it. + +Indeed, without this patch, build can fail as some compilers (such as +uclibc) could missed the needed library (-lssp or -lssp_nonshared) at +linking step: + + CCLD libsox.la +/home/fabrice/br-test-pkg/br-arm-full/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/5.5.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: cannot find -lssp_nonshared +/home/fabrice/br-test-pkg/br-arm-full/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/5.5.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: cannot find -lssp + +Signed-off-by: Fabrice Fontaine +[Upstream status: https://sourceforge.net/p/sox/patches/122/] +--- + configure.ac | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 39306398..a1665467 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -32,7 +32,12 @@ AC_PROG_LN_S + PKG_PROG_PKG_CONFIG + PKG_INSTALLDIR + +-AX_APPEND_COMPILE_FLAGS([-fstack-protector-strong]) ++AC_ARG_ENABLE([stack-protector], ++ AS_HELP_STRING([--disable-stack-protector], [Disable -fstack-protector-strong]), ++ [enable_stack_protector=$enableval], [enable_stack_protector=yes]) ++AS_IF([test x"$enable_stack_protector" = "xyes"], ++ [AX_APPEND_COMPILE_FLAGS([-fstack-protector-strong])]) ++ + AX_APPEND_COMPILE_FLAGS([-Wall -Wmissing-prototypes -Wstrict-prototypes]) + AX_APPEND_LINK_FLAGS([-Wl,--as-needed]) + +-- +2.29.2 + diff --git a/package/sox/0003-configure.ac-fix-static-linking-with-id3tag.patch b/package/sox/0003-configure.ac-fix-static-linking-with-id3tag.patch new file mode 100644 index 00000000..32d6f83b --- /dev/null +++ b/package/sox/0003-configure.ac-fix-static-linking-with-id3tag.patch @@ -0,0 +1,47 @@ +From 8df3a56cfb104c84d4701562ae2e3c9dc4686798 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sat, 6 Feb 2021 11:08:45 +0100 +Subject: [PATCH] configure.ac: fix static linking with id3tag + +Put back -lz (i.e. ZLIB_LIBS) when searching for id3tag which was +wrongly removed by commit 6ff0e9322f9891f5a6ac6c9b3bceffbfca16bec3. This +will fix the following static build failure: + +configure:15290: checking for id3_file_open in -lid3tag +configure:15315: /home/buildroot/autobuild/instance-0/output-1/host/bin/arm-linux-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -static -Wall -Wmissing-prototypes -Wstrict-prototypes -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -static -Wl,--as-needed conftest.c -lid3tag >&5 +conftest.c:60:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 60 | char id3_file_open (); + | ^~~~ +conftest.c:62:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 62 | main () + | ^~~~ +/home/buildroot/autobuild/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/9.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: /home/buildroot/autobuild/instance-0/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libid3tag.a(util.o): in function `id3_util_compress': +util.c:(.text+0x1ac): undefined reference to `compress2' +/home/buildroot/autobuild/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/9.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: /home/buildroot/autobuild/instance-0/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libid3tag.a(util.o): in function `id3_util_decompress': +util.c:(.text+0x240): undefined reference to `uncompress' + +Fixes: + - http://autobuild.buildroot.org/results/73efdacf237e3d567fa66f3b3f68e624f5e35bc7 + +Signed-off-by: Fabrice Fontaine +[Upstream status: https://sourceforge.net/p/sox/patches/123] +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 39306398..896714f5 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -83,7 +83,7 @@ dnl Various libraries + SOX_WITH_LIB([magic], [magic.h], [magic], [magic_open]) + SOX_CHECK_LIB([ZLIB], [zlib.h], [z], [uncompress]) + SOX_WITH_LIB([png], [png.h], [png], [png_set_rows], [], [], [], [$ZLIB_LIBS]) +-SOX_WITH_LIB([id3tag], [id3tag.h], [id3tag], [id3_file_open]) ++SOX_WITH_LIB([id3tag], [id3tag.h], [id3tag], [id3_file_open], [], [], [], [$ZLIB_LIBS]) + SOX_WITH_LIB([libgsm], [gsm/gsm.h gsm.h], [gsm], [gsm_create]) + + dnl Optional formats +-- +2.29.2 + diff --git a/package/sox/0004-configure.ac-fix-static-linking-with-magic.patch b/package/sox/0004-configure.ac-fix-static-linking-with-magic.patch new file mode 100644 index 00000000..7d2e390d --- /dev/null +++ b/package/sox/0004-configure.ac-fix-static-linking-with-magic.patch @@ -0,0 +1,48 @@ +From 4630e574e6c0269b94fd910e7c72b8ad1ee62ce7 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Wed, 3 Mar 2021 16:48:57 +0100 +Subject: [PATCH] configure.ac: fix static linking with magic + +Use SOX_FMT_PKG to retrieve magic dependencies (e.g. bzip2 or zlib) +indeed -lz (i.e. ZLIB_LIBS) was wrongly removed by commit +6ff0e9322f9891f5a6ac6c9b3bceffbfca16bec3. This will fix the following +static build failure: + +configure:11677: checking for magic_open in -lmagic +configure:11702: /srv/storage/autobuild/run/instance-0/output-1/host/bin/arm-linux-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -static -Wall -Wmissing-prototypes -Wstrict-prototypes -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -static -Wl,--as-needed conftest.c -lmagic >&5 +conftest.c:53:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 53 | char magic_open (); + | ^~~~ +conftest.c:55:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] + 55 | main () + | ^~~~ +/srv/storage/autobuild/run/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/9.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: /srv/storage/autobuild/run/instance-0/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libmagic.a(compress.o): in function `uncompresszlib': +compress.c:(.text+0x1d0): undefined reference to `inflateInit_' +/srv/storage/autobuild/run/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/9.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: compress.c:(.text+0x1e4): undefined reference to `inflate' +/srv/storage/autobuild/run/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/9.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: compress.c:(.text+0x1fc): undefined reference to `inflateEnd' + +Fixes: + - http://autobuild.buildroot.org/results/d96f27cd96926060046e2e1115777f5bceda3741 + +Signed-off-by: Fabrice Fontaine +[Upstream status: not sent yet (waiting for feedback on third patch)] +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 896714f5..8ae3202c 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -80,7 +80,7 @@ SOX_REPORT([other], [LADSPA effect plugins], [$HAVE_LADSPA]) + + dnl Various libraries + +-SOX_WITH_LIB([magic], [magic.h], [magic], [magic_open]) ++SOX_FMT_PKG([magic], [libmagic]) + SOX_CHECK_LIB([ZLIB], [zlib.h], [z], [uncompress]) + SOX_WITH_LIB([png], [png.h], [png], [png_set_rows], [], [], [], [$ZLIB_LIBS]) + SOX_WITH_LIB([id3tag], [id3tag.h], [id3tag], [id3_file_open], [], [], [], [$ZLIB_LIBS]) +-- +2.30.1 + diff --git a/package/sox/Config.in b/package/sox/Config.in new file mode 100644 index 00000000..5325ed68 --- /dev/null +++ b/package/sox/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_SOX + bool "sox" + help + SoX is a cross-platform (Windows, Linux, MacOS X, etc.) + command line utility that can convert various formats of + computer audio files into other formats. + + It can also apply various effects to these sound files, and, + as an added bonus, SoX can play and record audio files on + most platforms. + + http://sox.sourceforge.net/ diff --git a/package/sox/sox.hash b/package/sox/sox.hash new file mode 100644 index 00000000..d2006e02 --- /dev/null +++ b/package/sox/sox.hash @@ -0,0 +1,4 @@ +# Locally computed +sha256 3d06ba8fc39ac92f16da73593be48afe0a704fe4dc4f6eca2e5137ef77cd5115 sox-7524160b29a476f7e87bc14fddf12d349f9a3c5e-br1.tar.gz +sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 LICENSE.GPL +sha256 5df07007198989c622f5d41de8d703e7bef3d0e79d62e24332ee739a452af62a LICENSE.LGPL diff --git a/package/sox/sox.mk b/package/sox/sox.mk new file mode 100644 index 00000000..dcc1a670 --- /dev/null +++ b/package/sox/sox.mk @@ -0,0 +1,140 @@ +################################################################################ +# +# sox +# +################################################################################ + +SOX_VERSION = 7524160b29a476f7e87bc14fddf12d349f9a3c5e +SOX_SITE = git://git.code.sf.net/p/sox/code +SOX_SITE_METHOD = git +SOX_DEPENDENCIES = host-autoconf-archive host-pkgconf +SOX_LICENSE = GPL-2.0+ (sox binary), LGPL-2.1+ (libraries) +SOX_LICENSE_FILES = LICENSE.GPL LICENSE.LGPL +SOX_CPE_ID_VENDOR = sound_exchange_project +SOX_CPE_ID_PRODUCT = sound_exchange +# From git and we're patching configure.ac +SOX_AUTORECONF = YES +SOX_AUTORECONF_OPTS = --include=$(HOST_DIR)/share/autoconf-archive + +SOX_IGNORE_CVES += CVE-2017-11332 CVE-2017-11358 CVE-2017-11359 \ + CVE-2017-15370 CVE-2017-15371 CVE-2017-15372 CVE-2017-15642 \ + CVE-2017-18189 CVE-2019-8354 CVE-2019-8355 CVE-2019-8356 \ + CVE-2019-8357 CVE-2019-13590 + +SOX_CONF_OPTS = \ + --with-distro="Buildroot" \ + --disable-stack-protector + +ifeq ($(BR2_PACKAGE_ALSA_LIB_PCM),y) +SOX_DEPENDENCIES += alsa-lib +SOX_CONF_OPTS += --enable-alsa +else +SOX_CONF_OPTS += --disable-alsa +endif + +ifeq ($(BR2_PACKAGE_FILE),y) +SOX_DEPENDENCIES += file +SOX_CONF_OPTS += --enable-magic +else +SOX_CONF_OPTS += --disable-magic +endif + +ifeq ($(BR2_PACKAGE_FLAC),y) +SOX_DEPENDENCIES += flac +SOX_CONF_OPTS += --enable-flac +else +SOX_CONF_OPTS += --disable-flac +endif + +ifeq ($(BR2_PACKAGE_LAME),y) +SOX_DEPENDENCIES += lame +SOX_CONF_OPTS += --with-lame +else +SOX_CONF_OPTS += --without-lame +endif + +ifeq ($(BR2_PACKAGE_LIBAO),y) +SOX_DEPENDENCIES += libao +SOX_CONF_OPTS += --enable-ao +else +SOX_CONF_OPTS += --disable-ao +endif + +ifeq ($(BR2_PACKAGE_LIBGSM),y) +SOX_DEPENDENCIES += libgsm +SOX_CONF_OPTS += --enable-gsm +else +SOX_CONF_OPTS += --disable-gsm +endif + +ifeq ($(BR2_PACKAGE_LIBID3TAG),y) +SOX_DEPENDENCIES += libid3tag +SOX_CONF_OPTS += --with-id3tag +else +SOX_CONF_OPTS += --without-id3tag +endif + +ifeq ($(BR2_PACKAGE_LIBMAD),y) +SOX_DEPENDENCIES += libmad +SOX_CONF_OPTS += --with-mad +else +SOX_CONF_OPTS += --without-mad +endif + +ifeq ($(BR2_PACKAGE_LIBPNG),y) +SOX_DEPENDENCIES += libpng +SOX_CONF_OPTS += --with-png +else +SOX_CONF_OPTS += --without-png +endif + +ifeq ($(BR2_PACKAGE_LIBSNDFILE),y) +SOX_DEPENDENCIES += libsndfile +SOX_CONF_OPTS += --enable-sndfile +else +SOX_CONF_OPTS += --disable-sndfile +endif + +ifeq ($(BR2_PACKAGE_LIBVORBIS),y) +SOX_DEPENDENCIES += libvorbis +SOX_CONF_OPTS += --enable-oggvorbis +else +SOX_CONF_OPTS += --disable-oggvorbis +endif + +ifeq ($(BR2_PACKAGE_OPENCORE_AMR),y) +SOX_DEPENDENCIES += opencore-amr +SOX_CONF_OPTS += --enable-amrwb --enable-amrnb +else +SOX_CONF_OPTS += --disable-amrwb --disable-amrnb +endif + +ifeq ($(BR2_PACKAGE_OPUSFILE),y) +SOX_DEPENDENCIES += opusfile +SOX_CONF_OPTS += --enable-opus +else +SOX_CONF_OPTS += --disable-opus +endif + +ifeq ($(BR2_PACKAGE_PULSEAUDIO),y) +SOX_DEPENDENCIES += pulseaudio +SOX_CONF_OPTS += --enable-pulseaudio +else +SOX_CONF_OPTS += --disable-pulseaudio +endif + +ifeq ($(BR2_PACKAGE_TWOLAME),y) +SOX_DEPENDENCIES += twolame +SOX_CONF_OPTS += --with-twolame +else +SOX_CONF_OPTS += --without-twolame +endif + +ifeq ($(BR2_PACKAGE_WAVPACK),y) +SOX_DEPENDENCIES += wavpack +SOX_CONF_OPTS += --enable-wavpack +else +SOX_CONF_OPTS += --disable-wavpack +endif + +$(eval $(autotools-package)) diff --git a/package/sp-oops-extract/0001-Make-the-Makefile-more-cross-compiler-friendly.patch b/package/sp-oops-extract/0001-Make-the-Makefile-more-cross-compiler-friendly.patch new file mode 100644 index 00000000..67153c27 --- /dev/null +++ b/package/sp-oops-extract/0001-Make-the-Makefile-more-cross-compiler-friendly.patch @@ -0,0 +1,22 @@ +Fetch from: https://github.com/Schischu/ptxdist_sh/tree/master/patches/sp-oops-extract-0.0.7 + +From: Bernhard Walle +Date: Wed, 21 Mar 2012 15:55:06 +0100 +Subject: [PATCH] Make the Makefile more cross-compiler friendly + +Signed-off-by: Bernhard Walle +--- + src/Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/Makefile b/src/Makefile +index cf5b550..e05eb1f 100644 +--- a/src/Makefile ++++ b/src/Makefile +@@ -9,4 +9,4 @@ distclean: clean + $(RM) $(TARGETS) + + sp-oops-extract: oopslog.c +- gcc -Wall -s -o $@ $^ ++ $(CC) $(LDFLAGS) $(CPPFLAGS) $(CFLAGS) -Wall -o $@ $^ + diff --git a/package/sp-oops-extract/0002-stdint-cleanup.patch b/package/sp-oops-extract/0002-stdint-cleanup.patch new file mode 100644 index 00000000..255fe8a8 --- /dev/null +++ b/package/sp-oops-extract/0002-stdint-cleanup.patch @@ -0,0 +1,33 @@ +consolidate use of stdint types + +Change u_int*_t to uint*_t for compatibility with a larger number of C +libraries. + +Signed-off-by: Doug Kehn + +Index: sp-oops-extract-0.0.7-1/src/oopslog.c +=================================================================== +--- sp-oops-extract-0.0.7-1.orig/src/oopslog.c ++++ sp-oops-extract-0.0.7-1/src/oopslog.c +@@ -64,8 +64,8 @@ static int try_to_check_for_bad_blocks(v + + int main(const int argc, const char *argv[]) + { +- u_int32_t *count, maxcount = 0xffffffff; +- u_int32_t *magic_ptr, magic_value = 0x5d005d00; ++ uint32_t *count, maxcount = 0xffffffff; ++ uint32_t *magic_ptr, magic_value = 0x5d005d00; + + unsigned char *charbuf; + unsigned long size; +@@ -137,8 +137,8 @@ int main(const int argc, const char *arg + errx(-1, "%s is something weird", device); + + charbuf = buf; +- count = (u_int32_t *) buf; +- magic_ptr = (u_int32_t *) (buf + sizeof(u_int32_t)); ++ count = (uint32_t *) buf; ++ magic_ptr = (uint32_t *) (buf + sizeof(uint32_t)); + + for (i = 0; i < (size / OOPS_PAGE_SIZE); i++) { + pread(fd, buf, OOPS_PAGE_SIZE, i * OOPS_PAGE_SIZE); diff --git a/package/sp-oops-extract/Config.in b/package/sp-oops-extract/Config.in new file mode 100644 index 00000000..d4e0252c --- /dev/null +++ b/package/sp-oops-extract/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_SP_OOPS_EXTRACT + bool "sp-oops-extract" + help + A tool for extracting OOPS/panic logs from MTD. + + http://maemo.org/packages/view/sp-oops-extract/ diff --git a/package/sp-oops-extract/sp-oops-extract.hash b/package/sp-oops-extract/sp-oops-extract.hash new file mode 100644 index 00000000..666cce78 --- /dev/null +++ b/package/sp-oops-extract/sp-oops-extract.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 85601a569af1f4584db75fad21d3a70e377ce12d1bccad7dbe1112abd3b43d93 sp-oops-extract_0.0.7-1.tar.gz +sha256 c38aee9e3c8c4d5d594ff548a1be05453023016d6286931f6512db215ec1fd42 COPYING diff --git a/package/sp-oops-extract/sp-oops-extract.mk b/package/sp-oops-extract/sp-oops-extract.mk new file mode 100644 index 00000000..a3ff46c5 --- /dev/null +++ b/package/sp-oops-extract/sp-oops-extract.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# sp-oops-extract +# +################################################################################ + +SP_OOPS_EXTRACT_VERSION = 0.0.7-1 +SP_OOPS_EXTRACT_SITE = http://repository.maemo.org/pool/maemo5.0/free/s/sp-oops-extract +SP_OOPS_EXTRACT_SOURCE = sp-oops-extract_$(SP_OOPS_EXTRACT_VERSION).tar.gz +SP_OOPS_EXTRACT_LICENSE = GPL-2.0 +SP_OOPS_EXTRACT_LICENSE_FILES = COPYING + +define SP_OOPS_EXTRACT_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) +endef + +define SP_OOPS_EXTRACT_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install \ + DESTDIR=$(TARGET_DIR) +endef + +$(eval $(generic-package)) diff --git a/package/spandsp/0001-configure.ac-fix-AVX-SSE-and-MMX-options.patch b/package/spandsp/0001-configure.ac-fix-AVX-SSE-and-MMX-options.patch new file mode 100644 index 00000000..50eecfbf --- /dev/null +++ b/package/spandsp/0001-configure.ac-fix-AVX-SSE-and-MMX-options.patch @@ -0,0 +1,60 @@ +From e7330bfe63efd0062fa51d50a4aaa0f1abd5ff75 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sun, 22 Nov 2020 17:02:43 +0100 +Subject: [PATCH] configure.ac: fix AVX, SSE and MMX options + +AVX, SSE and MMX options are broken since +https://github.com/freeswitch/spandsp/commit/87a900c70df73e128a5926587047f529105f5f64 + +For example, when the user enables SSE, it will also enable MMX and the +user can't disable MMX + +Signed-off-by: Fabrice Fontaine +[Upstream status: https://github.com/freeswitch/spandsp/pull/20] +--- + configure.ac | 8 -------- + 1 file changed, 8 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 83fb3fd..ac2592e 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -486,35 +486,27 @@ armv7[bl] | armv7-*) + x86_64-* | i386-* | i686-*) + if test "$enable_avx2" = "yes" ; then + AC_DEFINE([SPANDSP_USE_AVX2], [1], [Use the AVX2 instruction set (i386 and x86_64 only).]) +- enable_avx="yes" + fi + if test "$enable_avx" = "yes" ; then + AC_DEFINE([SPANDSP_USE_AVX], [1], [Use the AVX instruction set (i386 and x86_64 only).]) +- enable_sse4_2="yes" + fi + if test "$enable_sse4_2" = "yes" ; then + AC_DEFINE([SPANDSP_USE_SSE4_2], [1], [Use the SSE4.2 instruction set (i386 and x86_64 only).]) +- enable_sse4_1="yes" + fi + if test "$enable_sse4_1" = "yes" ; then + AC_DEFINE([SPANDSP_USE_SSE4_1], [1], [Use the SSE4.1 instruction set (i386 and x86_64 only).]) +- enable_ssse3="yes" + fi + if test "$enable_ssse3" = "yes" ; then + AC_DEFINE([SPANDSP_USE_SSSE3], [1], [Use the SSSE3 instruction set (i386 and x86_64 only).]) +- enable_sse3="yes" + fi + if test "$enable_sse3" = "yes" ; then + AC_DEFINE([SPANDSP_USE_SSE3], [1], [Use the SSE3 instruction set (i386 and x86_64 only).]) +- enable_sse2="yes" + fi + if test "$enable_sse2" = "yes" ; then + AC_DEFINE([SPANDSP_USE_SSE2], [1], [Use the SSE2 instruction set (i386 and x86_64 only).]) +- enable_sse="yes" + fi + if test "$enable_sse" = "yes" ; then + AC_DEFINE([SPANDSP_USE_SSE], [1], [Use the SSE instruction set (i386 and x86_64 only).]) +- enable_mmx="yes" + fi + if test "$enable_mmx" = "yes" ; then + AC_DEFINE([SPANDSP_USE_MMX], [1], [Use the MMX instruction set (i386 and x86_64 only).]) +-- +2.29.2 + diff --git a/package/spandsp/Config.in b/package/spandsp/Config.in new file mode 100644 index 00000000..c64eee8a --- /dev/null +++ b/package/spandsp/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_SPANDSP + bool "spandsp" + select BR2_PACKAGE_TIFF + select BR2_PACKAGE_TIFF_JPEG + help + Spandsp is a library of many DSP functions for telephony. + These range from simple modules, such as DTMF detection, to + a complete software FAX machine. + + https://github.com/freeswitch/spandsp diff --git a/package/spandsp/spandsp.hash b/package/spandsp/spandsp.hash new file mode 100644 index 00000000..d38b0691 --- /dev/null +++ b/package/spandsp/spandsp.hash @@ -0,0 +1,3 @@ +# sha256 locally computed +sha256 a11beed46b488a4cac3b0c42042ad28448bcee4c0027a82d5449180bbb178836 spandsp-3.0.0-6ec23e5a7e.tar.gz +sha256 366576cb0b869cd9e95a4882878607314650488ac635e5df0692180382e9666a COPYING diff --git a/package/spandsp/spandsp.mk b/package/spandsp/spandsp.mk new file mode 100644 index 00000000..4735212f --- /dev/null +++ b/package/spandsp/spandsp.mk @@ -0,0 +1,29 @@ +################################################################################ +# +# spandsp +# +################################################################################ + +SPANDSP_VERSION = 3.0.0-6ec23e5a7e +SPANDSP_SITE = https://files.freeswitch.org/downloads/libs +SPANDSP_LICENSE = LGPL-2.1 (library), GPL-2.0 (test suite) +SPANDSP_LICENSE_FILES = COPYING +# We're patching configure.ac +SPANDSP_AUTORECONF = YES + +SPANDSP_DEPENDENCIES = tiff host-pkgconf +SPANDSP_INSTALL_STAGING = YES +SPANDSP_CONF_ENV = LIBS="`$(PKG_CONFIG_HOST_BINARY) --libs libtiff-4`" + +# MMX on i686 raises a build failure +SPANDSP_CONF_OPTS = \ + --disable-builtin-tiff \ + $(if $(BR2_x86_64),--enable-mmx,--disable-mmx) \ + $(if $(BR2_X86_CPU_HAS_SSE),--enable-sse,--disable-sse) \ + $(if $(BR2_X86_CPU_HAS_SSE2),--enable-sse2,--disable-sse2) \ + $(if $(BR2_X86_CPU_HAS_SSE3),--enable-sse3,--disable-sse3) \ + $(if $(BR2_X86_CPU_HAS_SSSE3),--enable-ssse3,--disable-ssse3) \ + $(if $(BR2_X86_CPU_HAS_SSE4),--enable-sse4-1,--disable-sse4-1) \ + $(if $(BR2_X86_CPU_HAS_SSE42),--enable-sse4-2,--disable-sse4-2) + +$(eval $(autotools-package)) diff --git a/package/spawn-fcgi/Config.in b/package/spawn-fcgi/Config.in new file mode 100644 index 00000000..59791e8d --- /dev/null +++ b/package/spawn-fcgi/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_SPAWN_FCGI + bool "spawn-fcgi" + depends on BR2_USE_MMU # fork() + help + FastCGI process spawner. + Project split from lighttpd. + + http://redmine.lighttpd.net/projects/spawn-fcgi diff --git a/package/spawn-fcgi/spawn-fcgi.hash b/package/spawn-fcgi/spawn-fcgi.hash new file mode 100644 index 00000000..b5c5c742 --- /dev/null +++ b/package/spawn-fcgi/spawn-fcgi.hash @@ -0,0 +1,4 @@ +# From http://redmine.lighttpd.net/news/9 +sha256 a3cfc7c9581b6ddc31084b379c9160323fa345d357ace6cd2d3d3af3593e2873 spawn-fcgi-1.6.4.tar.bz2 +# Locally computed +sha256 5c98cad2fbaf5c5e2562bcbab401a7c557c1bb1bac9914ecc63730925052fb13 COPYING diff --git a/package/spawn-fcgi/spawn-fcgi.mk b/package/spawn-fcgi/spawn-fcgi.mk new file mode 100644 index 00000000..8caa1e2b --- /dev/null +++ b/package/spawn-fcgi/spawn-fcgi.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# spawn-fcgi +# +################################################################################ + +SPAWN_FCGI_VERSION = 1.6.4 +SPAWN_FCGI_SITE = http://www.lighttpd.net/download +SPAWN_FCGI_SOURCE = spawn-fcgi-$(SPAWN_FCGI_VERSION).tar.bz2 +SPAWN_FCGI_LICENSE = BSD-3-Clause +SPAWN_FCGI_LICENSE_FILES = COPYING +SPAWN_FCGI_CPE_ID_VENDOR = lighttpd + +$(eval $(autotools-package)) diff --git a/package/spdlog/Config.in b/package/spdlog/Config.in new file mode 100644 index 00000000..877c1b6a --- /dev/null +++ b/package/spdlog/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_SPDLOG + bool "spdlog" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_WCHAR # fmt + select BR2_PACKAGE_FMT + help + Very fast, header-only/compiled, C++ logging library. + + https://github.com/gabime/spdlog + +comment "spdlog needs a toolchain w/ C++, threads, wchar" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS \ + || !BR2_USE_WCHAR diff --git a/package/spdlog/spdlog.hash b/package/spdlog/spdlog.hash new file mode 100644 index 00000000..da1e0c27 --- /dev/null +++ b/package/spdlog/spdlog.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 e20e6bd8f57e866eaf25a5417f0a38a116e537f1a77ac7b5409ca2b180cec0d5 spdlog-1.8.2.tar.gz +sha256 a7241a379cb98d37788f82c2fc2e484c3ae85dae881fd3406f0637644850926f LICENSE diff --git a/package/spdlog/spdlog.mk b/package/spdlog/spdlog.mk new file mode 100644 index 00000000..caf30be6 --- /dev/null +++ b/package/spdlog/spdlog.mk @@ -0,0 +1,25 @@ +################################################################################ +# +# spdlog +# +################################################################################ + +SPDLOG_VERSION = 1.8.2 +SPDLOG_SITE = $(call github,gabime,spdlog,v$(SPDLOG_VERSION)) +SPDLOG_LICENSE = MIT +SPDLOG_LICENSE_FILES = LICENSE +SPDLOG_INSTALL_STAGING = YES +SPDLOG_DEPENDENCIES = fmt +SPDLOG_CONF_OPTS += \ + -DSPDLOG_BUILD_TESTS=OFF \ + -DSPDLOG_BUILD_EXAMPLE=OFF \ + -DSPDLOG_BUILD_BENCH=OFF \ + -DSPDLOG_FMT_EXTERNAL=ON + +ifeq ($(BR2_STATIC_LIBS),y) +SPDLOG_CONF_OPTS += -DSPDLOG_BUILD_SHARED=OFF +else +SPDLOG_CONF_OPTS += -DSPDLOG_BUILD_SHARED=ON +endif + +$(eval $(cmake-package)) diff --git a/package/speex/0001-thumb2-support.patch b/package/speex/0001-thumb2-support.patch new file mode 100644 index 00000000..092fa132 --- /dev/null +++ b/package/speex/0001-thumb2-support.patch @@ -0,0 +1,222 @@ +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 +[Bernd: rebased for 1.2.0] +Signed-off-by: Bernd Kuhls + +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" + "\tcmp %4, %1 \n" ++ "\tit gt \n" + "\tmovgt %1, %4 \n" + "\tcmp %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/Config.in b/package/speex/Config.in new file mode 100644 index 00000000..c4e3df5d --- /dev/null +++ b/package/speex/Config.in @@ -0,0 +1,23 @@ +config BR2_PACKAGE_SPEEX + bool "speex" + select BR2_PACKAGE_LIBOGG + help + Speex is an Open Source/Free Software patent-free + audio compression format designed for speech. + It can be used for Voice over IP + + http://www.speex.org/ + +if BR2_PACKAGE_SPEEX + +config BR2_PACKAGE_SPEEX_ARM4 + bool + default y + depends on BR2_ARM_CPU_ARMV4 + +config BR2_PACKAGE_SPEEX_ARM5E + bool + default y + depends on BR2_arm && !BR2_PACKAGE_SPEEX_ARM4 + +endif diff --git a/package/speex/speex.hash b/package/speex/speex.hash new file mode 100644 index 00000000..f5235d62 --- /dev/null +++ b/package/speex/speex.hash @@ -0,0 +1,6 @@ +# From https://downloads.xiph.org/releases/speex/SHA256SUMS.txt +sha256 eaae8af0ac742dc7d542c9439ac72f1f385ce838392dc849cae4536af9210094 speex-1.2.0.tar.gz +# From https://downloads.xiph.org/releases/speex/MD5SUMS +md5 8ab7bb2589110dfaf0ed7fa7757dc49c speex-1.2.0.tar.gz +# Locally computed +sha256 671bb5d8fd3c6b05a2e831d90f978ac27965c92bd8ea6d16b3df76e3440c0e9f COPYING diff --git a/package/speex/speex.mk b/package/speex/speex.mk new file mode 100644 index 00000000..522f8cc0 --- /dev/null +++ b/package/speex/speex.mk @@ -0,0 +1,35 @@ +################################################################################ +# +# speex +# +################################################################################ + +SPEEX_VERSION = 1.2.0 +SPEEX_SITE = https://downloads.xiph.org/releases/speex +SPEEX_LICENSE = BSD-3-Clause +SPEEX_LICENSE_FILES = COPYING +SPEEX_INSTALL_STAGING = YES +SPEEX_DEPENDENCIES = host-pkgconf libogg +SPEEX_CONF_OPTS = \ + --enable-fixed-point + +ifeq ($(BR2_PACKAGE_SPEEXDSP),y) +SPEEX_DEPENDENCIES += speexdsp +endif + +ifeq ($(BR2_PACKAGE_SPEEX_ARM4),y) +SPEEX_CONF_OPTS += --enable-arm4-asm +endif + +ifeq ($(BR2_PACKAGE_SPEEX_ARM5E),y) +SPEEX_CONF_OPTS += --enable-arm5e-asm +endif + +define SPEEX_LIBTOOL_FIXUP + $(SED) 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' $(@D)/libtool + $(SED) 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' $(@D)/libtool +endef + +SPEEX_POST_CONFIGURE_HOOKS += SPEEX_LIBTOOL_FIXUP + +$(eval $(autotools-package)) diff --git a/package/speexdsp/Config.in b/package/speexdsp/Config.in new file mode 100644 index 00000000..2ae5b59d --- /dev/null +++ b/package/speexdsp/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_SPEEXDSP + bool "speexdsp" + help + DSP library derived from speex. + + https://www.speex.org diff --git a/package/speexdsp/speexdsp.hash b/package/speexdsp/speexdsp.hash new file mode 100644 index 00000000..fd9870dc --- /dev/null +++ b/package/speexdsp/speexdsp.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 c92c7e428cb5ca11b4e6f13118ff288332f330b6fefc93cb39bf7b43b13cb1f7 speexdsp-SpeexDSP-1.2.0-br1.tar.gz +sha256 671bb5d8fd3c6b05a2e831d90f978ac27965c92bd8ea6d16b3df76e3440c0e9f COPYING diff --git a/package/speexdsp/speexdsp.mk b/package/speexdsp/speexdsp.mk new file mode 100644 index 00000000..35c06dd8 --- /dev/null +++ b/package/speexdsp/speexdsp.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# speexdsp +# +################################################################################ + +SPEEXDSP_VERSION = SpeexDSP-1.2.0 +SPEEXDSP_SITE = https://gitlab.xiph.org/xiph/speexdsp.git +SPEEXDSP_SITE_METHOD = git +SPEEXDSP_LICENSE = BSD-3-Clause +SPEEXDSP_LICENSE_FILES = COPYING +SPEEXDSP_INSTALL_STAGING = YES +SPEEXDSP_DEPENDENCIES = host-pkgconf +SPEEXDSP_AUTORECONF = YES + +$(eval $(autotools-package)) diff --git a/package/sphinxbase/Config.in b/package/sphinxbase/Config.in new file mode 100644 index 00000000..00a19f61 --- /dev/null +++ b/package/sphinxbase/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_SPHINXBASE + bool "sphinxbase" + depends on BR2_TOOLCHAIN_HAS_THREADS + help + CMUSphinx toolkit is a leading speech recognition toolkit + with various tools used to build speech applications. CMU + Sphinx toolkit has a number of packages for different tasks + and applications. + + http://cmusphinx.sourceforge.net/ + +comment "sphinxbase needs a toolchain with threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/sphinxbase/sphinxbase.hash b/package/sphinxbase/sphinxbase.hash new file mode 100644 index 00000000..433fba68 --- /dev/null +++ b/package/sphinxbase/sphinxbase.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 06971dbe272d2f73bde0ef7b3538c0c8f8ea885cb171fd6b17a5975bced66e64 sphinxbase-5prealpha.tar.gz +sha256 26f12e0152a5d58c69904e439761a1b2fbb9267b5f04674dbf93667e3e6dd043 src/libsphinxbase/util/bio.c diff --git a/package/sphinxbase/sphinxbase.mk b/package/sphinxbase/sphinxbase.mk new file mode 100644 index 00000000..86f9089b --- /dev/null +++ b/package/sphinxbase/sphinxbase.mk @@ -0,0 +1,19 @@ +################################################################################ +# +# sphinxbase +# +################################################################################ + +SPHINXBASE_VERSION = 5prealpha +SPHINXBASE_SITE = http://downloads.sourceforge.net/project/cmusphinx/sphinxbase/5prealpha +SPHINXBASE_LICENSE = BSD-2-Clause +# Note http://sourceforge.net/p/cmusphinx/bugs/441/ "LICENSE file missing in" +# 5prealpha tarballs". The license is contained in the copyright notice at the +# top of each source file. For example: +SPHINXBASE_LICENSE_FILES = src/libsphinxbase/util/bio.c + +SPHINXBASE_DEPENDENCIES = host-bison + +SPHINXBASE_CONF_OPTS = --without-python --without-lapack + +$(eval $(autotools-package)) diff --git a/package/spi-tools/Config.in b/package/spi-tools/Config.in new file mode 100644 index 00000000..8d263444 --- /dev/null +++ b/package/spi-tools/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_SPI_TOOLS + bool "spi-tools" + help + This package contains some simple command line tools to help + using Linux spidev devices. + + https://github.com/cpb-/spi-tools diff --git a/package/spi-tools/spi-tools.hash b/package/spi-tools/spi-tools.hash new file mode 100644 index 00000000..771f86e4 --- /dev/null +++ b/package/spi-tools/spi-tools.hash @@ -0,0 +1,3 @@ +# locally computed hash +sha256 319ad6ab296111109ea4a820e216cef392429295de7e10e76f7146677337cf09 spi-tools-0.8.6.tar.gz +sha256 a01259a1b522cf0de95824f9860613b453153eebac468e96196d5d7dba84786c LICENSE diff --git a/package/spi-tools/spi-tools.mk b/package/spi-tools/spi-tools.mk new file mode 100644 index 00000000..b2dd4db3 --- /dev/null +++ b/package/spi-tools/spi-tools.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# spi-tools +# +################################################################################ + +SPI_TOOLS_VERSION = 0.8.6 +SPI_TOOLS_SITE = $(call github,cpb-,spi-tools,$(SPI_TOOLS_VERSION)) +# autoreconf must be run as specified in package documentation +SPI_TOOLS_AUTORECONF = YES +SPI_TOOLS_LICENSE = GPL-2.0 +SPI_TOOLS_LICENSE_FILES = LICENSE + +$(eval $(autotools-package)) diff --git a/package/spice-protocol/Config.in b/package/spice-protocol/Config.in new file mode 100644 index 00000000..63b08aa0 --- /dev/null +++ b/package/spice-protocol/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_SPICE_PROTOCOL + bool "spice protocol" + help + The Spice project aims to provide a complete open source + solution for interaction with virtualized desktop devices. + The Spice project deals with both the virtualized devices + and the front-end. Interaction between front-end and + back-end is done using VD-Interfaces. + + This package implements the protocol-part of Spice. + + http://www.spice-space.org/ diff --git a/package/spice-protocol/spice-protocol.hash b/package/spice-protocol/spice-protocol.hash new file mode 100644 index 00000000..f02cf7f0 --- /dev/null +++ b/package/spice-protocol/spice-protocol.hash @@ -0,0 +1,5 @@ +# From https://www.spice-space.org/download/releases/spice-protocol-0.14.3.tar.xz.sha256sum +sha256 f986e5bc2a1598532c4897f889afb0df9257ac21c160c083703ae7c8de99487a spice-protocol-0.14.3.tar.xz + +# Hash for license file +sha256 eb55ea746be694c449224c7ddce6340648b075fd377281712a19094e7fb7ef92 COPYING diff --git a/package/spice-protocol/spice-protocol.mk b/package/spice-protocol/spice-protocol.mk new file mode 100644 index 00000000..172d4568 --- /dev/null +++ b/package/spice-protocol/spice-protocol.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# spice-protocol +# +################################################################################ + +SPICE_PROTOCOL_VERSION = 0.14.3 +SPICE_PROTOCOL_SOURCE = spice-protocol-$(SPICE_PROTOCOL_VERSION).tar.xz +SPICE_PROTOCOL_SITE = http://www.spice-space.org/download/releases +SPICE_PROTOCOL_LICENSE = BSD-3-Clause +SPICE_PROTOCOL_LICENSE_FILES = COPYING +SPICE_PROTOCOL_INSTALL_STAGING = YES + +$(eval $(meson-package)) diff --git a/package/spice/Config.in b/package/spice/Config.in new file mode 100644 index 00000000..2241b55b --- /dev/null +++ b/package/spice/Config.in @@ -0,0 +1,24 @@ +comment "spice server needs a toolchain w/ wchar, threads" + depends on BR2_i386 || BR2_x86_64 + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS + +config BR2_PACKAGE_SPICE + bool "spice server" + depends on BR2_i386 || BR2_x86_64 + depends on BR2_USE_WCHAR # libglib2 + depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 + select BR2_PACKAGE_JPEG + select BR2_PACKAGE_LIBGLIB2 + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_PIXMAN + select BR2_PACKAGE_SPICE_PROTOCOL + help + The Spice project aims to provide a complete open source + solution for interaction with virtualized desktop devices. + The Spice project deals with both the virtualized devices + and the front-end. Interaction between front-end and + back-end is done using VD-Interfaces. + + This package implements the server-part of Spice. + + http://www.spice-space.org/ diff --git a/package/spice/spice.hash b/package/spice/spice.hash new file mode 100644 index 00000000..b228f213 --- /dev/null +++ b/package/spice/spice.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 b320cf8f4bd2852750acb703c15b72856027e5a8554f8217dfbb3cc09deba0f5 spice-0.15.0.tar.bz2 +sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING diff --git a/package/spice/spice.mk b/package/spice/spice.mk new file mode 100644 index 00000000..5f7bcd9d --- /dev/null +++ b/package/spice/spice.mk @@ -0,0 +1,72 @@ +################################################################################ +# +# spice +# +################################################################################ + +SPICE_VERSION = 0.15.0 +SPICE_SOURCE = spice-$(SPICE_VERSION).tar.bz2 +SPICE_SITE = http://www.spice-space.org/download/releases/spice-server +SPICE_LICENSE = LGPL-2.1+ +SPICE_LICENSE_FILES = COPYING +SPICE_CPE_ID_VENDOR = spice_project +SPICE_INSTALL_STAGING = YES +SPICE_DEPENDENCIES = \ + host-pkgconf \ + jpeg \ + libglib2 \ + openssl \ + pixman \ + spice-protocol + +# We disable everything for now, because the dependency tree can become +# quite deep if we try to enable some features, and I have not tested that. +SPICE_CONF_OPTS = \ + --disable-gstreamer \ + --disable-opengl \ + --disable-smartcard \ + --without-sasl \ + --disable-manual \ + --disable-tests + +SPICE_DEPENDENCIES += host-pkgconf + +ifeq ($(BR2_PACKAGE_LZ4),y) +SPICE_CONF_OPTS += --enable-lz4 +SPICE_DEPENDENCIES += lz4 +else +SPICE_CONF_OPTS += --disable-lz4 +endif + +ifeq ($(BR2_PACKAGE_OPUS),y) +SPICE_CONF_OPTS += --enable-opus +SPICE_DEPENDENCIES += opus +else +SPICE_CONF_OPTS += --disable-opus +endif + +# We need to tweak spice.pc because it /forgets/ (for static linking) that +# it should link against libz and libjpeg. libz is pkg-config-aware, while +# libjpeg isn't, hence the two-line tweak +define SPICE_POST_INSTALL_STAGING_FIX_PC + $(SED) 's/^\(Requires.private:.*\)$$/\1 zlib/; s/^\(Libs.private:.*\)$$/\1 -ljpeg/;' \ + "$(STAGING_DIR)/usr/lib/pkgconfig/spice-server.pc" +endef +SPICE_POST_INSTALL_STAGING_HOOKS += SPICE_POST_INSTALL_STAGING_FIX_PC + +# It is currently not possible to detect if stack-protection is available +# or not, because it requires support from both the compiler *and* the +# C library, but the C library (eg. uClibc) can be compiled without that +# support, even if gcc accepts the -fstack-protector-all option. +# spice's ./configure only checks for gcc's -fstack-protector-all option, +# so it misses the case where the C library doe not provide the requires +# support. +# A correct fix would be to fix spice's ./configure to also check the C +# library, but it might be much more involved. +# So, we simply disable it for now. After all, as uClibc's help puts it: +# Note that NOEXECSTACK on a kernel with address space randomization +# is generally sufficient to prevent most buffer overflow exploits +# without increasing code size. +SPICE_CONF_OPTS += gl_cv_warn__fstack_protector_all=no + +$(eval $(autotools-package)) diff --git a/package/spidermonkey/0001-allow-newer-autoconf-versions.patch b/package/spidermonkey/0001-allow-newer-autoconf-versions.patch new file mode 100644 index 00000000..61becb68 --- /dev/null +++ b/package/spidermonkey/0001-allow-newer-autoconf-versions.patch @@ -0,0 +1,61 @@ +From 646a78262b18e19721cd41ee515215221dd241b6 Mon Sep 17 00:00:00 2001 +From: Hongxu Jia +Date: Thu, 12 Jul 2018 18:12:42 +0800 +Subject: [PATCH] allow newer autoconf versions + +Spidermonkey is hardcoded to use Autoconf 2.13, which is from 1999! +The reasoning behind using 2.13 is because newer versions of Autoconf at the +time did not work correctly with the custom m4 macros in the source code. +However: Because we are building just the spidermonkey engine instead of the +entire firefox package, and we are using a tarball with a pre-setup +old-configure file, there is no need for the old version of autoconf. + +See: https://bugzilla.mozilla.org/show_bug.cgi?id=104642 + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Hongxu Jia +Signed-off-by: Adam Duskett +--- + build/moz.configure/old.configure | 4 ++-- + js/src/old-configure | 2 +- + 2 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/build/moz.configure/old.configure b/build/moz.configure/old.configure +index 17d0c5bf..436fcc5e 100644 +--- a/build/moz.configure/old.configure ++++ b/build/moz.configure/old.configure +@@ -33,7 +33,7 @@ def autoconf(mozconfig, autoconf): + autoconf = autoconf[0] if autoconf else None + + for ac in (mozconfig_autoconf, autoconf, 'autoconf-2.13', 'autoconf2.13', +- 'autoconf213'): ++ 'autoconf213', 'autoconf'): + if ac: + autoconf = find_program(ac) + if autoconf: +@@ -87,7 +87,7 @@ def prepare_configure(old_configure, mozconfig, autoconf, build_env, shell, + old_configure = os.path.join(old_configure_dir, 'js', 'src', + os.path.basename(old_configure)) + +- refresh = True ++ refresh = False + if exists(old_configure): + mtime = getmtime(old_configure) + aclocal = os.path.join(build_env.topsrcdir, 'build', 'autoconf', +diff --git a/js/src/old-configure b/js/src/old-configure +index 58cc646f..ebd2646e 100644 +--- a/js/src/old-configure ++++ b/js/src/old-configure +@@ -587,7 +587,7 @@ if test -z "$srcdir"; then + ac_prog=$0 + ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'` + test "x$ac_confdir" = "x$ac_prog" && ac_confdir=. +- srcdir=$ac_confdir ++ srcdir="$ac_confdir/../../" + if test ! -r $srcdir/$ac_unique_file; then + srcdir=.. + fi +-- +2.23.0 + diff --git a/package/spidermonkey/0002-allow-building-in-tree.patch b/package/spidermonkey/0002-allow-building-in-tree.patch new file mode 100644 index 00000000..533747cb --- /dev/null +++ b/package/spidermonkey/0002-allow-building-in-tree.patch @@ -0,0 +1,47 @@ +From 07d40f72e1ed1d84a5ddd98ae8490d41a2e19c46 Mon Sep 17 00:00:00 2001 +From: Arjan van de Ven +Date: Wed, 5 Sep 2018 11:39:01 +0000 +Subject: [PATCH] allow building in tree + +By default, spidermonkey must be configured and built out-of-tree, +otherwise the following error occurs: + +FATAL ERROR PROCESSING MOZBUILD FILE +============================== + +The error occurred while processing the following file or one of the files it +includes: + js/src/shell/moz.build + +The error occurred when validating the result of the execution. The reported +error is: + Path specified in LOCAL_INCLUDES is not allowed: + .. (resolved to js/src) + +Remove this check, as spidermonkey builds without issue in-tree. + +Signed-off-by: Arjan van de Ven +Signed-off-by: Adam Duskett +--- + python/mozbuild/mozbuild/frontend/emitter.py | 5 ----- + 1 file changed, 5 deletions(-) + +diff --git a/python/mozbuild/mozbuild/frontend/emitter.py b/python/mozbuild/mozbuild/frontend/emitter.py +index 642b381c..c37fbf5d 100644 +--- a/python/mozbuild/mozbuild/frontend/emitter.py ++++ b/python/mozbuild/mozbuild/frontend/emitter.py +@@ -1127,11 +1127,6 @@ class TreeMetadataEmitter(LoggingMixin): + raise SandboxValidationError('Path specified in LOCAL_INCLUDES ' + 'does not exist: %s (resolved to %s)' % (local_include, + full_path), context) +- if (full_path == context.config.topsrcdir or +- full_path == context.config.topobjdir): +- raise SandboxValidationError('Path specified in LOCAL_INCLUDES ' +- 'is not allowed: %s (resolved to %s)' % (local_include, +- full_path), context) + include_obj = LocalInclude(context, local_include) + local_includes.append(include_obj.path.full_path) + yield include_obj +-- +2.23.0 + diff --git a/package/spidermonkey/0003-allow-unknown-configuration-options.patch b/package/spidermonkey/0003-allow-unknown-configuration-options.patch new file mode 100644 index 00000000..b489075a --- /dev/null +++ b/package/spidermonkey/0003-allow-unknown-configuration-options.patch @@ -0,0 +1,35 @@ +From 4a06a1a6a71293decb83aee7adb74bc709493106 Mon Sep 17 00:00:00 2001 +From: Philip Chimento +Date: Wed, 5 Jul 2017 22:57:09 -0700 +Subject: [PATCH] allow unknown configuration options + +By default, if an unknown parameter is passed to configure, an error is raised. +Replace the raise with a pass and continue. + +Fixes: https://bugzilla.mozilla.org/show_bug.cgi?id=1379540 + +Signed-off-by: Philip Chimento +Signed-off-by: Adam Duskett +--- + js/src/configure | 9 +++++++++ + python/mozbuild/mozbuild/configure/__init__.py | 2 +- + python/mozbuild/mozbuild/configure/options.py | 6 +++++- + 3 files changed, 15 insertions(+), 2 deletions(-) + create mode 100755 js/src/configure + +diff --git a/python/mozbuild/mozbuild/configure/__init__.py b/python/mozbuild/mozbuild/configure/__init__.py +index 0fe640ca..09b460d3 100644 +--- a/python/mozbuild/mozbuild/configure/__init__.py ++++ b/python/mozbuild/mozbuild/configure/__init__.py +@@ -421,7 +421,7 @@ def run(self, path=None): + # All options should have been removed (handled) by now. + for arg in self._helper: + without_value = arg.split('=', 1)[0] +- raise InvalidOptionError('Unknown option: %s' % without_value) ++ pass + + # Run the execution queue + for func, args in self._execution_queue: +-- +2.23.0 + diff --git a/package/spidermonkey/0004-fix-building-with-musl.patch b/package/spidermonkey/0004-fix-building-with-musl.patch new file mode 100644 index 00000000..8d8b10fb --- /dev/null +++ b/package/spidermonkey/0004-fix-building-with-musl.patch @@ -0,0 +1,133 @@ +From 0c9e8f586ba52a9aef5ed298e8315b2598b8fb72 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Sat, 25 May 2019 16:54:45 -0700 +Subject: [PATCH] fix building with musl + +The MIPS specific header is not provided by musl +linux kernel headers provide which has same definitions + +Upstream-Status: Pending + +Signed-off-by: Khem Raj +Signed-off-by: Adam Duskett +--- +--- + js/src/jsmath.cpp | 2 +- + memory/build/Mutex.h | 4 ++-- + mozglue/misc/TimeStamp_darwin.cpp | 1 - + mozglue/misc/TimeStamp_posix.cpp | 1 - + nsprpub/pr/src/misc/prsystem.c | 1 - + third_party/python/psutil/psutil/_psutil_bsd.c | 1 - + third_party/python/psutil/psutil/_psutil_osx.c | 1 - + third_party/python/psutil/psutil/arch/osx/process_info.c | 1 - + 8 files changed, 3 insertions(+), 9 deletions(-) + +diff --git a/js/src/jsmath.cpp b/js/src/jsmath.cpp +index a28968be..8facaa81 100644 +--- a/js/src/jsmath.cpp ++++ b/js/src/jsmath.cpp +@@ -71,7 +71,7 @@ + #elif defined(__s390__) + #define GETRANDOM_NR 349 + #elif defined(__mips__) +-#include ++#include + #if _MIPS_SIM == _MIPS_SIM_ABI32 + #define GETRANDOM_NR 4353 + #elif _MIPS_SIM == _MIPS_SIM_ABI64 +diff --git a/memory/build/Mutex.h b/memory/build/Mutex.h +index cb8b1e7d..7b9eb1de 100644 +--- a/memory/build/Mutex.h ++++ b/memory/build/Mutex.h +@@ -42,7 +42,7 @@ struct Mutex { + if (pthread_mutexattr_init(&attr) != 0) { + return false; + } +- pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_ADAPTIVE_NP); ++ pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_STALLED); + if (pthread_mutex_init(&mMutex, &attr) != 0) { + pthread_mutexattr_destroy(&attr); + return false; +@@ -102,7 +102,7 @@ typedef Mutex StaticMutex; + + #if defined(XP_DARWIN) + #define STATIC_MUTEX_INIT OS_SPINLOCK_INIT +-#elif defined(XP_LINUX) && !defined(ANDROID) ++#elif defined(XP_LINUX) && !defined(ANDROID) && defined(__GLIBC__) + #define STATIC_MUTEX_INIT PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP + #else + #define STATIC_MUTEX_INIT PTHREAD_MUTEX_INITIALIZER +diff --git a/mozglue/misc/TimeStamp_darwin.cpp b/mozglue/misc/TimeStamp_darwin.cpp +index d2abe9a5..d065649c 100644 +--- a/mozglue/misc/TimeStamp_darwin.cpp ++++ b/mozglue/misc/TimeStamp_darwin.cpp +@@ -19,7 +19,6 @@ + + #include + #include +-#include + #include + #include + +diff --git a/mozglue/misc/TimeStamp_posix.cpp b/mozglue/misc/TimeStamp_posix.cpp +index 86c7609a..a37bd93a 100644 +--- a/mozglue/misc/TimeStamp_posix.cpp ++++ b/mozglue/misc/TimeStamp_posix.cpp +@@ -21,7 +21,6 @@ + #if defined(__DragonFly__) || defined(__FreeBSD__) || defined(__NetBSD__) || \ + defined(__OpenBSD__) + #include +-#include + #endif + + #if defined(__DragonFly__) || defined(__FreeBSD__) +diff --git a/nsprpub/pr/src/misc/prsystem.c b/nsprpub/pr/src/misc/prsystem.c +index eba85fb0..54b57bb9 100644 +--- a/nsprpub/pr/src/misc/prsystem.c ++++ b/nsprpub/pr/src/misc/prsystem.c +@@ -27,7 +27,6 @@ + || defined(OPENBSD) || defined(DRAGONFLY) || defined(DARWIN) + #define _PR_HAVE_SYSCTL + #include +-#include + #endif + + #if defined(DARWIN) +diff --git a/third_party/python/psutil/psutil/_psutil_bsd.c b/third_party/python/psutil/psutil/_psutil_bsd.c +index 9a2ed04b..9e0d34cb 100644 +--- a/third_party/python/psutil/psutil/_psutil_bsd.c ++++ b/third_party/python/psutil/psutil/_psutil_bsd.c +@@ -29,7 +29,6 @@ + #include + #include + #include +-#include + #include + #include + #include +diff --git a/third_party/python/psutil/psutil/_psutil_osx.c b/third_party/python/psutil/psutil/_psutil_osx.c +index 55dd64ca..ec356339 100644 +--- a/third_party/python/psutil/psutil/_psutil_osx.c ++++ b/third_party/python/psutil/psutil/_psutil_osx.c +@@ -13,7 +13,6 @@ + #include + #include + #include +-#include + #include + #include + #include +diff --git a/third_party/python/psutil/psutil/arch/osx/process_info.c b/third_party/python/psutil/psutil/arch/osx/process_info.c +index 40c79a2c..8de0dcbd 100644 +--- a/third_party/python/psutil/psutil/arch/osx/process_info.c ++++ b/third_party/python/psutil/psutil/arch/osx/process_info.c +@@ -16,7 +16,6 @@ + #include + #include + #include +-#include + #include + + #include "process_info.h" +-- +2.23.0 diff --git a/package/spidermonkey/0005-add-riscv-support.patch b/package/spidermonkey/0005-add-riscv-support.patch new file mode 100644 index 00000000..6b7ea326 --- /dev/null +++ b/package/spidermonkey/0005-add-riscv-support.patch @@ -0,0 +1,121 @@ +From 64ad80e6d95871f17be4cd01da15581f41ac0b2b Mon Sep 17 00:00:00 2001 +From: Stefan O'Rear +Date: Fri, 11 Nov 2016 21:10:34 -0700 +Subject: [PATCH] Add RISC-V support + +These changes allow spidermonkey to cross-compile for riscv64 and riscv32. + +Upstream-status: Submitted +See: https://bugzilla.mozilla.org/show_bug.cgi?id=1318905 + +Signed-off-by: Stefan O'Rear +Signed-off-by: Ricardo Salveti +Signed-off-by: Adam Duskett +--- + build/autoconf/config.guess | 3 +++ + build/moz.configure/init.configure | 3 +++ + js/src/jit/AtomicOperations.h | 2 ++ + js/src/jit/none/AtomicOperations-feeling-lucky.h | 8 ++++++++ + mfbt/tests/TestPoisonArea.cpp | 3 +++ + python/mozbuild/mozbuild/configure/constants.py | 4 ++++ + 6 files changed, 23 insertions(+) + +diff --git a/build/autoconf/config.guess b/build/autoconf/config.guess +index d5d667d4..1277a862 100755 +--- a/build/autoconf/config.guess ++++ b/build/autoconf/config.guess +@@ -1029,6 +1029,9 @@ EOF + ppcle:Linux:*:*) + echo powerpcle-unknown-linux-${LIBC} + exit ;; ++ riscv32:Linux:*:* | riscv64:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} ++ exit ;; + s390:Linux:*:* | s390x:Linux:*:*) + echo ${UNAME_MACHINE}-ibm-linux-${LIBC} + exit ;; +diff --git a/build/moz.configure/init.configure b/build/moz.configure/init.configure +index 83b8d705..ef33db50 100644 +--- a/build/moz.configure/init.configure ++++ b/build/moz.configure/init.configure +@@ -676,6 +676,9 @@ def split_triplet(triplet, allow_unknown=False): + elif cpu == 'sh4': + canonical_cpu = 'sh4' + endianness = 'little' ++ elif cpu in ('riscv32', 'riscv64'): ++ canonical_cpu = cpu ++ endianness = 'little' + elif allow_unknown: + canonical_cpu = cpu + endianness = 'unknown' +diff --git a/js/src/jit/AtomicOperations.h b/js/src/jit/AtomicOperations.h +index 3501e65b..fda0b148 100644 +--- a/js/src/jit/AtomicOperations.h ++++ b/js/src/jit/AtomicOperations.h +@@ -393,6 +393,8 @@ inline bool AtomicOperations::isLockfreeJS(int32_t size) { + #include "jit/none/AtomicOperations-feeling-lucky.h" + #elif defined(__s390__) || defined(__s390x__) + #include "jit/none/AtomicOperations-feeling-lucky.h" ++#elif defined(__riscv) ++#include "jit/none/AtomicOperations-feeling-lucky.h" + #else + #error "No AtomicOperations support provided for this platform" + #endif +diff --git a/js/src/jit/none/AtomicOperations-feeling-lucky.h b/js/src/jit/none/AtomicOperations-feeling-lucky.h +index c0b43699..42b1f3e0 100644 +--- a/js/src/jit/none/AtomicOperations-feeling-lucky.h ++++ b/js/src/jit/none/AtomicOperations-feeling-lucky.h +@@ -80,6 +80,14 @@ + #define GNUC_COMPATIBLE + #endif + ++#ifdef __riscv ++#define GNUC_COMPATIBLE ++#ifdef __riscv_xlen == 64 ++#define HAS_64BIT_ATOMICS ++#define HAS_64BIT_LOCKFREE ++#endif ++#endif ++ + // The default implementation tactic for gcc/clang is to use the newer + // __atomic intrinsics added for use in C++11 . Where that + // isn't available, we use GCC's older __sync functions instead. +diff --git a/mfbt/tests/TestPoisonArea.cpp b/mfbt/tests/TestPoisonArea.cpp +index 06c24ed0..fba9263c 100644 +--- a/mfbt/tests/TestPoisonArea.cpp ++++ b/mfbt/tests/TestPoisonArea.cpp +@@ -168,6 +168,9 @@ static const ia64_instr _return_instr = + #define RETURN_INSTR _return_instr + #define RETURN_INSTR_TYPE ia64_instr + ++#elif defined __riscv ++#define RETURN_INSTR 0x80828082 /* ret; ret */ ++ + #else + #error "Need return instruction for this architecture" + #endif +diff --git a/python/mozbuild/mozbuild/configure/constants.py b/python/mozbuild/mozbuild/configure/constants.py +index 33ae5a45..1067b6a4 100644 +--- a/python/mozbuild/mozbuild/configure/constants.py ++++ b/python/mozbuild/mozbuild/configure/constants.py +@@ -50,6 +50,8 @@ CPU_bitness = { + 'mips64': 64, + 'ppc': 32, + 'ppc64': 64, ++ 'riscv32': 32, ++ 'riscv64': 64, + 's390': 32, + 's390x': 64, + 'sh4': 32, +@@ -82,6 +84,8 @@ CPU_preprocessor_checks = OrderedDict(( + ('s390', '__s390__'), + ('ppc64', '__powerpc64__'), + ('ppc', '__powerpc__'), ++ ('riscv32', '__riscv && __SIZEOF_POINTER__ == 4'), ++ ('riscv64', '__riscv && __SIZEOF_POINTER__ == 8'), + ('Alpha', '__alpha__'), + ('hppa', '__hppa__'), + ('sparc64', '__sparc__ && __arch64__'), +-- +2.23.0 + diff --git a/package/spidermonkey/0006-copy-headers-on-install-instead-of-symlinking.patch b/package/spidermonkey/0006-copy-headers-on-install-instead-of-symlinking.patch new file mode 100644 index 00000000..10ca54c7 --- /dev/null +++ b/package/spidermonkey/0006-copy-headers-on-install-instead-of-symlinking.patch @@ -0,0 +1,34 @@ +From 903a79a1efff18fc7cc50db09a3fe5d768adc9a8 Mon 19 Mar 2018 09:58:06 +0100 +From: Rico Tzschichholz +Date: Wed, 5 Jul 2017 22:45:59 -0700 +Subject: build: Copy headers on install instead of symlinking + +Patch ported from mozjs52 by Philip Chimento + +Signed-off-by: Rico Tzschichholz +Signed-off-by: Adam Duskett +--- + python/mozbuild/mozbuild/backend/recursivemake.py | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/python/mozbuild/mozbuild/backend/recursivemake.py b/python/mozbuild/mozbuild/backend/recursivemake.py +index dd9020d..6918ef8 100644 +--- a/python/mozbuild/mozbuild/backend/recursivemake.py ++++ b/python/mozbuild/mozbuild/backend/recursivemake.py +@@ -1427,11 +1427,11 @@ class RecursiveMakeBackend(CommonBackend): + raise Exception("Wildcards are only supported in the filename part of " + "srcdir-relative or absolute paths.") + +- install_manifest.add_pattern_link(basepath, wild, path) ++ install_manifest.add_pattern_copy(basepath, wild, path) + else: +- install_manifest.add_pattern_link(f.srcdir, f, path) ++ install_manifest.add_pattern_copy(f.srcdir, f, path) + else: +- install_manifest.add_link(f.full_path, dest) ++ install_manifest.add_copy(f.full_path, dest) + else: + install_manifest.add_optional_exists(dest) + backend_file.write('%s_FILES += %s\n' % ( +-- +2.23.0 diff --git a/package/spidermonkey/0007-ensure-proper-running-on-64-bit-and-32-bit-be-platforms.patch b/package/spidermonkey/0007-ensure-proper-running-on-64-bit-and-32-bit-be-platforms.patch new file mode 100644 index 00000000..9ffd6938 --- /dev/null +++ b/package/spidermonkey/0007-ensure-proper-running-on-64-bit-and-32-bit-be-platforms.patch @@ -0,0 +1,144 @@ +From f66d410f3ba767efb91c6b9545d373267cd975f2 Mon Sep 17 00:00:00 2001 +From: Philip Chimento +Date: Sat, 7 Sep 2019 20:43:40 +0200 +Subject: [PATCH] ensure proper running on 64-bit and 32-bit BE platforms + +See: https://salsa.debian.org/gnome-team/mozjs60/blob/debian/master/debian/patches/jsproperty-endian.patch + +Signed-off-by: Philip Chimento +Signed-off-by: Adam Duskett +--- + js/src/gc/Marking-inl.h | 16 ++++++++++++++++ + js/src/gc/RelocationOverlay.h | 13 ++++++++++++- + js/src/jsfriendapi.h | 8 ++++++++ + js/src/vm/StringType.h | 13 +++++++++++++ + 4 files changed, 49 insertions(+), 1 deletion(-) + +diff --git a/js/src/gc/Marking-inl.h b/js/src/gc/Marking-inl.h +index 6d2a4c7..c773c21 100644 +--- a/js/src/gc/Marking-inl.h ++++ b/js/src/gc/Marking-inl.h +@@ -82,12 +82,28 @@ inline void RelocationOverlay::forwardTo(Cell* cell) { + MOZ_ASSERT(!isForwarded()); + // The location of magic_ is important because it must never be valid to see + // the value Relocated there in a GC thing that has not been moved. ++#if MOZ_LITTLE_ENDIAN || JS_BITS_PER_WORD == 32 ++ // On 32-bit, the magic_ aliases with whatever comes after the first ++ // pointer; on little-endian 64-bit, the magic_ aliases with the ++ // 32 most significant bits of the pointer, which are the second half. + static_assert(offsetof(RelocationOverlay, magic_) == + offsetof(JSObject, group_) + sizeof(uint32_t), + "RelocationOverlay::magic_ is in the wrong location"); + static_assert(offsetof(RelocationOverlay, magic_) == + offsetof(js::Shape, base_) + sizeof(uint32_t), + "RelocationOverlay::magic_ is in the wrong location"); ++#elif JS_BITS_PER_WORD == 64 ++ // On big-endian 64-bit, the magic_ aliases with the 32 most ++ // significant bits of the pointer, but now that's the first half. ++ static_assert(offsetof(RelocationOverlay, magic_) == ++ offsetof(JSObject, group_), ++ "RelocationOverlay::magic_ is in the wrong location"); ++ static_assert(offsetof(RelocationOverlay, magic_) == ++ offsetof(js::Shape, base_), ++ "RelocationOverlay::magic_ is in the wrong location"); ++#else ++# error "Unknown endianness or word size" ++#endif + static_assert( + offsetof(RelocationOverlay, magic_) == offsetof(JSString, d.u1.length), + "RelocationOverlay::magic_ is in the wrong location"); +diff --git a/js/src/gc/RelocationOverlay.h b/js/src/gc/RelocationOverlay.h +index a568843..399a541 100644 +--- a/js/src/gc/RelocationOverlay.h ++++ b/js/src/gc/RelocationOverlay.h +@@ -33,14 +33,25 @@ class RelocationOverlay { + /* See comment in js/public/HeapAPI.h. */ + static const uint32_t Relocated = js::gc::Relocated; + ++#if MOZ_LITTLE_ENDIAN || JS_BITS_PER_WORD == 32 + /* +- * Keep the low 32 bits untouched. Use them to distinguish strings from ++ * Keep the first 32 bits untouched. Use them to distinguish strings from + * objects in the nursery. + */ + uint32_t preserve_; + + /* Set to Relocated when moved. */ + uint32_t magic_; ++#elif JS_BITS_PER_WORD == 64 ++ /* ++ * On big-endian, we need to reorder to keep preserve_ lined up with the ++ * low 32 bits of the aligned group_ pointer in JSObject. ++ */ ++ uint32_t magic_; ++ uint32_t preserve_; ++#else ++# error "Unknown endianness or word size" ++#endif + + /* The location |this| was moved to. */ + Cell* newLocation_; +diff --git a/js/src/jsfriendapi.h b/js/src/jsfriendapi.h +index 4b8d18a..70ce0a1 100644 +--- a/js/src/jsfriendapi.h ++++ b/js/src/jsfriendapi.h +@@ -9,6 +9,7 @@ + + #include "mozilla/Atomics.h" + #include "mozilla/Casting.h" ++#include "mozilla/EndianUtils.h" + #include "mozilla/Maybe.h" + #include "mozilla/MemoryReporting.h" + #include "mozilla/UniquePtr.h" +@@ -609,8 +610,15 @@ struct String { + static const uint32_t LATIN1_CHARS_BIT = JS_BIT(6); + static const uint32_t EXTERNAL_FLAGS = LINEAR_BIT | NON_ATOM_BIT | JS_BIT(5); + static const uint32_t TYPE_FLAGS_MASK = JS_BIT(6) - 1; ++#if MOZ_LITTLE_ENDIAN || JS_BITS_PER_WORD == 32 + uint32_t flags; + uint32_t length; ++#elif JS_BITS_PER_WORD == 64 ++ uint32_t length; ++ uint32_t flags; ++#else ++# error "Unknown endianness or word size" ++#endif + union { + const JS::Latin1Char* nonInlineCharsLatin1; + const char16_t* nonInlineCharsTwoByte; +diff --git a/js/src/vm/StringType.h b/js/src/vm/StringType.h +index cde3427..c3400db 100644 +--- a/js/src/vm/StringType.h ++++ b/js/src/vm/StringType.h +@@ -7,6 +7,7 @@ + #ifndef vm_StringType_h + #define vm_StringType_h + ++#include "mozilla/EndianUtils.h" + #include "mozilla/MemoryReporting.h" + #include "mozilla/PodOperations.h" + #include "mozilla/Range.h" +@@ -168,8 +169,20 @@ class JSString : public js::gc::Cell { + struct Data { + union { + struct { ++#if MOZ_LITTLE_ENDIAN || JS_BITS_PER_WORD == 32 + uint32_t flags; /* JSString */ + uint32_t length; /* JSString */ ++#elif JS_BITS_PER_WORD == 64 ++ /* ++ * On big-endian, we need to reorder to keep flags lined up ++ * with the low 32 bits of the aligned group_ pointer in ++ * JSObject. ++ */ ++ uint32_t length; /* JSString */ ++ uint32_t flags; /* JSString */ ++#else ++# error "Unknown endianness or word size" ++#endif + }; + uintptr_t flattenData; /* JSRope (temporary while flattening) */ + } u1; +-- +2.23.0 + diff --git a/package/spidermonkey/0008-save-and-restore-non-volatile-x28-on-ARM64-for-generated-unboxed-obje.patch b/package/spidermonkey/0008-save-and-restore-non-volatile-x28-on-ARM64-for-generated-unboxed-obje.patch new file mode 100644 index 00000000..9fd4340f --- /dev/null +++ b/package/spidermonkey/0008-save-and-restore-non-volatile-x28-on-ARM64-for-generated-unboxed-obje.patch @@ -0,0 +1,66 @@ +From 903a79a1efff18fc7cc50db09a3fe5d768adc9a8 Mon 19 Mar 2018 09:58:06 +0100 +From: Lars T Hansen +Date: Fri, 23 Mar 2018 22:01:33 +0000 +Subject: [PATCH] save and restore non-volatile x28 on ARM64 for generated unboxed object constructor + +Fixes: https://bugzilla.mozilla.org/show_bug.cgi?id=1375074 + +Upsream-status: Applied +See: https://hg.mozilla.org/mozilla-central/rev/800abe66894d + +Signed-off-by: Lars T Hansen +Signed-off-by: Adam Duskett +--- + js/src/vm/UnboxedObject.cpp | 30 ++++++++++++++++++++++++++---- + 1 file changed, 26 insertions(+), 4 deletions(-) + +diff --git a/js/src/vm/UnboxedObject.cpp b/js/src/vm/UnboxedObject.cpp +index 35ca20d7405f..1c20a1093d13 100644 +--- a/js/src/vm/UnboxedObject.cpp ++++ b/js/src/vm/UnboxedObject.cpp +@@ -86,9 +86,16 @@ static const uintptr_t CLEAR_CONSTRUCTOR_CODE_TOKEN = 0x1; + #endif + + #ifdef JS_CODEGEN_ARM64 +- // ARM64 communicates stack address via sp, but uses a pseudo-sp for +- // addressing. +- masm.initStackPtr(); ++ // ARM64 communicates stack address via sp, but uses a pseudo-sp (PSP) for ++ // addressing. The register we use for PSP may however also be used by ++ // calling code, and it is nonvolatile, so save it. Do this as a special ++ // case first because the generic save/restore code needs the PSP to be ++ // initialized already. ++ MOZ_ASSERT(PseudoStackPointer64.Is(masm.GetStackPointer64())); ++ masm.Str(PseudoStackPointer64, vixl::MemOperand(sp, -16, vixl::PreIndex)); ++ ++ // Initialize the PSP from the SP. ++ masm.initStackPtr(); + #endif + + MOZ_ASSERT(propertiesReg.volatile_()); +@@ -239,7 +246,22 @@ static const uintptr_t CLEAR_CONSTRUCTOR_CODE_TOKEN = 0x1; + if (ScratchDoubleReg.volatile_()) masm.pop(ScratchDoubleReg); + masm.PopRegsInMask(savedNonVolatileRegisters); + +- masm.abiret(); ++#ifdef JS_CODEGEN_ARM64 ++ // Now restore the value that was in the PSP register on entry, and return. ++ ++ // Obtain the correct SP from the PSP. ++ masm.Mov(sp, PseudoStackPointer64); ++ ++ // Restore the saved value of the PSP register, this value is whatever the ++ // caller had saved in it, not any actual SP value, and it must not be ++ // overwritten subsequently. ++ masm.Ldr(PseudoStackPointer64, vixl::MemOperand(sp, 16, vixl::PostIndex)); ++ ++ // Perform a plain Ret(), as abiret() will move SP <- PSP and that is wrong. ++ masm.Ret(vixl::lr); ++#else ++ masm.abiret(); ++#endif + + masm.bind(&failureStoreOther); + +-- +2.23.0 diff --git a/package/spidermonkey/0009-save-x28-before-clobbering-it-in-the-regex-compiler.patch b/package/spidermonkey/0009-save-x28-before-clobbering-it-in-the-regex-compiler.patch new file mode 100644 index 00000000..b4623c59 --- /dev/null +++ b/package/spidermonkey/0009-save-x28-before-clobbering-it-in-the-regex-compiler.patch @@ -0,0 +1,100 @@ +From 903a79a1efff18fc7cc50db09a3fe5d768adc9a8 Mon 19 Mar 2018 09:58:06 +0100 +From: Lars T Hansen +Date: Fri, 23 Mar 2018 22:01:33 +0000 +Subject: [PATCH] save x28 before clobbering it in the regex compiler + +Fixes: https://bugzilla.mozilla.org/show_bug.cgi?id=1445907 + +Upsream-status: Applied +See: https://hg.mozilla.org/mozilla-central/rev/903a79a1efff + +Signed-off-by: Lars T Hansen +Signed-off-by: Adam Duskett +--- +diff --git a/js/src/irregexp/NativeRegExpMacroAssembler.cpp b/js/src/irregexp/NativeRegExpMacroAssembler.cpp +--- a/js/src/irregexp/NativeRegExpMacroAssembler.cpp ++++ b/js/src/irregexp/NativeRegExpMacroAssembler.cpp +@@ -118,17 +118,25 @@ NativeRegExpMacroAssembler::GenerateCode + + Label return_temp0; + + // Finalize code - write the entry point code now we know how many + // registers we need. + masm.bind(&entry_label_); + + #ifdef JS_CODEGEN_ARM64 +- // ARM64 communicates stack address via sp, but uses a pseudo-sp for addressing. ++ // ARM64 communicates stack address via SP, but uses a pseudo-sp (PSP) for ++ // addressing. The register we use for PSP may however also be used by ++ // calling code, and it is nonvolatile, so save it. Do this as a special ++ // case first because the generic save/restore code needs the PSP to be ++ // initialized already. ++ MOZ_ASSERT(PseudoStackPointer64.Is(masm.GetStackPointer64())); ++ masm.Str(PseudoStackPointer64, vixl::MemOperand(sp, -16, vixl::PreIndex)); ++ ++ // Initialize the PSP from the SP. + masm.initStackPtr(); + #endif + + // Push non-volatile registers which might be modified by jitcode. + size_t pushedNonVolatileRegisters = 0; + for (GeneralRegisterForwardIterator iter(savedNonVolatileRegisters); iter.more(); ++iter) { + masm.Push(*iter); + pushedNonVolatileRegisters++; +@@ -416,17 +424,32 @@ NativeRegExpMacroAssembler::GenerateCode + masm.pop(temp0); + masm.movePtr(temp0, StackPointer); + #endif + + // Restore non-volatile registers which were saved on entry. + for (GeneralRegisterBackwardIterator iter(savedNonVolatileRegisters); iter.more(); ++iter) + masm.Pop(*iter); + ++#ifdef JS_CODEGEN_ARM64 ++ // Now restore the value that was in the PSP register on entry, and return. ++ ++ // Obtain the correct SP from the PSP. ++ masm.Mov(sp, PseudoStackPointer64); ++ ++ // Restore the saved value of the PSP register, this value is whatever the ++ // caller had saved in it, not any actual SP value, and it must not be ++ // overwritten subsequently. ++ masm.Ldr(PseudoStackPointer64, vixl::MemOperand(sp, 16, vixl::PostIndex)); ++ ++ // Perform a plain Ret(), as abiret() will move SP <- PSP and that is wrong. ++ masm.Ret(vixl::lr); ++#else + masm.abiret(); ++#endif + + // Backtrack code (branch target for conditional backtracks). + if (backtrack_label_.used()) { + masm.bind(&backtrack_label_); + Backtrack(); + } + + // Backtrack stack overflow code. +diff --git a/js/src/jit-test/tests/regexp/bug1445907.js b/js/src/jit-test/tests/regexp/bug1445907.js +new file mode 100644 +--- /dev/null ++++ b/js/src/jit-test/tests/regexp/bug1445907.js +@@ -0,0 +1,15 @@ ++// On ARM64, we failed to save x28 properly when generating code for the regexp ++// matcher. ++// ++// There's wasm and Debugger code here because the combination forces the use of ++// x28 and exposes the bug when running on the simulator. ++ ++if (!wasmIsSupported()) ++ quit(); ++ ++var g = newGlobal(''); ++var dbg = new Debugger(g); ++g.eval(`var m = new WebAssembly.Instance(new WebAssembly.Module(wasmTextToBinary('(module (func (export "test")))')))`); ++var re = /./; ++dbg.onEnterFrame = function(frame) { re.exec("x") }; ++result = g.eval("m.exports.test()"); + +-- +2.23.0 + diff --git a/package/spidermonkey/0010-always-use-the-equivalent-year-to-determine-the-time-zone.patch b/package/spidermonkey/0010-always-use-the-equivalent-year-to-determine-the-time-zone.patch new file mode 100644 index 00000000..7ebe80a8 --- /dev/null +++ b/package/spidermonkey/0010-always-use-the-equivalent-year-to-determine-the-time-zone.patch @@ -0,0 +1,103 @@ +From 903a79a1efff18fc7cc50db09a3fe5d768adc9a8 Mon 19 Mar 2018 09:58:06 +0100 +From: André Bargull +Date: Wed, 8 Nov 2017 03:23:41 -0800 +Subject: always use the equivalent year to determine the time zone offset and + name + +Fixes: https://bugzilla.mozilla.org/show_bug.cgi?id=1415202 + +Upsream-status: Applied +See: https://hg.mozilla.org/mozilla-central/rev/ce9f1466ec78 + +Reviewed-by: Jeff Walden +Signed-off-by: André Bargull +Signed-off-by: Adam Duskett +--- + js/src/jsdate.cpp | 11 +++++++---- + js/src/vm/Time.cpp | 14 ++++---------- + js/src/vm/Time.h | 2 +- + 3 files changed, 12 insertions(+), 15 deletions(-) + +diff --git a/js/src/jsdate.cpp b/js/src/jsdate.cpp +index 07af3d18c865..ff8fd6c3763c 100644 +--- a/js/src/jsdate.cpp ++++ b/js/src/jsdate.cpp +@@ -2353,12 +2353,15 @@ static PRMJTime ToPRMJTime(double localTime, double utcTime) { + static size_t FormatTime(char* buf, int buflen, const char* fmt, double utcTime, + double localTime) { + PRMJTime prtm = ToPRMJTime(localTime, utcTime); +- int eqivalentYear = IsRepresentableAsTime32(utcTime) +- ? prtm.tm_year +- : EquivalentYearForDST(prtm.tm_year); ++ // If an equivalent year was used to compute the date/time components, use ++ // the same equivalent year to determine the time zone name and offset in ++ // PRMJ_FormatTime(...). ++ int timeZoneYear = IsRepresentableAsTime32(utcTime) ++ ? prtm.tm_year ++ : EquivalentYearForDST(prtm.tm_year); + int offsetInSeconds = (int)floor((localTime - utcTime) / msPerSecond); + +- return PRMJ_FormatTime(buf, buflen, fmt, &prtm, eqivalentYear, ++ return PRMJ_FormatTime(buf, buflen, fmt, &prtm, timeZoneYear, + offsetInSeconds); + } + +diff --git a/js/src/vm/Time.cpp b/js/src/vm/Time.cpp +index f59977f0d0e9..5ee4794b3e83 100644 +--- a/js/src/vm/Time.cpp ++++ b/js/src/vm/Time.cpp +@@ -247,7 +247,7 @@ static void PRMJ_InvalidParameterHandler(const wchar_t* expression, + + /* Format a time value into a buffer. Same semantics as strftime() */ + size_t PRMJ_FormatTime(char* buf, int buflen, const char* fmt, +- const PRMJTime* prtm, int equivalentYear, ++ const PRMJTime* prtm, int timeZoneYear, + int offsetInSeconds) { + size_t result = 0; + #if defined(XP_UNIX) || defined(XP_WIN) +@@ -280,7 +280,8 @@ size_t PRMJ_FormatTime(char* buf, int buflen, const char* fmt, + * Fill out |td| to the time represented by |prtm|, leaving the + * timezone fields zeroed out. localtime_r will then fill in the + * timezone fields for that local time according to the system's +- * timezone parameters. ++ * timezone parameters. Use |timeZoneYear| for the year to ensure the ++ * time zone name matches the time zone offset used by the caller. + */ + struct tm td; + memset(&td, 0, sizeof(td)); +@@ -290,19 +291,12 @@ size_t PRMJ_FormatTime(char* buf, int buflen, const char* fmt, + td.tm_mday = prtm->tm_mday; + td.tm_mon = prtm->tm_mon; + td.tm_wday = prtm->tm_wday; +- td.tm_year = prtm->tm_year - 1900; ++ td.tm_year = timeZoneYear - 1900; + td.tm_yday = prtm->tm_yday; + td.tm_isdst = prtm->tm_isdst; + + time_t t = mktime(&td); + +- // If |prtm| cannot be represented in |time_t| the year is probably +- // out of range, try again with the DST equivalent year. +- if (t == static_cast(-1)) { +- td.tm_year = equivalentYear - 1900; +- t = mktime(&td); +- } +- + // If either mktime or localtime_r failed, fill in the fallback time + // zone offset |offsetInSeconds| and set the time zone identifier to + // the empty string. +diff --git a/js/src/vm/Time.h b/js/src/vm/Time.h +index 3a51d869c922..37b7faeec028 100644 +--- a/js/src/vm/Time.h ++++ b/js/src/vm/Time.h +@@ -49,7 +49,7 @@ inline void PRMJ_NowShutdown() {} + + /* Format a time value into a buffer. Same semantics as strftime() */ + extern size_t PRMJ_FormatTime(char* buf, int buflen, const char* fmt, +- const PRMJTime* tm, int equivalentYear, ++ const PRMJTime* tm, int timeZoneYear, + int offsetInSeconds); + + /** +-- +2.23.0 diff --git a/package/spidermonkey/0011-js-src-Makefile.in-install-shell-only-if-it-s-built.patch b/package/spidermonkey/0011-js-src-Makefile.in-install-shell-only-if-it-s-built.patch new file mode 100644 index 00000000..f6092af7 --- /dev/null +++ b/package/spidermonkey/0011-js-src-Makefile.in-install-shell-only-if-it-s-built.patch @@ -0,0 +1,28 @@ +From b5e4a9926cf50d12e9c5c05c6d1b161e5b662d62 Mon Sep 17 00:00:00 2001 +From: Carlos Santos +Date: Sat, 7 Mar 2020 23:42:02 -0300 +Subject: [PATCH] js/src/Makefile.in: install shell only if it's built + +Prevents an installation error if we configure with --disable-js-shell. + +Signed-off-by: Carlos Santos +--- + js/src/Makefile.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/js/src/Makefile.in b/js/src/Makefile.in +index 4ac9f48..9c8fb64 100644 +--- a/js/src/Makefile.in ++++ b/js/src/Makefile.in +@@ -136,7 +136,7 @@ endif + + install:: + $(MAKE) -C build install +- $(MAKE) -C shell install ++ if [ -d shell ]; then $(MAKE) -C shell install; fi + + ifdef HAVE_DTRACE + javascript-trace.h: $(srcdir)/devtools/javascript-trace.d +-- +2.18.2 + diff --git a/package/spidermonkey/Config.in b/package/spidermonkey/Config.in new file mode 100644 index 00000000..e015e84a --- /dev/null +++ b/package/spidermonkey/Config.in @@ -0,0 +1,60 @@ +config BR2_PACKAGE_SPIDERMONKEY_ARCH_SUPPORTS + bool + default y if BR2_aarch64 + default y if BR2_arm || BR2_armeb + default y if BR2_i386 || BR2_x86_64 + default y if BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el + default y if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le + default y if BR2_riscv + default y if BR2_sh4 || BR2_sh4a + default y if BR2_sparc || BR2_sparc64 + depends on BR2_PACKAGE_LIBNSPR_ARCH_SUPPORT # libnspr + +config BR2_PACKAGE_SPIDERMONKEY_JIT_ARCH_SUPPORTS + bool + default y if BR2_aarch64 || BR2_arm || BR2_armeb || BR2_i386 || BR2_x86_64 + +config BR2_PACKAGE_SPIDERMONKEY + bool "spidermonkey" + depends on BR2_HOST_GCC_AT_LEAST_4_9 + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_PACKAGE_SPIDERMONKEY_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # needs pthread_getattr_np() + depends on BR2_USE_MMU # fork in executable tools. + depends on BR2_USE_WCHAR + depends on !BR2_TOOLCHAIN_USES_UCLIBC # No way to check for fenv support. + depends on !BR2_STATIC_LIBS # dlopen + select BR2_PACKAGE_HOST_PYTHON + select BR2_PACKAGE_HOST_PYTHON_SSL + select BR2_PACKAGE_LIBNSPR + select BR2_PACKAGE_ZLIB + help + SpiderMonkey is the code-name for Mozilla Firefox's C++ + implementation of JavaScript. It is intended to be embedded in + other applications that provide host environments for + JavaScript. + + https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey + +if BR2_PACKAGE_SPIDERMONKEY + +config BR2_PACKAGE_SPIDERMONKEY_JS_SHELL + bool "JS shell" + help + Build the JavaScript shell. + + WARNING: increases target image size by around 24 MiB. + +endif + +comment "spidermonkey needs a glibc or musl toolchain with C++, wchar, dynamic library, NPTL, gcc >= 4.9" + depends on BR2_USE_MMU + depends on BR2_PACKAGE_SPIDERMONKEY_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_USES_UCLIBC || \ + !BR2_INSTALL_LIBSTDCPP || \ + BR2_STATIC_LIBS || \ + !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \ + !BR2_HOST_GCC_AT_LEAST_4_9 || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || \ + !BR2_USE_WCHAR diff --git a/package/spidermonkey/spidermonkey.hash b/package/spidermonkey/spidermonkey.hash new file mode 100644 index 00000000..ccb02658 --- /dev/null +++ b/package/spidermonkey/spidermonkey.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 f51039c997415fd0f13f8e01966b4a8ff80cbf90deb8b14c18827104a369cc0d mozjs-60.5.2.tar.bz2 +sha256 aaac93a33bec26d5d1a9c5efc1e7dc6bd215d8a4f1e1a7fc5315a67adfd51338 moz.configure diff --git a/package/spidermonkey/spidermonkey.mk b/package/spidermonkey/spidermonkey.mk new file mode 100644 index 00000000..50afdc17 --- /dev/null +++ b/package/spidermonkey/spidermonkey.mk @@ -0,0 +1,64 @@ +################################################################################ +# +# spidermonkey +# +################################################################################ + +# Use a tarball with only the spidermonkey source code and a pre-setup +# old-configure in src/js.This prevents having to use autoconf 2.13 and +# makes the package much 31M instead of 257M +SPIDERMONKEY_VERSION = 60.5.2 +SPIDERMONKEY_SOURCE = mozjs-$(SPIDERMONKEY_VERSION).tar.bz2 +SPIDERMONKEY_SITE = https://gentoo.osuosl.org/distfiles/9a +SPIDERMONKEY_SUBDIR = js/src +SPIDERMONKEY_LICENSE = MPL-2.0 +SPIDERMONKEY_LICENSE_FILES = moz.configure +SPIDERMONKEY_INSTALL_STAGING = YES + +SPIDERMONKEY_DEPENDENCIES = \ + host-python \ + libnspr \ + zlib + +SPIDERMONKEY_CONF_ENV = \ + PYTHON="$(HOST_DIR)/bin/python2" + +# spidermonkey mixes up target and host. +# spidermonkey does not allow building against a system jemalloc, +# as it causes a conflict with glibc. +SPIDERMONKEY_CONF_OPTS = \ + --host=$(GNU_HOST_NAME) \ + --target=$(GNU_TARGET_NAME) \ + --disable-jemalloc \ + --enable-shared-js \ + --with-system-zlib \ + --with-system-nspr \ + --with-nspr-exec-prefix="$(STAGING_DIR)/usr" + +ifeq ($(BR2_PACKAGE_SPIDERMONKEY_JIT_ARCH_SUPPORTS),y) +SPIDERMONKEY_CONF_OPTS += --enable-ion +else +SPIDERMONKEY_CONF_OPTS += --disable-ion +endif + +ifeq ($(BR2_PACKAGE_SPIDERMONKEY_JS_SHELL),y) +SPIDERMONKEY_CONF_OPTS += --enable-js-shell +else +SPIDERMONKEY_CONF_OPTS += --disable-js-shell +endif + +ifeq ($(BR2_PACKAGE_READLINE),y) +SPIDERMONKEY_CONF_OPTS += --enable-readline +SPIDERMONKEY_DEPENDENCIES += readline +else +SPIDERMONKEY_CONF_OPTS += --disable-readline +endif + +# Remove unneeded files +define SPIDERMONKEY_CLEANUP + rm -rf $(TARGET_DIR)/usr/lib/libjs_static.ajs + rm -rf $(TARGET_DIR)/usr/bin/js60-config +endef +SPIDERMONKEY_POST_INSTALL_TARGET_HOOKS += SPIDERMONKEY_CLEANUP + +$(eval $(autotools-package)) diff --git a/package/spidev_test/Config.in b/package/spidev_test/Config.in new file mode 100644 index 00000000..44990c66 --- /dev/null +++ b/package/spidev_test/Config.in @@ -0,0 +1,17 @@ +config BR2_PACKAGE_SPIDEV_TEST + bool "spidev_test" + help + SPI testing utility (using spidev driver). + + This package builds and installs the userspace 'spidev_test' + command. It is up to the user to ensure that the kernel + configuration has all suitable options enabled to allow a + proper operation of 'spidev_test'. + + The version used is based on your toolchain headers version, + if it's older than 3.15 then 3.0 is used, otherwise 3.15 + is used. + This means you won't have quad-pumped SPI support if your + toolchain is too old. + + https://www.kernel.org/doc/html/latest/spi/index.html diff --git a/package/spidev_test/spidev_test.hash b/package/spidev_test/spidev_test.hash new file mode 100644 index 00000000..7bc4a27e --- /dev/null +++ b/package/spidev_test/spidev_test.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 80471c330d8c0bf5ba6479c434a54a54bdd2dc59a703b9c76c2541ec04cfb8c3 spidev_test.c?id=v3.0 +sha256 3cf76b15d9a8644f3f5cbc0387cc02a7d4a392ade39788cbc6367cce98552e2f spidev_test.c?id=v4.10 diff --git a/package/spidev_test/spidev_test.mk b/package/spidev_test/spidev_test.mk new file mode 100644 index 00000000..80998f34 --- /dev/null +++ b/package/spidev_test/spidev_test.mk @@ -0,0 +1,48 @@ +################################################################################ +# +# spidev_test +# +################################################################################ + +# Build the latest version that is compatible with the toolchain's kernel headers +# v3.15+ requires SPI_TX_QUAD/SPI_RX_QUAD to build +# Normally kernel headers can't be newer than kernel so switch based on that. +# If you need quad-pumped spi support you need to upgrade your toolchain. +# Note that the location of spidev_test.c changes from v4.5 onwards. + +ifeq ($(BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15),y) +SPIDEV_TEST_VERSION = 4.10 +SPIDEV_TEST_PATH = tools/spi +else +SPIDEV_TEST_VERSION = 3.0 +SPIDEV_TEST_PATH = Documentation/spi +endif + +SPIDEV_TEST_SITE = http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/plain/$(SPIDEV_TEST_PATH) +SPIDEV_TEST_SOURCE = spidev_test.c?id=v$(SPIDEV_TEST_VERSION) +SPIDEV_TEST_LICENSE = GPL-2.0 + +# musl libc requires linux/ioctl.h for _IOC_SIZEBITS. Do a sed patch to keep +# compatibility with different spidev_test.c versions that we support. +define SPIDEV_ADD_LINUX_IOCTL + $(SED) 's~^#include ~#include \n#include ~' \ + $(@D)/spidev_test.c +endef + +SPIDEV_TEST_POST_PATCH_HOOKS += SPIDEV_ADD_LINUX_IOCTL + +define SPIDEV_TEST_EXTRACT_CMDS + cp $(SPIDEV_TEST_DL_DIR)/$(SPIDEV_TEST_SOURCE) $(@D)/spidev_test.c +endef + +define SPIDEV_TEST_BUILD_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CC) $(TARGET_CFLAGS) \ + -o $(@D)/spidev_test $(@D)/spidev_test.c +endef + +define SPIDEV_TEST_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 755 $(@D)/spidev_test \ + $(TARGET_DIR)/usr/sbin/spidev_test +endef + +$(eval $(generic-package)) diff --git a/package/sqlcipher/Config.in b/package/sqlcipher/Config.in new file mode 100644 index 00000000..332754b1 --- /dev/null +++ b/package/sqlcipher/Config.in @@ -0,0 +1,37 @@ +config BR2_PACKAGE_SQLCIPHER + bool "sqlcipher" + depends on !BR2_PACKAGE_SQLITE + depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_OPENSSL + help + SQLCipher is an SQLite extension that provides 256 bits AES + encryption of database files. Note that it is a fork of + SQLite and they cannot be installed side-by-side. + + http://sqlcipher.net + +if BR2_PACKAGE_SQLCIPHER + +config BR2_PACKAGE_SQLCIPHER_READLINE + bool "Command-line editing" + select BR2_PACKAGE_NCURSES + select BR2_PACKAGE_READLINE + help + Enable command-line editing. This requires ncurses and + readline. + +config BR2_PACKAGE_SQLCIPHER_STAT3 + bool "Additional query optimizations (stat3)" + help + Adds additional logic to the ANALYZE command and to the + query planner that can help SQLite to choose a better query + plan under certain situations. + +endif + +comment "sqlcipher conflicts with sqlite" + depends on BR2_PACKAGE_SQLITE + +comment "sqlcipher needs a toolchain w/ threads" + depends on !BR2_PACKAGE_SQLITE + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/sqlcipher/sqlcipher.hash b/package/sqlcipher/sqlcipher.hash new file mode 100644 index 00000000..ddc78ef7 --- /dev/null +++ b/package/sqlcipher/sqlcipher.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 b8df69b998c042ce7f8a99f07cf11f45dfebe51110ef92de95f1728358853133 sqlcipher-4.4.3.tar.gz +sha256 3eee3c7964a9becc94d747bd36703d31fc86eb994680b06a61bfd4f2661eaac8 LICENSE diff --git a/package/sqlcipher/sqlcipher.mk b/package/sqlcipher/sqlcipher.mk new file mode 100644 index 00000000..776e2d0d --- /dev/null +++ b/package/sqlcipher/sqlcipher.mk @@ -0,0 +1,43 @@ +################################################################################ +# +# sqlcipher +# +################################################################################ + +SQLCIPHER_VERSION = 4.4.3 +SQLCIPHER_SITE = $(call github,sqlcipher,sqlcipher,v$(SQLCIPHER_VERSION)) +SQLCIPHER_LICENSE = BSD-3-Clause +SQLCIPHER_LICENSE_FILES = LICENSE +SQLCIPHER_CPE_ID_VENDOR = zetetic +SQLCIPHER_DEPENDENCIES = host-pkgconf openssl host-tcl +SQLCIPHER_INSTALL_STAGING = YES + +SQLCIPHER_CONF_ENV = \ + CFLAGS="$(TARGET_CFLAGS) $(SQLCIPHER_CFLAGS)" \ + TCLSH_CMD=$(HOST_DIR)/bin/tclsh$(TCL_VERSION_MAJOR) + +SQLCIPHER_CONF_OPTS = \ + --enable-threadsafe \ + --disable-tcl + +SQLCIPHER_CFLAGS += -DSQLITE_HAS_CODEC # Required according to the README +SQLCIPHER_CONF_ENV += LIBS=`$(PKG_CONFIG_HOST_BINARY) --libs openssl` + +ifeq ($(BR2_PACKAGE_SQLCIPHER_STAT3),y) +SQLCIPHER_CFLAGS += -DSQLITE_ENABLE_STAT3 +endif + +ifeq ($(BR2_PACKAGE_SQLCIPHER_READLINE),y) +SQLCIPHER_DEPENDENCIES += ncurses readline +SQLCIPHER_CONF_OPTS += --with-readline-inc="-I$(STAGING_DIR)/usr/include" +else +SQLCIPHER_CONF_OPTS += --disable-readline +endif + +ifeq ($(BR2_STATIC_LIBS),y) +SQLCIPHER_CONF_OPTS += --disable-load-extension +else +SQLCIPHER_CONF_OPTS += --enable-load-extension +endif + +$(eval $(autotools-package)) diff --git a/package/sqlite/Config.in b/package/sqlite/Config.in new file mode 100644 index 00000000..87c0f6c0 --- /dev/null +++ b/package/sqlite/Config.in @@ -0,0 +1,73 @@ +config BR2_PACKAGE_SQLITE + bool "sqlite" + help + SQLite is a small C library that implements a + self-contained, embeddable, zero-configuration SQL database + engine. + + http://www.sqlite.org/ + +if BR2_PACKAGE_SQLITE + +config BR2_PACKAGE_SQLITE_STAT4 + bool "Additional query optimizations (stat4)" + help + Adds additional logic to the ANALYZE command and to the + query planner that can help SQLite to choose a better query + plan under certain situations. + +config BR2_PACKAGE_SQLITE_ENABLE_COLUMN_METADATA + bool "Enable convenient access to meta-data about tables and queries" + help + When this option is defined there are some additional APIs + enabled to acces meta-data about tables and queries (see + https://sqlite.org/compile.html). + +config BR2_PACKAGE_SQLITE_ENABLE_FTS3 + bool "Enable version 3 of the full-text search engine" + help + When this option is defined in the amalgamation (see + http://www.sqlite.org/amalgamation.html), version 3 of the + full-text search engine is added to the build automatically. + +config BR2_PACKAGE_SQLITE_ENABLE_JSON1 + bool "Enable the JSON extensions for SQLite" + help + When this option is defined in the amalgamation, the JSON + extensions are added to the build automatically. + +config BR2_PACKAGE_SQLITE_ENABLE_UNLOCK_NOTIFY + bool "Enable sqlite3_unlock_notify() interface" + help + This option enables the sqlite3_unlock_notify() interface + and its accosiated functionality. See the documentation + http://www.sqlite.org/unlock_notify.html for additional + information. + +config BR2_PACKAGE_SQLITE_SECURE_DELETE + bool "Set the secure_delete pragma on by default" + help + This compile-time option changes the default settings of the + secure_delete pragma. When this option is not used, + secure_delete defaults to off. When this option is present, + secure_delete defaults to on. + + The secure_delete setting causes deleted content to be + overwritten with zeros. There is a small performance penalty + for this since additional I/O must occur. On the other hand, + secure_delete can prevent sensitive information from + lingering in unused parts of the database file after it has + allegedly been deleted. See the documentation on the + http://www.sqlite.org/pragma.html#pragma_secure_delete for + additional information. + +config BR2_PACKAGE_SQLITE_NO_SYNC + bool "Disable fsync" + help + By default SQLite forces all database transactions to + storage immediately using fsync() to protect against data + loss in case of power failure. This option turns this + behavior off resulting in higher performance especially when + using slow flash storage. + +endif diff --git a/package/sqlite/sqlite.hash b/package/sqlite/sqlite.hash new file mode 100644 index 00000000..02b0e713 --- /dev/null +++ b/package/sqlite/sqlite.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 2a3bca581117b3b88e5361d0ef3803ba6d8da604b1c1a47d902ef785c1b53e89 sqlite-autoconf-3340100.tar.gz +sha256 66e056b6e8687f32af30d5187611b98b12a8f46f07aaf62f43585f276e8f0ac9 tea/license.terms diff --git a/package/sqlite/sqlite.mk b/package/sqlite/sqlite.mk new file mode 100644 index 00000000..2c2928f2 --- /dev/null +++ b/package/sqlite/sqlite.mk @@ -0,0 +1,79 @@ +################################################################################ +# +# sqlite +# +################################################################################ + +SQLITE_VERSION = 3340100 +SQLITE_CPE_ID_VERSION = 3.34.1 +SQLITE_SOURCE = sqlite-autoconf-$(SQLITE_VERSION).tar.gz +SQLITE_SITE = https://www.sqlite.org/2021 +SQLITE_LICENSE = Public domain +SQLITE_LICENSE_FILES = tea/license.terms +SQLITE_CPE_ID_VENDOR = sqlite +SQLITE_INSTALL_STAGING = YES + +ifeq ($(BR2_PACKAGE_SQLITE_STAT4),y) +SQLITE_CFLAGS += -DSQLITE_ENABLE_STAT4 +endif + +ifeq ($(BR2_PACKAGE_SQLITE_ENABLE_COLUMN_METADATA),y) +SQLITE_CFLAGS += -DSQLITE_ENABLE_COLUMN_METADATA +endif + +ifeq ($(BR2_PACKAGE_SQLITE_ENABLE_FTS3),y) +SQLITE_CFLAGS += -DSQLITE_ENABLE_FTS3 +endif + +ifeq ($(BR2_PACKAGE_SQLITE_ENABLE_JSON1),y) +SQLITE_CFLAGS += -DSQLITE_ENABLE_JSON1 +endif + +ifeq ($(BR2_PACKAGE_SQLITE_ENABLE_UNLOCK_NOTIFY),y) +SQLITE_CFLAGS += -DSQLITE_ENABLE_UNLOCK_NOTIFY +endif + +ifeq ($(BR2_PACKAGE_SQLITE_SECURE_DELETE),y) +SQLITE_CFLAGS += -DSQLITE_SECURE_DELETE +endif + +ifeq ($(BR2_PACKAGE_SQLITE_NO_SYNC),y) +SQLITE_CFLAGS += -DSQLITE_NO_SYNC +endif + +# Building with Microblaze Gcc 4.9 makes compiling to hang. +# Work around using -O0 +ifeq ($(BR2_microblaze):$(BR2_TOOLCHAIN_GCC_AT_LEAST_5),y:) +SQLITE_CFLAGS += $(TARGET_CFLAGS) -O0 +else +# fallback to standard -O3 when -Ofast is present to avoid -ffast-math +SQLITE_CFLAGS += $(subst -Ofast,-O3,$(TARGET_CFLAGS)) +endif + +SQLITE_CONF_ENV = CFLAGS="$(SQLITE_CFLAGS)" + +ifeq ($(BR2_STATIC_LIBS),y) +SQLITE_CONF_OPTS += --enable-dynamic-extensions=no +else +SQLITE_CONF_OPTS += --disable-static-shell +endif + +ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y) +SQLITE_CONF_OPTS += --enable-threadsafe +else +SQLITE_CONF_OPTS += --disable-threadsafe +SQLITE_CFLAGS += -DSQLITE_THREADSAFE=0 +endif + +ifeq ($(BR2_PACKAGE_NCURSES)$(BR2_PACKAGE_READLINE),yy) +SQLITE_DEPENDENCIES += ncurses readline +SQLITE_CONF_OPTS += --disable-editline --enable-readline +else ifeq ($(BR2_PACKAGE_LIBEDIT),y) +SQLITE_DEPENDENCIES += libedit +SQLITE_CONF_OPTS += --enable-editline --disable-readline +else +SQLITE_CONF_OPTS += --disable-editline --disable-readline +endif + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/squashfs/0001-squashfs-tools-fix-build-failure-against-gcc-10.patch b/package/squashfs/0001-squashfs-tools-fix-build-failure-against-gcc-10.patch new file mode 100644 index 00000000..a5fc487a --- /dev/null +++ b/package/squashfs/0001-squashfs-tools-fix-build-failure-against-gcc-10.patch @@ -0,0 +1,49 @@ +From e1cdcfd94172a0b1ba4c9df70f4d69a41c687404 Mon Sep 17 00:00:00 2001 +From: Sergei Trofimovich +Date: Sun, 26 Jan 2020 18:35:13 +0000 +Subject: [PATCH] squashfs-tools: fix build failure against gcc-10 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +On gcc-10 (and gcc-9 -fno-common) build fails as: + +``` +cc ... -o mksquashfs +ld: read_fs.o:(.bss+0x0): + multiple definition of `fwriter_buffer'; mksquashfs.o:(.bss+0x400c90): first defined here +ld: read_fs.o:(.bss+0x8): + multiple definition of `bwriter_buffer'; mksquashfs.o:(.bss+0x400c98): first defined here +``` + +gcc-10 will change the default from -fcommon to fno-common: +https://gcc.gnu.org/PR85678. + +The error also happens if CFLAGS=-fno-common passed explicitly. + +Reported-by: Toralf Förster +Bug: https://bugs.gentoo.org/706456 +Signed-off-by: Sergei Trofimovich + +[Upstream: https://github.com/plougher/squashfs-tools/commit/fe2f5da4b0f8994169c53e84b7cb8a0feefc97b5.patch] +Signed-off-by: Peter Seiderer +--- + squashfs-tools/mksquashfs.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/squashfs-tools/mksquashfs.h b/squashfs-tools/mksquashfs.h +index 1beefef..b650306 100644 +--- a/squashfs-tools/mksquashfs.h ++++ b/squashfs-tools/mksquashfs.h +@@ -143,7 +143,7 @@ struct append_file { + #endif + + extern struct cache *reader_buffer, *fragment_buffer, *reserve_cache; +-struct cache *bwriter_buffer, *fwriter_buffer; ++extern struct cache *bwriter_buffer, *fwriter_buffer; + extern struct queue *to_reader, *to_deflate, *to_writer, *from_writer, + *to_frag, *locked_fragment, *to_process_frag; + extern struct append_file **file_mapping; +-- +2.26.2 + diff --git a/package/squashfs/Config.in b/package/squashfs/Config.in new file mode 100644 index 00000000..60b243d9 --- /dev/null +++ b/package/squashfs/Config.in @@ -0,0 +1,60 @@ +config BR2_PACKAGE_SQUASHFS + bool "squashfs" + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_MMU # fork() + # ensure at least on compression backend (defaults to gzip) + select BR2_PACKAGE_SQUASHFS_GZIP if !( \ + BR2_PACKAGE_SQUASHFS_LZ4 || \ + BR2_PACKAGE_SQUASHFS_LZMA || \ + BR2_PACKAGE_SQUASHFS_LZO || \ + BR2_PACKAGE_SQUASHFS_XZ || \ + BR2_PACKAGE_SQUASHFS_ZSTD) + help + Tools to generate SquashFS filesystems. + + https://github.com/plougher/squashfs-tools + +if BR2_PACKAGE_SQUASHFS + +config BR2_PACKAGE_SQUASHFS_GZIP + bool "gzip support" + default y + select BR2_PACKAGE_ZLIB + help + Support GZIP compression algorithm + +config BR2_PACKAGE_SQUASHFS_LZ4 + bool "lz4 support" + select BR2_PACKAGE_LZ4 + help + Support LZ4 compression algorithm + +config BR2_PACKAGE_SQUASHFS_LZMA + bool "lzma support" + select BR2_PACKAGE_XZ + help + Support LZMA compression algorithm + +config BR2_PACKAGE_SQUASHFS_LZO + bool "lzo support" + select BR2_PACKAGE_LZO + help + Support LZO compression algorithm + +config BR2_PACKAGE_SQUASHFS_XZ + bool "xz support" + select BR2_PACKAGE_XZ + help + Support XZ compression algorithm + +config BR2_PACKAGE_SQUASHFS_ZSTD + bool "zstd support" + select BR2_PACKAGE_ZSTD + help + Support ZSTD compression algorithm + +endif + +comment "squashfs needs a toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_MMU diff --git a/package/squashfs/Config.in.host b/package/squashfs/Config.in.host new file mode 100644 index 00000000..aa25b376 --- /dev/null +++ b/package/squashfs/Config.in.host @@ -0,0 +1,6 @@ +config BR2_PACKAGE_HOST_SQUASHFS + bool "host squashfs" + help + Tools to generate SquashFS filesystems. + + https://github.com/plougher/squashfs-tools diff --git a/package/squashfs/squashfs.hash b/package/squashfs/squashfs.hash new file mode 100644 index 00000000..1f08b530 --- /dev/null +++ b/package/squashfs/squashfs.hash @@ -0,0 +1,5 @@ +# Locally computed +sha256 a7fa4845e9908523c38d4acf92f8a41fdfcd19def41bd5090d7ad767a6dc75c3 squashfs-4.4.tar.gz + +# License files +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/squashfs/squashfs.mk b/package/squashfs/squashfs.mk new file mode 100644 index 00000000..cbc3c906 --- /dev/null +++ b/package/squashfs/squashfs.mk @@ -0,0 +1,96 @@ +################################################################################ +# +# squashfs +# +################################################################################ + +SQUASHFS_VERSION = 4.4 +SQUASHFS_SITE = $(call github,plougher,squashfs-tools,$(SQUASHFS_VERSION)) +SQUASHFS_LICENSE = GPL-2.0+ +SQUASHFS_LICENSE_FILES = COPYING +SQUASHFS_CPE_ID_VENDOR = squashfs_project +SQUASHFS_MAKE_ARGS = XATTR_SUPPORT=1 + +ifeq ($(BR2_PACKAGE_SQUASHFS_LZ4),y) +SQUASHFS_DEPENDENCIES += lz4 +SQUASHFS_MAKE_ARGS += LZ4_SUPPORT=1 COMP_DEFAULT=lz4 +else +SQUASHFS_MAKE_ARGS += LZ4_SUPPORT=0 +endif + +ifeq ($(BR2_PACKAGE_SQUASHFS_LZMA),y) +SQUASHFS_DEPENDENCIES += xz +SQUASHFS_MAKE_ARGS += LZMA_XZ_SUPPORT=1 COMP_DEFAULT=lzma +else +SQUASHFS_MAKE_ARGS += LZMA_XZ_SUPPORT=0 +endif + +ifeq ($(BR2_PACKAGE_SQUASHFS_XZ),y) +SQUASHFS_DEPENDENCIES += xz +SQUASHFS_MAKE_ARGS += XZ_SUPPORT=1 COMP_DEFAULT=xz +else +SQUASHFS_MAKE_ARGS += XZ_SUPPORT=0 +endif + +ifeq ($(BR2_PACKAGE_SQUASHFS_LZO),y) +SQUASHFS_DEPENDENCIES += lzo +SQUASHFS_MAKE_ARGS += LZO_SUPPORT=1 COMP_DEFAULT=lzo +else +SQUASHFS_MAKE_ARGS += LZO_SUPPORT=0 +endif + +ifeq ($(BR2_PACKAGE_SQUASHFS_ZSTD),y) +SQUASHFS_DEPENDENCIES += zstd +SQUASHFS_MAKE_ARGS += ZSTD_SUPPORT=1 COMP_DEFAULT=zstd +else +SQUASHFS_MAKE_ARGS += ZSTD_SUPPORT=0 +endif + +ifeq ($(BR2_PACKAGE_SQUASHFS_GZIP),y) +SQUASHFS_DEPENDENCIES += zlib +SQUASHFS_MAKE_ARGS += GZIP_SUPPORT=1 COMP_DEFAULT=gzip +else +SQUASHFS_MAKE_ARGS += GZIP_SUPPORT=0 +endif + +HOST_SQUASHFS_DEPENDENCIES = host-zlib host-lz4 host-lzo host-xz host-zstd + +HOST_SQUASHFS_MAKE_ARGS = \ + XATTR_SUPPORT=1 \ + XZ_SUPPORT=1 \ + GZIP_SUPPORT=1 \ + LZ4_SUPPORT=1 \ + LZO_SUPPORT=1 \ + LZMA_XZ_SUPPORT=1 \ + ZSTD_SUPPORT=1 + +define SQUASHFS_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) \ + CC="$(TARGET_CC)" \ + EXTRA_CFLAGS="$(TARGET_CFLAGS) -fgnu89-inline" \ + EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \ + $(SQUASHFS_MAKE_ARGS) \ + -C $(@D)/squashfs-tools/ +endef + +define SQUASHFS_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(SQUASHFS_MAKE_ARGS) \ + -C $(@D)/squashfs-tools/ INSTALL_DIR=$(TARGET_DIR)/usr/bin install +endef + +define HOST_SQUASHFS_BUILD_CMDS + $(HOST_MAKE_ENV) $(MAKE) \ + CC="$(HOSTCC)" \ + EXTRA_CFLAGS="$(HOST_CFLAGS)" \ + EXTRA_LDFLAGS="$(HOST_LDFLAGS)" \ + $(HOST_SQUASHFS_MAKE_ARGS) \ + -C $(@D)/squashfs-tools/ +endef + +define HOST_SQUASHFS_INSTALL_CMDS + $(HOST_MAKE_ENV) $(MAKE) $(HOST_SQUASHFS_MAKE_ARGS) \ + -C $(@D)/squashfs-tools/ INSTALL_DIR=$(HOST_DIR)/bin install +endef + +$(eval $(generic-package)) +$(eval $(host-generic-package)) diff --git a/package/squeezelite/Config.in b/package/squeezelite/Config.in new file mode 100644 index 00000000..a0347591 --- /dev/null +++ b/package/squeezelite/Config.in @@ -0,0 +1,49 @@ +config BR2_PACKAGE_SQUEEZELITE + bool "squeezelite" + depends on BR2_USE_WCHAR # flac + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL + depends on BR2_USE_MMU # mpg123 + depends on !BR2_STATIC_LIBS # dlopen + select BR2_PACKAGE_ALSA_LIB + select BR2_PACKAGE_ALSA_LIB_MIXER + select BR2_PACKAGE_FLAC + select BR2_PACKAGE_LIBMAD + select BR2_PACKAGE_LIBVORBIS + select BR2_PACKAGE_MPG123 + help + Logitech Media Server client + + https://github.com/ralph-irving/squeezelite/ + +if BR2_PACKAGE_SQUEEZELITE + +config BR2_PACKAGE_SQUEEZELITE_FFMPEG + bool "Enable WMA and ALAC decoding" + default y + depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS + select BR2_PACKAGE_FFMPEG + +config BR2_PACKAGE_SQUEEZELITE_DSD + bool "Enable DSD decoding" + +config BR2_PACKAGE_SQUEEZELITE_LIRC + bool "Enable lirc support" + depends on BR2_INSTALL_LIBSTDCPP + select BR2_PACKAGE_LIRC_TOOLS + +comment "lirc support needs a toolchain with C++" + depends on !BR2_INSTALL_LIBSTDCPP + +config BR2_PACKAGE_SQUEEZELITE_RESAMPLE + bool "Enable resampling support" + select BR2_PACKAGE_LIBSOXR + +config BR2_PACKAGE_SQUEEZELITE_VISEXPORT + bool "Enable visualiser support" + +endif + +comment "squeezelite needs a toolchain w/ wchar, NPTL, dynamic library" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS_NPTL \ + || BR2_STATIC_LIBS diff --git a/package/squeezelite/squeezelite.hash b/package/squeezelite/squeezelite.hash new file mode 100644 index 00000000..0b21d861 --- /dev/null +++ b/package/squeezelite/squeezelite.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 7f0342f4943d3c3498d930060f5a1e8d63ccb7282b9c21f964926e310449d592 squeezelite-71c012ad9ba102feb95823b7b9dc17e5305689c7.tar.gz +sha256 dc01c3da33fea11ed918f9e437b88baa59c70401aab0dad747e33dd9e8035706 LICENSE.txt diff --git a/package/squeezelite/squeezelite.mk b/package/squeezelite/squeezelite.mk new file mode 100644 index 00000000..b0347c4d --- /dev/null +++ b/package/squeezelite/squeezelite.mk @@ -0,0 +1,53 @@ +################################################################################ +# +# squeezelite +# +################################################################################ + +SQUEEZELITE_VERSION = 71c012ad9ba102feb95823b7b9dc17e5305689c7 +SQUEEZELITE_SITE = $(call github,ralph-irving,squeezelite,$(SQUEEZELITE_VERSION)) +SQUEEZELITE_LICENSE = GPL-3.0 +SQUEEZELITE_LICENSE_FILES = LICENSE.txt +SQUEEZELITE_DEPENDENCIES = alsa-lib flac libmad libvorbis mpg123 +SQUEEZELITE_MAKE_OPTS = -DLINKALL + +ifeq ($(BR2_PACKAGE_FAAD2),y) +SQUEEZELITE_DEPENDENCIES += faad2 +else +SQUEEZELITE_MAKE_OPTS += -DNO_FAAD +endif + +ifeq ($(BR2_PACKAGE_SQUEEZELITE_FFMPEG),y) +SQUEEZELITE_DEPENDENCIES += ffmpeg +SQUEEZELITE_MAKE_OPTS += -DFFMPEG +endif + +ifeq ($(BR2_PACKAGE_SQUEEZELITE_DSD),y) +SQUEEZELITE_MAKE_OPTS += -DDSD +endif + +ifeq ($(BR2_PACKAGE_SQUEEZELITE_LIRC),y) +SQUEEZELITE_DEPENDENCIES += lirc-tools +SQUEEZELITE_MAKE_OPTS += -DIR +endif + +ifeq ($(BR2_PACKAGE_SQUEEZELITE_RESAMPLE),y) +SQUEEZELITE_DEPENDENCIES += libsoxr +SQUEEZELITE_MAKE_OPTS += -DRESAMPLE +endif + +ifeq ($(BR2_PACKAGE_SQUEEZELITE_VISEXPORT),y) +SQUEEZELITE_MAKE_OPTS += -DVISEXPORT +endif + +define SQUEEZELITE_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) \ + OPTS="$(SQUEEZELITE_MAKE_OPTS)" -C $(@D) all +endef + +define SQUEEZELITE_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/squeezelite \ + $(TARGET_DIR)/usr/bin/squeezelite +endef + +$(eval $(generic-package)) diff --git a/package/squid/Config.in b/package/squid/Config.in new file mode 100644 index 00000000..0df2aede --- /dev/null +++ b/package/squid/Config.in @@ -0,0 +1,22 @@ +comment "squid needs a toolchain w/ C++, gcc >= 4.8 not affected by bug 64735" + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_ATOMIC + depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735 || \ + !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 + +config BR2_PACKAGE_SQUID + bool "squid" + depends on BR2_TOOLCHAIN_HAS_ATOMIC + depends on BR2_INSTALL_LIBSTDCPP + depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # std::current_exception + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 + # needs fork() + depends on BR2_USE_MMU + select BR2_PACKAGE_LIBCAP + select BR2_PACKAGE_LIBTOOL + select BR2_PACKAGE_LIBXML2 + help + Caching proxy for the Web supporting HTTP, HTTPS, FTP, and + more. + + http://www.squid-cache.org/ diff --git a/package/squid/S97squid b/package/squid/S97squid new file mode 100644 index 00000000..05fb93e3 --- /dev/null +++ b/package/squid/S97squid @@ -0,0 +1,39 @@ +#!/bin/sh + +[ -f /etc/squid.conf ] || exit 0 + +case "$1" in + start) + printf "Starting squid: " + if [ ! -d /var/log/squid ]; then + mkdir -p /var/log/squid + chown squid:squid /var/log/squid + fi + start-stop-daemon -S -x /usr/sbin/squid + [ $? = 0 ] && echo "OK" || echo "FAIL" + ;; + + stop) + printf "Stopping squid: " + /usr/sbin/squid -k shutdown + [ $? = 0 ] && echo "OK" || echo "FAIL" + ;; + + reload) + printf "Reloading squid configuration: " + /usr/sbin/squid -k reconfigure + [ $? = 0 ] && echo "OK" || echo "FAIL" + ;; + + restart) + printf "Restarting squid: " + /usr/sbin/squid -k restart + [ $? = 0 ] && echo "OK" || echo "FAIL" + ;; + + *) + echo "Usage: $0 {start|stop|reload|restart}" + exit 1 +esac + +exit 0 diff --git a/package/squid/squid.hash b/package/squid/squid.hash new file mode 100644 index 00000000..12a9e5d2 --- /dev/null +++ b/package/squid/squid.hash @@ -0,0 +1,6 @@ +# From http://www.squid-cache.org/Versions/v4/squid-4.15.tar.xz.asc +md5 a593de9dc888dfeca4f1f7db2cd7d3b9 squid-4.15.tar.xz +sha1 60bda34ba39657e2d870c8c1d2acece8a69c3075 squid-4.15.tar.xz +# Locally calculated +sha256 b693a4e5ab2811a8a854f60de0a62afbbf3a952bb1d047952c9ae01321f84a25 squid-4.15.tar.xz +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/squid/squid.mk b/package/squid/squid.mk new file mode 100644 index 00000000..b23a8d26 --- /dev/null +++ b/package/squid/squid.mk @@ -0,0 +1,98 @@ +################################################################################ +# +# squid +# +################################################################################ + +SQUID_VERSION = 4.15 +SQUID_SOURCE = squid-$(SQUID_VERSION).tar.xz +SQUID_SITE = http://www.squid-cache.org/Versions/v4 +SQUID_LICENSE = GPL-2.0+ +SQUID_LICENSE_FILES = COPYING +SQUID_CPE_ID_VENDOR = squid-cache +SQUID_DEPENDENCIES = libcap host-libcap libtool libxml2 host-pkgconf \ + $(if $(BR2_PACKAGE_LIBNETFILTER_CONNTRACK),libnetfilter_conntrack) +SQUID_CONF_ENV = \ + ac_cv_epoll_works=yes \ + ac_cv_func_setresuid=yes \ + ac_cv_func_va_copy=yes \ + ac_cv_func___va_copy=yes \ + ac_cv_func_strnstr=no \ + ac_cv_have_squid=yes \ + BUILDCXX="$(HOSTCXX)" \ + BUILDCXXFLAGS="$(HOST_CXXFLAGS)" +SQUID_CONF_OPTS = \ + --enable-async-io=8 \ + --enable-linux-netfilter \ + --enable-removal-policies="lru,heap" \ + --with-filedescriptors=1024 \ + --disable-ident-lookups \ + --enable-auth-basic="fake getpwnam" \ + --enable-auth-digest="file" \ + --enable-auth-negotiate="wrapper" \ + --enable-auth-ntlm="fake" \ + --disable-strict-error-checking \ + --enable-external-acl-helpers="file_userip" \ + --disable-ltdl-install \ + --without-included-ltdl \ + --with-logdir=/var/log/squid/ \ + --with-pidfile=/var/run/squid.pid \ + --with-swapdir=/var/cache/squid/ \ + --with-default-user=squid + +ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) +SQUID_CONF_ENV += LIBS=-latomic +endif + +ifeq ($(BR2_PACKAGE_LIBKRB5),y) +SQUID_CONF_OPTS += --with-mit-krb5 +SQUID_DEPENDENCIES += libkrb5 +else +SQUID_CONF_OPTS += --without-mit-krb5 +endif + +ifeq ($(BR2_PACKAGE_OPENSSL),y) +SQUID_CONF_OPTS += --with-openssl +SQUID_DEPENDENCIES += openssl +else +SQUID_CONF_OPTS += --without-openssl +endif + +ifeq ($(BR2_PACKAGE_GNUTLS),y) +SQUID_CONF_OPTS += --with-gnutls +SQUID_DEPENDENCIES += gnutls +else +SQUID_CONF_OPTS += --without-gnutls +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD),y) +SQUID_CONF_OPTS += --with-systemd +SQUID_DEPENDENCIES += systemd +else +SQUID_CONF_OPTS += --without-systemd +endif + +define SQUID_CLEANUP_TARGET + rm -f $(addprefix $(TARGET_DIR)/usr/bin/, \ + RunCache RunAccel) + rm -f $(addprefix $(TARGET_DIR)/etc/, \ + cachemgr.conf mime.conf.default squid.conf.default) +endef + +SQUID_POST_INSTALL_TARGET_HOOKS += SQUID_CLEANUP_TARGET + +define SQUID_USERS + squid -1 squid -1 * - - - Squid proxy cache +endef + +define SQUID_INSTALL_INIT_SYSV + $(INSTALL) -m 755 -D package/squid/S97squid \ + $(TARGET_DIR)/etc/init.d/S97squid +endef + +define SQUID_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 0644 $(@D)/tools/systemd/squid.service \ + $(TARGET_DIR)/usr/lib/systemd/system/squid.service +endef + +$(eval $(autotools-package)) diff --git a/package/sredird/0001-termio.patch b/package/sredird/0001-termio.patch new file mode 100644 index 00000000..7c7c67f5 --- /dev/null +++ b/package/sredird/0001-termio.patch @@ -0,0 +1,20 @@ +Fix musl build + +Patch was inspired by +http://svnweb.freebsd.org/ports/head/comms/sredird/files/patch-sredird.c?revision=363168&view=markup +http://ftp.netbsd.org/pub/pkgsrc/current/pkgsrc/sysutils/sredird/patches/patch-aa +https://github.com/bitrig/bitrig-ports/blob/master/comms/sredird/patches/patch-sredird_c + +Signed-off-by: Bernd Kuhls + +diff -uNr sredird-2.2.2.org/sredird.c sredird-2.2.2/sredird.c +--- sredird-2.2.2.org/sredird.c 2005-08-12 16:10:46.000000000 +0200 ++++ sredird-2.2.2/sredird.c 2016-01-31 18:53:08.000000000 +0100 +@@ -110,7 +110,6 @@ + #include + #include + #include +-#include + #include + #include + #include diff --git a/package/sredird/Config.in b/package/sredird/Config.in new file mode 100644 index 00000000..d8c5ef9c --- /dev/null +++ b/package/sredird/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_SREDIRD + bool "sredird" + help + Sredird is a serial port redirector that is compliant with + the RFC 2217 "Telnet Com Port Control Option" protocol. This + protocol lets you share a serial port through the network. + + http://freecode.com/projects/sredird diff --git a/package/sredird/sredird.hash b/package/sredird/sredird.hash new file mode 100644 index 00000000..1181627a --- /dev/null +++ b/package/sredird/sredird.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 640c47dcd84b3b90640165a38eb336a675fdab06c14c09cae2f4a604cae560d3 sredird-2.2.2.tar.gz +sha256 91df39d1816bfb17a4dda2d3d2c83b1f6f2d38d53e53e41e8f97ad5ac46a0cad COPYING diff --git a/package/sredird/sredird.mk b/package/sredird/sredird.mk new file mode 100644 index 00000000..723c10ac --- /dev/null +++ b/package/sredird/sredird.mk @@ -0,0 +1,20 @@ +################################################################################ +# +# sredird +# +################################################################################ + +SREDIRD_VERSION = 2.2.2 +SREDIRD_SITE = http://www.ibiblio.org/pub/Linux/system/serial +SREDIRD_LICENSE = GPL-2.0+ +SREDIRD_LICENSE_FILES = COPYING + +define SREDIRD_BUILD_CMDS + $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) +endef + +define SREDIRD_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/sredird $(TARGET_DIR)/usr/sbin/sredird +endef + +$(eval $(generic-package)) diff --git a/package/ssdp-responder/Config.in b/package/ssdp-responder/Config.in new file mode 100644 index 00000000..df57546e --- /dev/null +++ b/package/ssdp-responder/Config.in @@ -0,0 +1,20 @@ +config BR2_PACKAGE_SSDP_RESPONDER + bool "ssdp-responder" + depends on BR2_USE_MMU + help + Simple Service Discovery Protocol daemon (SSDP) for networked + Linux and UNIX devices. Useful in any setup, big or small, but + targeted more at embedded systems that need to announce + themselves to Windows systems. + + ssdpd is a stand-alone UNIX, no external dependencies but the + standard C library. It has a built-in web server for serving + the UPnP XML description which Windows use to present the + icon, by default an InternetGatewayDevice is announced. + + Also included is ssdp-scan, a tool similar to mdns-scan, which + continuously scans for SSDP capable hosts on the network. + Take care only to use for debugging since it scans the network + quite aggressively. + + https://github.com/troglobit/ssdp-responder/ diff --git a/package/ssdp-responder/S50ssdpd b/package/ssdp-responder/S50ssdpd new file mode 100755 index 00000000..e33992be --- /dev/null +++ b/package/ssdp-responder/S50ssdpd @@ -0,0 +1,42 @@ +#!/bin/sh + +NAME=ssdpd +PIDFILE=/var/run/$NAME.pid +DAEMON=/usr/sbin/$NAME +CFGFILE=/etc/default/$NAME + +DAEMON_ARGS="" + +# Read configuration variable file if it is present +[ -f $CFGFILE ] && . $CFGFILE + +start() { + printf 'Starting %s: ' "$NAME" + start-stop-daemon -S -q -p $PIDFILE -x $DAEMON -- $DAEMON_ARGS + [ $? = 0 ] && echo "OK" || echo "FAIL" +} + +stop() { + printf 'Stopping %s: ' "$NAME" + start-stop-daemon -K -q -p $PIDFILE -x $DAEMON + [ $? = 0 ] && echo "OK" || echo "FAIL" +} + +restart() { + stop + start +} + +case "$1" in + start|stop|restart) + "$1" + ;; + reload) + restart + ;; + *) + echo "Usage: $0 {start|stop|restart|reload}" + exit 1 +esac + +exit $? diff --git a/package/ssdp-responder/ssdp-responder.hash b/package/ssdp-responder/ssdp-responder.hash new file mode 100644 index 00000000..e8cbbb4a --- /dev/null +++ b/package/ssdp-responder/ssdp-responder.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 7ae49229e7c7a55fed9e36598b12e2173eecef0fffe0a386b6a10fad30f3c79f ssdp-responder-1.8.tar.gz +sha256 e17dc0bc91bf499d8cca5e016c22c6d2a4770e3cc1a43756a7973375a83ddb90 LICENSE diff --git a/package/ssdp-responder/ssdp-responder.mk b/package/ssdp-responder/ssdp-responder.mk new file mode 100644 index 00000000..3fee4c20 --- /dev/null +++ b/package/ssdp-responder/ssdp-responder.mk @@ -0,0 +1,33 @@ +################################################################################ +# +# ssdp-responder +# +################################################################################ + +SSDP_RESPONDER_VERSION = 1.8 +SSDP_RESPONDER_SITE = https://github.com/troglobit/ssdp-responder/releases/download/v$(SSDP_RESPONDER_VERSION) +SSDP_RESPONDER_LICENSE = ISC +SSDP_RESPONDER_LICENSE_FILES = LICENSE +SSDP_RESPONDER_CPE_ID_VENDOR = \ + simple_service_discovery_protocol_responder_project +SSDP_RESPONDER_CPE_ID_PRODUCT = simple_service_discovery_protocol_responder +SSDP_RESPONDER_DEPENDENCIES = host-pkgconf + +ifeq ($(BR2_PACKAGE_SYSTEMD),y) +SSDP_RESPONDER_DEPENDENCIES += systemd +SSDP_RESPONDER_CONF_OPTS += --with-systemd +else +SSDP_RESPONDER_CONF_OPTS += --without-systemd +endif + +define SSDP_RESPONDER_INSTALL_INIT_SYSV + $(INSTALL) -D -m 0755 package/ssdp-responder/S50ssdpd \ + $(TARGET_DIR)/etc/init.d/S50ssdpd +endef + +define SSDP-RESPONDER_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 644 $(@D)/ssdp-responder.service \ + $(TARGET_DIR)/usr/lib/systemd/system/ssdp-responder.service +endef + +$(eval $(autotools-package)) diff --git a/package/sshfs/Config.in b/package/sshfs/Config.in new file mode 100644 index 00000000..bc54b698 --- /dev/null +++ b/package/sshfs/Config.in @@ -0,0 +1,19 @@ +config BR2_PACKAGE_SSHFS + bool "sshfs (FUSE)" + depends on BR2_USE_WCHAR # glib2 + depends on BR2_TOOLCHAIN_HAS_THREADS # libfuse3, glib2 + depends on BR2_USE_MMU # libfuse3, glib2 + depends on !BR2_STATIC_LIBS # libfuse3 + select BR2_PACKAGE_LIBFUSE3 + select BR2_PACKAGE_LIBGLIB2 + select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE + select BR2_PACKAGE_OPENSSH + help + FUSE filesystem client based on the SSH File Transfer + Protocol. + + https://github.com/libfuse/sshfs + +comment "sshfs needs a toolchain w/ wchar, threads, dynamic library" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/sshfs/sshfs.hash b/package/sshfs/sshfs.hash new file mode 100644 index 00000000..106f06f0 --- /dev/null +++ b/package/sshfs/sshfs.hash @@ -0,0 +1,3 @@ +# Locally calculated after checking pgp signature +sha256 fe5d3436d61b46974889e0c4515899c21a9d67851e3793c209989f72353d7750 sshfs-3.7.1.tar.xz +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/sshfs/sshfs.mk b/package/sshfs/sshfs.mk new file mode 100644 index 00000000..6759f6ab --- /dev/null +++ b/package/sshfs/sshfs.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# sshfs +# +################################################################################ + +SSHFS_VERSION = 3.7.1 +SSHFS_SOURCE = sshfs-$(SSHFS_VERSION).tar.xz +SSHFS_SITE = https://github.com/libfuse/sshfs/releases/download/sshfs-$(SSHFS_VERSION) +SSHFS_LICENSE = GPL-2.0 +SSHFS_LICENSE_FILES = COPYING +SSHFS_DEPENDENCIES = \ + libglib2 libfuse3 openssh \ + $(TARGET_NLS_DEPENDENCIES) \ + $(if $(BR2_ENABLE_LOCALE),,libiconv) + +$(eval $(meson-package)) diff --git a/package/sshguard/Config.in b/package/sshguard/Config.in new file mode 100644 index 00000000..7454c0a9 --- /dev/null +++ b/package/sshguard/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_SSHGUARD + bool "sshguard" + depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_IPTABLES # runtime + help + sshguard protects hosts from brute-force attacks against SSH + and other services. It aggregates system logs and blocks + repeat offenders using one of several firewall backends, + including iptables, ipfw, and pf. + + https://www.sshguard.net + +comment "sshguard needs a toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/sshguard/S49sshguard b/package/sshguard/S49sshguard new file mode 100644 index 00000000..94776415 --- /dev/null +++ b/package/sshguard/S49sshguard @@ -0,0 +1,49 @@ +#!/bin/sh + +DAEMON="sshguard" +PIDFILE="/var/run/$DAEMON.pid" + +start() { + printf 'Starting %s: ' "$DAEMON" + iptables -L sshguard > /dev/null 2>&1 || \ + (iptables -N sshguard && iptables -A INPUT -j sshguard) + start-stop-daemon -S -q -b -p /run/sshguard.pid \ + -x /usr/sbin/sshguard -- -i /run/sshguard.pid + status=$? + if [ "$status" -eq 0 ]; then + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +stop() { + printf 'Stopping %s: ' "$DAEMON" + start-stop-daemon -K -q -p "$PIDFILE" + status=$? + if [ "$status" -eq 0 ]; then + rm -f "$PIDFILE" + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +restart() { + stop + sleep 1 + start +} + +case "$1" in + start|stop|restart) + "$1";; + reload) + # Restart, since there is no true "reload" feature. + restart;; + *) + echo "Usage: $0 {start|stop|restart|reload}" + exit 1 +esac diff --git a/package/sshguard/sshguard.hash b/package/sshguard/sshguard.hash new file mode 100644 index 00000000..9bbb4133 --- /dev/null +++ b/package/sshguard/sshguard.hash @@ -0,0 +1,4 @@ +# sha256 from https://sourceforge.net/projects/sshguard/files/sshguard/2.4.1/sshguard-2.4.1.sha256 +sha256 875d02e6e67dced614790ed5e36aef1160edea940f353a79306cbb1852af3c67 sshguard-2.4.1.tar.gz +# Locally calculated +sha256 c3ae64f12153a1bc55bc234d09f40a08ab0e0149fffc972c0b7f02d5a12c1a5c COPYING diff --git a/package/sshguard/sshguard.mk b/package/sshguard/sshguard.mk new file mode 100644 index 00000000..3616fba7 --- /dev/null +++ b/package/sshguard/sshguard.mk @@ -0,0 +1,30 @@ +################################################################################ +# +# sshguard +# +################################################################################ + +SSHGUARD_VERSION = 2.4.1 +SSHGUARD_SITE = https://sourceforge.net/projects/sshguard/files/sshguard/$(SSHGUARD_VERSION) +SSHGUARD_LICENSE = ISC, Public Domain (fnv hash), BSD-3-Clause (SimCList) +SSHGUARD_LICENSE_FILES = COPYING + +define SSHGUARD_INSTALL_CONFIG + $(INSTALL) -D -m 0644 $(@D)/examples/sshguard.conf.sample \ + $(TARGET_DIR)/etc/sshguard.conf + $(SED) '/^#BACKEND/c\BACKEND="/usr/libexec/sshg-fw-iptables"' \ + -e '/^#FILES/c\FILES="/var/log/messages"' $(TARGET_DIR)/etc/sshguard.conf +endef +SSHGUARD_POST_INSTALL_TARGET_HOOKS += SSHGUARD_INSTALL_CONFIG + +define SSHGUARD_INSTALL_INIT_SYSV + $(INSTALL) -D -m 755 package/sshguard/S49sshguard \ + $(TARGET_DIR)/etc/init.d/S49sshguard +endef + +define SSHGUARD_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 0644 $(@D)/examples/sshguard.service \ + $(TARGET_DIR)/usr/lib/systemd/system/sshguard.service +endef + +$(eval $(autotools-package)) diff --git a/package/sshpass/Config.in b/package/sshpass/Config.in new file mode 100644 index 00000000..24e46295 --- /dev/null +++ b/package/sshpass/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_SSHPASS + bool "sshpass" + depends on BR2_USE_MMU # fork() + help + Sshpass is a tool for non-interactivly performing + password authentication with SSH's so called + "interactive keyboard password authentication". + + http://sshpass.sourceforge.net diff --git a/package/sshpass/sshpass.hash b/package/sshpass/sshpass.hash new file mode 100644 index 00000000..9635a918 --- /dev/null +++ b/package/sshpass/sshpass.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 c6324fcee608b99a58f9870157dfa754837f8c48be3df0f5e2f3accf145dee60 sshpass-1.06.tar.gz +sha256 32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670 COPYING diff --git a/package/sshpass/sshpass.mk b/package/sshpass/sshpass.mk new file mode 100644 index 00000000..6c14f0fe --- /dev/null +++ b/package/sshpass/sshpass.mk @@ -0,0 +1,12 @@ +################################################################################ +# +# sshpass +# +################################################################################ + +SSHPASS_VERSION = 1.06 +SSHPASS_SITE = http://downloads.sourceforge.net/project/sshpass/sshpass/$(SSHPASS_VERSION) +SSHPASS_LICENSE = GPL-2.0+ +SSHPASS_LICENSE_FILES = COPYING + +$(eval $(autotools-package)) diff --git a/package/sslh/0001-Makefile-fix-static-linking-with-pcre.patch b/package/sslh/0001-Makefile-fix-static-linking-with-pcre.patch new file mode 100644 index 00000000..5fc3296d --- /dev/null +++ b/package/sslh/0001-Makefile-fix-static-linking-with-pcre.patch @@ -0,0 +1,41 @@ +From 0d9e004d324cc030c173de04c40db51a0f22bb5c Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Thu, 15 Oct 2020 07:58:05 +0200 +Subject: [PATCH] Makefile: fix static linking with pcre + +Static build with pcre is broken since version 1.19b and +https://github.com/yrutschle/sslh/commit/cb90cc97ae64a445242e517847c6e44b7003eda4 +because -lpcre has been replaced by -lpcreposix which will result in +the following static build failure: + +/srv/storage/autobuild/run/instance-1/output-1/host/bin/mipsel-linux-gcc -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -static -static -o echosrv echosrv.o probe.o common.o tls.o -lpcreposix -lconfig -lcap +/srv/storage/autobuild/run/instance-1/output-1/host/opt/ext-toolchain/bin/../lib/gcc/mipsel-buildroot-linux-uclibc/8.3.0/../../../../mipsel-buildroot-linux-uclibc/bin/ld: /srv/storage/autobuild/run/instance-1/output-1/host/mipsel-buildroot-linux-uclibc/sysroot/usr/lib/libpcreposix.a(libpcreposix_la-pcreposix.o): in function `regfree': +pcreposix.c:(.text+0x120): undefined reference to `pcre_free' + +So append -lpcre after -lpcreposix + +Fixes: + - http://autobuild.buildroot.org/results/a601824fc0c205a6a940e0f9f079ce2c39840605 + +Signed-off-by: Fabrice Fontaine +[Upstream status: https://github.com/yrutschle/sslh/pull/280] +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 986cf1c..ecadc22 100644 +--- a/Makefile ++++ b/Makefile +@@ -43,7 +43,7 @@ endif + + ifneq ($(strip $(USELIBPCRE)),) + CPPFLAGS+=-DLIBPCRE +- LIBS:=$(LIBS) -lpcreposix ++ LIBS:=$(LIBS) -lpcreposix -lpcre + endif + + ifneq ($(strip $(USELIBCONFIG)),) +-- +2.28.0 + diff --git a/package/sslh/Config.in b/package/sslh/Config.in new file mode 100644 index 00000000..f6b46f32 --- /dev/null +++ b/package/sslh/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_SSLH + bool "sslh" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_LIBCONFIG if BR2_PACKAGE_SYSTEMD + help + Applicative protocol multiplexer + + http://www.rutschle.net/tech/sslh.shtml diff --git a/package/sslh/S35sslh b/package/sslh/S35sslh new file mode 100644 index 00000000..4a613f84 --- /dev/null +++ b/package/sslh/S35sslh @@ -0,0 +1,48 @@ +#!/bin/sh +# +# Starts the SSLH server +# + +# default setup : listen on port 8090 forward ssh traffic to +# localhost:22 and http traffic to localhost:80 +SSLH_ARGS="--listen 0.0.0.0:8090 --ssh 127.0.0.1:22 --http 127.0.0.1:80" + +# Allow a few customizations from a config file (overrides +# default setup) +test -r /etc/default/sslh && . /etc/default/sslh + +start() { + SSLH_ARGS="$SSLH_ARGS --user root" + echo -n "Starting sslh: " + start-stop-daemon -S -q -p /var/run/sslh.pid \ + --exec /usr/sbin/sslh -- $SSLH_ARGS + [ $? = 0 ] && echo "OK" || echo "FAIL" +} + +stop() { + printf "Stopping sslh: " + start-stop-daemon -K -q -p /var/run/sslh.pid + [ $? = 0 ] && echo "OK" || echo "FAIL" +} + +restart() { + stop + start +} + +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart|reload) + restart + ;; + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac + +exit $? diff --git a/package/sslh/sslh.hash b/package/sslh/sslh.hash new file mode 100644 index 00000000..00e5c12d --- /dev/null +++ b/package/sslh/sslh.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 3bfe783726f82c1f5a4be630ddc494ebb08dbb69980662cd7ffdeb7bc9e1e706 sslh-v1.21c.tar.gz +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/sslh/sslh.mk b/package/sslh/sslh.mk new file mode 100644 index 00000000..4bde143c --- /dev/null +++ b/package/sslh/sslh.mk @@ -0,0 +1,63 @@ +################################################################################ +# +# sslh +# +################################################################################ + +SSLH_VERSION = 1.21c +SSLH_SOURCE = sslh-v$(SSLH_VERSION).tar.gz +SSLH_SITE = http://www.rutschle.net/tech/sslh +SSLH_LICENSE = GPL-2.0+ +SSLH_LICENSE_FILES = COPYING + +SSLH_MAKE_OPTS = $(TARGET_CONFIGURE_OPTS) + +ifeq ($(BR2_PACKAGE_LIBBSD),y) +SSLH_DEPENDENCIES += libbsd +SSLH_MAKE_OPTS += USELIBBSD=1 +else +SSLH_MAKE_OPTS += USELIBBSD= +endif + +ifeq ($(BR2_PACKAGE_LIBCAP),y) +SSLH_DEPENDENCIES += libcap +SSLH_MAKE_OPTS += USELIBCAP=1 +else +SSLH_MAKE_OPTS += USELIBCAP= +endif + +ifeq ($(BR2_PACKAGE_LIBCONFIG),y) +SSLH_DEPENDENCIES += libconfig +SSLH_MAKE_OPTS += USELIBCONFIG=1 +else +SSLH_MAKE_OPTS += USELIBCONFIG= +endif + +ifeq ($(BR2_PACKAGE_PCRE),y) +SSLH_DEPENDENCIES += pcre +SSLH_MAKE_OPTS += USELIBPCRE=1 +else +SSLH_MAKE_OPTS += USELIBPCRE= +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD),y) +SSLH_DEPENDENCIES += systemd +SSLH_MAKE_OPTS += USESYSTEMD=1 +else +SSLH_MAKE_OPTS += USESYSTEMD= +endif + +define SSLH_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(SSLH_MAKE_OPTS) -C $(@D) +endef + +define SSLH_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(SSLH_MAKE_OPTS) -C $(@D) \ + DESTDIR=$(TARGET_DIR) install +endef + +define SSLH_INSTALL_INIT_SYSV + $(INSTALL) -m 755 -D package/sslh/S35sslh $(TARGET_DIR)/etc/init.d/S35sslh +endef + +$(eval $(generic-package)) diff --git a/package/start-stop-daemon/0001-add-uclibc-alias-and-musl.patch b/package/start-stop-daemon/0001-add-uclibc-alias-and-musl.patch new file mode 100644 index 00000000..64dc00d7 --- /dev/null +++ b/package/start-stop-daemon/0001-add-uclibc-alias-and-musl.patch @@ -0,0 +1,30 @@ +Make linux-uclibcgnueabi an alias for linux-uclibceabi since it's +what we use in buildroot toolchains. +Slightly tweak musleabi to match the buildroot-used tuple. + +Signed-off-by: Gustavo Zacarias + +diff -Nura dpkg-1.18.3.orig/ostable dpkg-1.18.3/ostable +--- dpkg-1.18.3.orig/ostable 2015-10-15 08:05:04.471762555 -0300 ++++ dpkg-1.18.3/ostable 2015-10-15 08:11:05.206132648 -0300 +@@ -12,10 +12,10 @@ + # system part of the output of the GNU config.guess script. + # + # +-uclibceabi-linux linux-uclibceabi linux[^-]*-uclibceabi ++uclibceabi-linux linux-uclibceabi linux[^-]*-uclibc.*eabi + uclibc-linux linux-uclibc linux[^-]*-uclibc + musleabihf-linux linux-musleabihf linux[^-]*-musleabihf +-musl-linux linux-musl linux[^-]*-musl ++musl-linux linux-musl linux[^-]*-musl[^-]* + gnueabihf-linux linux-gnueabihf linux[^-]*-gnueabihf + gnueabi-linux linux-gnueabi linux[^-]*-gnueabi + gnuabin32-linux linux-gnuabin32 linux[^-]*-gnuabin32 +@@ -34,6 +34,6 @@ + bsd-netbsd netbsd netbsd[^-]* + bsd-openbsd openbsd openbsd[^-]* + sysv-solaris solaris solaris[^-]* +-uclibceabi-uclinux uclinux-uclibceabi uclinux[^-]*-uclibceabi ++uclibceabi-uclinux uclinux-uclibceabi uclinux[^-]*-uclibc.*eabi + uclibc-uclinux uclinux-uclibc uclinux[^-]*(-uclibc.*)? + tos-mint mint mint[^-]* diff --git a/package/start-stop-daemon/0002-just-warn-on-missing-arch.patch b/package/start-stop-daemon/0002-just-warn-on-missing-arch.patch new file mode 100644 index 00000000..2b9cd3db --- /dev/null +++ b/package/start-stop-daemon/0002-just-warn-on-missing-arch.patch @@ -0,0 +1,19 @@ +Just warn on missing arch + +Some architectures are not listed in dpkg list (e.g. mips64el, xtensa, sh4a). +Don't break the build for that. + +Signed-off-by: Baruch Siach +--- +diff -Nuar dpkg-1.16.15-orig/m4/dpkg-arch.m4 dpkg-1.16.15/m4/dpkg-arch.m4 +--- dpkg-1.16.15-orig/m4/dpkg-arch.m4 2014-05-30 02:47:25.000000000 +0300 ++++ dpkg-1.16.15/m4/dpkg-arch.m4 2015-01-16 06:55:19.701596362 +0200 +@@ -57,7 +57,7 @@ + AC_MSG_CHECKING([dpkg architecture name]) + _DPKG_ARCHITECTURE([DEB_HOST_ARCH], [dpkg_arch]) + if test "x$dpkg_arch" = "x"; then +- AC_MSG_ERROR([cannot determine host dpkg architecture]) ++ AC_MSG_WARN([cannot determine host dpkg architecture]) + else + AC_MSG_RESULT([$dpkg_arch]) + fi diff --git a/package/start-stop-daemon/Config.in b/package/start-stop-daemon/Config.in new file mode 100644 index 00000000..8f0dda13 --- /dev/null +++ b/package/start-stop-daemon/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_START_STOP_DAEMON + bool "start-stop-daemon" + depends on BR2_USE_MMU # fork() + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + help + start-stop-daemon is used to control the creation and + termination of system-level processes. + + https://tracker.debian.org/pkg/dpkg diff --git a/package/start-stop-daemon/start-stop-daemon.hash b/package/start-stop-daemon/start-stop-daemon.hash new file mode 100644 index 00000000..e5d1d911 --- /dev/null +++ b/package/start-stop-daemon/start-stop-daemon.hash @@ -0,0 +1,4 @@ +# From http://ftp.de.debian.org/debian/pool/main/d/dpkg/dpkg_1.18.10.dsc +sha256 025524da41ba18b183ff11e388eb8686f7cc58ee835ed7d48bd159c46a8b6dc5 dpkg_1.18.10.tar.xz +# Locally computed +sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING diff --git a/package/start-stop-daemon/start-stop-daemon.mk b/package/start-stop-daemon/start-stop-daemon.mk new file mode 100644 index 00000000..01a67197 --- /dev/null +++ b/package/start-stop-daemon/start-stop-daemon.mk @@ -0,0 +1,38 @@ +################################################################################ +# +# start-stop-daemon +# +################################################################################ + +# Debian start-stop-daemon is part of dpkg. Since start-stop-daemon is the only +# interesting tool in it, we call the buildroot package start-stop-daemon. + +START_STOP_DAEMON_VERSION = 1.18.10 +START_STOP_DAEMON_SOURCE = dpkg_$(START_STOP_DAEMON_VERSION).tar.xz +START_STOP_DAEMON_SITE = http://snapshot.debian.org/archive/debian/20160731T221931Z/pool/main/d/dpkg +START_STOP_DAEMON_CONF_OPTS = \ + --disable-dselect \ + --disable-update-alternatives \ + --disable-install-info \ + --exec-prefix=/ +START_STOP_DAEMON_CONF_ENV = \ + dpkg_cv_va_copy=yes \ + dpkg_cv_c99_snprintf=yes \ + DPKG_DEVEL_MODE=1 +START_STOP_DAEMON_DEPENDENCIES = host-pkgconf +# Patching m4/dpkg-arch.m4 +START_STOP_DAEMON_AUTORECONF = YES +START_STOP_DAEMON_LICENSE = GPL-2.0+ +START_STOP_DAEMON_LICENSE_FILES = COPYING + +define START_STOP_DAEMON_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/lib/compat + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/utils +endef + +define START_STOP_DAEMON_INSTALL_TARGET_CMDS + $(INSTALL) -m 0755 -D $(@D)/utils/start-stop-daemon \ + $(TARGET_DIR)/sbin/start-stop-daemon +endef + +$(eval $(autotools-package)) diff --git a/package/startup-notification/Config.in b/package/startup-notification/Config.in new file mode 100644 index 00000000..88d18174 --- /dev/null +++ b/package/startup-notification/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_STARTUP_NOTIFICATION + bool "startup-notification" + depends on BR2_PACKAGE_XORG7 + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_XLIB_LIBX11 + help + Startup-notification is a library used to monitor + application startup. + + http://freedesktop.org/software/startup-notification/releases diff --git a/package/startup-notification/startup-notification.hash b/package/startup-notification/startup-notification.hash new file mode 100644 index 00000000..474c8bd9 --- /dev/null +++ b/package/startup-notification/startup-notification.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 c2fa09f9a49d8b319e79638e49e967c682df8726006e03059b1ffca5ab82099c startup-notification-0.9.tar.gz +sha256 29935974beae046f50da806b5f4e54532401dd7bcfbc696a0b645f4cbcce9dbb COPYING diff --git a/package/startup-notification/startup-notification.mk b/package/startup-notification/startup-notification.mk new file mode 100644 index 00000000..b3314087 --- /dev/null +++ b/package/startup-notification/startup-notification.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# startup-notification +# +################################################################################ + +STARTUP_NOTIFICATION_VERSION = 0.9 +STARTUP_NOTIFICATION_SITE = http://freedesktop.org/software/startup-notification/releases +STARTUP_NOTIFICATION_INSTALL_STAGING = YES +STARTUP_NOTIFICATION_DEPENDENCIES = xlib_libX11 +STARTUP_NOTIFICATION_CONF_ENV = lf_cv_sane_realloc=yes +STARTUP_NOTIFICATION_CONF_OPTS = --with-x \ + --x-includes="$(STAGING_DIR)/usr/include/X11" \ + --x-libraries="$(STAGING_DIR)/usr/lib" +STARTUP_NOTIFICATION_LICENSE = LGPL-2.0 +STARTUP_NOTIFICATION_LICENSE_FILES = COPYING + +$(eval $(autotools-package)) diff --git a/package/statserial/0001-ncurses-link.patch b/package/statserial/0001-ncurses-link.patch new file mode 100644 index 00000000..b1c41e67 --- /dev/null +++ b/package/statserial/0001-ncurses-link.patch @@ -0,0 +1,16 @@ +Link to libncurses instead of the legacy libcurses. + +Signed-off-by: Gustavo Zacarias + +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/Config.in b/package/statserial/Config.in new file mode 100644 index 00000000..4db5eb1a --- /dev/null +++ b/package/statserial/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_STATSERIAL + bool "statserial" + select BR2_PACKAGE_NCURSES + help + Displays a table of the signals on a standard + 9-pin or 25-pin serial port, and indicates the + status of the handshaking lines. It can be + useful for debugging problems with serial + ports or modems. + + https://sites.google.com/site/tranter/software diff --git a/package/statserial/statserial.hash b/package/statserial/statserial.hash new file mode 100644 index 00000000..ca96b864 --- /dev/null +++ b/package/statserial/statserial.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 40cf3bd506852942aa98f468c90ed4ea66dbd343b93efacd40d617b55caf3967 statserial-1.1.tar.gz +sha256 91df39d1816bfb17a4dda2d3d2c83b1f6f2d38d53e53e41e8f97ad5ac46a0cad COPYING diff --git a/package/statserial/statserial.mk b/package/statserial/statserial.mk new file mode 100644 index 00000000..f9b131fc --- /dev/null +++ b/package/statserial/statserial.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# statserial +# +################################################################################ + +STATSERIAL_VERSION = 1.1 +STATSERIAL_SITE = http://www.ibiblio.org/pub/Linux/system/serial +STATSERIAL_DEPENDENCIES = ncurses +STATSERIAL_LICENSE = GPL-2.0+ +STATSERIAL_LICENSE_FILES = COPYING + +define STATSERIAL_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" LD="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" LDFLAGS="$(TARGET_LDFLAGS)" -C $(@D) +endef + +define STATSERIAL_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/statserial $(TARGET_DIR)/usr/bin/statserial +endef + +$(eval $(generic-package)) diff --git a/package/stella/Config.in b/package/stella/Config.in new file mode 100644 index 00000000..c14f4857 --- /dev/null +++ b/package/stella/Config.in @@ -0,0 +1,22 @@ +config BR2_PACKAGE_STELLA + bool "stella" + depends on !BR2_STATIC_LIBS # sdl2 + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_6 # C++14 + depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # exception_ptr + select BR2_PACKAGE_SDL2 + select BR2_PACKAGE_LIBPNG + select BR2_PACKAGE_ZLIB + help + Stella is a multi-platform Atari 2600 VCS emulator. + + https://stella-emu.github.io/ + +comment "stella needs a toolchain w/ dynamic library, C++, threads, gcc >= 6" + depends on BR2_STATIC_LIBS || !BR2_INSTALL_LIBSTDCPP || \ + !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_6 + +comment "stella needs a toolchain not affected by GCC bug 64735" + depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735 diff --git a/package/stella/stella.hash b/package/stella/stella.hash new file mode 100644 index 00000000..c40d9661 --- /dev/null +++ b/package/stella/stella.hash @@ -0,0 +1,4 @@ +# Locally computed: +sha256 0346900e9ba4b6d532b72d956adc5078502a9bd6bbc1648bb3dd68f5ffd4859b stella-6.4-src.tar.xz +sha256 d207ee9e563fdd062582df8cbb6c8303b9879bd107692c0db2a32477e47dfa35 Copyright.txt +sha256 58530d09b6fcb91ae27071be0081af90e6c2d7fdf991d34a29e234a2a5e75455 License.txt diff --git a/package/stella/stella.mk b/package/stella/stella.mk new file mode 100644 index 00000000..2dcfbeac --- /dev/null +++ b/package/stella/stella.mk @@ -0,0 +1,38 @@ +################################################################################ +# +# stella +# +################################################################################ + +STELLA_VERSION = 6.4 +STELLA_SOURCE = stella-$(STELLA_VERSION)-src.tar.xz +STELLA_SITE = https://github.com/stella-emu/stella/releases/download/$(STELLA_VERSION) +STELLA_LICENSE = GPL-2.0+ +STELLA_LICENSE_FILES = Copyright.txt License.txt + +STELLA_DEPENDENCIES = sdl2 libpng zlib + +STELLA_CONF_OPTS = \ + --host=$(GNU_TARGET_NAME) \ + --prefix=/usr \ + --with-sdl-prefix=$(STAGING_DIR)/usr + +# The configure script is not autoconf based, so we use the +# generic-package infrastructure +define STELLA_CONFIGURE_CMDS + (cd $(@D); \ + $(TARGET_CONFIGURE_OPTS) \ + $(TARGET_CONFIGURE_ARGS) \ + ./configure $(STELLA_CONF_OPTS) \ + ) +endef + +define STELLA_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) +endef + +define STELLA_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) DESTDIR="$(TARGET_DIR)" -C $(@D) install +endef + +$(eval $(generic-package)) diff --git a/package/stellarium/Config.in b/package/stellarium/Config.in new file mode 100644 index 00000000..5922162d --- /dev/null +++ b/package/stellarium/Config.in @@ -0,0 +1,23 @@ +config BR2_PACKAGE_STELLARIUM + bool "stellarium" + depends on BR2_PACKAGE_QT5 + depends on BR2_PACKAGE_QT5_GL_AVAILABLE + depends on BR2_PACKAGE_HAS_LIBGL # does not support OpenGL ES + select BR2_PACKAGE_QT5BASE_CONCURRENT + select BR2_PACKAGE_QT5BASE_GUI + select BR2_PACKAGE_QT5BASE_NETWORK + select BR2_PACKAGE_QT5BASE_OPENGL + select BR2_PACKAGE_QT5BASE_PRINTSUPPORT + select BR2_PACKAGE_QT5BASE_WIDGETS + select BR2_PACKAGE_QT5LOCATION + select BR2_PACKAGE_QT5MULTIMEDIA + select BR2_PACKAGE_ZLIB + help + Stellarium is a free open source planetarium for your + computer. It shows a realistic sky in 3D, just like what + you see with the naked eye, binoculars or a telescope. + + https://stellarium.org + +comment "stellarium needs Qt5 and an OpenGL provider" + depends on !BR2_PACKAGE_QT5 || !BR2_PACKAGE_HAS_LIBGL diff --git a/package/stellarium/stellarium.hash b/package/stellarium/stellarium.hash new file mode 100644 index 00000000..fb6d4642 --- /dev/null +++ b/package/stellarium/stellarium.hash @@ -0,0 +1,5 @@ +# From https://github.com/Stellarium/stellarium/releases +sha1 c399f9c785f6a33d04f1a1c4f2db3309ce4781dc stellarium-0.20.4.tar.gz +sha256 63033bb6ad01b5f021689766b2a09a99bcabcfec57a710e46a93c40a32fda388 stellarium-0.20.4.tar.gz +# Locally computed +sha256 3aeeb5bb98bf7041ab82cffe15efa28ac58ee2bdf162b71301f5c192be631259 COPYING diff --git a/package/stellarium/stellarium.mk b/package/stellarium/stellarium.mk new file mode 100644 index 00000000..ac0bd477 --- /dev/null +++ b/package/stellarium/stellarium.mk @@ -0,0 +1,42 @@ +################################################################################ +# +# stellarium +# +################################################################################ + +STELLARIUM_VERSION = 0.20.4 +STELLARIUM_SITE = https://github.com/Stellarium/stellarium/releases/download/v$(STELLARIUM_VERSION) +STELLARIUM_LICENSE = GPL-2.0+ +STELLARIUM_LICENSE_FILES = COPYING +STELLARIUM_DEPENDENCIES = \ + qt5base \ + qt5location \ + qt5multimedia \ + zlib +STELLARIUM_CONF_OPTS = \ + -DENABLE_MEDIA=ON \ + -DENABLE_NLS=OFF \ + -DUSE_SYSTEM_ZLIB=ON + +ifeq ($(BR2_PACKAGE_QT5SCRIPT),y) +STELLARIUM_DEPENDENCIES += qt5script +STELLARIUM_CONF_OPTS += -DENABLE_SCRIPTING=ON +else +STELLARIUM_CONF_OPTS += -DENABLE_SCRIPTING=OFF +endif + +ifeq ($(BR2_PACKAGE_QT5SERIALPORT),y) +STELLARIUM_DEPENDENCIES += qt5serialport +ifeq ($(BR2_PACKAGE_GPSD),y) +STELLARIUM_DEPENDENCIES += gpsd +endif +STELLARIUM_CONF_OPTS += \ + -DENABLE_GPS=ON \ + -DUSE_PLUGIN_TELESCOPECONTROL=ON +else +STELLARIUM_CONF_OPTS += \ + -DENABLE_GPS=OFF \ + -DUSE_PLUGIN_TELESCOPECONTROL=OFF +endif + +$(eval $(cmake-package)) diff --git a/package/stm32flash/Config.in b/package/stm32flash/Config.in new file mode 100644 index 00000000..87afe3b8 --- /dev/null +++ b/package/stm32flash/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_STM32FLASH + bool "stm32flash" + help + Open source cross platform flash program for the STM32 ARM + microcontrollers using the built-in ST serial bootloader + over UART or I2C. + + http://sourceforge.net/projects/stm32flash/ diff --git a/package/stm32flash/stm32flash.hash b/package/stm32flash/stm32flash.hash new file mode 100644 index 00000000..1b06a8f0 --- /dev/null +++ b/package/stm32flash/stm32flash.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 42b7d63f6016bd75911cbb87fe85fbc4f98adf3ceecfe6d91f7956b31d18095f stm32flash-3cebf121f7b32b9edfcb0d49f0fb43ccf33e5650-br1.tar.gz +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 gpl-2.0.txt diff --git a/package/stm32flash/stm32flash.mk b/package/stm32flash/stm32flash.mk new file mode 100644 index 00000000..a8ae9b01 --- /dev/null +++ b/package/stm32flash/stm32flash.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# stm32flash +# +################################################################################ + +STM32FLASH_VERSION = 3cebf121f7b32b9edfcb0d49f0fb43ccf33e5650 +STM32FLASH_SITE = git://git.code.sf.net/p/stm32flash/code +STM32FLASH_LICENSE = GPL-2.0+ +STM32FLASH_LICENSE_FILES = gpl-2.0.txt + +define STM32FLASH_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) +endef + +define STM32FLASH_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) DESTDIR="$(TARGET_DIR)" PREFIX="/usr" \ + -C $(@D) install +endef + +$(eval $(generic-package)) diff --git a/package/strace/Config.in b/package/strace/Config.in new file mode 100644 index 00000000..c394d4c3 --- /dev/null +++ b/package/strace/Config.in @@ -0,0 +1,24 @@ +config BR2_PACKAGE_STRACE + bool "strace" + # needs at least kernel headers 4.0 on nios2 + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0 || !BR2_nios2 + # needs at least kernel headers 5.0 on xtensa + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_0 || !BR2_xtensa + depends on !BR2_nds32 && !BR2_RISCV_32 + help + A useful diagnostic, instructional, and debugging tool. + Allows you to track what system calls a program makes + while it is running. + + If you want 'strace -k' to work, make sure to enable the + 'libunwind' package. + + https://strace.io + +comment "strace needs a toolchain w/ headers >= 4.0 on nios2" + depends on BR2_nios2 + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0 + +comment "strace needs a toolchain w/ headers >= 5.0 on xtensa" + depends on BR2_xtensa + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_0 diff --git a/package/strace/strace.hash b/package/strace/strace.hash new file mode 100644 index 00000000..e4a0f714 --- /dev/null +++ b/package/strace/strace.hash @@ -0,0 +1,6 @@ +# Locally calculated after checking signature with RSA key 0xA8041FA839E16E36 +# https://strace.io/files/5.10/strace-5.10.tar.xz.asc +sha256 fe3982ea4cd9aeb3b4ba35f6279f0b577a37175d3282be24b9a5537b56b8f01c strace-5.10.tar.xz +sha256 2002ee4a1dd70b004a1d3e3476d313464e13c77594fbef568cb2af58f52ed05e strace-5.14.tar.xz +sha256 6370eb67db918210944a8511a6995ebe9567852f26b4f15a01e5c8cf2aef7c46 COPYING +sha256 7c379436436a562834aa7d2f5dcae1f80a25230fa74201046ca1fba4367d39aa LGPL-2.1-or-later diff --git a/package/strace/strace.mk b/package/strace/strace.mk new file mode 100644 index 00000000..798d7077 --- /dev/null +++ b/package/strace/strace.mk @@ -0,0 +1,38 @@ +################################################################################ +# +# strace +# +################################################################################ + +STRACE_VERSION = 5.14 +STRACE_SOURCE = strace-$(STRACE_VERSION).tar.xz +STRACE_SITE = https://strace.io/files/$(STRACE_VERSION) +STRACE_LICENSE = LGPL-2.1+ +STRACE_LICENSE_FILES = COPYING LGPL-2.1-or-later +STRACE_CPE_ID_VENDOR = strace_project +STRACE_CONF_OPTS = --enable-mpers=no + +ifeq ($(BR2_PACKAGE_LIBUNWIND),y) +STRACE_DEPENDENCIES += libunwind +STRACE_CONF_OPTS += --with-libunwind +else +STRACE_CONF_OPTS += --without-libunwind +endif + +# Demangling symbols in stack trace needs libunwind and libiberty. +ifeq ($(BR2_PACKAGE_BINUTILS)$(BR2_PACKAGE_LIBUNWIND),yy) +STRACE_DEPENDENCIES += binutils +STRACE_CONF_OPTS += --with-libiberty=check +else +STRACE_CONF_OPTS += --without-libiberty +endif + +ifeq ($(BR2_PACKAGE_PERL),) +define STRACE_REMOVE_STRACE_GRAPH + rm -f $(TARGET_DIR)/usr/bin/strace-graph +endef + +STRACE_POST_INSTALL_TARGET_HOOKS += STRACE_REMOVE_STRACE_GRAPH +endif + +$(eval $(autotools-package)) diff --git a/package/stress-ng/Config.in b/package/stress-ng/Config.in new file mode 100644 index 00000000..64b473b7 --- /dev/null +++ b/package/stress-ng/Config.in @@ -0,0 +1,20 @@ +config BR2_PACKAGE_STRESS_NG + bool "stress-ng" + depends on BR2_USE_MMU # fork() + # perf.c needs PERF_COUNT_HW_REF_CPU_CYCLES + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_3 + # fenv.h lacks FE_INVALID, FE_OVERFLOW & FE_UNDERFLOW on nios2 and ARC + depends on !BR2_nios2 + depends on !BR2_arc + help + stress-ng will stress test a computer system in various + selectable ways. It was designed to exercise various physical + subsystems of a computer as well as the various operating + system kernel interfaces. + + http://kernel.ubuntu.com/~cking/stress-ng/ + +comment "stress-ng needs a toolchain w/ headers >= 3.3" + depends on !BR2_nios2 && !BR2_arc + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_3 diff --git a/package/stress-ng/stress-ng.hash b/package/stress-ng/stress-ng.hash new file mode 100644 index 00000000..41e28019 --- /dev/null +++ b/package/stress-ng/stress-ng.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 f847be115f60d3ad7d37c806fd1bfb1412aa3c631fca581d6dc233322f50d6a5 stress-ng-0.12.02.tar.xz +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/stress-ng/stress-ng.mk b/package/stress-ng/stress-ng.mk new file mode 100644 index 00000000..53d7b7e5 --- /dev/null +++ b/package/stress-ng/stress-ng.mk @@ -0,0 +1,32 @@ +################################################################################ +# +# stress-ng +# +################################################################################ + +STRESS_NG_VERSION = 0.12.02 +STRESS_NG_SOURCE = stress-ng-$(STRESS_NG_VERSION).tar.xz +STRESS_NG_SITE = https://kernel.ubuntu.com/~cking/tarballs/stress-ng +STRESS_NG_LICENSE = GPL-2.0+ +STRESS_NG_LICENSE_FILES = COPYING + +ifeq ($(BR2_PACKAGE_LIBBSD),y) +STRESS_NG_DEPENDENCIES += libbsd +endif + +ifeq ($(BR2_PACKAGE_KEYUTILS),y) +STRESS_NG_DEPENDENCIES += keyutils +endif + +define STRESS_NG_BUILD_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) +endef + +# Don't use make install otherwise stress-ng will be rebuild without +# required link libraries if any. Furthermore, using INSTALL allow to +# set the file permission correcly on the target. +define STRESS_NG_INSTALL_TARGET_CMDS + $(INSTALL) -m 0755 -D $(@D)/stress-ng $(TARGET_DIR)/usr/bin/stress-ng +endef + +$(eval $(generic-package)) diff --git a/package/stress/Config.in b/package/stress/Config.in new file mode 100644 index 00000000..b22c3f19 --- /dev/null +++ b/package/stress/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_STRESS + bool "stress" + depends on BR2_USE_MMU # fork() + help + A deliberately simple workload generator for POSIX systems. + It imposes a configurable amount of CPU, memory, I/O, and + disk stress on the system. + + http://people.seas.harvard.edu/~apw/stress/ diff --git a/package/stress/stress.hash b/package/stress/stress.hash new file mode 100644 index 00000000..8d14d053 --- /dev/null +++ b/package/stress/stress.hash @@ -0,0 +1,4 @@ +# Locally calculated after checking pgp signature +sha256 057e4fc2a7706411e1014bf172e4f94b63a12f18412378fca8684ca92408825b stress-1.0.4.tar.gz +# Locally computed +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/stress/stress.mk b/package/stress/stress.mk new file mode 100644 index 00000000..4d2d4cb8 --- /dev/null +++ b/package/stress/stress.mk @@ -0,0 +1,25 @@ +################################################################################ +# +# stress +# +################################################################################ + +STRESS_VERSION = 1.0.4 +STRESS_SITE = http://people.seas.harvard.edu/~apw/stress +STRESS_LICENSE = GPL-2.0+ +STRESS_LICENSE_FILES = COPYING + +# Stress is linked statically if the --enable-static is specified. +# However, this option is always specified in the global +# SHARED_STATIC_LIBS_OPTS to tell packages to build static libraries, +# if supported. +# +# If the BR2_STATIC_LIBS is not defined, we have to specify +# --disable-static explicitly to get stress linked dynamically. +# +# Also, disable documentation by undefining makeinfo +STRESS_CONF_OPTS = \ + $(if $(BR2_STATIC_LIBS),,--disable-static) \ + MAKEINFO=: + +$(eval $(autotools-package)) diff --git a/package/stressapptest/Config.in b/package/stressapptest/Config.in new file mode 100644 index 00000000..71026bda --- /dev/null +++ b/package/stressapptest/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_STRESSAPPTEST + bool "stressapptest" + help + Stressful Application Test (or stressapptest, its unix name) is a memory interface test. + It tries to maximize randomized traffic to memory from processor and I/O, with the intent of creating a realistic high load situation in order to test the existing hardware devices in a computer. It has been used at Google for some time and now it is available under the apache 2.0 license. + + (Exported from code.google.com/p/stressapptest) + + Discussion group: https://groups.google.com/d/forum/stressapptest-discuss diff --git a/package/stressapptest/stressapptest.hash b/package/stressapptest/stressapptest.hash new file mode 100644 index 00000000..b266bd65 --- /dev/null +++ b/package/stressapptest/stressapptest.hash @@ -0,0 +1,2 @@ +sha256 2ba470587ad4f6ae92057d427c3a2a2756e5f10bd25cd91e62eaef55a40b30a1 stressapptest-1.0.9.tar.gz +sha256 3fb27e30590f2b5572ab81b32ebeab52f6474469663217486f4fa544f9cdcd2f COPYING diff --git a/package/stressapptest/stressapptest.mk b/package/stressapptest/stressapptest.mk new file mode 100644 index 00000000..c2257326 --- /dev/null +++ b/package/stressapptest/stressapptest.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# stressapptest +# +################################################################################ + +STRESSAPPTEST_VERSION = 1.0.9 +STRESSAPPTEST_SOURCE = stressapptest-$(STRESSAPPTEST_VERSION).tar.gz +STRESSAPPTEST_SITE = $(CURDIR)/dl/stressapptest +HELLOWORLD_SITE_METHOD = local +#STRESSAPPTEST_SITE = https://github.com/stressapptest/stressapptest +STRESS_LICENSE = GPL-2.0+ +STRESS_LICENSE_FILES = COPYING +STRESSAPPTEST_INSTALL_STAGING = YES + +$(eval $(autotools-package)) diff --git a/package/strongswan/Config.in b/package/strongswan/Config.in new file mode 100644 index 00000000..47c7107f --- /dev/null +++ b/package/strongswan/Config.in @@ -0,0 +1,137 @@ +comment "strongswan needs a toolchain w/ threads, dynamic library" + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_ATOMIC + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS + +menuconfig BR2_PACKAGE_STRONGSWAN + bool "strongswan" + depends on BR2_USE_MMU # fork() + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_TOOLCHAIN_HAS_ATOMIC + depends on !BR2_STATIC_LIBS + help + strongSwan is an OpenSource IPsec implementation for the + Linux operating system. It is based on the discontinued + FreeS/WAN project and the X.509 patch. + + The focus is on: + - simplicity of configuration + - strong encryption and authentication methods + - powerful IPsec policies supporting large and complex + VPN networks + + strongSwan provide many plugins. Only a few are presented + here. + + http://www.strongswan.org/ + +if BR2_PACKAGE_STRONGSWAN + +choice + prompt "Cryptographic backend" + default BR2_PACKAGE_STRONGSWAN_GMP + +config BR2_PACKAGE_STRONGSWAN_OPENSSL + bool "OpenSSL" + select BR2_PACKAGE_OPENSSL + +config BR2_PACKAGE_STRONGSWAN_GCRYPT + bool "libgcrypt" + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt + select BR2_PACKAGE_LIBGCRYPT + +config BR2_PACKAGE_STRONGSWAN_GMP + bool "GNU MP (libgmp)" + select BR2_PACKAGE_GMP + +config BR2_PACKAGE_STRONGSWAN_WOLFSSL + bool "wolfssl" + select BR2_PACKAGE_WOLFSSL + +endchoice + +config BR2_PACKAGE_STRONGSWAN_AF_ALG + bool "Enable AF_ALG crypto interface to Linux Crypto API" + +config BR2_PACKAGE_STRONGSWAN_CURL + bool "Enable CURL fetcher plugin to fetch files via libcurl" + select BR2_PACKAGE_LIBCURL + +config BR2_PACKAGE_STRONGSWAN_CHARON + bool "Enable the IKEv1/IKEv2 keying daemon charon" + default y + +if BR2_PACKAGE_STRONGSWAN_CHARON + +config BR2_PACKAGE_STRONGSWAN_TNCCS_11 + bool "Enable TNCCS 1.1 protocol module" + select BR2_PACKAGE_LIBXML2 + +config BR2_PACKAGE_STRONGSWAN_TNCCS_20 + bool "Enable TNCCS 2.0 protocol module" + +config BR2_PACKAGE_STRONGSWAN_TNCCS_DYNAMIC + bool "Enable dynamic TNCCS protocol discovery module" + +config BR2_PACKAGE_STRONGSWAN_EAP + bool "Enable EAP protocols" + help + Enable various EAP protocols: + - mschapv2 + - tls + - ttls + - peap + - sim + - sim-file + - aka + - aka-3gpp2 + - simaka-sql + - simaka-pseudonym + - simaka-reauth + - identity + - md5 + - gtc + - tnc + - dynamic + - radius + +if BR2_PACKAGE_STRONGSWAN_EAP + +config BR2_PACKAGE_STRONGSWAN_EAP_SIM_PCSC + bool "Enable EAP-SIM smart card backend" + depends on !BR2_STATIC_LIBS # pcsc-lite + select BR2_PACKAGE_PCSC_LITE + +endif + +config BR2_PACKAGE_STRONGSWAN_UNITY + bool "Enables Cisco Unity extension plugin" + +config BR2_PACKAGE_STRONGSWAN_STROKE + bool "Enable charons stroke configuration backend" + default y + +config BR2_PACKAGE_STRONGSWAN_SQL + bool "Enable SQL database configuration backend" + depends on BR2_PACKAGE_SQLITE || BR2_PACKAGE_MYSQL + +endif + +config BR2_PACKAGE_STRONGSWAN_PKI + bool "Enable pki certificate utility" + default y + +config BR2_PACKAGE_STRONGSWAN_SCEP + bool "Enable SCEP client tool" + +config BR2_PACKAGE_STRONGSWAN_SCRIPTS + bool "Enable additional utilities (found in scripts directory)" + default y + depends on BR2_PACKAGE_STRONGSWAN_CHARON + +config BR2_PACKAGE_STRONGSWAN_VICI + bool "Enable vici/swanctl" + default y + depends on BR2_PACKAGE_STRONGSWAN_CHARON + +endif diff --git a/package/strongswan/strongswan.hash b/package/strongswan/strongswan.hash new file mode 100644 index 00000000..a19b3114 --- /dev/null +++ b/package/strongswan/strongswan.hash @@ -0,0 +1,7 @@ +# From http://download.strongswan.org/strongswan-5.9.1.tar.bz2.md5 +md5 1f4db969d072e120dc12d1c116a0f658 strongswan-5.9.1.tar.bz2 +# Calculated based on the hash above +sha256 a337c9fb63d973b8440827755c784031648bf423b7114a04918b0b00fd42cafb strongswan-5.9.1.tar.bz2 +# Locally calculated +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING +sha256 2292e21797754548dccdef9eef6aee7584e552fbd890fa914e1de8d3577d23f0 LICENSE diff --git a/package/strongswan/strongswan.mk b/package/strongswan/strongswan.mk new file mode 100644 index 00000000..322abfbd --- /dev/null +++ b/package/strongswan/strongswan.mk @@ -0,0 +1,92 @@ +################################################################################ +# +# strongswan +# +################################################################################ + +STRONGSWAN_VERSION = 5.9.1 +STRONGSWAN_SOURCE = strongswan-$(STRONGSWAN_VERSION).tar.bz2 +STRONGSWAN_SITE = http://download.strongswan.org +STRONGSWAN_LICENSE = GPL-2.0+ +STRONGSWAN_LICENSE_FILES = COPYING LICENSE +STRONGSWAN_CPE_ID_VENDOR = strongswan +STRONGSWAN_DEPENDENCIES = host-pkgconf +STRONGSWAN_INSTALL_STAGING = YES +STRONGSWAN_CONF_OPTS += \ + --without-lib-prefix \ + --enable-led \ + --enable-pkcs11=yes \ + --enable-kernel-netlink=yes \ + --enable-socket-default=yes \ + --enable-openssl=$(if $(BR2_PACKAGE_STRONGSWAN_OPENSSL),yes,no) \ + --enable-gcrypt=$(if $(BR2_PACKAGE_STRONGSWAN_GCRYPT),yes,no) \ + --enable-gmp=$(if $(BR2_PACKAGE_STRONGSWAN_GMP),yes,no) \ + --enable-af-alg=$(if $(BR2_PACKAGE_STRONGSWAN_AF_ALG),yes,no) \ + --enable-curl=$(if $(BR2_PACKAGE_STRONGSWAN_CURL),yes,no) \ + --enable-charon=$(if $(BR2_PACKAGE_STRONGSWAN_CHARON),yes,no) \ + --enable-tnccs-11=$(if $(BR2_PACKAGE_STRONGSWAN_TNCCS_11),yes,no) \ + --enable-tnccs-20=$(if $(BR2_PACKAGE_STRONGSWAN_TNCCS_20),yes,no) \ + --enable-tnccs-dynamic=$(if $(BR2_PACKAGE_STRONGSWAN_TNCCS_DYNAMIC),yes,no) \ + --enable-eap-sim-pcsc=$(if $(BR2_PACKAGE_STRONGSWAN_EAP_SIM_PCSC),yes,no) \ + --enable-unity=$(if $(BR2_PACKAGE_STRONGSWAN_UNITY),yes,no) \ + --enable-stroke=$(if $(BR2_PACKAGE_STRONGSWAN_STROKE),yes,no) \ + --enable-sql=$(if $(BR2_PACKAGE_STRONGSWAN_SQL),yes,no) \ + --enable-pki=$(if $(BR2_PACKAGE_STRONGSWAN_PKI),yes,no) \ + --enable-scepclient=$(if $(BR2_PACKAGE_STRONGSWAN_SCEP),yes,no) \ + --enable-scripts=$(if $(BR2_PACKAGE_STRONGSWAN_SCRIPTS),yes,no) \ + --enable-vici=$(if $(BR2_PACKAGE_STRONGSWAN_VICI),yes,no) \ + --enable-swanctl=$(if $(BR2_PACKAGE_STRONGSWAN_VICI),yes,no) \ + --enable-wolfssl=$(if $(BR2_PACKAGE_STRONGSWAN_WOLFSSL),yes,no) \ + --with-ipseclibdir=/usr/lib \ + --with-plugindir=/usr/lib/ipsec/plugins \ + --with-imcvdir=/usr/lib/ipsec/imcvs \ + --with-dev-headers=/usr/include + +ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) +STRONGSWAN_CONF_ENV += LIBS='-latomic' +endif + +ifeq ($(BR2_PACKAGE_STRONGSWAN_EAP),y) +STRONGSWAN_CONF_OPTS += \ + --enable-eap-sim \ + --enable-eap-sim-file \ + --enable-eap-aka \ + --enable-eap-aka-3gpp2 \ + --enable-eap-simaka-sql \ + --enable-eap-simaka-pseudonym \ + --enable-eap-simaka-reauth \ + --enable-eap-identity \ + --enable-eap-md5 \ + --enable-eap-gtc \ + --enable-eap-mschapv2 \ + --enable-eap-tls \ + --enable-eap-ttls \ + --enable-eap-peap \ + --enable-eap-tnc \ + --enable-eap-dynamic \ + --enable-eap-radius +STRONGSWAN_DEPENDENCIES += gmp +endif + +STRONGSWAN_DEPENDENCIES += \ + $(if $(BR2_PACKAGE_STRONGSWAN_OPENSSL),openssl) \ + $(if $(BR2_PACKAGE_STRONGSWAN_GCRYPT),libgcrypt) \ + $(if $(BR2_PACKAGE_STRONGSWAN_GMP),gmp) \ + $(if $(BR2_PACKAGE_STRONGSWAN_CURL),libcurl) \ + $(if $(BR2_PACKAGE_STRONGSWAN_TNCCS_11),libxml2) \ + $(if $(BR2_PACKAGE_STRONGSWAN_EAP_SIM_PCSC),pcsc-lite) \ + $(if $(BR2_PACKAGE_STRONGSWAN_WOLFSSL),wolfssl) + +ifeq ($(BR2_PACKAGE_STRONGSWAN_SQL),y) +STRONGSWAN_DEPENDENCIES += \ + $(if $(BR2_PACKAGE_SQLITE),sqlite) \ + $(if $(BR2_PACKAGE_MYSQL),mysql) +endif + +# disable connmark/forecast until net/if.h vs. linux/if.h conflict resolved +# problem exist since linux 4.5 header changes +STRONGSWAN_CONF_OPTS += \ + --disable-connmark \ + --disable-forecast + +$(eval $(autotools-package)) diff --git a/package/stunnel/Config.in b/package/stunnel/Config.in new file mode 100644 index 00000000..e4a95677 --- /dev/null +++ b/package/stunnel/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_STUNNEL + bool "stunnel" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_OPENSSL + help + Stunnel is a program that wraps any TCP connection with an SSL + connection. + + http://www.stunnel.org/ diff --git a/package/stunnel/S50stunnel b/package/stunnel/S50stunnel new file mode 100644 index 00000000..04637b69 --- /dev/null +++ b/package/stunnel/S50stunnel @@ -0,0 +1,35 @@ +#!/bin/sh + +start() { + printf "Starting stunnel: " + start-stop-daemon -S -q -p /var/run/stunnel.pid --exec /usr/bin/stunnel + [ $? = 0 ] && echo "OK" || echo "FAIL" +} + +stop() { + printf "Stopping stunnel: " + start-stop-daemon -K -q -p /var/run/stunnel.pid + [ $? = 0 ] && echo "OK" || echo "FAIL" +} + +restart() { + stop + start +} + +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart|reload) + restart + ;; + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac + +exit $? diff --git a/package/stunnel/stunnel.hash b/package/stunnel/stunnel.hash new file mode 100644 index 00000000..67d06a4d --- /dev/null +++ b/package/stunnel/stunnel.hash @@ -0,0 +1,5 @@ +# From https://www.stunnel.org/downloads/stunnel-5.57.tar.gz.sha256 +sha256 af5ab973dde11807c38735b87bdd87563a47d2fa1c72a07929fcfce80a600fe1 stunnel-5.57.tar.gz +# Locally calculated +sha256 d3055d327fd4daa5895fcf8fc4ebe993d06f40f2841ac995c6a69988d19bac4b COPYING.md +sha256 62f171d4d8b6726df61f18a6bbc0a70f79c4bc2134d837d35c81fc6289a2d84d COPYRIGHT.md diff --git a/package/stunnel/stunnel.mk b/package/stunnel/stunnel.mk new file mode 100644 index 00000000..51cb4a4d --- /dev/null +++ b/package/stunnel/stunnel.mk @@ -0,0 +1,38 @@ +################################################################################ +# +# stunnel +# +################################################################################ + +STUNNEL_VERSION_MAJOR = 5 +STUNNEL_VERSION = $(STUNNEL_VERSION_MAJOR).57 +STUNNEL_SITE = http://www.usenix.org.uk/mirrors/stunnel/archive/$(STUNNEL_VERSION_MAJOR).x +STUNNEL_DEPENDENCIES = host-pkgconf openssl +STUNNEL_CONF_OPTS = --with-ssl=$(STAGING_DIR)/usr --with-threads=fork \ + --disable-libwrap +STUNNEL_CONF_ENV = \ + ax_cv_check_cflags___fstack_protector=$(if $(BR2_TOOLCHAIN_HAS_SSP),yes,no) \ + LIBS=`$(PKG_CONFIG_HOST_BINARY) --libs openssl` +STUNNEL_LICENSE = GPL-2.0+ +STUNNEL_LICENSE_FILES = COPYING.md COPYRIGHT.md +STUNNEL_CPE_ID_VENDOR = stunnel + +ifeq ($(BR2_INIT_SYSTEMD),y) +STUNNEL_DEPENDENCIES += systemd +else +STUNNEL_CONF_OPTS += --disable-systemd +endif + +define STUNNEL_INSTALL_CONF + $(INSTALL) -m 0644 -D $(@D)/tools/stunnel.conf \ + $(TARGET_DIR)/etc/stunnel/stunnel.conf + rm -f $(TARGET_DIR)/etc/stunnel/stunnel.conf-sample +endef + +STUNNEL_POST_INSTALL_TARGET_HOOKS += STUNNEL_INSTALL_CONF + +define STUNNEL_INSTALL_INIT_SYSV + $(INSTALL) -m 0755 -D package/stunnel/S50stunnel $(TARGET_DIR)/etc/init.d/S50stunnel +endef + +$(eval $(autotools-package)) diff --git a/package/subversion/0001-workaround-ac-run-ifelse.patch b/package/subversion/0001-workaround-ac-run-ifelse.patch new file mode 100644 index 00000000..4f229dc4 --- /dev/null +++ b/package/subversion/0001-workaround-ac-run-ifelse.patch @@ -0,0 +1,23 @@ +build/ac-macros/macosx.m4: workaround AC_RUN_IFELSE + +The SVN_LIB_MACHO_ITERATE macro contains an AC_RUN_IFELSE test that +doesn't work when cross-compiling. However, this macro is related to +testing Mac OS X APIs, so in the context of Buildroot, we don't care, +and the test program is not even going to build. So we simply +workaround this by turning the test into an AC_COMPILE_IFELSE. + +Signed-off-by: Thomas Petazzoni + +Index: b/build/ac-macros/macosx.m4 +=================================================================== +--- a/build/ac-macros/macosx.m4 ++++ b/build/ac-macros/macosx.m4 +@@ -24,7 +24,7 @@ + AC_DEFUN(SVN_LIB_MACHO_ITERATE, + [ + AC_MSG_CHECKING([for Mach-O dynamic module iteration functions]) +- AC_RUN_IFELSE([AC_LANG_PROGRAM([[ ++ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ + #include + #include + ]],[[ diff --git a/package/subversion/Config.in b/package/subversion/Config.in new file mode 100644 index 00000000..43e7dcca --- /dev/null +++ b/package/subversion/Config.in @@ -0,0 +1,20 @@ +config BR2_PACKAGE_SUBVERSION + bool "subversion" + # apr really needs shared library support + depends on !BR2_STATIC_LIBS + depends on BR2_USE_MMU # apr + select BR2_PACKAGE_APR + select BR2_PACKAGE_APR_UTIL + select BR2_PACKAGE_EXPAT + select BR2_PACKAGE_LZ4 + select BR2_PACKAGE_UTF8PROC + select BR2_PACKAGE_ZLIB + select BR2_PACKAGE_SQLITE + help + Subversion is an open source version control system + + http://subversion.apache.org/ + +comment "subversion needs a toolchain w/ dynamic library" + depends on BR2_USE_MMU + depends on BR2_STATIC_LIBS diff --git a/package/subversion/subversion.hash b/package/subversion/subversion.hash new file mode 100644 index 00000000..534d5965 --- /dev/null +++ b/package/subversion/subversion.hash @@ -0,0 +1,5 @@ +# From https://www.apache.org/dist/subversion/subversion-1.14.1.tar.bz2.sha512 +sha512 0a70c7152b77cdbcb810a029263e4b3240b6ef41d1c19714e793594088d3cca758d40dfbc05622a806b06463becb73207df249393924ce591026b749b875fcdd subversion-1.14.1.tar.bz2 + +# Locally calculated +sha256 484aff0cfbb81155a10f903ed756e27e9fc65578c245a295bae295c4bb51eaad LICENSE diff --git a/package/subversion/subversion.mk b/package/subversion/subversion.mk new file mode 100644 index 00000000..d4cc7175 --- /dev/null +++ b/package/subversion/subversion.mk @@ -0,0 +1,39 @@ +################################################################################ +# +# subversion +# +################################################################################ + +SUBVERSION_VERSION = 1.14.1 +SUBVERSION_SOURCE = subversion-$(SUBVERSION_VERSION).tar.bz2 +SUBVERSION_SITE = https://downloads.apache.org/subversion +SUBVERSION_LICENSE = Apache-2.0 +SUBVERSION_LICENSE_FILES = LICENSE +SUBVERSION_CPE_ID_VENDOR = apache +SUBVERSION_DEPENDENCIES = \ + host-pkgconf \ + apr \ + apr-util \ + expat \ + lz4 \ + utf8proc \ + zlib \ + sqlite \ + $(TARGET_NLS_DEPENDENCIES) +SUBVERSION_AUTORECONF = YES +SUBVERSION_CONF_OPTS = \ + --with-expat=$(STAGING_DIR)/usr/include:$(STAGING_DIR)/usr/lib: \ + --with-apr=$(STAGING_DIR)/usr \ + --with-apr-util=$(STAGING_DIR)/usr \ + --with-lz4=$(STAGING_DIR)/usr \ + --with-utf8proc=$(STAGING_DIR)/usr \ + --with-zlib=$(STAGING_DIR)/usr \ + --without-serf \ + --without-apxs \ + --without-berkeley-db \ + --without-sasl \ + --without-gnome-keyring \ + --without-libmagic +SUBVERSION_CONF_ENV = LIBS=$(TARGET_NLS_LIBS) + +$(eval $(autotools-package)) diff --git a/package/sudo/Config.in b/package/sudo/Config.in new file mode 100644 index 00000000..cbef15d6 --- /dev/null +++ b/package/sudo/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_SUDO + bool "sudo" + # uses fork() + depends on BR2_USE_MMU + help + Sudo is a program designed to allow a sysadmin to give + limited root privileges to users and log root activity. The + basic philosophy is to give as few privileges as possible + but still allow people to get their work done. + + http://www.sudo.ws/sudo/ diff --git a/package/sudo/sudo.hash b/package/sudo/sudo.hash new file mode 100644 index 00000000..ee30b322 --- /dev/null +++ b/package/sudo/sudo.hash @@ -0,0 +1,4 @@ +# From: http://www.sudo.ws/download.html +sha256 539e2ef43c8a55026697fb0474ab6a925a11206b5aa58710cb42a0e1c81f0978 sudo-1.9.5p2.tar.gz +# Locally calculated +sha256 505c5955c373514e2533a24a8346f44038e29cba874f5ca83beb171a7409089f doc/LICENSE diff --git a/package/sudo/sudo.mk b/package/sudo/sudo.mk new file mode 100644 index 00000000..57c22925 --- /dev/null +++ b/package/sudo/sudo.mk @@ -0,0 +1,86 @@ +################################################################################ +# +# sudo +# +################################################################################ + +SUDO_VERSION_MAJOR = 1.9.5 +SUDO_VERSION_MINOR = p2 +SUDO_VERSION = $(SUDO_VERSION_MAJOR)$(SUDO_VERSION_MINOR) +SUDO_SITE = https://www.sudo.ws/sudo/dist +SUDO_LICENSE = ISC, BSD-3-Clause +SUDO_LICENSE_FILES = doc/LICENSE +SUDO_CPE_ID_VERSION = $(SUDO_VERSION_MAJOR) +SUDO_CPE_ID_UPDATE = $(SUDO_VERSION_MINOR) +# This is to avoid sudo's make install from chown()ing files which fails +SUDO_INSTALL_TARGET_OPTS = INSTALL_OWNER="" DESTDIR="$(TARGET_DIR)" install +SUDO_CONF_OPTS = \ + --without-lecture \ + --without-sendmail \ + --without-umask \ + --with-logging=syslog \ + --without-interfaces \ + --with-env-editor + +ifeq ($(BR2_PACKAGE_LINUX_PAM),y) +define SUDO_INSTALL_PAM_CONF + $(INSTALL) -D -m 0644 package/sudo/sudo.pam $(TARGET_DIR)/etc/pam.d/sudo +endef + +SUDO_DEPENDENCIES += linux-pam +SUDO_CONF_OPTS += --with-pam +SUDO_POST_INSTALL_TARGET_HOOKS += SUDO_INSTALL_PAM_CONF +else +SUDO_CONF_OPTS += --without-pam +endif + +ifeq ($(BR2_PACKAGE_ZLIB),y) +SUDO_CONF_OPTS += --enable-zlib +SUDO_DEPENDENCIES += zlib +else +SUDO_CONF_OPTS += --disable-zlib +endif + +ifeq ($(BR2_PACKAGE_OPENLDAP),y) +SUDO_DEPENDENCIES += openldap +SUDO_CONF_OPTS += --with-ldap +# If we are building sudo statically and openldap was linked with openssl, then +# when we link sudo with openldap we need to specify the openssl libs, otherwise +# it will fail with "undefined reference" errors. +ifeq ($(BR2_STATIC_LIBS)$(BR2_PACKAGE_OPENSSL),yy) +SUDO_DEPENDENCIES += host-pkgconf +SUDO_CONF_ENV += LIBS="`$(PKG_CONFIG_HOST_BINARY) --libs libssl libcrypto`" +endif +else +SUDO_CONF_OPTS += --without-ldap +endif + +# mksigname/mksiglist needs to run on build host to generate source files +define SUDO_BUILD_MKSIGNAME_MKSIGLIST_HOST + $(MAKE) $(HOST_CONFIGURE_OPTS) \ + CPPFLAGS="$(HOST_CPPFLAGS) -I../../include -I../.." \ + -C $(@D)/lib/util mksigname mksiglist +endef + +SUDO_POST_CONFIGURE_HOOKS += SUDO_BUILD_MKSIGNAME_MKSIGLIST_HOST + +define SUDO_PERMISSIONS + /usr/bin/sudo f 4755 0 0 - - - - - +endef + +define SUDO_REMOVE_DIST_EXAMPLES + $(RM) $(TARGET_DIR)/etc/sudoers.dist + rmdir --ignore-fail-on-non-empty $(TARGET_DIR)/etc/sudoers.d +endef +SUDO_POST_INSTALL_TARGET_HOOKS += SUDO_REMOVE_DIST_EXAMPLES + +define SUDO_USERS + - - sudo -1 - - - - +endef + +define SUDO_ENABLE_SUDO_GROUP_RULE + $(SED) '/^# \%sudo\tALL=(ALL) ALL/s/^# //' $(TARGET_DIR)/etc/sudoers +endef +SUDO_POST_INSTALL_TARGET_HOOKS += SUDO_ENABLE_SUDO_GROUP_RULE + +$(eval $(autotools-package)) diff --git a/package/sudo/sudo.pam b/package/sudo/sudo.pam new file mode 100644 index 00000000..c6e6f20a --- /dev/null +++ b/package/sudo/sudo.pam @@ -0,0 +1,12 @@ +auth sufficient pam_rootok.so +auth required pam_wheel.so use_uid +auth required pam_env.so +auth required pam_unix.so nullok + +account required pam_unix.so + +password required pam_unix.so nullok + +session required pam_limits.so +session required pam_env.so +session required pam_unix.so diff --git a/package/sunwait/Config.in b/package/sunwait/Config.in new file mode 100644 index 00000000..e141c778 --- /dev/null +++ b/package/sunwait/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_SUNWAIT + bool "sunwait" + depends on BR2_INSTALL_LIBSTDCPP + help + Sunwait calculates sunrise or sunset times with civil, + nautical, astronomical and custom twilights. + + https://github.com/risacher/sunwait + +comment "sunwait needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/sunwait/sunwait.hash b/package/sunwait/sunwait.hash new file mode 100644 index 00000000..8396fa27 --- /dev/null +++ b/package/sunwait/sunwait.hash @@ -0,0 +1,3 @@ +# sha256 locally computed +sha256 ef26ed05882d5286a64a37c4044f99b877cc54f58a46f0e37ca60c93398df910 sunwait-7326b53e5406c7ebd552ae6dc0fc659252a18e7f.tar.gz +sha256 3972dc9744f6499f0f9b2dbf76696f2ae7ad8af9b23dde66d6af86c9dfb36986 LICENSE diff --git a/package/sunwait/sunwait.mk b/package/sunwait/sunwait.mk new file mode 100644 index 00000000..4b27e826 --- /dev/null +++ b/package/sunwait/sunwait.mk @@ -0,0 +1,26 @@ +################################################################################ +# +# sunwait +# +################################################################################ + +SUNWAIT_VERSION = 7326b53e5406c7ebd552ae6dc0fc659252a18e7f +SUNWAIT_SITE = $(call github,risacher,sunwait,$(SUNWAIT_VERSION)) +SUNWAIT_LICENSE = GPL-3.0 +SUNWAIT_LICENSE_FILES = LICENSE + +SUNWAIT_MAKE_OPTS = \ + $(TARGET_CONFIGURE_OPTS) \ + C=$(TARGET_CXX) \ + CFLAGS="$(TARGET_CFLAGS) -c" \ + LDFLAGS="$(TARGET_LDFLAGS) -lm" + +define SUNWAIT_BUILD_CMDS + $(MAKE) $(SUNWAIT_MAKE_OPTS) -C $(@D) all +endef + +define SUNWAIT_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/sunwait $(TARGET_DIR)/usr/bin/sunwait +endef + +$(eval $(generic-package)) diff --git a/package/sunxi-boards/Config.in b/package/sunxi-boards/Config.in new file mode 100644 index 00000000..eaf492f2 --- /dev/null +++ b/package/sunxi-boards/Config.in @@ -0,0 +1,30 @@ +config BR2_PACKAGE_SUNXI_BOARDS + bool "sunxi script.bin board file" + depends on BR2_arm + depends on BR2_HOST_GCC_AT_LEAST_4_9 # host-sunxi-tools + select BR2_PACKAGE_HOST_SUNXI_TOOLS + help + Sunxi-boards requires a compiled .fex files for hardware + description, used by the kernel during boot for hardware + initialization. This package is specific for linux-sunxi + kernel and it is useless for mainline kernel versions. + + https://github.com/linux-sunxi/sunxi-boards + +if BR2_PACKAGE_SUNXI_BOARDS +config BR2_PACKAGE_SUNXI_BOARDS_FEX_FILE + string ".fex file to compile" + help + This field defines the name of the .fex file for which the + .bin file should be generated. + + This should be the path of the .fex file relative to the + sys_config/ directory, and including the .fex extension. + + See inside sys_config/ directory in sunxi-boards source code + to see the list of valid .fex files. +endif + +comment "sunxi script.bin board file needs a toolchain w/ host gcc >= 4.9" + depends on BR2_arm + depends on !BR2_HOST_GCC_AT_LEAST_4_9 diff --git a/package/sunxi-boards/sunxi-boards.hash b/package/sunxi-boards/sunxi-boards.hash new file mode 100644 index 00000000..75568240 --- /dev/null +++ b/package/sunxi-boards/sunxi-boards.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 ff1fa509fd5716d26c23a82e59300876a848122f745713a610f8f3c47d448064 sunxi-boards-a6a4e94066f4ec6b26fc7060dc453a6bcf26a504.tar.gz diff --git a/package/sunxi-boards/sunxi-boards.mk b/package/sunxi-boards/sunxi-boards.mk new file mode 100644 index 00000000..83b3842c --- /dev/null +++ b/package/sunxi-boards/sunxi-boards.mk @@ -0,0 +1,26 @@ +################################################################################ +# +# sunxi-boards +# +################################################################################ + +SUNXI_BOARDS_VERSION = a6a4e94066f4ec6b26fc7060dc453a6bcf26a504 +SUNXI_BOARDS_SITE = $(call github,linux-sunxi,sunxi-boards,$(SUNXI_BOARDS_VERSION)) +SUNXI_BOARDS_DEPENDENCIES = host-sunxi-tools +SUNXI_BOARDS_INSTALL_IMAGES = YES +SUNXI_BOARDS_INSTALL_TARGET = NO +SUNXI_BOARDS_FEX_FILE = $(call qstrip,$(BR2_PACKAGE_SUNXI_BOARDS_FEX_FILE)) + +define SUNXI_BOARDS_INSTALL_IMAGES_CMDS + $(FEX2BIN) $(@D)/sys_config/$(SUNXI_BOARDS_FEX_FILE) \ + $(BINARIES_DIR)/script.bin +endef + +ifeq ($(BR2_PACKAGE_SUNXI_BOARDS)$(BR_BUILDING),yy) +# we NEED a board name +ifeq ($(SUNXI_BOARDS_FEX_FILE),) +$(error No sunxi .fex file specified. Check your BR2_PACKAGE_SUNXI_BOARDS_FEX_FILE settings) +endif +endif + +$(eval $(generic-package)) diff --git a/package/sunxi-cedarx/Config.in b/package/sunxi-cedarx/Config.in new file mode 100644 index 00000000..43fcce58 --- /dev/null +++ b/package/sunxi-cedarx/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_SUNXI_CEDARX + bool "sunxi-cedarx" + depends on BR2_arm + depends on BR2_TOOLCHAIN_USES_GLIBC + help + Sunxi CedarX decoder libraries. CedarX is Allwinner's + multimedia co-processing technology for hardware accelerated + video and image decoding, as used inside their A10 SoC's and + others. + + http://github.com/linux-sunxi/cedarx-libs + http://linux-sunxi.org/CedarX + +comment "sunxi-cedarx needs a glibc toolchain" + depends on BR2_arm + depends on !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/sunxi-cedarx/sunxi-cedarx.hash b/package/sunxi-cedarx/sunxi-cedarx.hash new file mode 100644 index 00000000..048b8689 --- /dev/null +++ b/package/sunxi-cedarx/sunxi-cedarx.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 ea7426f83325d247ba0d4734eaf1cb53bab178a81f935e2535ddb3069f70ba84 sunxi-cedarx-b8f52d913f73720e50d8f1b2f8610467b575dc45.tar.gz diff --git a/package/sunxi-cedarx/sunxi-cedarx.mk b/package/sunxi-cedarx/sunxi-cedarx.mk new file mode 100644 index 00000000..5b99f041 --- /dev/null +++ b/package/sunxi-cedarx/sunxi-cedarx.mk @@ -0,0 +1,60 @@ +################################################################################ +# +# sunxi-cedarx +# +################################################################################ + +SUNXI_CEDARX_VERSION = b8f52d913f73720e50d8f1b2f8610467b575dc45 +SUNXI_CEDARX_SITE = $(call github,linux-sunxi,cedarx-libs,$(SUNXI_CEDARX_VERSION)) + +SUNXI_CEDARX_INSTALL_STAGING = YES + +SUNXI_CEDARX_CONFIGURE_OPTS = \ + CROSS_COMPILE=$(TARGET_CROSS) + +ifeq ($(BR2_ARM_EABIHF),y) +SUNXI_CEDARX_BIN_DIR = $(@D)/libcedarv/linux-armhf +else +SUNXI_CEDARX_BIN_DIR = $(@D)/libcedarv/linux-armel2 +endif + +define SUNXI_CEDARX_BUILD_AVHEAP + $(TARGET_CC) $(TARGET_CFLAGS) -fPIC \ + -c $(SUNXI_CEDARX_BIN_DIR)/adapter/avheap/avheap.c \ + -o $(SUNXI_CEDARX_BIN_DIR)/adapter/avheap/avheap.o \ + -I $(SUNXI_CEDARX_BIN_DIR)/adapter/avheap \ + -I $(SUNXI_CEDARX_BIN_DIR)/ + $(TARGET_CC) -shared -L./ -Wl,-soname,libavheap.so \ + -o $(SUNXI_CEDARX_BIN_DIR)/adapter/avheap/libavheap.so \ + $(SUNXI_CEDARX_BIN_DIR)/adapter/avheap/avheap.o +endef + +define SUNXI_CEDARX_INSTALL_AVHEAP + $(INSTALL) -D -m 755 $(SUNXI_CEDARX_BIN_DIR)/adapter/avheap/libavheap.so \ + $(1)/usr/lib/libavheap.so +endef + +define SUNXI_CEDARX_BUILD_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(SUNXI_CEDARX_BIN_DIR) \ + $(SUNXI_CEDARX_CONFIGURE_OPTS) + $(SUNXI_CEDARX_BUILD_AVHEAP) +endef + +define SUNXI_CEDARX_INSTALL_STAGING_CMDS + $(INSTALL) -d -m 755 $(STAGING_DIR)/usr/include/libvecore + $(INSTALL) -m 664 $(SUNXI_CEDARX_BIN_DIR)/libvecore/*.h \ + $(STAGING_DIR)/usr/include/libvecore + $(INSTALL) -m 644 $(SUNXI_CEDARX_BIN_DIR)/*.h \ + $(STAGING_DIR)/usr/include/ + $(INSTALL) -D -m 755 $(SUNXI_CEDARX_BIN_DIR)/libvecore/libvecore.so \ + $(STAGING_DIR)/usr/lib/libvecore.so + $(call SUNXI_CEDARX_INSTALL_AVHEAP, $(STAGING_DIR)) +endef + +define SUNXI_CEDARX_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 755 $(SUNXI_CEDARX_BIN_DIR)/libvecore/libvecore.so \ + $(TARGET_DIR)/usr/lib/libvecore.so + $(call SUNXI_CEDARX_INSTALL_AVHEAP, $(TARGET_DIR)) +endef + +$(eval $(generic-package)) diff --git a/package/sunxi-mali-mainline-driver/Config.in b/package/sunxi-mali-mainline-driver/Config.in new file mode 100644 index 00000000..5db66c5b --- /dev/null +++ b/package/sunxi-mali-mainline-driver/Config.in @@ -0,0 +1,29 @@ +comment "sunxi-mali-mainline-driver needs a Linux kernel to be built" + depends on BR2_PACKAGE_SUNXI_MALI_MAINLINE + depends on !BR2_LINUX_KERNEL + +config BR2_PACKAGE_SUNXI_MALI_MAINLINE_DRIVER + bool "sunxi-mali-mainline-driver" + default y + depends on BR2_PACKAGE_SUNXI_MALI_MAINLINE # runtime + depends on BR2_LINUX_KERNEL + select BR2_LINUX_NEEDS_MODULES # not using kernel-module infra + help + This package builds and installs the Linux kernel driver for + the Mali GPU on Allwinner platforms, compatible with recent + Linux kernels (>= 4.4). Note that it should be installed + together with the corresponding userspace OpenGL libraries, + which are provided as binaries only at: + https://github.com/bootlin/mali-blobs + + sunxi-mali-mainline-driver requires a Linux kernel >= 4.4 + with the following options enabled: + + - CONFIG_CMA + - CONFIG_DMA_CMA + + starting from Linux Kernel >= 4.20 following options must be + enabled: + - CONFIG_DRM_FBDEV_LEAK_PHYS_SMEM + + https://github.com/mripard/sunxi-mali/blob/master/README.md diff --git a/package/sunxi-mali-mainline-driver/sunxi-mali-mainline-driver.hash b/package/sunxi-mali-mainline-driver/sunxi-mali-mainline-driver.hash new file mode 100644 index 00000000..f08e80f1 --- /dev/null +++ b/package/sunxi-mali-mainline-driver/sunxi-mali-mainline-driver.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 0197271dbf503e866dd4873091f61bb3de1f2c3031701aac1ba205d1e2f267ac sunxi-mali-mainline-driver-e4a91c95096bb31450b556fcb13f3c4ba79f60b4.tar.gz +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE diff --git a/package/sunxi-mali-mainline-driver/sunxi-mali-mainline-driver.mk b/package/sunxi-mali-mainline-driver/sunxi-mali-mainline-driver.mk new file mode 100644 index 00000000..feffaa7a --- /dev/null +++ b/package/sunxi-mali-mainline-driver/sunxi-mali-mainline-driver.mk @@ -0,0 +1,41 @@ +################################################################################ +# +# sunxi-mali-mainline-driver +# +################################################################################ + +SUNXI_MALI_MAINLINE_DRIVER_VERSION = e4a91c95096bb31450b556fcb13f3c4ba79f60b4 +SUNXI_MALI_MAINLINE_DRIVER_SITE = $(call github,mripard,sunxi-mali,$(SUNXI_MALI_MAINLINE_DRIVER_VERSION)) +SUNXI_MALI_MAINLINE_DRIVER_DEPENDENCIES = linux +SUNXI_MALI_MAINLINE_DRIVER_LICENSE = GPL-2.0 +SUNXI_MALI_MAINLINE_DRIVER_LICENSE_FILES = LICENSE + +SUNXI_MALI_MAINLINE_DRIVER_MAKE_OPTS = \ + $(LINUX_MAKE_FLAGS) \ + KDIR=$(LINUX_DIR) + +define SUNXI_MALI_MAINLINE_DRIVER_USE_APPLY_PATCHES + ln -sf $(SUNXI_MALI_MAINLINE_REV)/series $(@D)/patches + $(SED) 's|quilt push -a|$(TOPDIR)/support/scripts/apply-patches.sh . ../patches|' \ + $(@D)/build.sh +endef + +SUNXI_MALI_MAINLINE_DRIVER_POST_PATCH_HOOKS += SUNXI_MALI_MAINLINE_DRIVER_USE_APPLY_PATCHES + +define SUNXI_MALI_MAINLINE_DRIVER_BUILD_CMDS + cd $(@D) && $(SUNXI_MALI_MAINLINE_DRIVER_MAKE_OPTS) \ + $(SHELL) ./build.sh -r $(SUNXI_MALI_MAINLINE_REV) -j $(PARALLEL_JOBS) -b +endef + +define SUNXI_MALI_MAINLINE_DRIVER_INSTALL_TARGET_CMDS + cd $(@D) && $(SUNXI_MALI_MAINLINE_DRIVER_MAKE_OPTS) \ + $(SHELL) ./build.sh -r $(SUNXI_MALI_MAINLINE_REV) -j $(PARALLEL_JOBS) -i +endef + +define SUNXI_MALI_MAINLINE_DRIVER_LINUX_CONFIG_FIXUPS + $(call KCONFIG_ENABLE_OPT,CONFIG_CMA) + $(call KCONFIG_ENABLE_OPT,CONFIG_DMA_CMA) + $(call KCONFIG_ENABLE_OPT,CONFIG_DRM_FBDEV_LEAK_PHYS_SMEM) +endef + +$(eval $(generic-package)) diff --git a/package/sunxi-mali-mainline/Config.in b/package/sunxi-mali-mainline/Config.in new file mode 100644 index 00000000..a2fb95bd --- /dev/null +++ b/package/sunxi-mali-mainline/Config.in @@ -0,0 +1,42 @@ +config BR2_PACKAGE_SUNXI_MALI_MAINLINE + bool "sunxi-mali-mainline" + depends on BR2_aarch64 || (BR2_ARM_EABIHF && BR2_arm) + depends on BR2_TOOLCHAIN_USES_GLIBC + select BR2_PACKAGE_HAS_LIBEGL + select BR2_PACKAGE_HAS_LIBGLES + help + Install userspace Allwinner OpenGL libraries. + + https://github.com/bootlin/mali-blobs + +if BR2_PACKAGE_SUNXI_MALI_MAINLINE + +config BR2_PACKAGE_PROVIDES_LIBEGL + default "sunxi-mali-mainline" + +config BR2_PACKAGE_PROVIDES_LIBGLES + default "sunxi-mali-mainline" + +choice + prompt "Version" + default BR2_PACKAGE_SUNXI_MALI_MAINLINE_R6P2 + help + Select the version of the userspace module. + +config BR2_PACKAGE_SUNXI_MALI_MAINLINE_R6P2 + bool "r6p2" +config BR2_PACKAGE_SUNXI_MALI_MAINLINE_R8P1 + bool "r8p1" + +endchoice + +config BR2_PACKAGE_SUNXI_MALI_MAINLINE_REVISION + string + default "r6p2" if BR2_PACKAGE_SUNXI_MALI_MAINLINE_R6P2 + default "r8p1" if BR2_PACKAGE_SUNXI_MALI_MAINLINE_R8P1 + +endif + +comment "sunxi-mali needs an EABIhf glibc toolchain" + depends on BR2_arm + depends on !BR2_TOOLCHAIN_USES_GLIBC || !BR2_ARM_EABIHF diff --git a/package/sunxi-mali-mainline/egl.pc b/package/sunxi-mali-mainline/egl.pc new file mode 100644 index 00000000..3854e5ff --- /dev/null +++ b/package/sunxi-mali-mainline/egl.pc @@ -0,0 +1,12 @@ +prefix=/usr/ +exec_prefix=${prefix} +libdir=${exec_prefix}/lib +includedir=${prefix}/include + +Name: egl +Description: ARM Mali implementation of EGL +Version: 1.4 +Requires: +Libs: -L${libdir} -lEGL -lGLESv2 +Cflags: -I${includedir} + diff --git a/package/sunxi-mali-mainline/glesv2.pc b/package/sunxi-mali-mainline/glesv2.pc new file mode 100644 index 00000000..6910b46a --- /dev/null +++ b/package/sunxi-mali-mainline/glesv2.pc @@ -0,0 +1,12 @@ +prefix=/usr +exec_prefix=${prefix} +libdir=${exec_prefix}/lib +includedir=${prefix}/include + +Name: glesv2 +Description: ARM Mali implementation of OpenGL ESv2 +Version: 2.0 +Requires: +Libs: -L${libdir} -lGLESv2 -lGLESv1_CM +Cflags: -I${includedir} + diff --git a/package/sunxi-mali-mainline/sunxi-mali-mainline.hash b/package/sunxi-mali-mainline/sunxi-mali-mainline.hash new file mode 100644 index 00000000..e1c18fd4 --- /dev/null +++ b/package/sunxi-mali-mainline/sunxi-mali-mainline.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 72969ecf470b9e5ce787c2f8f36242926e1e892af0891924ee59a2cd206de39f sunxi-mali-mainline-d691cb93884ca8ac67860502117bbec283dc19aa.tar.gz +sha256 8a06bcae44a41a886f339b4338422415a786787f113e9ed6456ae117104a0b6a EULA_for_Mali_400MP_AW.pdf diff --git a/package/sunxi-mali-mainline/sunxi-mali-mainline.mk b/package/sunxi-mali-mainline/sunxi-mali-mainline.mk new file mode 100644 index 00000000..701a1fbb --- /dev/null +++ b/package/sunxi-mali-mainline/sunxi-mali-mainline.mk @@ -0,0 +1,49 @@ +################################################################################ +# +# sunxi-mali-mainline +# +################################################################################ + +SUNXI_MALI_MAINLINE_VERSION = d691cb93884ca8ac67860502117bbec283dc19aa +SUNXI_MALI_MAINLINE_SITE = $(call github,bootlin,mali-blobs,$(SUNXI_MALI_MAINLINE_VERSION)) +SUNXI_MALI_MAINLINE_INSTALL_STAGING = YES +SUNXI_MALI_MAINLINE_PROVIDES = libegl libgles +SUNXI_MALI_MAINLINE_LICENSE = Allwinner End User Licence Agreement +SUNXI_MALI_MAINLINE_EULA_ORIGINAL = EULA\ for\ Mali\ 400MP\ _AW.pdf +SUNXI_MALI_MAINLINE_EULA_NO_SPACES = EULA_for_Mali_400MP_AW.pdf +SUNXI_MALI_MAINLINE_LICENSE_FILES = $(SUNXI_MALI_MAINLINE_EULA_NO_SPACES) + +SUNXI_MALI_MAINLINE_REV = $(call qstrip,$(BR2_PACKAGE_SUNXI_MALI_MAINLINE_REVISION)) + +ifeq ($(BR2_arm),y) +SUNXI_MALI_MAINLINE_ARCH=arm +else ifeq ($(BR2_aarch64),y) +SUNXI_MALI_MAINLINE_ARCH=arm64 +endif + +define SUNXI_MALI_MAINLINE_INSTALL_STAGING_CMDS + mkdir -p $(STAGING_DIR)/usr/lib $(STAGING_DIR)/usr/include + + cp -rf $(@D)/$(SUNXI_MALI_MAINLINE_REV)/$(SUNXI_MALI_MAINLINE_ARCH)/fbdev/*.so* \ + $(STAGING_DIR)/usr/lib/ + cp -rf $(@D)/include/fbdev/* $(STAGING_DIR)/usr/include/ + + $(INSTALL) -D -m 0644 package/sunxi-mali-mainline/egl.pc \ + $(STAGING_DIR)/usr/lib/pkgconfig/egl.pc + $(INSTALL) -D -m 0644 package/sunxi-mali-mainline/glesv2.pc \ + $(STAGING_DIR)/usr/lib/pkgconfig/glesv2.pc +endef + +define SUNXI_MALI_MAINLINE_INSTALL_TARGET_CMDS + mkdir -p $(TARGET_DIR)/usr/lib + cp -rf $(@D)/$(SUNXI_MALI_MAINLINE_REV)/$(SUNXI_MALI_MAINLINE_ARCH)/fbdev/*.so* \ + $(TARGET_DIR)/usr/lib/ +endef + +define SUNXI_MALI_MAINLINE_FIXUP_LICENSE_FILE + mv $(@D)/$(SUNXI_MALI_MAINLINE_EULA_ORIGINAL) $(@D)/$(SUNXI_MALI_MAINLINE_EULA_NO_SPACES) +endef + +SUNXI_MALI_MAINLINE_POST_PATCH_HOOKS += SUNXI_MALI_MAINLINE_FIXUP_LICENSE_FILE + +$(eval $(generic-package)) diff --git a/package/sunxi-tools/0001-meminfo-Access-to-io-memory-via-pointers.patch b/package/sunxi-tools/0001-meminfo-Access-to-io-memory-via-pointers.patch new file mode 100644 index 00000000..997c413f --- /dev/null +++ b/package/sunxi-tools/0001-meminfo-Access-to-io-memory-via-pointers.patch @@ -0,0 +1,59 @@ +From 5c0a443ba336f10a8db6a99c769aa84ad37ed4d2 Mon Sep 17 00:00:00 2001 +From: Vadim Kochan +Date: Wed, 20 Feb 2019 02:48:43 +0200 +Subject: [PATCH] meminfo: Access to io memory via pointers + +The main reason for this is to be able compile with musl library, +because there is no support of inx/outx functions for ARM platform. + +Signed-off-by: Vadim Kochan +--- + meminfo.c | 11 ++++++----- + 1 file changed, 6 insertions(+), 5 deletions(-) + +diff --git a/meminfo.c b/meminfo.c +index 0b0ff23..7d9f10f 100644 +--- a/meminfo.c ++++ b/meminfo.c +@@ -22,7 +22,6 @@ + #include + #include + #include +-#include + #include + + #include "common.h" +@@ -74,24 +73,26 @@ static enum sunxi_soc_version soc_version; + unsigned int + sunxi_io_read(void *base, int offset) + { +- return inl((unsigned long) (base + offset)); ++ unsigned long port = (unsigned long) (base + offset); ++ return *((volatile unsigned long *) port); + } + + void + sunxi_io_write(void *base, int offset, unsigned int value) + { +- outl(value, (unsigned long) (base + offset)); ++ unsigned long port = (unsigned long) (base + offset); ++ *((volatile unsigned long *) port) = value; + } + + void + sunxi_io_mask(void *base, int offset, unsigned int value, unsigned int mask) + { +- unsigned int tmp = inl((unsigned long) (base + offset)); ++ unsigned int tmp = sunxi_io_read(base, offset); + + tmp &= ~mask; + tmp |= value & mask; + +- outl(tmp, (unsigned long) (base + offset)); ++ sunxi_io_write(base, offset, tmp); + } + + +-- +2.14.1 + diff --git a/package/sunxi-tools/Config.in b/package/sunxi-tools/Config.in new file mode 100644 index 00000000..5f726672 --- /dev/null +++ b/package/sunxi-tools/Config.in @@ -0,0 +1,71 @@ +config BR2_PACKAGE_SUNXI_TOOLS + bool "sunxi-tools" + depends on BR2_arm + help + Tools for Allwinner A10 (aka sun4i) and A13 (aka sun5i) + based devices. + + http://linux-sunxi.org/Sunxi-tools + +if BR2_PACKAGE_SUNXI_TOOLS + +config BR2_PACKAGE_SUNXI_TOOLS_FEXC + bool "sunxi-fexc (fex2bin & bin2fex)" + help + Convert between .fex board definition files and binary + format. These tools are specific for the linux-sunxi kernel + and do not apply to the mainline Linux kernel version. + +config BR2_PACKAGE_SUNXI_TOOLS_BOOTINFO + bool "sunxi-bootinfo" + help + Displays information about sunxi boot code. + +config BR2_PACKAGE_SUNXI_TOOLS_FEL + bool "sunxi-fel" + depends on BR2_TOOLCHAIN_HAS_THREADS # libusb + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb + select BR2_PACKAGE_LIBUSB + help + The sunxi-fel command can interact with a sunxi device in + fel mode. This allows do download code to memory and execute + it. + +comment "sunxi-fel needs a toolchain w/ threads, gcc >= 4.9" + depends on !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + +config BR2_PACKAGE_SUNXI_TOOLS_NAND_PART + bool "sunxi-nand-part" + default y + help + The sunxi-nand-part command allows to repartition the internal + NAND on sunxi devices. + +config BR2_PACKAGE_SUNXI_TOOLS_PIO + bool "sunxi-pio" + help + GPIO manipulation tool for sunxi boards. + +config BR2_PACKAGE_SUNXI_TOOLS_MEMINFO + bool "sunxi-meminfo" + help + Utility to retrieve DRAM information from registers on + Allwinner SoCs. Specific for the linux-sunxi kernel - does + not apply to the mainline Linux kernel version. + +config BR2_PACKAGE_SUNXI_TOOLS_PHOENIX_INFO + bool "phoenix_info" + help + Display information about self-installing SD card images + (created with Phoenix Card). + + https://linux-sunxi.org/PhoenixCard + +config BR2_PACKAGE_SUNXI_TOOLS_NAND_IMAGE_BUILDER + bool "sunxi-nand-image-builder" + help + Creates a raw NAND image that can be read by the sunxi NAND + controller. + +endif # BR2_PACKAGE_SUNXI_TOOLS diff --git a/package/sunxi-tools/Config.in.host b/package/sunxi-tools/Config.in.host new file mode 100644 index 00000000..51f13cf6 --- /dev/null +++ b/package/sunxi-tools/Config.in.host @@ -0,0 +1,17 @@ +config BR2_PACKAGE_HOST_SUNXI_TOOLS + bool "host sunxi-tools" + depends on BR2_arm + depends on BR2_HOST_GCC_AT_LEAST_4_9 # host-libusb + help + Tools for Allwinner A10 (aka sun4i) and A13 (aka sun5i) + based devices. This includes fex2bin which can be used to + compile .fex board definition files to the binary script.bin + format required by the linux-sunxi kernel. These tools are + specific for linux-sunxi kernel and do not apply to the + mainline Linux kernel version. + + http://linux-sunxi.org/Sunxi-tools + +comment "host sunxi-tools needs a toolchain w/ host gcc >= 4.9" + depends on BR2_arm + depends on !BR2_HOST_GCC_AT_LEAST_4_9 diff --git a/package/sunxi-tools/sunxi-tools.hash b/package/sunxi-tools/sunxi-tools.hash new file mode 100644 index 00000000..84acc2c7 --- /dev/null +++ b/package/sunxi-tools/sunxi-tools.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 81f48014a520cb83cac4e17f5ae627a637c4d6a422b60c693c5a705c92e43822 sunxi-tools-1.4.2.tar.gz +sha256 2b0d4dda4bf8034e1506507a67f80f982131137afe62bf144d248f9faea31da4 LICENSE.md diff --git a/package/sunxi-tools/sunxi-tools.mk b/package/sunxi-tools/sunxi-tools.mk new file mode 100644 index 00000000..c2913ee8 --- /dev/null +++ b/package/sunxi-tools/sunxi-tools.mk @@ -0,0 +1,63 @@ +################################################################################ +# +# sunxi-tools +# +################################################################################ + +SUNXI_TOOLS_VERSION = 1.4.2 +SUNXI_TOOLS_SITE = $(call github,linux-sunxi,sunxi-tools,v$(SUNXI_TOOLS_VERSION)) +SUNXI_TOOLS_LICENSE = GPL-2.0+ +SUNXI_TOOLS_LICENSE_FILES = LICENSE.md +HOST_SUNXI_TOOLS_DEPENDENCIES = host-libusb host-pkgconf +FEX2BIN = $(HOST_DIR)/bin/fex2bin + +SUNXI_TOOLS_TARGETS_$(BR2_PACKAGE_SUNXI_TOOLS_FEXC) += sunxi-fexc +SUNXI_TOOLS_TARGETS_$(BR2_PACKAGE_SUNXI_TOOLS_BOOTINFO) += sunxi-bootinfo +SUNXI_TOOLS_TARGETS_$(BR2_PACKAGE_SUNXI_TOOLS_FEL) += sunxi-fel +SUNXI_TOOLS_TARGETS_$(BR2_PACKAGE_SUNXI_TOOLS_NAND_PART) += sunxi-nand-part +SUNXI_TOOLS_TARGETS_$(BR2_PACKAGE_SUNXI_TOOLS_PIO) += sunxi-pio +SUNXI_TOOLS_TARGETS_$(BR2_PACKAGE_SUNXI_TOOLS_MEMINFO) += sunxi-meminfo +SUNXI_TOOLS_TARGETS_$(BR2_PACKAGE_SUNXI_TOOLS_PHOENIX_INFO) += phoenix_info +SUNXI_TOOLS_TARGETS_$(BR2_PACKAGE_SUNXI_TOOLS_NAND_IMAGE_BUILDER) += \ + sunxi-nand-image-builder + +ifeq ($(BR2_PACKAGE_SUNXI_TOOLS_FEXC),y) +SUNXI_TOOLS_FEXC_LINKS += fex2bin bin2fex +endif + +ifeq ($(BR2_PACKAGE_SUNXI_TOOLS_FEL),y) +SUNXI_TOOLS_DEPENDENCIES += libusb host-pkgconf +endif + +define HOST_SUNXI_TOOLS_BUILD_CMDS + $(HOST_MAKE_ENV) $(MAKE) CROSS_COMPILE="" CC="$(HOSTCC)" \ + PREFIX=$(HOST_DIR) EXTRA_CFLAGS="$(HOST_CFLAGS)" \ + LDFLAGS="$(HOST_LDFLAGS)" -C $(@D) tools misc +endef + +define HOST_SUNXI_TOOLS_INSTALL_CMDS + $(HOST_MAKE_ENV) $(MAKE) CROSS_COMPILE="" CC="$(HOSTCC)" \ + PREFIX=$(HOST_DIR) EXTRA_CFLAGS="$(HOST_CFLAGS)" \ + LDFLAGS="$(HOST_LDFLAGS)" -C $(@D) install-tools install-misc +endef + +define SUNXI_TOOLS_BUILD_CMDS + $(foreach t,$(SUNXI_TOOLS_TARGETS_y), \ + $(TARGET_MAKE_ENV) $(MAKE) CROSS_COMPILE="$(TARGET_CROSS)" \ + CC="$(TARGET_CC)" PREFIX=/usr \ + EXTRA_CFLAGS="$(TARGET_CFLAGS)" \ + LDFLAGS="$(TARGET_LDFLAGS)" -C $(@D) $(t) + ) +endef + +define SUNXI_TOOLS_INSTALL_TARGET_CMDS + $(foreach t,$(SUNXI_TOOLS_TARGETS_y), \ + $(INSTALL) -D -m 0755 $(@D)/$(t) $(TARGET_DIR)/usr/bin/$(t) + ) + $(foreach t,$(SUNXI_TOOLS_FEXC_LINKS), \ + ln -nfs sunxi-fexc $(TARGET_DIR)/usr/bin/$(t) + ) +endef + +$(eval $(generic-package)) +$(eval $(host-generic-package)) diff --git a/package/supertux/0001-CMakeLists.txt-compile-squirrel-with-fPIC.patch b/package/supertux/0001-CMakeLists.txt-compile-squirrel-with-fPIC.patch new file mode 100644 index 00000000..9fac20a3 --- /dev/null +++ b/package/supertux/0001-CMakeLists.txt-compile-squirrel-with-fPIC.patch @@ -0,0 +1,35 @@ +From 23d0bb0ef0fde52d1cffe235edead09287326fb4 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Sun, 4 Oct 2020 01:11:30 +0200 +Subject: [PATCH] CMakeLists.txt: compile squirrel with -fPIC + +Ensure that squirrel is compiled with -fPIC to allow linking the static +libraries with dynamically linked programs. This is not a requirement +for most architectures but is mandatory for ARM. + +Fixes: +x86_64-buildroot-linux-musl/bin/ld: CMakeFiles/sq_static.dir/sq.c.o: relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC +x86_64-buildroot-linux-musl/bin/ld: final link failed: nonrepresentable section on output + +Signed-off-by: Romain Naour +--- + CMakeLists.txt | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 8b1dafa1e..07c603cce 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -412,7 +412,8 @@ ExternalProject_Add(squirrel + -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} + -DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS} + -DCMAKE_INSTALL_PREFIX=${SQUIRREL_PREFIX} +- -DINSTALL_INC_DIR=include) ++ -DINSTALL_INC_DIR=include ++ -DCMAKE_POSITION_INDEPENDENT_CODE=ON) + + if(WIN32) + add_library(squirrel_lib SHARED IMPORTED) +-- +2.25.4 + diff --git a/package/supertux/0001-Fix-build-on-PowerPC.patch b/package/supertux/0001-Fix-build-on-PowerPC.patch new file mode 100644 index 00000000..e40abac6 --- /dev/null +++ b/package/supertux/0001-Fix-build-on-PowerPC.patch @@ -0,0 +1,81 @@ +From cfcd478fe69ca1b3923f388a349a4f67ac2c03aa Mon Sep 17 00:00:00 2001 +From: Shawn Anastasio +Date: Sun, 3 Feb 2019 13:22:57 -0600 +Subject: [PATCH] Fix build on PowerPC + +On PowerPC-based architectures, SDL includes the altivec.h header +for SIMD intrinsics. Unfortunately, altivec.h defines some types which +conflict with C++ types like bool and std::vector. This commit adds +a wrapper for altivec.h which resolves these conflicts and allows +supertux to build and run. + +Tested on a ppc64le workstation. + +Signed-off-by: Fabrice Fontaine +[Retrieved from: +https://github.com/SuperTux/supertux/pull/1056/commits/cfcd478fe69ca1b3923f388a349a4f67ac2c03aa] +--- + CMakeLists.txt | 15 ++++++++++++++- + src/ppc/altivec.h | 6 ++++++ + 2 files changed, 20 insertions(+), 1 deletion(-) + create mode 100644 src/ppc/altivec.h + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 70b9673b50..b9b6ea3ea6 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -376,6 +376,11 @@ endif() + + include(ConfigureChecks) + ++# Include altivec wrapper on ppc ++if(CMAKE_SYSTEM_PROCESSOR MATCHES "^ppc.*") ++ include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/ppc) ++endif() ++ + + ## Also build external/squirrel + +@@ -420,6 +425,13 @@ if(NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/external/tinygettext/CMakeLists.txt) + message(FATAL_ERROR "tinygettext submodule is not checked out or ${CMAKE_CURRENT_SOURCE_DIR}/external/tinygettext/CMakeLists.txt is missing") + endif() + ++# Include altivec wrapper on ppc ++if(CMAKE_SYSTEM_PROCESSOR MATCHES "^ppc.*") ++ set(TINYGETTEXT_CXX_FLAGS "-isystem ${CMAKE_CURRENT_SOURCE_DIR}/src/ppc ${CMAKE_CXX_FLAGS}") ++else() ++ set(TINYGETTEXT_CXX_FLAGS "${CMAKE_CXX_FLAGS}") ++endif() ++ + set(TINYGETTEXT_PREFIX ${CMAKE_BINARY_DIR}/tinygettext/) + ExternalProject_Add(tinygettext + SOURCE_DIR "${CMAKE_SOURCE_DIR}/external/tinygettext/" +@@ -428,7 +440,7 @@ ExternalProject_Add(tinygettext + -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} + -DCMAKE_C_FLAGS=${CMAKE_C_FLAGS} + -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} +- -DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS} ++ -DCMAKE_CXX_FLAGS=${TINYGETTEXT_CXX_FLAGS} + -DBUILD_SHARED_LIBS=OFF + -DHAVE_SDL=ON + -DVCPKG_BUILD=${VCPKG_BUILD} +@@ -443,6 +455,7 @@ set_target_properties(tinygettext_lib PROPERTIES IMPORTED_LOCATION "${TINYGETTEX + + include_directories(SYSTEM ${TINYGETTEXT_PREFIX}/include) + ++ + ## external/SDL_ttf with patches + find_package(Freetype REQUIRED) + find_package(RAQM) +diff --git a/src/ppc/altivec.h b/src/ppc/altivec.h +new file mode 100644 +index 0000000000..7ede8246ed +--- /dev/null ++++ b/src/ppc/altivec.h +@@ -0,0 +1,6 @@ ++#include_next ++ ++// The altivec headers redefine vector and bool which conflict ++// with C++'s bool type and std::vector. Undefine them here. ++#undef vector ++#undef bool diff --git a/package/supertux/0002-Fix-build-with-boost-1-73.patch b/package/supertux/0002-Fix-build-with-boost-1-73.patch new file mode 100644 index 00000000..000e5abc --- /dev/null +++ b/package/supertux/0002-Fix-build-with-boost-1-73.patch @@ -0,0 +1,25 @@ +From 4221d54385b69d6c40eff2c67bc6bad7ed165a44 Mon Sep 17 00:00:00 2001 +From: Lars Wendler +Date: Sat, 9 May 2020 03:04:02 +0200 +Subject: [PATCH] Fix build with boost-1.73 + +[Retrieved from: +https://github.com/SuperTux/supertux/commit/4221d54385b69d6c40eff2c67bc6bad7ed165a44] +Signed-off-by: Fabrice Fontaine +--- + src/editor/object_settings.hpp | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/editor/object_settings.hpp b/src/editor/object_settings.hpp +index bc9049a94e..15b77b1e46 100644 +--- a/src/editor/object_settings.hpp ++++ b/src/editor/object_settings.hpp +@@ -22,6 +22,8 @@ + + #include "editor/object_option.hpp" + ++#include ++ + class Color; + enum class Direction; + enum class WalkMode; diff --git a/package/supertux/Config.in b/package/supertux/Config.in new file mode 100644 index 00000000..5cacdd65 --- /dev/null +++ b/package/supertux/Config.in @@ -0,0 +1,41 @@ +config BR2_PACKAGE_SUPERTUX + bool "supertux" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_PACKAGE_HAS_LIBGL # libglew + depends on BR2_PACKAGE_OPENAL_ARCH_SUPPORTS + depends on BR2_PACKAGE_XORG7 # libglew, SDL2 OpenGL (GLX) + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_6 # C++14 + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # openal + depends on BR2_USE_MMU # SDL2 OpenGL (GLX) + depends on !BR2_STATIC_LIBS # SDL2 + depends on BR2_USE_WCHAR # Boost + select BR2_PACKAGE_BOOST + select BR2_PACKAGE_BOOST_DATE_TIME + select BR2_PACKAGE_BOOST_FILESYSTEM + select BR2_PACKAGE_BOOST_LOCALE + select BR2_PACKAGE_BOOST_SYSTEM + select BR2_PACKAGE_FREETYPE + select BR2_PACKAGE_LIBCURL + select BR2_PACKAGE_LIBGLEW + select BR2_PACKAGE_LIBOGG + select BR2_PACKAGE_LIBPNG + select BR2_PACKAGE_LIBVORBIS + select BR2_PACKAGE_OPENAL + select BR2_PACKAGE_PHYSFS + select BR2_PACKAGE_SDL2 + select BR2_PACKAGE_SDL2_IMAGE + select BR2_PACKAGE_SDL2_OPENGL + help + SuperTux is a free classic 2D jump'n run sidescroller game in + a style similar to the original Super Mario games covered + under the GNU GPL. + + http://supertux.github.io/ + +comment "supertux needs OpenGL and a toolchain w/ C++, gcc >= 6, NPTL, dynamic library, wchar" + depends on BR2_PACKAGE_OPENAL_ARCH_SUPPORTS + depends on BR2_PACKAGE_XORG7 + depends on BR2_USE_MMU + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_PACKAGE_HAS_LIBGL || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_6 || !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \ + BR2_STATIC_LIBS || !BR2_USE_WCHAR diff --git a/package/supertux/supertux.hash b/package/supertux/supertux.hash new file mode 100644 index 00000000..2b3ca799 --- /dev/null +++ b/package/supertux/supertux.hash @@ -0,0 +1,4 @@ +# Locally calculated +sha256 c4c3e5fa6f90e87b8c5ad6b22a179e9a9839bf997e7f219e22bbcd1c97223ac0 SuperTux-v0.6.0-Source.tar.gz +sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 LICENSE.txt +sha256 35c61f69239ff2f55fe0fa5dee5bad6bff311a07c47fa049552e0973a47c07bb data/AUTHORS diff --git a/package/supertux/supertux.mk b/package/supertux/supertux.mk new file mode 100644 index 00000000..e4a46309 --- /dev/null +++ b/package/supertux/supertux.mk @@ -0,0 +1,73 @@ +################################################################################ +# +# supertux +# +################################################################################ + +SUPERTUX_VERSION = 0.6.0 +SUPERTUX_SITE = https://github.com/SuperTux/supertux/releases/download/v$(SUPERTUX_VERSION) +SUPERTUX_SOURCE = SuperTux-v$(SUPERTUX_VERSION)-Source.tar.gz + +# Supertux itself is GPL-3.0+, but it bundles a few libraries with different +# licenses (sexp-cpp, squirrel, tinygettext) which are linked statically. +SUPERTUX_LICENSE = GPL-3.0+ (code), CC-BY-SA-2.0, CC-BY-SA-3.0, GPL-2.0+ (images music sounds) +SUPERTUX_LICENSE_FILES = LICENSE.txt data/AUTHORS + +# Use bundled squirrel, tinygettext sexp-cpp packages which are hardcoded in +# the CMake build system. +SUPERTUX_DEPENDENCIES = host-pkgconf boost freetype libcurl libgl libglew \ + libogg libpng libvorbis openal physfs sdl2 sdl2_image + +# CMAKE_BUILD_TYPE=Release: disable profiling code (-pg) +# ENABLE_BOOST_STATIC_LIBS=OFF: use boost shared libraries since supertux +# depends on !BR2_STATIC_LIBS and boost provide only shared libraries with +# BR2_SHARED_LIBS. +# ENABLE_OPENGL=ON: Can be disabled but will make SuperTux unplayable slow. +# GLBINDING_ENABLED=OFF: use GLEW (default) instead of glbinding. +# Install the game directly in /usr/bin and game data in /usr/share/supertux2. +# Force using physfs.so from staging since the check on PHYSFS_getPrefDir symbol +# in physfs.h (CHECK_SYMBOL_EXISTS) doesn't work. +# ENABLE_OPENGLES2=OFF: Disable opengles2 for now. +SUPERTUX_CONF_OPTS += \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_CXX_FLAGS="$(TARGET_CXXFLAGS) -DGLEW_NO_GLU" \ + -DENABLE_BOOST_STATIC_LIBS=OFF \ + -DBUILD_DOCUMENTATION=OFF \ + -DENABLE_OPENGL=ON \ + -DGLBINDING_ENABLED=OFF \ + -DINSTALL_SUBDIR_BIN="bin" \ + -DINSTALL_SUBDIR_SHARE="share/supertux2" \ + -DUSE_SYSTEM_PHYSFS=ON \ + -DENABLE_OPENGLES2=OFF + +# Avoid incompatible posix_memalign declaration on x86 and x86_64 with +# musl. +# https://gcc.gnu.org/ml/gcc-patches/2015-05/msg01425.html +ifeq ($(BR2_TOOLCHAIN_USES_MUSL):$(BR2_i386)$(BR2_x86_64),y:y) +define SUPERTUX_REMOVE_PEDANTIC + $(SED) 's% -pedantic%%' $(@D)/CMakeLists.txt + $(SED) 's%CHECK_CXX_FLAG(pedantic)%%' $(@D)/external/tinygettext/CMakeLists.txt +endef +SUPERTUX_POST_PATCH_HOOKS += SUPERTUX_REMOVE_PEDANTIC +endif + +# From https://bugs.debian.org/cgi-bin/bugreport.cgi/?bug=770670 +# "The problem lies within SDL_cpuinfo.h. It includes altivec.h, which by +# definition provides an unconditional vector, pixel and bool define in +# standard-c++ mode. In GNU-c++ mode this names are only defined +# context-sensitive by cpp. SDL_cpuinfo.h is included by SDL.h. +# Including altivec.h makes arbitrary code break." +# +# Acording to a bug report in GCC [1]: +# "You need to use -std=g++11 or undefine bool after the include of altivec.h +# as context sensitive keywords is not part of the C++11 standard". +# So use gnu++11 instead of c++11 only for altivec system. +# [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58241#c3 +ifeq ($(BR2_POWERPC_CPU_HAS_ALTIVEC),y) +define SUPERTUX_FIX_ALTIVEC_ISSUE + $(SED) 's%std=c++0x%std=gnu++0x%' $(@D)/external/tinygettext/CMakeLists.txt +endef +SUPERTUX_POST_PATCH_HOOKS += SUPERTUX_FIX_ALTIVEC_ISSUE +endif + +$(eval $(cmake-package)) diff --git a/package/supertuxkart/Config.in b/package/supertuxkart/Config.in new file mode 100644 index 00000000..99f2310d --- /dev/null +++ b/package/supertuxkart/Config.in @@ -0,0 +1,46 @@ +config BR2_PACKAGE_SUPERTUXKART + bool "supertuxkart" + depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + depends on BR2_i386 || BR2_x86_64 + depends on BR2_USE_MMU # fork() + depends on BR2_INSTALL_LIBSTDCPP # openal + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # openal + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # openal + depends on BR2_PACKAGE_OPENAL_ARCH_SUPPORTS # openal + depends on BR2_PACKAGE_HAS_LIBGL + depends on BR2_PACKAGE_XORG7 + depends on !BR2_TOOLCHAIN_USES_MUSL + select BR2_PACKAGE_FREETYPE + select BR2_PACKAGE_ENET + select BR2_PACKAGE_HARFBUZZ + select BR2_PACKAGE_JPEG + select BR2_PACKAGE_LIBCURL + select BR2_PACKAGE_LIBFRIBIDI + select BR2_PACKAGE_LIBGLEW + select BR2_PACKAGE_LIBOGG + select BR2_PACKAGE_LIBPNG + select BR2_PACKAGE_LIBSQUISH + select BR2_PACKAGE_LIBVORBIS + select BR2_PACKAGE_NETTLE if !BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_OPENAL + select BR2_PACKAGE_XLIB_LIBXRANDR + select BR2_PACKAGE_ZLIB + help + Karts. Nitro. Action! SuperTuxKart is a free 3D arcade kart + racer with multiple karts, tracks and modes you can play. + Beat the evil Nolok by any means necessary, and make the + mascot kingdom safe once again! + + http://supertuxkart.sourceforge.net/Main_Page + +comment "supertuxkart needs an OpenGL backend, a uClibc or glibc toolchain w/ NPTL, C++, gcc >= 4.9" + depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + depends on BR2_i386 || BR2_x86_64 + depends on BR2_USE_MMU + depends on BR2_PACKAGE_OPENAL_ARCH_SUPPORTS + depends on BR2_PACKAGE_XORG7 + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL \ + || !BR2_INSTALL_LIBSTDCPP \ + || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 \ + || !BR2_PACKAGE_HAS_LIBGL \ + || BR2_TOOLCHAIN_USES_MUSL diff --git a/package/supertuxkart/supertuxkart.hash b/package/supertuxkart/supertuxkart.hash new file mode 100644 index 00000000..9654ad24 --- /dev/null +++ b/package/supertuxkart/supertuxkart.hash @@ -0,0 +1,8 @@ +# Locally computed +sha256 e9b02b0b11ab68aacaec38306903feffe59a501224805cd3645cebf10e880ae8 supertuxkart-1.1-src.tar.xz +# From https://sourceforge.net/projects/supertuxkart/files/SuperTuxKart/1.1/ +sha1 68be26f4b15d30dede26563cbcc6de999036c5e0 supertuxkart-1.1-src.tar.xz +md5 731569c58428f32a0e46943fad7ba1e3 supertuxkart-1.1-src.tar.xz + +# Locally computed +sha256 d27207a5213f746aac53893e9ecc18456e9595d3ffa662bd1ec9eb10787c214a COPYING diff --git a/package/supertuxkart/supertuxkart.mk b/package/supertuxkart/supertuxkart.mk new file mode 100644 index 00000000..97cd2a40 --- /dev/null +++ b/package/supertuxkart/supertuxkart.mk @@ -0,0 +1,68 @@ +################################################################################ +# +# supertuxkart +# +################################################################################ + +SUPERTUXKART_VERSION = 1.1 +SUPERTUXKART_SOURCE = supertuxkart-$(SUPERTUXKART_VERSION)-src.tar.xz +SUPERTUXKART_SITE = http://downloads.sourceforge.net/project/supertuxkart/SuperTuxKart/$(SUPERTUXKART_VERSION) + +# Supertuxkart itself is GPL-3.0+, but it bundles a few libraries with different +# licenses. Irrlicht, bullet and angelscript have Zlib license, while glew is +# BSD-3-Clause. Since they are linked statically, the result is GPL-3.0+. +SUPERTUXKART_LICENSE = GPL-3.0+ +SUPERTUXKART_LICENSE_FILES = COPYING + +SUPERTUXKART_DEPENDENCIES = \ + host-pkgconf \ + freetype \ + enet \ + harfbuzz \ + jpeg \ + libcurl \ + libfribidi \ + libgl \ + libglew \ + libogg \ + libpng \ + libsquish \ + libvorbis \ + openal \ + xlib_libXrandr \ + zlib + +# Since supertuxkart is not installing libstkirrlicht.so, and since it is +# the only user of the bundled libraries, turn off shared libraries entirely. +# Disable In-game recorder (there is no libopenglrecorder package) +SUPERTUXKART_CONF_OPTS = -DBUILD_SHARED_LIBS=OFF \ + -DBUILD_RECORDER=OFF \ + -DUSE_SYSTEM_GLEW=ON \ + -DUSE_SYSTEM_ENET=ON \ + -DUSE_SYSTEM_SQUISH=ON + +ifeq ($(BR2_PACKAGE_BLUEZ5_UTILS),y) +SUPERTUXKART_DEPENDENCIES += bluez5_utils +SUPERTUXKART_CONF_OPTS += -DUSE_WIIUSE=ON -DUSE_SYSTEM_WIIUSE=ON +else +# Wiimote support relies on bluez5. +SUPERTUXKART_CONF_OPTS += -DUSE_WIIUSE=OFF +endif + +# Prefer openssl (the default) over nettle. +ifeq ($(BR2_PACKAGE_OPENSSL),y) +SUPERTUXKART_DEPENDENCIES += openssl +SUPERTUXKART_CONF_OPTS += -DUSE_CRYPTO_OPENSSL=ON +else +SUPERTUXKART_DEPENDENCIES += nettle +SUPERTUXKART_CONF_OPTS += -DUSE_CRYPTO_OPENSSL=OFF +endif + +ifeq ($(BR2_PACKAGE_SQLITE),y) +SUPERTUXKART_DEPENDENCIES += sqlite +SUPERTUXKART_CONF_OPTS += -DUSE_SQLITE3=ON +else +SUPERTUXKART_CONF_OPTS += -DUSE_SQLITE3=OFF +endif + +$(eval $(cmake-package)) diff --git a/package/supervisor/Config.in b/package/supervisor/Config.in new file mode 100644 index 00000000..623c3a83 --- /dev/null +++ b/package/supervisor/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_SUPERVISOR + bool "supervisor" + depends on BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3 + select BR2_PACKAGE_PYTHON_MELD3 + select BR2_PACKAGE_PYTHON_SETUPTOOLS # runtime dependency + help + A client/server system that allows its users to control a + number of processes on UNIX-like operating systems. + + http://supervisord.org/ + +comment "supervisor needs a python interpreter" + depends on !BR2_PACKAGE_PYTHON + depends on !BR2_PACKAGE_PYTHON3 diff --git a/package/supervisor/S99supervisord b/package/supervisor/S99supervisord new file mode 100644 index 00000000..921dcf63 --- /dev/null +++ b/package/supervisor/S99supervisord @@ -0,0 +1,29 @@ +#!/bin/sh + +mkdir -p /var/log/supervisor + +case "$1" in + start) + printf "Starting supervisord: " + start-stop-daemon -S -q -p /var/run/supervisord.pid --exec /usr/bin/supervisord + echo "done" + ;; + stop) + printf "Stopping supervisord: " + start-stop-daemon -K -q -p /var/run/supervisord.pid + echo "done" + ;; + restart) + "$0" stop + sleep 5 + "$0" start + ;; + reload) + start-stop-daemon -K -q -p /var/run/supervisord.pid -s HUP + ;; + *) + echo "Usage: $0 {start|stop|restart|reload}" + exit 1 +esac + +exit $? diff --git a/package/supervisor/supervisor.hash b/package/supervisor/supervisor.hash new file mode 100644 index 00000000..98a03aa1 --- /dev/null +++ b/package/supervisor/supervisor.hash @@ -0,0 +1,4 @@ +# Locally calculated +sha256 2dc86fe0476e945e61483d614ceb2cf4f93b95282eb243bdf792621994360383 supervisor-4.1.0.tar.gz +sha256 7b8dbd54ab1543b07b2fc5f6f5ab50d89d26c1c4952af93a579d8c52c56b8de4 COPYRIGHT.txt +sha256 4c35fda9f70bb7883fd94e5a4d5addd88ad1a6d5d15e21c9d17c4d96fdc5e369 LICENSES.txt diff --git a/package/supervisor/supervisor.mk b/package/supervisor/supervisor.mk new file mode 100644 index 00000000..92e83230 --- /dev/null +++ b/package/supervisor/supervisor.mk @@ -0,0 +1,32 @@ +################################################################################ +# +# supervisor +# +################################################################################ + +SUPERVISOR_VERSION = 4.1.0 +SUPERVISOR_SITE = https://files.pythonhosted.org/packages/de/87/ee1ad8fa533a4b5f2c7623f4a2b585d3c1947af7bed8e65bc7772274320e +SUPERVISOR_LICENSE = BSD-like, rdflib (http_client.py), PSF (medusa) +SUPERVISOR_LICENSE_FILES = COPYRIGHT.txt LICENSES.txt +SUPERVISOR_CPE_ID_VENDOR = supervisord +SUPERVISOR_SETUP_TYPE = setuptools + +define SUPERVISOR_INSTALL_CONF_FILES + $(INSTALL) -d -m 755 $(TARGET_DIR)/etc/supervisor.d + $(INSTALL) -D -m 644 package/supervisor/supervisord.conf \ + $(TARGET_DIR)/etc/supervisord.conf +endef + +SUPERVISOR_POST_INSTALL_TARGET_HOOKS += SUPERVISOR_INSTALL_CONF_FILES + +define SUPERVISOR_INSTALL_INIT_SYSV + $(INSTALL) -D -m 755 package/supervisor/S99supervisord \ + $(TARGET_DIR)/etc/init.d/S99supervisord +endef + +define SUPERVISOR_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 644 package/supervisor/supervisord.service \ + $(TARGET_DIR)/usr/lib/systemd/system/supervisord.service +endef + +$(eval $(python-package)) diff --git a/package/supervisor/supervisord.conf b/package/supervisor/supervisord.conf new file mode 100644 index 00000000..1372a688 --- /dev/null +++ b/package/supervisor/supervisord.conf @@ -0,0 +1,18 @@ +[unix_http_server] +file = /var/run/supervisor.sock + +[supervisord] +logfile = /var/log/supervisor/supervisord.log +logfile_maxbytes = 200KB +logfile_backups = 1 +pidfile = /var/run/supervisord.pid +childlogdir = /var/log/supervisor + +[rpcinterface:supervisor] +supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface + +[supervisorctl] +serverurl = unix:///var/run/supervisor.sock + +[include] +files = /etc/supervisor.d/*.conf diff --git a/package/supervisor/supervisord.service b/package/supervisor/supervisord.service new file mode 100644 index 00000000..92c38c7d --- /dev/null +++ b/package/supervisor/supervisord.service @@ -0,0 +1,10 @@ +[Unit] +Description=Process Control System +After=syslog.target + +[Service] +ExecStart=/usr/bin/supervisord -n +Restart=always + +[Install] +WantedBy=multi-user.target diff --git a/package/suricata/0001-python-ensure-proper-shabang-on-python-scripts.patch b/package/suricata/0001-python-ensure-proper-shabang-on-python-scripts.patch new file mode 100644 index 00000000..424b30d3 --- /dev/null +++ b/package/suricata/0001-python-ensure-proper-shabang-on-python-scripts.patch @@ -0,0 +1,47 @@ +From 44fe2328b715db25134ee095526d2fa47e6cd834 Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Wed, 1 Jan 2020 15:25:57 +0100 +Subject: [PATCH] python: ensure proper shabang on python scripts + +When instlling python scripts, distutils would use the python used to +run setup.py as shabang for the scripts it installs. + +However, when cross-compiling, this is most often not correct. + +Instead, using '/usr/bin/env python' is guaranteed to find the proper +python in the PATH, so we need to instruct setyup.py to use that as the +executable. + +[yann.morin.1998@free.fr: + - author did not provide their SoB, but it's simple enough to + not require it for once + - provide proper commit log +] +Signed-off-by: Yann E. MORIN +[Fabrice: update for 6.0.0] +Signed-off-by: Fabrice Fontaine +--- + python/Makefile.am | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/python/Makefile.am b/python/Makefile.am +index 59d195f29..a41604f72 100644 +--- a/python/Makefile.am ++++ b/python/Makefile.am +@@ -6,11 +6,11 @@ EXTRA_DIST = setup.py \ + if HAVE_PYTHON_DISTUTILS + all-local: + cd $(srcdir) && \ +- $(HAVE_PYTHON) setup.py build --build-base "$(abs_builddir)" ++ $(HAVE_PYTHON) setup.py build -e "/usr/bin/env python" --build-base "$(abs_builddir)" + + install-exec-local: + cd $(srcdir) && \ +- $(HAVE_PYTHON) setup.py build --build-base "$(abs_builddir)" \ ++ $(HAVE_PYTHON) setup.py build -e "/usr/bin/env python" --build-base "$(abs_builddir)" \ + install --prefix $(DESTDIR)$(prefix) + + uninstall-local: +-- +2.20.1 + diff --git a/package/suricata/0002-configure.ac-allow-the-user-to-override-RUST_TARGET.patch b/package/suricata/0002-configure.ac-allow-the-user-to-override-RUST_TARGET.patch new file mode 100644 index 00000000..ec876a68 --- /dev/null +++ b/package/suricata/0002-configure.ac-allow-the-user-to-override-RUST_TARGET.patch @@ -0,0 +1,35 @@ +From 7ab4d5eb55e1d3900390b76e5f46e80e22d4e80e Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sat, 10 Oct 2020 21:34:21 +0200 +Subject: [PATCH] configure.ac: allow the user to override RUST_TARGET + +When cross-compiling, RUST_TARGET is not always equal to host_triplet +(e.g. buildroot) so allow the user to override this default value +through RUST_TARGET environment variable + +Signed-off-by: Fabrice Fontaine +--- + configure.ac | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 32c230209..7d7c9373f 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -2489,7 +2489,12 @@ fi + have_rust_vendor="no" + + if test "x$cross_compiling" = "xyes"; then +- RUST_SURICATA_LIB_XC_DIR="${host_alias}/" ++ if test "x$RUST_TARGET" != "x"; then ++ RUST_SURICATA_LIB_XC_DIR="$RUST_TARGET/" ++ AC_SUBST([RUST_TARGET],["--target $RUST_TARGET"]) ++ else ++ RUST_SURICATA_LIB_XC_DIR="${host_alias}/" ++ fi + else + if test "x$CARGO_BUILD_TARGET" = "x"; then + RUST_SURICATA_LIB_XC_DIR= +-- +2.28.0 + diff --git a/package/suricata/Config.in b/package/suricata/Config.in new file mode 100644 index 00000000..5f7eb21d --- /dev/null +++ b/package/suricata/Config.in @@ -0,0 +1,26 @@ +config BR2_PACKAGE_SURICATA + bool "suricata" + depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS + depends on BR2_USE_MMU # fork() + depends on BR2_USE_WCHAR + depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_HOST_RUSTC + select BR2_PACKAGE_JANSSON + select BR2_PACKAGE_LIBHTP + select BR2_PACKAGE_LIBPCAP + select BR2_PACKAGE_LIBYAML + select BR2_PACKAGE_PCRE + help + Suricata is a free and open source, mature, fast and robust + network threat detection engine. + + The Suricata engine is capable of real time intrusion + detection (IDS), inline intrusion prevention (IPS), network + security monitoring (NSM) and offline pcap processing. + + https://suricata-ids.org + +comment "suricata needs a toolchain w/ wchar, threads" + depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/suricata/S99suricata b/package/suricata/S99suricata new file mode 100644 index 00000000..7c2b9665 --- /dev/null +++ b/package/suricata/S99suricata @@ -0,0 +1,64 @@ +#!/bin/sh + +DAEMON=suricata +PIDFILE=/var/run/$DAEMON.pid + +SURICATA_ARGS="-c /etc/suricata/suricata.yaml -i eth0" + +SURICATA_RELOAD=0 + +[ -r "/etc/default/$DAEMON" ] && . "/etc/default/$DAEMON" + +start() { + printf 'Starting %s: ' "$DAEMON" + mkdir -p /var/log/suricata + start-stop-daemon -b -m -S -q -p "$PIDFILE" -x "/usr/bin/$DAEMON" \ + -- $SURICATA_ARGS + status=$? + if [ "$status" -eq 0 ]; then + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +stop() { + printf 'Stopping %s: ' "$DAEMON" + start-stop-daemon -K -q -p "$PIDFILE" + status=$? + if [ "$status" -eq 0 ]; then + rm -f "$PIDFILE" + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +restart() { + stop + sleep 1 + start +} + +# SIGUSR2 makes suricata reload rules +reload() { + printf 'Reloading %s: ' "$DAEMON" + start-stop-daemon -K -s "$SURICATA_RELOAD" -q -p "$PIDFILE" + status=$? + if [ "$status" -eq 0 ]; then + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +case "$1" in + start|stop|restart|reload) + "$1";; + *) + echo "Usage: $0 {start|stop|restart|reload}" + exit 1 +esac diff --git a/package/suricata/suricata.hash b/package/suricata/suricata.hash new file mode 100644 index 00000000..74cc7435 --- /dev/null +++ b/package/suricata/suricata.hash @@ -0,0 +1,6 @@ +# Locally computed: +sha256 daf134bb2d7c980035e9ae60f7aaf313323a809340009f26e48110ccde81f602 suricata-6.0.3.tar.gz + +# Hash for license files: +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE diff --git a/package/suricata/suricata.mk b/package/suricata/suricata.mk new file mode 100644 index 00000000..ebeaa68d --- /dev/null +++ b/package/suricata/suricata.mk @@ -0,0 +1,135 @@ +################################################################################ +# +# suricata +# +################################################################################ + +SURICATA_VERSION = 6.0.3 +SURICATA_SITE = https://www.openinfosecfoundation.org/download +SURICATA_LICENSE = GPL-2.0 +SURICATA_LICENSE_FILES = COPYING LICENSE +# 0001-python-ensure-proper-shabang-on-python-scripts.patch +# 0002-configure.ac-allow-the-user-to-override-RUST_TARGET.patch +SURICATA_AUTORECONF = YES + +SURICATA_DEPENDENCIES = \ + host-pkgconf \ + host-rustc \ + jansson \ + $(if $(BR2_PACKAGE_LIBCAP_NG),libcap-ng) \ + $(if $(BR2_PACKAGE_LIBEVENT),libevent) \ + libhtp \ + $(if $(BR2_PACKAGE_LIBNFNETLINK),libnfnetlink) \ + libpcap \ + libyaml \ + $(if $(BR2_PACKAGE_LZ4),lz4) \ + pcre \ + $(if $(BR2_PACKAGE_XZ),xz) + +SURICATA_CONF_ENV = \ + ac_cv_path_HAVE_SPHINXBUILD=no \ + CARGO_HOME=$(HOST_DIR)/share/cargo \ + RUST_TARGET=$(RUSTC_TARGET_NAME) + +SURICATA_CONF_OPTS = \ + --disable-gccprotect \ + --disable-pie \ + --disable-suricata-update \ + --enable-non-bundled-htp + +# install: install binaries +# install-conf: install initial configuration files +# install-full: install binaries, configuration and rules (rules will be +# download through wget/curl) +SURICATA_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) install install-conf + +ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) +SURICATA_CONF_ENV += LIBS=-latomic +endif + +ifeq ($(BR2_PACKAGE_FILE),y) +SURICATA_DEPENDENCIES += file +SURICATA_CONF_OPTS += --enable-libmagic +else +SURICATA_CONF_OPTS += --disable-libmagic +endif + +ifeq ($(BR2_PACKAGE_LIBMAXMINDDB),y) +SURICATA_DEPENDENCIES += libmaxminddb +SURICATA_CONF_OPTS += --enable-geoip +else +SURICATA_CONF_OPTS += --disable-geoip +endif + +ifeq ($(BR2_PACKAGE_HIREDIS),y) +SURICATA_DEPENDENCIES += hiredis +SURICATA_CONF_OPTS += --enable-hiredis +else +SURICATA_CONF_OPTS += --disable-hiredis +endif + +ifeq ($(BR2_PACKAGE_LIBNET),y) +SURICATA_DEPENDENCIES += libnet +SURICATA_CONF_OPTS += --with-libnet-includes=$(STAGING_DIR)/usr/include +endif + +ifeq ($(BR2_PACKAGE_LIBNETFILTER_LOG),y) +SURICATA_DEPENDENCIES += libnetfilter_log +SURICATA_CONF_OPTS += --enable-nflog +else +SURICATA_CONF_OPTS += --disable-nflog +endif + +ifeq ($(BR2_PACKAGE_LIBNETFILTER_QUEUE),y) +SURICATA_DEPENDENCIES += libnetfilter_queue +SURICATA_CONF_OPTS += --enable-nfqueue +else +SURICATA_CONF_OPTS += --disable-nfqueue +endif + +ifeq ($(BR2_PACKAGE_LIBNSPR),y) +SURICATA_DEPENDENCIES += libnspr +SURICATA_CONF_OPTS += --enable-nspr +else +SURICATA_CONF_OPTS += --disable-nspr +endif + +ifeq ($(BR2_PACKAGE_LIBNSS),y) +SURICATA_DEPENDENCIES += libnss +SURICATA_CONF_OPTS += --enable-nss +else +SURICATA_CONF_OPTS += --disable-nss +endif + +ifeq ($(BR2_PACKAGE_LUA),y) +SURICATA_CONF_OPTS += --enable-lua +SURICATA_DEPENDENCIES += lua +else +SURICATA_CONF_OPTS += --disable-lua +endif + +ifeq ($(BR2_PACKAGE_LUAJIT),y) +SURICATA_CONF_OPTS += --enable-luajit +SURICATA_DEPENDENCIES += luajit +else +SURICATA_CONF_OPTS += --disable-luajit +endif + +ifeq ($(BR2_PACKAGE_PYTHON)$(BR2_PACKAGE_PYTHON3),y) +SURICATA_CONF_OPTS += --enable-python +SURICATA_DEPENDENCIES += $(if $(BR2_PACKAGE_PYTHON),python,python3) +else +SURICATA_CONF_OPTS += --disable-python +endif + +define SURICATA_INSTALL_INIT_SYSV + $(INSTALL) -D -m 0755 package/suricata/S99suricata \ + $(TARGET_DIR)/etc/init.d/S99suricata +endef + +define SURICATA_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 644 package/suricata/suricata.service \ + $(TARGET_DIR)/usr/lib/systemd/system/suricata.service +endef + +$(eval $(autotools-package)) diff --git a/package/suricata/suricata.service b/package/suricata/suricata.service new file mode 100644 index 00000000..f5cd46ac --- /dev/null +++ b/package/suricata/suricata.service @@ -0,0 +1,14 @@ +[Unit] +Description=Suricata Intrusion Detection Service +After=network.target + +[Service] +EnvironmentFile=-/etc/default/suricata +ExecStartPre=/bin/rm -f /var/run/suricata.pid +ExecStartPre=/usr/bin/mkdir -p /var/log/suricata +ExecStart=/usr/bin/suricata -c /etc/suricata/suricata.yaml -i eth0 --pidfile /var/run/suricata.pid +ExecReload=/bin/kill -USR2 $MAINPID +Restart=always + +[Install] +WantedBy=multi-user.target diff --git a/package/swconfig/.swconfig.mk b/package/swconfig/.swconfig.mk new file mode 100644 index 00000000..2219a1b0 --- /dev/null +++ b/package/swconfig/.swconfig.mk @@ -0,0 +1,25 @@ +################################################################################ +# +# swconfig +# +################################################################################ + +SWCONFIG_VERSION = 20150806 +SWCONFIG_SITE = $(call github,rains31,swconfig,$(SWCONFIG_VERSION)) +SWCONFIG_LICENSE = GPL-2.0 +SWCONFIG_DEPENDENCIES = libnl + +# redefine original CFLAGS as it points directly to /usr/include +SWCONFIG_MAKE_ENV = CC="$(TARGET_CC)" \ + CFLAGS="-I. -I$(STAGING_DIR)/usr/include/libnl3" + +define SWCONFIG_BUILD_CMDS + $(SWCONFIG_MAKE_ENV) $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) +endef + +define SWCONFIG_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) DESTDIR="$(TARGET_DIR)" $(MAKE) -C $(@D) install +endef + +$(eval $(generic-package)) + diff --git a/package/swconfig/Config.in b/package/swconfig/Config.in new file mode 100644 index 00000000..4e1fea3a --- /dev/null +++ b/package/swconfig/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_SWCONFIG + bool "swconfig" + select BR2_PACKAGE_LIBNL + help + The program swconfig allows you to configure configurable + Ethernet network switches. diff --git a/package/swconfig/swconfig b/package/swconfig/swconfig new file mode 100755 index 0000000000000000000000000000000000000000..c49037cefa8daa982f0b2113f00578765a23939a GIT binary patch literal 88600 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

    pIHA~ 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 swig, so that +# our swig always gets used. + +define HOST_SWIG_INSTALL_SYMLINK + ln -fs swig $(HOST_DIR)/bin/swig$(SWIG_VERSION_MAJOR) + ln -fs swig $(HOST_DIR)/bin/swig3.0 +endef + +HOST_SWIG_POST_INSTALL_HOOKS += HOST_SWIG_INSTALL_SYMLINK + +$(eval $(host-autotools-package)) + +SWIG = $(HOST_DIR)/bin/swig$(SWIG_VERSION_MAJOR) diff --git a/package/swupdate/0001-diskpart-force-kernel-to-reread-partition-table.patch b/package/swupdate/0001-diskpart-force-kernel-to-reread-partition-table.patch new file mode 100644 index 00000000..5964d1b9 --- /dev/null +++ b/package/swupdate/0001-diskpart-force-kernel-to-reread-partition-table.patch @@ -0,0 +1,32 @@ +From 305a7a5a74a612801d9df2b2efc86dd952b8c4e7 Mon Sep 17 00:00:00 2001 +From: Stefano Babic +Date: Tue, 9 Jun 2020 13:58:06 +0000 +Subject: [PATCH] diskpart: force kernel to reread partition table + +After writing a partition table to disk, the kernel should be informed +(like the partconf tool does), else it is not possible to install images +in the new created partitions. + +Signed-off-by: Stefano Babic +Signed-off-by: Joris Offouga +--- + handlers/diskpart_handler.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/handlers/diskpart_handler.c b/handlers/diskpart_handler.c +index 16adc17..372412b 100644 +--- a/handlers/diskpart_handler.c ++++ b/handlers/diskpart_handler.c +@@ -273,7 +273,8 @@ static int diskpart(struct img_type *img, + /* + * Everything done, write into disk + */ +- ret = fdisk_write_disklabel(cxt); ++ ret = fdisk_write_disklabel(cxt) | ++ fdisk_reread_partition_table(cxt); + + handler_exit: + if (fdisk_deassign_device(cxt, 0)) +-- +2.25.1 + diff --git a/package/swupdate/0002-Shellscript-stops-before-completing.patch b/package/swupdate/0002-Shellscript-stops-before-completing.patch new file mode 100644 index 00000000..d9143889 --- /dev/null +++ b/package/swupdate/0002-Shellscript-stops-before-completing.patch @@ -0,0 +1,52 @@ +From bd08e45d7b25f06da2fc6dc824146b471db5f1f4 Mon Sep 17 00:00:00 2001 +From: Stefano Babic +Date: Tue, 16 Jun 2020 10:29:55 +0200 +Subject: [PATCH] Shellscript stops before completing + +Commit 8fb94d7 reworks the way shell script are called, redirecting +stdout and stderr to SWUpdate. A shell script runs then in a child +process. Under some circumstances, SWUpdate closes the forked process +before the child process completes. + +Be sure that the child process has terminated before to go on. + +Signed-off-by: Stefano Babic +Reported-by: Piotr Piwko +Tested-by: Piotr Piwko +Signed-off-by: Joris Offouga +--- + core/pctl.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/core/pctl.c b/core/pctl.c +index 8b1c667..01ad540 100644 +--- a/core/pctl.c ++++ b/core/pctl.c +@@ -263,6 +263,7 @@ int run_system_cmd(const char *cmd) + } + } else { + int fds[2]; ++ pid_t w; + + close(stdoutpipe[PIPE_WRITE]); + close(stderrpipe[PIPE_WRITE]); +@@ -276,7 +277,6 @@ int run_system_cmd(const char *cmd) + * and from stderr (of the child process) as ERROR + */ + do { +- pid_t w; + int n1 = 0; + struct timeval tv; + fd_set readfds; +@@ -373,7 +373,7 @@ int run_system_cmd(const char *cmd) + } + } + } while (ret > 0 && n1 > 0); +- } while (!WIFEXITED(wstatus)); ++ } while (w != process_id); + + close(stdoutpipe[PIPE_READ]); + close(stderrpipe[PIPE_READ]); +-- +2.25.1 + diff --git a/package/swupdate/Config.in b/package/swupdate/Config.in new file mode 100644 index 00000000..e87f6958 --- /dev/null +++ b/package/swupdate/Config.in @@ -0,0 +1,75 @@ +config BR2_PACKAGE_SWUPDATE + bool "swupdate" + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_MMU # fork() + # swupdate requires a parser and uses libconfig as default + select BR2_PACKAGE_LIBCONFIG if !BR2_PACKAGE_JSON_C && \ + !BR2_PACKAGE_HAS_LUAINTERPRETER + help + swupdate provides a reliable way to update the software on + an embedded system. + + swupdate is highly configurable to fit the targets + requirements and to minimize the footprint. The provided + default configuration file BR2_PACKAGE_SWUPDATE_CONFIG will + enable swupdate with an embedded webserver, a parser and a + handler for raw NAND or NOR flash. + + The default configuration file builds a reasonable firmware + update system with minimal external dependencies in mind. + If you like to use your own modified configuration, + you have to select the necessary packages manually: + + * Select BR2_PACKAGE_LUA or BR2_PACKAGE_LUAJIT if you want + want to have Lua support. + * Select BR2_PACKAGE_LIBCURL if you want to use the download + feature. + * Select BR2_PACKAGE_OPENSSL or BR2_PACKAGE_MBEDTLS if you + want to add encryption support. + * Select BR2_PACKAGE_MTD if you want to use swupdate with + UBI partitions. + * Select BR2_PACKAGE_ZLIB if you want to deal with gzip + compressed archives. + * Select BR2_PACKAGE_ZSTD if you want to deal with zstd + compressed archives. + * Select BR2_PACKAGE_ZEROMQ to add support for using a + remote handler. + * Select BR2_PACKAGE_LIBRSYNC to add support for using + rdiff handler. + * Select BR2_PACKAGE_LIBUBOOTENV to add support for setting + the U-Boot environment. + * Select BR2_PACKAGE_LIBGPIOD to add support for + microcontroller firmware update. + * Select BR2_PACKAGE_EFIBOOTMGR to add support for EFI Boot + Guard. + * Select BR2_PACKAGE_LIBCURL, BR2_PACKAGE_JSON_C, + BR2_PACKAGE_LIBWEBSOCKETS, and BR2_PACKAGE_LIBURIPARSER + to add support for the SWU forwarder. + + https://sbabic.github.io/swupdate + +if BR2_PACKAGE_SWUPDATE + +config BR2_PACKAGE_SWUPDATE_CONFIG + string "swupdate configuration file" + default "package/swupdate/swupdate.config" + help + Path to the swupdate configuration file. + + I you wish to use your own modified swupdate configuration + file specify the config file location with this option. + +config BR2_PACKAGE_SWUPDATE_INSTALL_WEBSITE + bool "install default website" + default y + help + Install the provided website to /var/www/swupdate. + + This is necessary if you want to run swupdate with the + embedded webserver and do not provide an own website to be + installed to /var/www/swupdate. +endif + +comment "swupdate needs a toolchain w/ threads" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/swupdate/S80swupdate b/package/swupdate/S80swupdate new file mode 100644 index 00000000..4421084b --- /dev/null +++ b/package/swupdate/S80swupdate @@ -0,0 +1,47 @@ +#!/bin/sh + +DAEMON="swupdate" +DAEMON_WRAPPER="/usr/lib/swupdate/swupdate.sh" +PIDFILE="/var/run/$DAEMON.pid" + +start() { + printf 'Starting %s: ' "$DAEMON" + start-stop-daemon -S -q -b -m -p "$PIDFILE" -x $DAEMON_WRAPPER + status=$? + if [ "$status" -eq 0 ]; then + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +stop() { + printf 'Stopping %s: ' "$DAEMON" + start-stop-daemon -K -q -p "$PIDFILE" + status=$? + if [ "$status" -eq 0 ]; then + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +restart() { + stop + sleep 1 + start +} + +case "$1" in + start|stop|restart) + "$1";; + reload) + # Restart, since there is no true "reload" feature (does not + # reconfigure/restart on SIGHUP, just closes all open files). + restart;; + *) + echo "Usage: $0 {start|stop|restart|reload}" + exit 1 +esac diff --git a/package/swupdate/swupdate.config b/package/swupdate/swupdate.config new file mode 100644 index 00000000..a6b7a749 --- /dev/null +++ b/package/swupdate/swupdate.config @@ -0,0 +1,135 @@ +# +# Automatically generated file; DO NOT EDIT. +# Swupdate Configuration +# +CONFIG_HAVE_DOT_CONFIG=y + +# +# Swupdate Settings +# + +# +# General Configuration +# +# CONFIG_CURL is not set +# CONFIG_CURL_SSL is not set +# CONFIG_SYSTEMD is not set +CONFIG_DEFAULT_CONFIG_FILE="/etc/swupdate.cfg" +CONFIG_SCRIPTS=y +# CONFIG_HW_COMPATIBILITY is not set +CONFIG_SW_VERSIONS_FILE="/etc/sw-versions" + +# +# Socket Paths +# +CONFIG_SOCKET_CTRL_PATH="/tmp/sockinstctrl" +CONFIG_SOCKET_PROGRESS_PATH="/tmp/swupdateprog" +CONFIG_SOCKET_REMOTE_HANDLER_DIRECTORY="/tmp/" + +# +# MTD support needs libmtd +# + +# +# Lua support needs a Lua interpreter +# +# CONFIG_FEATURE_SYSLOG is not set + +# +# Build Options +# +CONFIG_CROSS_COMPILE="" +CONFIG_SYSROOT="" +CONFIG_EXTRA_CFLAGS="" +CONFIG_EXTRA_LDFLAGS="" +CONFIG_EXTRA_LDLIBS="" + +# +# Debugging Options +# +# CONFIG_DEBUG is not set +# CONFIG_WERROR is not set +# CONFIG_NOCLEANUP is not set + +# +# EFI Boot Guard needs libebgenv and libz +# +CONFIG_BOOTLOADER_NONE=y +# CONFIG_BOOTLOADER_GRUB is not set + +# +# U-Boot support needs libubootenv, libz +# +CONFIG_SSL_IMPL_NONE=y + +# +# Image downloading support needs libcurl +# + +# +# Hash checking needs an SSL implementation +# + +# +# Image signature verification needs an SSL implementation +# + +# +# Image encryption needs an SSL implementation +# +# CONFIG_SURICATTA is not set +CONFIG_WEBSERVER=y +CONFIG_MONGOOSE=y +CONFIG_MONGOOSEIPV6=y + +# +# SSL support needs an SSL implementation +# + +# +# Parser Features +# +CONFIG_LIBCONFIG=y +CONFIG_PARSERROOT="" + +# +# JSON config parser support needs json-c +# +# CONFIG_SETSWDESCRIPTION is not set + +# +# Image Handlers +# + +# +# ubivol support needs libubi +# +# CONFIG_DISKPART is not set +CONFIG_RAW=y +# CONFIG_RDIFFHANDLER is not set +# CONFIG_SHELLSCRIPTHANDLER is not set + +# +# archive support needs libarchive +# + +# +# remote handler needs zeromq +# + +# +# swuforward handler needs json-c and curl +# + +# +# SWU forwarder requires libcurl +# + +# +# swuforward handler needs json-c and curl +# +# CONFIG_BOOTLOADERHANDLER is not set + +# +# Microcontroller handler depends on libgpiod +# diff --git a/package/swupdate/swupdate.hash b/package/swupdate/swupdate.hash new file mode 100644 index 00000000..40f978d2 --- /dev/null +++ b/package/swupdate/swupdate.hash @@ -0,0 +1,6 @@ +# Locally calculated +sha256 132df2ff1ad41c7aabd0fbef6a23d28607cbd5cad52aab050c4822977a107486 swupdate-2020.04.tar.gz +sha256 43492b377cf2fb67942d1dd231146bd4e6578646ad13ef289297c9dd75cbc478 Licenses/Exceptions +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 Licenses/gpl-2.0.txt +sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 Licenses/lgpl-2.1.txt +sha256 89807acf2309bd285f033404ee78581602f3cd9b819a16ac2f0e5f60ff4a473e Licenses/mit.txt diff --git a/package/swupdate/swupdate.mk b/package/swupdate/swupdate.mk new file mode 100644 index 00000000..d96a0c2e --- /dev/null +++ b/package/swupdate/swupdate.mk @@ -0,0 +1,208 @@ +################################################################################ +# +# swupdate +# +################################################################################ + +SWUPDATE_VERSION = 2020.04 +SWUPDATE_SITE = $(call github,sbabic,swupdate,$(SWUPDATE_VERSION)) +SWUPDATE_LICENSE = GPL-2.0+ with OpenSSL exception, LGPL-2.1+, MIT +SWUPDATE_LICENSE_FILES = Licenses/Exceptions Licenses/gpl-2.0.txt \ + Licenses/lgpl-2.1.txt Licenses/mit.txt + +# swupdate uses $CROSS-cc instead of $CROSS-gcc, which is not +# available in all external toolchains, and use CC for linking. Ensure +# TARGET_CC is used for both. +SWUPDATE_MAKE_ENV = CC="$(TARGET_CC)" LD="$(TARGET_CC)" + +# swupdate bundles its own version of mongoose (version 6.16) + +ifeq ($(BR2_PACKAGE_EFIBOOTMGR),y) +SWUPDATE_DEPENDENCIES += efibootmgr +SWUPDATE_MAKE_ENV += HAVE_LIBEBGENV=y +else +SWUPDATE_MAKE_ENV += HAVE_LIBEBGENV=n +endif + +ifeq ($(BR2_PACKAGE_JSON_C),y) +SWUPDATE_DEPENDENCIES += json-c +SWUPDATE_MAKE_ENV += HAVE_JSON_C=y +else +SWUPDATE_MAKE_ENV += HAVE_JSON_C=n +endif + +ifeq ($(BR2_PACKAGE_LIBARCHIVE),y) +SWUPDATE_DEPENDENCIES += libarchive +SWUPDATE_MAKE_ENV += HAVE_LIBARCHIVE=y +else +SWUPDATE_MAKE_ENV += HAVE_LIBARCHIVE=n +endif + +ifeq ($(BR2_PACKAGE_LIBCONFIG),y) +SWUPDATE_DEPENDENCIES += libconfig +SWUPDATE_MAKE_ENV += HAVE_LIBCONFIG=y +else +SWUPDATE_MAKE_ENV += HAVE_LIBCONFIG=n +endif + +ifeq ($(BR2_PACKAGE_LIBCURL),y) +SWUPDATE_DEPENDENCIES += libcurl +SWUPDATE_MAKE_ENV += HAVE_LIBCURL=y +else +SWUPDATE_MAKE_ENV += HAVE_LIBCURL=n +endif + +ifeq ($(BR2_PACKAGE_LIBGPIOD),y) +SWUPDATE_DEPENDENCIES += libgpiod +SWUPDATE_MAKE_ENV += HAVE_LIBGPIOD=y +else +SWUPDATE_MAKE_ENV += HAVE_LIBGPIOD=n +endif + +ifeq ($(BR2_PACKAGE_LIBURIPARSER),y) +SWUPDATE_DEPENDENCIES += liburiparser +SWUPDATE_MAKE_ENV += HAVE_URIPARSER=y +else +SWUPDATE_MAKE_ENV += HAVE_URIPARSER=n +endif + +ifeq ($(BR2_PACKAGE_LIBWEBSOCKETS),y) +SWUPDATE_DEPENDENCIES += libwebsockets +SWUPDATE_MAKE_ENV += HAVE_LIBWEBSOCKETS=y +else +SWUPDATE_MAKE_ENV += HAVE_LIBWEBSOCKETS=n +endif + +ifeq ($(BR2_PACKAGE_HAS_LUAINTERPRETER):$(BR2_STATIC_LIBS),y:) +SWUPDATE_DEPENDENCIES += luainterpreter host-pkgconf +# defines the base name for the pkg-config file ("lua" or "luajit") +define SWUPDATE_SET_LUA_VERSION + $(call KCONFIG_SET_OPT,CONFIG_LUAPKG,$(BR2_PACKAGE_PROVIDES_LUAINTERPRETER)) +endef +SWUPDATE_MAKE_ENV += HAVE_LUA=y +else +SWUPDATE_MAKE_ENV += HAVE_LUA=n +endif + +ifeq ($(BR2_PACKAGE_MTD),y) +SWUPDATE_DEPENDENCIES += mtd +SWUPDATE_MAKE_ENV += HAVE_LIBMTD=y +SWUPDATE_MAKE_ENV += HAVE_LIBUBI=y +else +SWUPDATE_MAKE_ENV += HAVE_LIBMTD=n +SWUPDATE_MAKE_ENV += HAVE_LIBUBI=n +endif + +# OpenSSL or mbedTLS +ifeq ($(BR2_PACKAGE_OPENSSL),y) +SWUPDATE_DEPENDENCIES += openssl +SWUPDATE_MAKE_ENV += HAVE_LIBSSL=y +SWUPDATE_MAKE_ENV += HAVE_LIBCRYPTO=y +SWUPDATE_MAKE_ENV += HAVE_MBEDTLS=n +else +SWUPDATE_MAKE_ENV += HAVE_LIBSSL=n +SWUPDATE_MAKE_ENV += HAVE_LIBCRYPTO=n +ifeq ($(BR2_PACKAGE_MBEDTLS),y) +SWUPDATE_DEPENDENCIES += mbedtls +SWUPDATE_MAKE_ENV += HAVE_MBEDTLS=y +else +SWUPDATE_MAKE_ENV += HAVE_MBEDTLS=n +endif +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD),y) +SWUPDATE_DEPENDENCIES += systemd +endif + +ifeq ($(BR2_PACKAGE_LIBUBOOTENV),y) +SWUPDATE_DEPENDENCIES += libubootenv +SWUPDATE_MAKE_ENV += HAVE_LIBUBOOTENV=y +else +SWUPDATE_MAKE_ENV += HAVE_LIBUBOOTENV=n +endif + +ifeq ($(BR2_PACKAGE_ZEROMQ),y) +SWUPDATE_DEPENDENCIES += zeromq +SWUPDATE_MAKE_ENV += HAVE_LIBZEROMQ=y +else +SWUPDATE_MAKE_ENV += HAVE_LIBZEROMQ=n +endif + +ifeq ($(BR2_PACKAGE_ZLIB),y) +SWUPDATE_DEPENDENCIES += zlib +SWUPDATE_MAKE_ENV += HAVE_ZLIB=y +else +SWUPDATE_MAKE_ENV += HAVE_ZLIB=n +endif + +ifeq ($(BR2_PACKAGE_ZSTD),y) +SWUPDATE_DEPENDENCIES += zstd +SWUPDATE_MAKE_ENV += HAVE_ZSTD=y +else +SWUPDATE_MAKE_ENV += HAVE_ZSTD=n +endif + +ifeq ($(BR2_PACKAGE_LIBRSYNC),y) +SWUPDATE_DEPENDENCIES += librsync +endif + +SWUPDATE_BUILD_CONFIG = $(@D)/.config + +SWUPDATE_KCONFIG_FILE = $(call qstrip,$(BR2_PACKAGE_SWUPDATE_CONFIG)) +SWUPDATE_KCONFIG_EDITORS = menuconfig xconfig gconfig nconfig + +ifeq ($(BR2_STATIC_LIBS),y) +define SWUPDATE_PREFER_STATIC + $(call KCONFIG_ENABLE_OPT,CONFIG_STATIC) +endef +endif + +SWUPDATE_MAKE_OPTS = \ + CROSS_COMPILE="$(TARGET_CROSS)" \ + CONFIG_EXTRA_CFLAGS="$(TARGET_CFLAGS)" \ + CONFIG_EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" + +define SWUPDATE_KCONFIG_FIXUP_CMDS + $(SWUPDATE_PREFER_STATIC) + $(SWUPDATE_SET_LUA_VERSION) +endef + +define SWUPDATE_BUILD_CMDS + $(TARGET_MAKE_ENV) $(SWUPDATE_MAKE_ENV) $(MAKE) $(SWUPDATE_MAKE_OPTS) -C $(@D) +endef + +define SWUPDATE_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/swupdate $(TARGET_DIR)/usr/bin/swupdate + $(if $(BR2_PACKAGE_SWUPDATE_INSTALL_WEBSITE), \ + mkdir -p $(TARGET_DIR)/var/www/swupdate; \ + cp -dpfr $(@D)/examples/www/v2/* $(TARGET_DIR)/var/www/swupdate) +endef + +# Checks to give errors that the user can understand +# Must be before we call to kconfig-package +ifeq ($(BR2_PACKAGE_SWUPDATE)$(BR_BUILDING),yy) +ifeq ($(call qstrip,$(BR2_PACKAGE_SWUPDATE_CONFIG)),) +$(error No Swupdate configuration file specified, check your BR2_PACKAGE_SWUPDATE_CONFIG setting) +endif +endif + +ifeq ($(BR2_PACKAGE_SWUPDATE_INSTALL_WEBSITE),y) +define SWUPDATE_INSTALL_COMMON + mkdir -p $(TARGET_DIR)/etc/swupdate/conf.d \ + $(TARGET_DIR)/usr/lib/swupdate/conf.d + $(INSTALL) -D -m 755 package/swupdate/swupdate.sh \ + $(TARGET_DIR)/usr/lib/swupdate/swupdate.sh +endef +define SWUPDATE_INSTALL_INIT_SYSTEMD + $(SWUPDATE_INSTALL_COMMON) + $(INSTALL) -D -m 644 package/swupdate/swupdate.service \ + $(TARGET_DIR)/usr/lib/systemd/system/swupdate.service +endef +define SWUPDATE_INSTALL_INIT_SYSV + $(SWUPDATE_INSTALL_COMMON) + $(INSTALL) -D -m 755 package/swupdate/S80swupdate \ + $(TARGET_DIR)/etc/init.d/S80swupdate +endef +endif + +$(eval $(kconfig-package)) diff --git a/package/swupdate/swupdate.service b/package/swupdate/swupdate.service new file mode 100644 index 00000000..a3d8d193 --- /dev/null +++ b/package/swupdate/swupdate.service @@ -0,0 +1,11 @@ +[Unit] +Description=SWUpdate daemon +Documentation=https://github.com/sbabic/swupdate +Documentation=https://sbabic.github.io/swupdate + +[Service] +ExecStart=/usr/lib/swupdate/swupdate.sh +KillMode=mixed + +[Install] +WantedBy=multi-user.target diff --git a/package/swupdate/swupdate.sh b/package/swupdate/swupdate.sh new file mode 100644 index 00000000..31ec5363 --- /dev/null +++ b/package/swupdate/swupdate.sh @@ -0,0 +1,33 @@ +#!/bin/sh + +# Based on example script created by Adrian Freihofer +# https://github.com/sbabic/meta-swupdate/blob/master/recipes-support/swupdate/swupdate/swupdate.sh + +# Override these variables in sourced script(s) located +# in /usr/lib/swupdate/conf.d or /etc/swupdate/conf.d +# NOTE: There are substrings used in some swupdate commands which will +# need to be wrapped in a script to prevent tokenizing +# ( -p/-P post/pre cmds are good examples) +SWUPDATE_ARGS="-v ${SWUPDATE_EXTRA_ARGS}" +SWUPDATE_WEBSERVER_ARGS="" +SWUPDATE_SURICATTA_ARGS="" + +# source all files from /etc/swupdate/conf.d and /usr/lib/swupdate/conf.d/ +# A file found in /etc replaces the same file in /usr +for f in `(test -d /usr/lib/swupdate/conf.d/ && ls -1 /usr/lib/swupdate/conf.d/; test -d /etc/swupdate/conf.d && ls -1 /etc/swupdate/conf.d) | sort -u`; do + if [ -f /etc/swupdate/conf.d/$f ]; then + . /etc/swupdate/conf.d/$f + else + . /usr/lib/swupdate/conf.d/$f + fi +done + +if [ "$SWUPDATE_WEBSERVER_ARGS" != "" -a "$SWUPDATE_SURICATTA_ARGS" != "" ]; then + exec /usr/bin/swupdate $SWUPDATE_ARGS -w "$SWUPDATE_WEBSERVER_ARGS" -u "$SWUPDATE_SURICATTA_ARGS" +elif [ "$SWUPDATE_WEBSERVER_ARGS" != "" ]; then + exec /usr/bin/swupdate $SWUPDATE_ARGS -w "$SWUPDATE_WEBSERVER_ARGS" +elif [ "$SWUPDATE_SURICATTA_ARGS" != "" ]; then + exec /usr/bin/swupdate $SWUPDATE_ARGS -u "$SWUPDATE_SURICATTA_ARGS" +else + exec /usr/bin/swupdate $SWUPDATE_ARGS +fi diff --git a/package/sylpheed/Config.in b/package/sylpheed/Config.in new file mode 100644 index 00000000..f03ae877 --- /dev/null +++ b/package/sylpheed/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_SYLPHEED + bool "sylpheed" + depends on BR2_PACKAGE_LIBGTK2 + help + lightweight and user-friendly e-mail client. + + http://sylpheed.sraoss.jp/en/ diff --git a/package/sylpheed/sylpheed.hash b/package/sylpheed/sylpheed.hash new file mode 100644 index 00000000..08a5d0a2 --- /dev/null +++ b/package/sylpheed/sylpheed.hash @@ -0,0 +1,4 @@ +# Locally calculated after checking pgp signature +sha256 0d6bc5eb46f5d0a463757c62bc80b00d219b294b3c3662840e4540f6db2e3e49 sylpheed-3.7.0.tar.xz +sha256 c38aee9e3c8c4d5d594ff548a1be05453023016d6286931f6512db215ec1fd42 COPYING +sha256 a9bdde5616ecdd1e980b44f360600ee8783b1f99b8cc83a2beb163a0a390e861 COPYING.LIB diff --git a/package/sylpheed/sylpheed.mk b/package/sylpheed/sylpheed.mk new file mode 100644 index 00000000..0453fba5 --- /dev/null +++ b/package/sylpheed/sylpheed.mk @@ -0,0 +1,33 @@ +################################################################################ +# +# sylpheed +# +################################################################################ + +SYLPHEED_VERSION_MAJOR = 3.7 +SYLPHEED_VERSION = $(SYLPHEED_VERSION_MAJOR).0 +SYLPHEED_SOURCE = sylpheed-$(SYLPHEED_VERSION).tar.xz +SYLPHEED_SITE = http://sylpheed.sraoss.jp/sylpheed/v$(SYLPHEED_VERSION_MAJOR) +SYLPHEED_LICENSE = GPL-2.0+ (executables), LGPL-2.1+ (library, attachment plugin) +SYLPHEED_LICENSE_FILES = COPYING COPYING.LIB +SYLPHEED_CONF_OPTS = --disable-gtkspell --disable-gpgme +SYLPHEED_DEPENDENCIES = host-pkgconf libgtk2 + +# Remove the -I$(includedir) from the Makefiles +# because it refers to the host /usr/include. +define SYLPHEED_PRECONFIGURE + for i in $$(find $(@D) -name "Makefile*"); do \ + sed -i 's:-I$$(includedir)::g' $$i; \ + done +endef + +SYLPHEED_PRE_CONFIGURE_HOOKS += SYLPHEED_PRECONFIGURE + +ifeq ($(BR2_PACKAGE_OPENSSL),y) +SYLPHEED_DEPENDENCIES += openssl +SYLPHEED_CONF_OPTS += --enable-ssl +else +SYLPHEED_CONF_OPTS += --disable-ssl +endif + +$(eval $(autotools-package)) diff --git a/package/synergy/Config.in b/package/synergy/Config.in new file mode 100644 index 00000000..c1216c4b --- /dev/null +++ b/package/synergy/Config.in @@ -0,0 +1,22 @@ +config BR2_PACKAGE_SYNERGY + bool "synergy" + depends on BR2_PACKAGE_XORG7 + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_USE_WCHAR + depends on BR2_USE_MMU # fork() + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C++14 + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXTST + help + Synergy lets you easily share a single mouse and + keyboard between multiple computers with different + operating systems, each with its own display, + without special hardware. + + https://github.com/symless/synergy-core/ + +comment "synergy needs a toolchain w/ C++, wchar, gcc >= 4.9" + depends on BR2_PACKAGE_XORG7 + depends on BR2_USE_MMU + depends on !(BR2_INSTALL_LIBSTDCPP && BR2_USE_WCHAR && \ + BR2_TOOLCHAIN_GCC_AT_LEAST_4_9) diff --git a/package/synergy/synergy.hash b/package/synergy/synergy.hash new file mode 100644 index 00000000..8a053cf9 --- /dev/null +++ b/package/synergy/synergy.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 06d1cb1d43251b0b624212652e9c0ab2657d124ac4f7e7d0c7f3e448c953c2a8 synergy-2.0.12-beta.tar.gz +sha256 4921009cd76e7d38a8e873c362b25dbaf032c320bbb36a40dec775ddbdcbe1d8 LICENSE diff --git a/package/synergy/synergy.mk b/package/synergy/synergy.mk new file mode 100644 index 00000000..bc7ebea0 --- /dev/null +++ b/package/synergy/synergy.mk @@ -0,0 +1,39 @@ +################################################################################ +# +# synergy +# +################################################################################ + +SYNERGY_VERSION = 2.0.12-beta +SYNERGY_SITE = $(call github,symless,synergy-core,v$(SYNERGY_VERSION)) +SYNERGY_LICENSE = GPL-2.0 +SYNERGY_LICENSE_FILES = LICENSE +SYNERGY_CPE_ID_VENDOR = symless +SYNERGY_DEPENDENCIES = xlib_libX11 xlib_libXtst + +# Avoid using buildroot commit hash inside cmake/Version.cmake +# by setting SYNERGY_VERSION_STAGE != snapshot +SYNERGY_CONF_ENV += SYNERGY_VERSION_STAGE="beta" + +ifeq ($(BR2_PACKAGE_XLIB_LIBXEXT),y) +SYNERGY_DEPENDENCIES += xlib_libXext +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXI),y) +SYNERGY_DEPENDENCIES += xlib_libXi +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXINERAMA),y) +SYNERGY_DEPENDENCIES += xlib_libXinerama +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXRANDR),y) +SYNERGY_DEPENDENCIES += xlib_libXrandr +endif + +define SYNERGY_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/bin/synergyc $(TARGET_DIR)/usr/bin/synergyc + $(INSTALL) -D -m 0755 $(@D)/bin/synergys $(TARGET_DIR)/usr/bin/synergys +endef + +$(eval $(cmake-package)) diff --git a/package/sysdig/Config.in b/package/sysdig/Config.in new file mode 100644 index 00000000..06d20c7f --- /dev/null +++ b/package/sysdig/Config.in @@ -0,0 +1,33 @@ +config BR2_PACKAGE_SYSDIG + bool "sysdig" + depends on BR2_LINUX_KERNEL + depends on BR2_INSTALL_LIBSTDCPP # jsoncpp + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 + depends on BR2_TOOLCHAIN_HAS_THREADS # elfutils, jq + depends on !BR2_STATIC_LIBS # elfutils + depends on BR2_USE_WCHAR # elfutils + depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # elfutils + depends on BR2_PACKAGE_LUAINTERPRETER_ABI_VERSION_5_1 + select BR2_PACKAGE_ELFUTILS + select BR2_PACKAGE_JQ + select BR2_PACKAGE_JSONCPP + select BR2_PACKAGE_LIBB64 + select BR2_PACKAGE_LIBCURL + select BR2_PACKAGE_NCURSES + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_ZLIB + help + Sysdig is open source, system-level exploration: + capture system state and activity from a running Linux + instance, then save, filter and analyze. + Think of it as strace + tcpdump + lsof + awesome sauce. + With a little Lua cherry on top. + + https://github.com/draios/sysdig/wiki + +comment "sysdig needs a glibc or uclibc toolchain w/ C++, threads, gcc >= 4.8, dynamic library, a Linux kernel, and luajit or lua 5.1 to be built" + depends on !BR2_LINUX_KERNEL || !BR2_INSTALL_LIBSTDCPP \ + || !BR2_TOOLCHAIN_HAS_THREADS \ + || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || BR2_STATIC_LIBS \ + || !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC) \ + || !BR2_PACKAGE_LUAINTERPRETER_ABI_VERSION_5_1 diff --git a/package/sysdig/sysdig.hash b/package/sysdig/sysdig.hash new file mode 100644 index 00000000..565b1e98 --- /dev/null +++ b/package/sysdig/sysdig.hash @@ -0,0 +1,3 @@ +# sha256 locally computed +sha256 57d5b713b875eba35546a1408bf3f20c2703904a17d956be115ee55272db4cfa sysdig-0.23.1.tar.gz +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/sysdig/sysdig.mk b/package/sysdig/sysdig.mk new file mode 100644 index 00000000..08d93750 --- /dev/null +++ b/package/sysdig/sysdig.mk @@ -0,0 +1,47 @@ +################################################################################ +# +# sysdig +# +################################################################################ + +SYSDIG_VERSION = 0.23.1 +SYSDIG_SITE = $(call github,draios,sysdig,$(SYSDIG_VERSION)) +SYSDIG_LICENSE = GPL-2.0 +SYSDIG_LICENSE_FILES = COPYING +SYSDIG_CPE_ID_VENDOR = sysdig +SYSDIG_CONF_OPTS = -DENABLE_DKMS=OFF -DUSE_BUNDLED_DEPS=OFF +SYSDIG_SUPPORTS_IN_SOURCE_BUILD = NO + +SYSDIG_DEPENDENCIES = \ + elfutils \ + jq \ + jsoncpp \ + libb64 \ + libcurl \ + luainterpreter \ + ncurses \ + openssl \ + zlib + +# sysdig creates the module Makefile from a template, which contains a +# single place-holder, KBUILD_FLAGS, wich is only replaced with two +# things: +# - debug flags, which we don't care about here, +# - 'sysdig-feature' flags, which are never set, so always empty +# So, just replace the place-holder with the only meaningful value: nothing. +define SYSDIG_MODULE_GEN_MAKEFILE + $(INSTALL) -m 0644 $(@D)/driver/Makefile.in $(@D)/driver/Makefile + $(SED) 's/@KBUILD_FLAGS@//;' $(@D)/driver/Makefile + $(SED) 's/@PROBE_NAME@/sysdig-probe/;' $(@D)/driver/Makefile +endef +SYSDIG_POST_PATCH_HOOKS += SYSDIG_MODULE_GEN_MAKEFILE + +# Don't build the driver as part of the 'standard' procedure, we'll +# build it on our own with the kernel-module infra. +SYSDIG_CONF_OPTS += -DBUILD_DRIVER=OFF + +SYSDIG_MODULE_SUBDIRS = driver +SYSDIG_MODULE_MAKE_OPTS = KERNELDIR=$(LINUX_DIR) + +$(eval $(kernel-module)) +$(eval $(cmake-package)) diff --git a/package/sysklogd/Config.in b/package/sysklogd/Config.in new file mode 100644 index 00000000..3315a6dd --- /dev/null +++ b/package/sysklogd/Config.in @@ -0,0 +1,48 @@ +config BR2_PACKAGE_SYSKLOGD + bool "sysklogd" + depends on BR2_USE_MMU # fork() + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + help + The continuation of the original sysklogd package, based on + the original Berkeley syslog daemon. Now with kernel + logging, and log rotation built-in. It can both receive from + and send to remote syslog servers. The v2.x series include + extended support for RFC5424 with an alt. syslogp() API for + clients. + + https://github.com/troglobit/sysklogd/ + +if BR2_PACKAGE_SYSKLOGD + +config BR2_PACKAGE_SYSKLOGD_REMOTE_DELAY + int "Retry delay (sec)" + default "180" + help + Retry delay (seconds) for sending to remote syslog servers. + + When set up to forward logs to a remote syslog server, the + network may not always be available. E.g., default interface + down, or no route to the remote server. This setting controls + the back-off time before retrying. + + Default: 180 seconds + +config BR2_PACKAGE_SYSKLOGD_LOGGER + bool "logger tool" + help + Generate log messages from scripts or from the command line. + + This version of logger is receommended for use with sysklogd. + It makes use of the new syslogp() API for RFC5424 style logs, + e.g. MSGID, strucutred data (SD), etc. + + The BusyBox, or util-linux, logger tools can also be used, but + are limited to RFC3164 style messages. + +endif + +comment "sysklogd needs a toolchain w/ threads" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS diff --git a/package/sysklogd/S01syslogd b/package/sysklogd/S01syslogd new file mode 100644 index 00000000..26036328 --- /dev/null +++ b/package/sysklogd/S01syslogd @@ -0,0 +1,62 @@ +#!/bin/sh + +DAEMON="syslogd" +PIDFILE="/var/run/$DAEMON.pid" + +SYSLOGD_ARGS="-m 0" + +# shellcheck source=/dev/null +[ -r "/etc/default/$DAEMON" ] && . "/etc/default/$DAEMON" + +start() { + printf 'Starting %s: ' "$DAEMON" + # shellcheck disable=SC2086 # we need the word splitting + start-stop-daemon -S -q -p "$PIDFILE" -x "/sbin/$DAEMON" \ + -- $SYSLOGD_ARGS + status=$? + if [ "$status" -eq 0 ]; then + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +stop() { + printf 'Stopping %s: ' "$DAEMON" + start-stop-daemon -K -q -p "$PIDFILE" + status=$? + if [ "$status" -eq 0 ]; then + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +restart() { + stop + sleep 1 + start +} + +# SIGHUP makes syslogd reload its configuration +reload() { + printf 'Reloading %s: ' "$DAEMON" + start-stop-daemon -K -s HUP -q -p "$PIDFILE" + status=$? + if [ "$status" -eq 0 ]; then + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +case "$1" in + start|stop|restart|reload) + "$1";; + *) + echo "Usage: $0 {start|stop|restart|reload}" + exit 1 +esac diff --git a/package/sysklogd/sysklogd.hash b/package/sysklogd/sysklogd.hash new file mode 100644 index 00000000..6d3ba8f9 --- /dev/null +++ b/package/sysklogd/sysklogd.hash @@ -0,0 +1,6 @@ +# Upstream .md5 and .sha256 from GitHub +md5 2c6749c49f52b8c5dad18e9a9315e7dd sysklogd-2.2.3.tar.gz +sha256 e7ea09c15511a63c430e84f65ce3bf55a0386ee419ab52e9341c4a9fabae59ad sysklogd-2.2.3.tar.gz + +# Locally calculated +sha256 7a71d7603a7c4456df441463e54da35acf151c1be0879246de63544f1f34f477 LICENSE diff --git a/package/sysklogd/sysklogd.mk b/package/sysklogd/sysklogd.mk new file mode 100644 index 00000000..7c5de957 --- /dev/null +++ b/package/sysklogd/sysklogd.mk @@ -0,0 +1,44 @@ +################################################################################ +# +# sysklogd +# +################################################################################ + +SYSKLOGD_VERSION = 2.2.3 +SYSKLOGD_SITE = https://github.com/troglobit/sysklogd/releases/download/v$(SYSKLOGD_VERSION) +SYSKLOGD_LICENSE = BSD-3-Clause +SYSKLOGD_LICENSE_FILES = LICENSE +SYSKLOGD_CPE_ID_VENDOR = sysklogd_project + +# Busybox install logger in /usr/bin, and syslogd in /sbin, so install in +# the same locations so that busybox does not install its applets in there. +SYSKLOGD_CONF_OPTS = \ + --bindir=/usr/bin \ + --sbindir=/sbin \ + --with-suspend-time=$(BR2_PACKAGE_SYSKLOGD_REMOTE_DELAY) + +# Disable/Enable utilities +ifeq ($(BR2_PACKAGE_SYSKLOGD_LOGGER),y) +SYSKLOGD_CONF_OPTS += --with-logger +else +SYSKLOGD_CONF_OPTS += --without-logger +endif + +define SYSKLOGD_INSTALL_SAMPLE_CONFIG + $(INSTALL) -D -m 0644 $(@D)/syslog.conf \ + $(TARGET_DIR)/etc/syslog.conf +endef + +SYSKLOGD_POST_INSTALL_TARGET_HOOKS += SYSKLOGD_INSTALL_SAMPLE_CONFIG + +define SYSKLOGD_INSTALL_INIT_SYSV + $(INSTALL) -m 755 -D package/sysklogd/S01syslogd \ + $(TARGET_DIR)/etc/init.d/S01syslogd +endef + +define SYSKLOGD_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 644 $(SYSKLOGD_PKGDIR)/syslogd.service \ + $(TARGET_DIR)/usr/lib/systemd/system/syslogd.service +endef + +$(eval $(autotools-package)) diff --git a/package/sysklogd/syslogd.service b/package/sysklogd/syslogd.service new file mode 100644 index 00000000..c7e724e1 --- /dev/null +++ b/package/sysklogd/syslogd.service @@ -0,0 +1,13 @@ +[Unit] +Description=System Logging Service +Requires=syslog.socket + +[Service] +EnvironmentFile=-/etc/default/syslogd +ExecStart=/sbin/syslogd -m 0 -F $SYSLOGD_ARGS +StandardOutput=null +Restart=on-failure + +[Install] +WantedBy=multi-user.target +Alias=syslog.service diff --git a/package/syslog-ng/0001-fix-build-on-uclibc.patch b/package/syslog-ng/0001-fix-build-on-uclibc.patch new file mode 100644 index 00000000..dbb9b66b --- /dev/null +++ b/package/syslog-ng/0001-fix-build-on-uclibc.patch @@ -0,0 +1,51 @@ +From 98bd6106f8c48bc8f0a27bd712ed4ba6249e9a5f Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sun, 13 Jan 2019 11:03:51 +0100 +Subject: [PATCH] fix build on m68k with uclibc + +uclibc on m68k defines pthread_spinlock_t but does not define +pthread_spin_trylock so check for this function before using it + +Fixes: + - http://autobuild.buildroot.org/results/0a6de11c030a4f39e402917809fc6d33fb463d1b + +Signed-off-by: Fabrice Fontaine +[Upstream status: https://github.com/buytenh/ivykis/pull/17] +--- + configure.ac | 3 +++ + src/spinlock.h | 4 ++++ + 2 files changed, 7 insertions(+) + +diff --git a/lib/ivykis/configure.ac b/lib/ivykis/configure.ac +index e9b10c0..24152a9 100644 +--- a/lib/ivykis/configure.ac ++++ b/lib/ivykis/configure.ac +@@ -110,6 +110,9 @@ AC_CACHE_CHECK(for linux/netfilter_ipv4.h, ac_cv_header_linux_netfilter_ipv4_h, + # Check for pthread_spinlock_t. + AC_CHECK_TYPES([pthread_spinlock_t], [], [], [[#include ]]) + ++# Check for pthread_spin_trylock ++AC_CHECK_FUNCS([pthread_spin_trylock]) ++ + # Check which header file defines 'struct timespec'. + for hdr in sys/time.h sys/timers.h time.h pthread.h + do +diff --git a/lib/ivykis/src/spinlock.h b/lib/ivykis/src/spinlock.h +index ebcdbec..d837df8 100644 +--- a/lib/ivykis/src/spinlock.h ++++ b/lib/ivykis/src/spinlock.h +@@ -76,7 +76,11 @@ static inline void fallback_spin_unlock(fallback_spinlock_t *lock) + + static inline int pthread_spinlocks_available(void) + { ++#ifdef HAVE_PTHREAD_SPIN_TRYLOCK + return !!(pthread_spin_trylock != NULL); ++#else ++ return 0; ++#endif + } + + +-- +2.14.1 + diff --git a/package/syslog-ng/Config.in b/package/syslog-ng/Config.in new file mode 100644 index 00000000..30ad54a4 --- /dev/null +++ b/package/syslog-ng/Config.in @@ -0,0 +1,20 @@ +config BR2_PACKAGE_SYSLOG_NG + bool "syslog-ng" + depends on BR2_USE_WCHAR # glib2 + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_MMU # fork() + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + select BR2_PACKAGE_LIBGLIB2 + select BR2_PACKAGE_PCRE + select BR2_PACKAGE_OPENSSL + help + syslog-ng is an enhanced log daemon, supporting a wide range + of input and output methods: syslog, unstructured text, + queueing, SQL & NoSQL + + https://www.syslog-ng.com/products/open-source-log-management/ + +comment "syslog-ng needs a toolchain w/ wchar, threads" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS diff --git a/package/syslog-ng/S01syslog-ng b/package/syslog-ng/S01syslog-ng new file mode 100644 index 00000000..2ced6f8b --- /dev/null +++ b/package/syslog-ng/S01syslog-ng @@ -0,0 +1,62 @@ +#!/bin/sh + +DAEMON="syslog-ng" +PIDFILE="/var/run/$DAEMON.pid" + +SYSLOG_NG_ARGS="" + +# shellcheck source=/dev/null +[ -r "/etc/default/$DAEMON" ] && . "/etc/default/$DAEMON" + +start() { + printf 'Starting %s: ' "$DAEMON" + # shellcheck disable=SC2086 # we need the word splitting + start-stop-daemon -S -q -p "$PIDFILE" -x "/usr/sbin/$DAEMON" \ + -- $SYSLOG_NG_ARGS + status=$? + if [ "$status" -eq 0 ]; then + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +stop() { + printf 'Stopping %s: ' "$DAEMON" + start-stop-daemon -K -q -p "$PIDFILE" + status=$? + if [ "$status" -eq 0 ]; then + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +restart() { + stop + sleep 1 + start +} + +# SIGHUP makes syslog-ng reload its configuration +reload() { + printf 'Reloading %s: ' "$DAEMON" + start-stop-daemon -K -s HUP -q -p "$PIDFILE" + status=$? + if [ "$status" -eq 0 ]; then + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +case "$1" in + start|stop|restart|reload) + "$1";; + *) + echo "Usage: $0 {start|stop|restart|reload}" + exit 1 +esac diff --git a/package/syslog-ng/syslog-ng.conf b/package/syslog-ng/syslog-ng.conf new file mode 100644 index 00000000..1cb2ecc3 --- /dev/null +++ b/package/syslog-ng/syslog-ng.conf @@ -0,0 +1,16 @@ +@version: 3.30 + +source s_sys { + file("/proc/kmsg" program_override("kernel")); + unix-stream ("/dev/log"); + internal(); +}; + +destination d_all { + file("/var/log/messages"); +}; + +log { + source(s_sys); + destination(d_all); +}; diff --git a/package/syslog-ng/syslog-ng.hash b/package/syslog-ng/syslog-ng.hash new file mode 100644 index 00000000..60ea6b3c --- /dev/null +++ b/package/syslog-ng/syslog-ng.hash @@ -0,0 +1,5 @@ +# Locally computed +sha256 44e54a6186af14d01affa06bf7391cfe8fc2460bd4ba211aab5469d8b1ca5b4b syslog-ng-3.30.1.tar.gz +sha256 e912cf1e1c09b81d61c0154eb6c179588622c31ad07bfb4a90c612d07ff09d9b COPYING +sha256 ce3324c9f22299cfc7c281e5a6ab40fbe9c2ea1a67cee87226cb8cd39db1e1d2 GPL.txt +sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 LGPL.txt diff --git a/package/syslog-ng/syslog-ng.mk b/package/syslog-ng/syslog-ng.mk new file mode 100644 index 00000000..14888d2a --- /dev/null +++ b/package/syslog-ng/syslog-ng.mk @@ -0,0 +1,135 @@ +################################################################################ +# +# syslog-ng +# +################################################################################ + +# When updating the version, please check at runtime if the version in +# syslog-ng.conf header needs to be updated +SYSLOG_NG_VERSION = 3.30.1 +SYSLOG_NG_SITE = https://github.com/balabit/syslog-ng/releases/download/syslog-ng-$(SYSLOG_NG_VERSION) +SYSLOG_NG_LICENSE = LGPL-2.1+ (syslog-ng core), GPL-2.0+ (modules) +SYSLOG_NG_LICENSE_FILES = COPYING GPL.txt LGPL.txt +SYSLOG_NG_CPE_ID_VENDOR = oneidentity +SYSLOG_NG_DEPENDENCIES = host-bison host-flex host-pkgconf \ + libglib2 openssl pcre +# We're patching configure.ac +SYSLOG_NG_AUTORECONF = YES +SYSLOG_NG_CONF_OPTS = --disable-manpages --localstatedir=/var/run \ + --disable-java --disable-java-modules --disable-mongodb + +ifeq ($(BR2_PACKAGE_GEOIP),y) +SYSLOG_NG_DEPENDENCIES += geoip +SYSLOG_NG_CONF_OPTS += --enable-geoip +else +SYSLOG_NG_CONF_OPTS += --disable-geoip +endif + +ifeq ($(BR2_PACKAGE_LIBCAP),y) +SYSLOG_NG_DEPENDENCIES += libcap +SYSLOG_NG_CONF_OPTS += --enable-linux-caps +else +SYSLOG_NG_CONF_OPTS += --disable-linux-caps +endif + +ifeq ($(BR2_PACKAGE_PYTHON),y) +SYSLOG_NG_DEPENDENCIES += python +SYSLOG_NG_CONF_OPTS += \ + --enable-python \ + --with-python=$(PYTHON_VERSION_MAJOR) +else ifeq ($(BR2_PACKAGE_PYTHON3),y) +SYSLOG_NG_DEPENDENCIES += python3 +SYSLOG_NG_CONF_OPTS += \ + --enable-python \ + --with-python=$(PYTHON3_VERSION_MAJOR) +else +SYSLOG_NG_CONF_OPTS += --disable-python +endif + +ifeq ($(BR2_PACKAGE_LIBESMTP),y) +SYSLOG_NG_DEPENDENCIES += libesmtp +SYSLOG_NG_CONF_OPTS += --enable-smtp +SYSLOG_NG_CONF_OPTS += --with-libesmtp="$(STAGING_DIR)/usr" +else +SYSLOG_NG_CONF_OPTS += --disable-smtp +endif + +ifeq ($(BR2_PACKAGE_JSON_C),y) +SYSLOG_NG_DEPENDENCIES += json-c +SYSLOG_NG_CONF_OPTS += --enable-json +else +SYSLOG_NG_CONF_OPTS += --disable-json +endif + +ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBUUID),y) +SYSLOG_NG_DEPENDENCIES += util-linux +endif + +ifeq ($(BR2_PACKAGE_LIBNET),y) +SYSLOG_NG_DEPENDENCIES += libnet +SYSLOG_NG_CONF_OPTS += \ + --with-libnet=$(STAGING_DIR)/usr/bin \ + --enable-spoof-source +else +SYSLOG_NG_CONF_OPTS += --disable-spoof-source +endif + +ifeq ($(BR2_PACKAGE_LIBCURL),y) +SYSLOG_NG_DEPENDENCIES += libcurl +SYSLOG_NG_CONF_OPTS += --enable-http +SYSLOG_NG_CONF_OPTS += --with-libcurl="$(STAGING_DIR)/usr" +else +SYSLOG_NG_CONF_OPTS += --disable-http +endif + +ifeq ($(BR2_PACKAGE_RABBITMQ_C),y) +SYSLOG_NG_DEPENDENCIES += rabbitmq-c +SYSLOG_NG_CONF_OPTS += --enable-amqp +else +SYSLOG_NG_CONF_OPTS += --disable-amqp +endif + +ifeq ($(BR2_INIT_SYSTEMD),y) +SYSLOG_NG_DEPENDENCIES += systemd +SYSLOG_NG_CONF_OPTS += \ + --enable-systemd \ + --with-systemdsystemunitdir=/usr/lib/systemd/system +else +SYSLOG_NG_CONF_OPTS += --disable-systemd +endif + +ifeq ($(BR2_PACKAGE_NETSNMP),y) +SYSLOG_NG_DEPENDENCIES += netsnmp +SYSLOG_NG_CONF_OPTS += --enable-afsnmp +SYSLOG_NG_CONF_OPTS += --with-net-snmp="$(STAGING_DIR)/usr/bin" +else +SYSLOG_NG_CONF_OPTS += --disable-afsnmp +endif + +define SYSLOG_NG_INSTALL_INIT_SYSV + $(INSTALL) -m 0755 -D package/syslog-ng/S01syslog-ng \ + $(TARGET_DIR)/etc/init.d/S01syslog-ng +endef + +# By default syslog-ng installs a .service that requires a config file at +# /etc/default, so provide one with the default values. +define SYSLOG_NG_INSTALL_INIT_SYSTEMD + mkdir -p $(TARGET_DIR)/usr/lib/systemd/system/syslog-ng@.service.d + printf '[Install]\nDefaultInstance=default\n' \ + >$(TARGET_DIR)/usr/lib/systemd/system/syslog-ng@.service.d/buildroot-default-instance.conf +endef + +# By default syslog-ng installs a number of sample configuration +# files. Some of these rely on optional features being +# enabled. Because of this buildroot uninstalls the shipped config +# files and provides a simplified configuration. +define SYSLOG_NG_FIXUP_CONFIG + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ + DESTDIR=$(TARGET_DIR) scl-uninstall-local + $(INSTALL) -D -m 0644 package/syslog-ng/syslog-ng.conf \ + $(TARGET_DIR)/etc/syslog-ng.conf +endef + +SYSLOG_NG_POST_INSTALL_TARGET_HOOKS = SYSLOG_NG_FIXUP_CONFIG + +$(eval $(autotools-package)) 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 index 00000000..dcc2cbe6 --- /dev/null +++ b/package/sysprof/0001-define-NT_GNU_BUILD_ID.patch @@ -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 + +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 + ++#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/Config.in b/package/sysprof/Config.in new file mode 100644 index 00000000..3913274b --- /dev/null +++ b/package/sysprof/Config.in @@ -0,0 +1,31 @@ +config BR2_PACKAGE_SYSPROF + bool "sysprof" + depends on BR2_USE_WCHAR # glib2 + depends on BR2_TOOLCHAIN_HAS_THREADS # glib2 + depends on BR2_USE_MMU # glib2 + # In its util.h file, sysprof contains architecture-specific + # code + depends on BR2_i386 || BR2_x86_64 || BR2_powerpc || BR2_sh4a || BR2_sh4aeb + select BR2_PACKAGE_LIBGLIB2 + help + Sysprof is a statistical, system-wide profiler that can + profile user and kernel code using the perf API. + + http://sysprof.com + +if BR2_PACKAGE_SYSPROF + +config BR2_PACKAGE_SYSPROF_GUI + bool "sysprof GUI" + depends on BR2_PACKAGE_LIBGTK2 + select BR2_PACKAGE_LIBGLADE + select BR2_PACKAGE_GDK_PIXBUF + help + GUI for the sysprof system-wide statistical profiler. + +endif + +comment "sysprof needs a toolchain w/ wchar, threads" + depends on BR2_USE_MMU + depends on BR2_i386 || BR2_x86_64 || BR2_powerpc || BR2_sh4a || BR2_sh4aeb + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/sysprof/sysprof.hash b/package/sysprof/sysprof.hash new file mode 100644 index 00000000..4ce206be --- /dev/null +++ b/package/sysprof/sysprof.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 baf03c6fc01a845c705873e6fc7927aa89539dcda6963f9ec4c8eb4c086a64f1 sysprof-1.2.0.tar.gz +sha256 32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670 COPYING diff --git a/package/sysprof/sysprof.mk b/package/sysprof/sysprof.mk new file mode 100644 index 00000000..9823416e --- /dev/null +++ b/package/sysprof/sysprof.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# sysprof +# +################################################################################ + +SYSPROF_VERSION = 1.2.0 +SYSPROF_SITE = http://sysprof.com +SYSPROF_DEPENDENCIES = libglib2 +SYSPROF_LICENSE = GPL-2.0+ +SYSPROF_LICENSE_FILES = COPYING + +ifeq ($(BR2_PACKAGE_SYSPROF_GUI),y) +SYSPROF_DEPENDENCIES += libgtk2 libglade gdk-pixbuf +endif + +$(eval $(autotools-package)) diff --git a/package/sysrepo/Config.in b/package/sysrepo/Config.in new file mode 100644 index 00000000..8de141ef --- /dev/null +++ b/package/sysrepo/Config.in @@ -0,0 +1,29 @@ +config BR2_PACKAGE_SYSREPO + bool "sysrepo" + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 + select BR2_PACKAGE_LIBYANG + select BR2_PACKAGE_PCRE + select BR2_PACKAGE_PCRE_UCP + help + Sysrepo is an YANG-based configuration and operational state + data store for Unix/Linux applications. + + https://github.com/sysrepo + +if BR2_PACKAGE_SYSREPO + +config BR2_PACKAGE_SYSREPO_EXAMPLES + bool "enable examples" + help + Enable sysrepo examples. + +endif + +comment "sysrepo needs a toolchain w/ C++, NPTL, dynamic library, gcc >= 4.8" + depends on BR2_USE_MMU + depends on BR2_STATIC_LIBS || !BR2_INSTALL_LIBSTDCPP \ + || !BR2_TOOLCHAIN_HAS_THREADS_NPTL diff --git a/package/sysrepo/S51sysrepo-plugind b/package/sysrepo/S51sysrepo-plugind new file mode 100644 index 00000000..60ea3ba7 --- /dev/null +++ b/package/sysrepo/S51sysrepo-plugind @@ -0,0 +1,53 @@ +#!/bin/sh + +DAEMON="sysrepo-plugind" +EXECUTABLE="/usr/bin/$DAEMON" + +SYSREPO_PLUGIND_ARGS="" + +# shellcheck source=/dev/null +[ -r "/etc/default/$DAEMON" ] && . "/etc/default/$DAEMON" + +start() { + printf 'Starting %s: ' "$DAEMON" + start-stop-daemon -S -q -x "$EXECUTABLE" \ + -- $SYSREPO_PLUGIND_ARGS + status=$? + if [ "$status" -eq 0 ]; then + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +stop() { + printf 'Stopping %s: ' "$DAEMON" + start-stop-daemon -K -q -x "$EXECUTABLE" + status=$? + if [ "$status" -eq 0 ]; then + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +restart() { + stop + sleep 1 + start +} + +reload() { + # we do not support real reload .. just restart + restart +} + +case "$1" in + start|stop|restart|reload) + "$1";; + *) + echo "Usage: $0 {start|stop|restart|reload}" + exit 1 +esac diff --git a/package/sysrepo/sysrepo.hash b/package/sysrepo/sysrepo.hash new file mode 100644 index 00000000..d0b3c82a --- /dev/null +++ b/package/sysrepo/sysrepo.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 635f68ad5f8cb5ea3bd7c3081963f1a9a79ee0d6570facb1f3bcbf3b640446a4 sysrepo-1.4.104.tar.gz +sha256 b40930bbcf80744c86c46a12bc9da056641d722716c378f5659b9e555ef833e1 LICENSE diff --git a/package/sysrepo/sysrepo.mk b/package/sysrepo/sysrepo.mk new file mode 100644 index 00000000..e4d553cd --- /dev/null +++ b/package/sysrepo/sysrepo.mk @@ -0,0 +1,34 @@ +################################################################################ +# +# sysrepo +# +################################################################################ + +SYSREPO_VERSION = 1.4.104 +SYSREPO_SITE = $(call github,sysrepo,sysrepo,v$(SYSREPO_VERSION)) +SYSREPO_INSTALL_STAGING = YES +SYSREPO_LICENSE = Apache-2.0 +SYSREPO_LICENSE_FILES = LICENSE +SYSREPO_DEPENDENCIES = libyang pcre host-sysrepo +HOST_SYSREPO_DEPENDENCIES = host-libyang host-pcre + +SYSREPO_CONF_OPTS = \ + -DCMAKE_BUILD_TYPE=Release \ + -DBUILD_EXAMPLES=$(if $(BR2_PACKAGE_SYSREPO_EXAMPLES),ON,OFF) + +ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) +SYSREPO_CONF_OPTS += -DCMAKE_EXE_LINKER_FLAGS=-latomic +endif + +define SYSREPO_INSTALL_INIT_SYSV + $(INSTALL) -m 755 -D package/sysrepo/S51sysrepo-plugind \ + $(TARGET_DIR)/etc/init.d/S51sysrepo-plugind +endef + +HOST_SYSREPO_CONF_OPTS = \ + -DCMAKE_BUILD_TYPE=Release \ + -DBUILD_EXAMPLES=OFF \ + -DREPO_PATH=$(TARGET_DIR)/etc/sysrepo + +$(eval $(cmake-package)) +$(eval $(host-cmake-package)) diff --git a/package/sysstat/Config.in b/package/sysstat/Config.in new file mode 100644 index 00000000..442b7876 --- /dev/null +++ b/package/sysstat/Config.in @@ -0,0 +1,39 @@ +config BR2_PACKAGE_SYSSTAT + bool "sysstat" + depends on BR2_USE_MMU # fork() + help + The sysstat utilities are a collection of performance + monitoring tools for Linux. These include sar, sadf, mpstat, + iostat, pidstat and sa tools. + + Some Features : + + * Input / Output and transfer rate statistics (global, per + device, per partition, per network filesystem and per + Linux task / PID) + * CPU statistics (global, per CPU and per Linux task / + PID), including support for virtualization architectures + * Memory and swap space utilization statistics + * Virtual memory, paging and fault statistics + * Per-task (per-PID) memory and page fault statistics + * Global CPU and page fault statistics for tasks and all + their children + * Process creation activity + * Interrupt statistics (global, per CPU and per interrupt, + including potential APIC interrupt sources) + * Extensive network statistics: network interface activity + (number of packets and kB received and transmitted per + second, etc.) including failures from network devices; + network traffic statistics for IP, TCP, ICMP and UDP + protocols based on SNMPv2 standards; support for + IPv6-related protocols. + * NFS server and client activity + * Socket statistics + * Run queue and system load statistics + * Kernel internal tables utilization statistics + * System and per Linux task switching activity + * Swapping statistics + * TTY device activity + * Power management statistics + + http://pagesperso-orange.fr/sebastien.godard/ diff --git a/package/sysstat/sysstat.hash b/package/sysstat/sysstat.hash new file mode 100644 index 00000000..b573f312 --- /dev/null +++ b/package/sysstat/sysstat.hash @@ -0,0 +1,5 @@ +# From: http://sebastien.godard.pagesperso-orange.fr/download.html +sha1 1e38bc029979def730ae1fb1e39f631bd1a3bc73 sysstat-12.4.2.tar.xz +# Locally calculated +sha256 3701b2c1883d50eb384d7b95ce5b6df0a71fdcb3c23f96cb58098d1bcffa018f sysstat-12.4.2.tar.xz +sha256 db296f2f7f35bca3a174efb0eb392b3b17bd94b341851429a3dff411b1c2fc73 COPYING diff --git a/package/sysstat/sysstat.mk b/package/sysstat/sysstat.mk new file mode 100644 index 00000000..8ec49668 --- /dev/null +++ b/package/sysstat/sysstat.mk @@ -0,0 +1,23 @@ +################################################################################ +# +# sysstat +# +################################################################################ + +SYSSTAT_VERSION = 12.4.2 +SYSSTAT_SOURCE = sysstat-$(SYSSTAT_VERSION).tar.xz +SYSSTAT_SITE = http://pagesperso-orange.fr/sebastien.godard +SYSSTAT_CONF_OPTS = --disable-file-attr +SYSSTAT_DEPENDENCIES = host-gettext $(TARGET_NLS_DEPENDENCIES) +SYSSTAT_LICENSE = GPL-2.0+ +SYSSTAT_LICENSE_FILES = COPYING +SYSSTAT_CPE_ID_VENDOR = sysstat_project + +ifeq ($(BR2_PACKAGE_LM_SENSORS),y) +SYSSTAT_DEPENDENCIES += lm-sensors +SYSSTAT_CONF_OPTS += --enable-sensors +else +SYSSTAT_CONF_OPTS += --disable-sensors +endif + +$(eval $(autotools-package)) diff --git a/package/systemd-bootchart/Config.in b/package/systemd-bootchart/Config.in new file mode 100644 index 00000000..9af13db1 --- /dev/null +++ b/package/systemd-bootchart/Config.in @@ -0,0 +1,40 @@ +config BR2_PACKAGE_SYSTEMD_BOOTCHART_ARCH_SUPPORTS + bool + # see src/architecture.h + default y if BR2_aarch64 || BR2_aarch64_be + default y if BR2_arm || BR2_armeb + default y if BR2_i386 || BR2_x86_64 + default y if BR2_m68k + default y if BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el + default y if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le + default y if BR2_sh + default y if BR2_sparc || BR2_sparc64 + +config BR2_PACKAGE_SYSTEMD_BOOTCHART + bool "systemd-bootchart" + depends on BR2_PACKAGE_SYSTEMD_BOOTCHART_ARCH_SUPPORTS + depends on BR2_INIT_SYSTEMD + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17 + help + systemd-bootchart is a tool, usually run at system startup, + that collects the CPU load, disk load, memory usage, as well + as per-process information from a running system. Collected + results are output as an SVG graph. + + systemd-bootchart requires a Linux kernel >= 3.0 with the + following options enabled: + + - CONFIG_SCHEDSTATS + - CONFIG_SCHED_DEBUG + + These options will be automatically enabled by Buildroot if + it is responsible for building the kernel. Otherwise, if you + are building your kernel outside of Buildroot, make sure + these options are enabled. + + http://www.freedesktop.org/software/systemd/man/systemd-bootchart.html + +comment "systemd-bootchart needs a toolchain w/ headers >= 3.17" + depends on BR2_PACKAGE_SYSTEMD_BOOTCHART_ARCH_SUPPORTS + depends on BR2_INIT_SYSTEMD + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17 diff --git a/package/systemd-bootchart/systemd-bootchart.hash b/package/systemd-bootchart/systemd-bootchart.hash new file mode 100644 index 00000000..80858832 --- /dev/null +++ b/package/systemd-bootchart/systemd-bootchart.hash @@ -0,0 +1,3 @@ +# sha256 locally computed +sha256 f4cb17b21928e36ec27de5c5294dea6ec1de4acd7ee6c56d6ecc75319cbcaefa systemd-bootchart-233.tar.xz +sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 LICENSE.LGPL2.1 diff --git a/package/systemd-bootchart/systemd-bootchart.mk b/package/systemd-bootchart/systemd-bootchart.mk new file mode 100644 index 00000000..bcc3dbe2 --- /dev/null +++ b/package/systemd-bootchart/systemd-bootchart.mk @@ -0,0 +1,19 @@ +################################################################################ +# +# systemd-bootchart +# +################################################################################ + +SYSTEMD_BOOTCHART_VERSION = 233 +SYSTEMD_BOOTCHART_SOURCE = systemd-bootchart-$(SYSTEMD_BOOTCHART_VERSION).tar.xz +# Do not use the github helper here: the uploaded release tarball already +# contains the generated autotools scripts. It also slightly differs with +# two missing source files... :-/ +SYSTEMD_BOOTCHART_SITE = https://github.com/systemd/systemd-bootchart/releases/download/v$(SYSTEMD_BOOTCHART_VERSION) +SYSTEMD_BOOTCHART_LICENSE = LGPL-2.1+ +SYSTEMD_BOOTCHART_LICENSE_FILES = LICENSE.LGPL2.1 +SYSTEMD_BOOTCHART_DEPENDENCIES = systemd + +SYSTEMD_BOOTCHART_CONF_OPTS = --disable-man + +$(eval $(autotools-package)) diff --git a/package/systemd/0001-loongarch64-architecture.patch b/package/systemd/0001-loongarch64-architecture.patch new file mode 100644 index 00000000..496cb842 --- /dev/null +++ b/package/systemd/0001-loongarch64-architecture.patch @@ -0,0 +1,43 @@ +Index: systemd-241/src/basic/architecture.h +=================================================================== +--- systemd-241.orig/src/basic/architecture.h 2019-02-14 18:11:58.000000000 +0800 ++++ systemd-241/src/basic/architecture.h 2020-08-25 09:38:44.202289218 +0800 +@@ -44,6 +44,7 @@ + ARCHITECTURE_RISCV64, + ARCHITECTURE_ARC, + ARCHITECTURE_ARC_BE, ++ ARCHITECTURE_LOONGARCH64, + _ARCHITECTURE_MAX, + _ARCHITECTURE_INVALID = -1 + }; +@@ -229,6 +230,9 @@ + # define native_architecture() ARCHITECTURE_ARC + # define LIB_ARCH_TUPLE "arc-linux" + # endif ++#elif defined(__loongarch64) ++# define native_architecture() ARCHITECTURE_LOONGARCH64 ++# define LIB_ARCH_TUPLE "loongarch64-linux-gnu" + #else + # error "Please register your architecture here!" + #endif +Index: systemd-241/src/basic/architecture.c +=================================================================== +--- systemd-241.orig/src/basic/architecture.c 2019-02-14 18:11:58.000000000 +0800 ++++ systemd-241/src/basic/architecture.c 2020-08-25 09:41:46.528802189 +0800 +@@ -118,6 +118,8 @@ + #elif defined(__arc__) + { "arc", ARCHITECTURE_ARC }, + { "arceb", ARCHITECTURE_ARC_BE }, ++#elif defined(__loongarch64) ++ { "loongarch64", ARCHITECTURE_LOONGARCH64 }, + #else + #error "Please register your architecture here!" + #endif +@@ -173,6 +175,7 @@ + [ARCHITECTURE_RISCV64] = "riscv64", + [ARCHITECTURE_ARC] = "arc", + [ARCHITECTURE_ARC_BE] = "arc-be", ++ [ARCHITECTURE_LOONGARCH64] = "loongarch64", + }; + + DEFINE_STRING_TABLE_LOOKUP(architecture, int); diff --git a/package/systemd/80-buildroot.preset b/package/systemd/80-buildroot.preset new file mode 100644 index 00000000..778dab38 --- /dev/null +++ b/package/systemd/80-buildroot.preset @@ -0,0 +1,2 @@ +# Higher priority than systemd presets +# This file is currently empty, but is available for demonstration and future use diff --git a/package/systemd/Config.in b/package/systemd/Config.in new file mode 100644 index 00000000..18e9f95f --- /dev/null +++ b/package/systemd/Config.in @@ -0,0 +1,491 @@ +config BR2_PACKAGE_SYSTEMD_ARCH_SUPPORTS + bool + # see src/basic/architecture.h + default y if BR2_arc + default y if BR2_aarch64 || BR2_aarch64_be + default y if BR2_arm || BR2_armeb + default y if BR2_i386 || BR2_x86_64 + default y if BR2_m68k + default y if BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el + default y if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le + default y if BR2_nios2 + default y if BR2_riscv + default y if BR2_sh4 || BR2_sh4eb || BR2_sh4a || BR2_sh4aeb + default y if BR2_sparc || BR2_sparc64 + default y if BR2_s390x + default y if BR2_loongarch64 + +menuconfig BR2_PACKAGE_SYSTEMD + bool "systemd" + depends on BR2_INIT_SYSTEMD + depends on BR2_PACKAGE_SYSTEMD_ARCH_SUPPORTS + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS # kmod + depends on BR2_TOOLCHAIN_USES_GLIBC + depends on BR2_TOOLCHAIN_HAS_SSP + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10 + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 + depends on BR2_HOST_GCC_AT_LEAST_5 # host-systemd + select BR2_PACKAGE_HAS_UDEV + select BR2_PACKAGE_DBUS # runtime dependency only + select BR2_PACKAGE_LIBCAP + select BR2_PACKAGE_UTIL_LINUX + select BR2_PACKAGE_UTIL_LINUX_LIBS + select BR2_PACKAGE_UTIL_LINUX_LIBMOUNT + select BR2_PACKAGE_UTIL_LINUX_AGETTY + select BR2_PACKAGE_UTIL_LINUX_MOUNT + select BR2_PACKAGE_UTIL_LINUX_FSCK + select BR2_PACKAGE_KMOD + select BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # kmod-tools + select BR2_PACKAGE_KMOD_TOOLS + select BR2_TARGET_TZ_INFO + select BR2_NEEDS_HOST_UTF8_LOCALE + select BR2_PACKAGE_HOST_SYSTEMD # for systemctl preset-all, during target-finalize + help + systemd is a system and service manager for Linux, + compatible with SysV and LSB init scripts. systemd provides + aggressive parallelization capabilities, uses socket and + D-Bus activation for starting services, offers on-demand + starting of daemons, keeps track of processes using Linux + cgroups, supports snapshotting and restoring of the system + state, maintains mount and automount points and implements + an elaborate transactional dependency-based service control + logic. It can work as a drop-in replacement for sysvinit. + + Systemd requires a Linux kernel >= 3.0 with the following + options enabled: + + - CONFIG_CGROUPS + - CONFIG_INOTIFY_USER + - CONFIG_FHANDLE + - CONFIG_AUTOFS4_FS + - CONFIG_TMPFS_POSIX_ACL + - CONFIG_TMPFS_XATTR + + These options will be automatically enabled by Buildroot if + it is responsible for building the kernel. Otherwise, if you + are building your kernel outside of Buildroot, make sure + these options are enabled. + + Systemd also provides udev, the userspace device daemon. + + The selection of other packages will enable some features: + + - acl package will add support for multi-seat. + - xz and/or l4 packages will add compression support in + journal and coredump. + - libcurl package will add support for systemd-journal-upload. + - libgcrypt package will add support for journal sealing and + DNSSEC verification in resolved. + + Notice that systemd selects the fsck wrapper from util-linux + but no particular fsck. is selected. You must choose + the apropriate ones (e.g. e2fsck, from the e2fsprogs + package) according to the system configuration. + + http://freedesktop.org/wiki/Software/systemd + +if BR2_PACKAGE_SYSTEMD + +config BR2_PACKAGE_PROVIDES_UDEV + default "systemd" + +config BR2_PACKAGE_SYSTEMD_BOOT + bool "systemd-boot" + depends on BR2_i386 || BR2_x86_64 + select BR2_PACKAGE_GNU_EFI + help + systemd-boot is a simple UEFI boot manager which executes + configured EFI images. The default entry is selected by a + configured pattern (glob) or an on-screen menu. + + systemd-boot operates on the EFI System Partition (ESP) + only. Configuration file fragments, kernels, initrds, other + EFI images need to reside on the ESP. Linux kernels need to + be built with CONFIG_EFI_STUB to be able to be directly + executed as an EFI image. + + See the Grub2 help text for details on preparing an EFI + capable disk image using systemd-boot: the instructions are + exactly the same, except that the systemd-boot configuration + files will be located in /loader/ inside the EFI partition. + + https://www.freedesktop.org/wiki/Software/systemd/systemd-boot/ + +config BR2_PACKAGE_SYSTEMD_INITRD + bool "Services for booting from initrd" + help + Install various services that are only useful if systemd is + run from an initrd. + +config BR2_PACKAGE_SYSTEMD_KERNELINSTALL + bool "install kernel-install and related files" + help + kernel-install is used to install and remove kernel and + initramfs images to and from the boot loader partition. + The boot loader partition will usually be one of + /boot, /efi, or /boot/efi. + +config BR2_PACKAGE_SYSTEMD_ANALYZE + bool "systemd-analyze" + help + systemd-analyze may be used to determine system boot-up + performance statistics and retrieve other state and tracing + information from the system and service manager, and to + verify the correctness of unit files. + It is also used to access special functions useful for + advanced system manager debugging. + +config BR2_PACKAGE_SYSTEMD_BOOT_EFI_ARCH + string + default "ia32" if BR2_i386 + default "x64" if BR2_x86_64 + depends on BR2_PACKAGE_SYSTEMD_BOOT + +config BR2_PACKAGE_SYSTEMD_JOURNAL_REMOTE + bool "enable journal remote tools" + select BR2_PACKAGE_LIBCURL + select BR2_PACKAGE_LIBMICROHTTPD + help + journal remote functionality adds three tools: + + systemd-journal-gatewayd serves journal events over the + network. + + systemd-journal-remote is a command to receive serialized + journal events and store them to journal files. + + systemd-journal-upload will upload journal entries to the + URL specified with --url=. + + https://www.freedesktop.org/software/systemd/man/systemd-journal-gatewayd.service.html + https://www.freedesktop.org/software/systemd/man/systemd-journal-remote.service.html + https://www.freedesktop.org/software/systemd/man/systemd-journal-upload.html + +config BR2_PACKAGE_SYSTEMD_BACKLIGHT + bool "enable backlight support" + help + systemd-backlight is a service that restores the display + backlight brightness at early boot and saves it at shutdown. + + http://www.freedesktop.org/software/systemd/man/systemd-backlight@.service.html + +config BR2_PACKAGE_SYSTEMD_BINFMT + bool "enable binfmt tool" + help + systemd-binfmt is an early boot service that registers + additional binary formats for executables in the kernel. + + http://www.freedesktop.org/software/systemd/man/systemd-binfmt.service.html + +config BR2_PACKAGE_SYSTEMD_COREDUMP + bool "enable coredump hook" + help + systemd-coredump can be used as a helper binary by the + kernel when a user space program receives a fatal signal and + dumps core. + + http://www.freedesktop.org/software/systemd/man/systemd-coredump.html + +config BR2_PACKAGE_SYSTEMD_PSTORE + bool "enable pstore support" + default y + help + When this features is enabled, additional tools and services + are built to support archiving contents of the persistent + storage filesytem. + + https://www.freedesktop.org/software/systemd/man/systemd-pstore.html + +config BR2_PACKAGE_SYSTEMD_FIRSTBOOT + bool "enable firstboot support" + help + systemd-firstboot initializes the most basic system settings + interactively on the first boot. + + http://www.freedesktop.org/software/systemd/man/systemd-firstboot.html + +config BR2_PACKAGE_SYSTEMD_HIBERNATE + bool "enable hibernation support" + select BR2_PACKAGE_SYSTEMD_INITRD + help + When this features is enabled, additional tools and services + are built to support suspending and resuming the system. + + http://www.freedesktop.org/software/systemd/man/systemd-sleep.html + +config BR2_PACKAGE_SYSTEMD_HOMED + bool "enable home daemon" + depends on BR2_TOOLCHAIN_HAS_THREADS # cryptsetup -> lvm2 + depends on BR2_USE_MMU # cryptsetup -> lvm2 + depends on !BR2_STATIC_LIBS # cryptsetup -> lvm2 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # cryptsetup -> json-c + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_12 # fscrypt_key + select BR2_PACKAGE_CRYPTSETUP + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_UTIL_LINUX_LIBFDISK + help + systemd-homed is a system service that may be used to create, + remove, change or inspect home directories. + + https://www.freedesktop.org/software/systemd/man/systemd-homed.service.html + +comment "homed support needs a toolchain w/ threads, dynamic library, kernel headers >= 4.12" + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on !BR2_TOOLCHAIN_HAS_THREADS || \ + BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_12 + +config BR2_PACKAGE_SYSTEMD_HOSTNAMED + bool "enable hostname daemon" + default y + help + systemd-hostnamed is a system service that may be used as a + mechanism to change the system's hostname. + + http://www.freedesktop.org/software/systemd/man/systemd-hostnamed.service.html + +config BR2_PACKAGE_SYSTEMD_HWDB + bool "enable hwdb installation" + default y + help + Enables hardware database installation to /usr/lib/udev/hwdb.d + + Disabling this option improves first boot time (or every boot + time in case of initramfs images) and saves several MB space. + + https://www.freedesktop.org/software/systemd/man/hwdb.html + +config BR2_PACKAGE_SYSTEMD_IMPORTD + bool "enable import daemon" + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt + select BR2_PACKAGE_LIBCURL + select BR2_PACKAGE_LIBGCRYPT + select BR2_PACKAGE_XZ + select BR2_PACKAGE_ZLIB + help + systemd-importd is a system service that manages virtual + machine and container images for systemd-machined and + machinectl. + + http://www.freedesktop.org/software/systemd/man/machinectl.html#Image%20Transfer%20Commands + +config BR2_PACKAGE_SYSTEMD_LOCALED + bool "enable locale daemon" + help + systemd-localed is a system service that may be used as + mechanism to change the system locale settings, as well as + the console key mapping and default X11 key mapping. + + http://www.freedesktop.org/software/systemd/man/systemd-localed.service.html + +config BR2_PACKAGE_SYSTEMD_LOGIND + bool "enable login daemon" + help + systemd-logind is a system service that manages user logins. + + http://www.freedesktop.org/software/systemd/man/systemd-logind.service.html + +config BR2_PACKAGE_SYSTEMD_MACHINED + bool "enable machine daemon" + help + systemd-machined is a system service that keeps track of + virtual machines and containers, and processes belonging to + them. + + http://www.freedesktop.org/software/systemd/man/systemd-machined.service.html + +config BR2_PACKAGE_SYSTEMD_MYHOSTNAME + bool "enable myhostname NSS plugin" + default y + help + nss-myhostname is a plug-in module for the GNU Name Service + Switch (NSS) functionality of the GNU C Library (glibc), + primarily providing hostname resolution for the locally + configured system hostname as returned by gethostname(2). + + http://www.freedesktop.org/software/systemd/man/nss-myhostname.html + +config BR2_PACKAGE_SYSTEMD_NETWORKD + bool "enable network manager" + default y + help + systemd-networkd is a system service that manages networks. + It detects and configures network devices as they appear, as + well as creating virtual network devices. + + This simple network configuration solution is an alternative + to dhcpcd or ISC dhcp. + + http://www.freedesktop.org/software/systemd/man/systemd-networkd.html + +config BR2_PACKAGE_SYSTEMD_POLKIT + bool "enable polkit support" + depends on BR2_HOST_GCC_AT_LEAST_4_9 # polkit + depends on BR2_INSTALL_LIBSTDCPP # polkit + depends on BR2_PACKAGE_SPIDERMONKEY_ARCH_SUPPORTS # polkit + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # polkit + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # polkit + depends on BR2_USE_WCHAR # libglib2 + select BR2_PACKAGE_POLKIT + help + If enabled, systemd is built with polkit support and policy + files for its services are generated and installed. It is + useful for allowing unprivileged processes to speak to + systemd's many privileged processes. + + http://wiki.freedesktop.org/www/Software/polkit/ + +comment "polkit support needs a toolchain with C++, wchar, NPTL, gcc >= 4.9" + depends on BR2_PACKAGE_SPIDERMONKEY_ARCH_SUPPORTS + depends on !BR2_INSTALL_LIBSTDCPP || \ + !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \ + !BR2_HOST_GCC_AT_LEAST_4_9 || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || \ + !BR2_USE_WCHAR + +config BR2_PACKAGE_SYSTEMD_PORTABLED + bool "enable portable services" + help + Portable services are systemd services that can be dynamically + attached and detached from the system. + + These services must come with their own root directory which + they are bound to through an automatically generated drop-in. + + They also have restrictions applied by the host system in the + form of profiles. + + This functionality is provided by the system service + systemd-portabled along with the corresponding CLI + portablectl. + + https://systemd.io/PORTABLE_SERVICES/ + +config BR2_PACKAGE_SYSTEMD_QUOTACHECK + bool "enable quotacheck tools" + help + systemd-quotacheck is a service responsible for file system + quota checks. It is run once at boot after all necessary + file systems are mounted. It is pulled in only if at least + one file system has quotas enabled. + + http://www.freedesktop.org/software/systemd/man/systemd-quotacheck.service.html + +config BR2_PACKAGE_SYSTEMD_RANDOMSEED + bool "enable random-seed support" + help + systemd-random-seed is a service that restores the random + seed of the system at early boot and saves it at + shutdown. Saving/restoring the random seed across boots + increases the amount of available entropy early at boot. + + http://www.freedesktop.org/software/systemd/man/systemd-random-seed.service.html + +config BR2_PACKAGE_SYSTEMD_REPART + bool "enable repart support" + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_UTIL_LINUX_LIBFDISK + help + systemd-repart grows and adds partitions to a partition table, + based on the configuration files described in repart.d. + + https://www.freedesktop.org/software/systemd/man/systemd-repart.html + +config BR2_PACKAGE_SYSTEMD_RESOLVED + bool "enable resolve daemon" + default y + help + systemd-resolved is a system service that provides network + name resolution to local applications. It implements a + caching and validating DNS/DNSSEC stub resolver, as well as + an LLMNR resolver and responder. + + http://www.freedesktop.org/software/systemd/man/systemd-resolved.html + +config BR2_PACKAGE_SYSTEMD_RFKILL + bool "enable rfkill tools" + help + systemd-rfkill is a service that restores the RF kill switch + state at early boot and saves it at shutdown. + + http://www.freedesktop.org/software/systemd/man/systemd-rfkill@.service.html + +config BR2_PACKAGE_SYSTEMD_SMACK_SUPPORT + bool "enable SMACK support" + select BR2_PACKAGE_ATTR + select BR2_PACKAGE_SMACK + help + Enable support for SMACK, the Simple Mandatory Access + Control Kernel, a minimal approach to Access Control + implemented as a kernel LSM. + + This feature requires a kernel >= 3.8. + + When this feature is enabled, Systemd mounts smackfs and + manages security labels for sockets. + +config BR2_PACKAGE_SYSTEMD_SYSUSERS + bool "enable sysusers support" + help + systemd-sysusers creates system users and groups, based on + the file format and location specified in sysusers.d(5). + + http://www.freedesktop.org/software/systemd/man/systemd-sysusers.html + +config BR2_PACKAGE_SYSTEMD_TIMEDATED + bool "enable timedate daemon" + default y + help + systemd-timedated is a system service that may be used as a + mechanism to change the system clock and timezone, as well + as to enable/disable NTP time synchronization. + + http://www.freedesktop.org/software/systemd/man/systemd-timedated.service.html + +config BR2_PACKAGE_SYSTEMD_TIMESYNCD + bool "enable timesync daemon" + default y + help + systemd-timesyncd is a service that may be used to + synchronize the local system clock with a Network Time + Protocol server. + + This simple NTP solution is an alternative to sntp/ntpd from + the ntp package. + + http://www.freedesktop.org/software/systemd/man/systemd-timesyncd.html + +config BR2_PACKAGE_SYSTEMD_TMPFILES + bool "enable tmpfiles support" + default y + help + systemd-tmpfiles creates, deletes, and cleans up volatile + and temporary files and directories, based on the + configuration file format and location specified in + tmpfiles.d(5). + + http://www.freedesktop.org/software/systemd/man/systemd-tmpfiles.html + +config BR2_PACKAGE_SYSTEMD_USERDB + bool "enable userdb daemon" + help + systemd-userdbd is a system service that multiplexes + user/group lookups to all local services that provide JSON + user/group record definitions to the system. In addition it + synthesizes JSON user/group records from classic UNIX/glibc + NSS user/group records in order to provide full backwards + compatibility. + + https://www.freedesktop.org/software/systemd/man/systemd-userdbd.service.html + +config BR2_PACKAGE_SYSTEMD_VCONSOLE + bool "enable vconsole tool" + default y + help + systemd-vconsole-setup is an early boot service that + configures the virtual console font and console keymap. + + http://www.freedesktop.org/software/systemd/man/systemd-vconsole-setup.service.html + +endif diff --git a/package/systemd/Config.in.host b/package/systemd/Config.in.host new file mode 100644 index 00000000..8e00bcf5 --- /dev/null +++ b/package/systemd/Config.in.host @@ -0,0 +1,4 @@ +# Select this if you need host systemd tools (e.g. systemctl) +config BR2_PACKAGE_HOST_SYSTEMD + bool + depends on BR2_HOST_GCC_AT_LEAST_5 diff --git a/package/systemd/boot-files/buildroot.conf b/package/systemd/boot-files/buildroot.conf new file mode 100644 index 00000000..16d4d85f --- /dev/null +++ b/package/systemd/boot-files/buildroot.conf @@ -0,0 +1,3 @@ +title Buildroot +linux /bzImage +options root=/dev/sda2 rootwait console=tty1 diff --git a/package/systemd/boot-files/loader.conf b/package/systemd/boot-files/loader.conf new file mode 100644 index 00000000..93b77b8f --- /dev/null +++ b/package/systemd/boot-files/loader.conf @@ -0,0 +1,2 @@ +timeout 3 +default buildroot diff --git a/package/systemd/dhcp.network b/package/systemd/dhcp.network new file mode 100644 index 00000000..9b636fa9 --- /dev/null +++ b/package/systemd/dhcp.network @@ -0,0 +1,4 @@ +[Match] +Name=SYSTEMD_NETWORKD_DHCP_IFACE +[Network] +DHCP=ipv4 diff --git a/package/systemd/systemd.hash b/package/systemd/systemd.hash new file mode 100644 index 00000000..20cd9222 --- /dev/null +++ b/package/systemd/systemd.hash @@ -0,0 +1,6 @@ +# sha256 locally computed +sha256 2869986e219a8dfc96cc0dffac66e0c13bb70a89e16b85a3948876c146cfa3e0 systemd-247.3.tar.gz +sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 LICENSE.GPL2 +sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 LICENSE.LGPL2.1 +sha256 6f22d19d35b00f35e0444e0bc9139e6d3bdf7277978f89c4e175e37b18c43f3d README +sha256 83bb6bd9ccd2cf5230cb1807ed16258289768dc4d9cb80069a814e04415a1275 tools/chromiumos/LICENSE diff --git a/package/systemd/systemd.mk b/package/systemd/systemd.mk new file mode 100644 index 00000000..ea1b898a --- /dev/null +++ b/package/systemd/systemd.mk @@ -0,0 +1,755 @@ +################################################################################ +# +# systemd +# +################################################################################ + +SYSTEMD_VERSION = 247.3 +SYSTEMD_SITE = $(call github,systemd,systemd-stable,v$(SYSTEMD_VERSION)) +SYSTEMD_LICENSE = LGPL-2.1+, GPL-2.0+ (udev), Public Domain (few source files, see README), BSD-3-Clause (tools/chromiumos) +SYSTEMD_LICENSE_FILES = LICENSE.GPL2 LICENSE.LGPL2.1 README tools/chromiumos/LICENSE +SYSTEMD_CPE_ID_VENDOR = freedesktop +SYSTEMD_INSTALL_STAGING = YES +SYSTEMD_DEPENDENCIES = \ + $(BR2_COREUTILS_HOST_DEPENDENCY) \ + $(if $(BR2_PACKAGE_BASH_COMPLETION),bash-completion) \ + host-gperf \ + kmod \ + libcap \ + util-linux-libs \ + $(TARGET_NLS_DEPENDENCIES) + +SYSTEMD_SELINUX_MODULES = systemd udev + +SYSTEMD_PROVIDES = udev + +SYSTEMD_CONF_OPTS += \ + -Ddefault-hierarchy=hybrid \ + -Didn=true \ + -Dima=false \ + -Dkexec-path=/usr/sbin/kexec \ + -Dkmod-path=/usr/bin/kmod \ + -Dldconfig=false \ + -Dloadkeys-path=/usr/bin/loadkeys \ + -Dman=false \ + -Dmount-path=/usr/bin/mount \ + -Dmode=release \ + -Dnss-systemd=true \ + -Dquotacheck-path=/usr/sbin/quotacheck \ + -Dquotaon-path=/usr/sbin/quotaon \ + -Drootlibdir='/usr/lib' \ + -Dsetfont-path=/usr/bin/setfont \ + -Dsplit-bin=true \ + -Dsplit-usr=false \ + -Dsulogin-path=/usr/sbin/sulogin \ + -Dsystem-gid-max=999 \ + -Dsystem-uid-max=999 \ + -Dsysvinit-path= \ + -Dsysvrcnd-path= \ + -Dtelinit-path= \ + -Dtests=false \ + -Dumount-path=/usr/bin/umount \ + -Dutmp=false + +ifeq ($(BR2_PACKAGE_ACL),y) +SYSTEMD_DEPENDENCIES += acl +SYSTEMD_CONF_OPTS += -Dacl=true +else +SYSTEMD_CONF_OPTS += -Dacl=false +endif + +ifeq ($(BR2_PACKAGE_LIBAPPARMOR),y) +SYSTEMD_DEPENDENCIES += libapparmor +SYSTEMD_CONF_OPTS += -Dapparmor=true +else +SYSTEMD_CONF_OPTS += -Dapparmor=false +endif + +ifeq ($(BR2_PACKAGE_AUDIT),y) +SYSTEMD_DEPENDENCIES += audit +SYSTEMD_CONF_OPTS += -Daudit=true +else +SYSTEMD_CONF_OPTS += -Daudit=false +endif + +ifeq ($(BR2_PACKAGE_CRYPTSETUP),y) +SYSTEMD_DEPENDENCIES += cryptsetup +SYSTEMD_CONF_OPTS += -Dlibcryptsetup=true +else +SYSTEMD_CONF_OPTS += -Dlibcryptsetup=false +endif + +ifeq ($(BR2_PACKAGE_ELFUTILS),y) +SYSTEMD_DEPENDENCIES += elfutils +SYSTEMD_CONF_OPTS += -Delfutils=true +else +SYSTEMD_CONF_OPTS += -Delfutils=false +endif + +ifeq ($(BR2_PACKAGE_GNUTLS),y) +SYSTEMD_DEPENDENCIES += gnutls +SYSTEMD_CONF_OPTS += -Dgnutls=true +else +SYSTEMD_CONF_OPTS += -Dgnutls=false +endif + +ifeq ($(BR2_PACKAGE_IPTABLES),y) +SYSTEMD_DEPENDENCIES += iptables +SYSTEMD_CONF_OPTS += -Dlibiptc=true +else +SYSTEMD_CONF_OPTS += -Dlibiptc=false +endif + +# Both options can't be selected at the same time so prefer libidn2 +ifeq ($(BR2_PACKAGE_LIBIDN2),y) +SYSTEMD_DEPENDENCIES += libidn2 +SYSTEMD_CONF_OPTS += -Dlibidn2=true -Dlibidn=false +else ifeq ($(BR2_PACKAGE_LIBIDN),y) +SYSTEMD_DEPENDENCIES += libidn +SYSTEMD_CONF_OPTS += -Dlibidn=true -Dlibidn2=false +else +SYSTEMD_CONF_OPTS += -Dlibidn=false -Dlibidn2=false +endif + +ifeq ($(BR2_PACKAGE_LIBSECCOMP),y) +SYSTEMD_DEPENDENCIES += libseccomp +SYSTEMD_CONF_OPTS += -Dseccomp=true +else +SYSTEMD_CONF_OPTS += -Dseccomp=false +endif + +ifeq ($(BR2_PACKAGE_LIBXKBCOMMON),y) +SYSTEMD_DEPENDENCIES += libxkbcommon +SYSTEMD_CONF_OPTS += -Dxkbcommon=true +else +SYSTEMD_CONF_OPTS += -Dxkbcommon=false +endif + +ifeq ($(BR2_PACKAGE_BZIP2),y) +SYSTEMD_DEPENDENCIES += bzip2 +SYSTEMD_CONF_OPTS += -Dbzip2=true +else +SYSTEMD_CONF_OPTS += -Dbzip2=false +endif + +ifeq ($(BR2_PACKAGE_ZSTD),y) +SYSTEMD_DEPENDENCIES += zstd +SYSTEMD_CONF_OPTS += -Dzstd=true +else +SYSTEMD_CONF_OPTS += -Dzstd=false +endif + +ifeq ($(BR2_PACKAGE_LZ4),y) +SYSTEMD_DEPENDENCIES += lz4 +SYSTEMD_CONF_OPTS += -Dlz4=true +else +SYSTEMD_CONF_OPTS += -Dlz4=false +endif + +ifeq ($(BR2_PACKAGE_LINUX_PAM),y) +SYSTEMD_DEPENDENCIES += linux-pam +SYSTEMD_CONF_OPTS += -Dpam=true +else +SYSTEMD_CONF_OPTS += -Dpam=false +endif + +ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBFDISK),y) +SYSTEMD_CONF_OPTS += -Dfdisk=true +else +SYSTEMD_CONF_OPTS += -Dfdisk=false +endif + +ifeq ($(BR2_PACKAGE_VALGRIND),y) +SYSTEMD_DEPENDENCIES += valgrind +SYSTEMD_CONF_OPTS += -Dvalgrind=true +else +SYSTEMD_CONF_OPTS += -Dvalgrind=false +endif + +ifeq ($(BR2_PACKAGE_XZ),y) +SYSTEMD_DEPENDENCIES += xz +SYSTEMD_CONF_OPTS += -Dxz=true +else +SYSTEMD_CONF_OPTS += -Dxz=false +endif + +ifeq ($(BR2_PACKAGE_ZLIB),y) +SYSTEMD_DEPENDENCIES += zlib +SYSTEMD_CONF_OPTS += -Dzlib=true +else +SYSTEMD_CONF_OPTS += -Dzlib=false +endif + +ifeq ($(BR2_PACKAGE_LIBCURL),y) +SYSTEMD_DEPENDENCIES += libcurl +SYSTEMD_CONF_OPTS += -Dlibcurl=true +else +SYSTEMD_CONF_OPTS += -Dlibcurl=false +endif + +ifeq ($(BR2_PACKAGE_LIBGCRYPT),y) +SYSTEMD_DEPENDENCIES += libgcrypt +SYSTEMD_CONF_OPTS += -Ddefault-dnssec=allow-downgrade -Dgcrypt=true +else +SYSTEMD_CONF_OPTS += -Ddefault-dnssec=no -Dgcrypt=false +endif + +ifeq ($(BR2_PACKAGE_P11_KIT),y) +SYSTEMD_DEPENDENCIES += p11-kit +SYSTEMD_CONF_OPTS += -Dp11kit=true +else +SYSTEMD_CONF_OPTS += -Dp11kit=false +endif + +ifeq ($(BR2_PACKAGE_OPENSSL),y) +SYSTEMD_DEPENDENCIES += openssl +SYSTEMD_CONF_OPTS += -Dopenssl=true +else +SYSTEMD_CONF_OPTS += -Dopenssl=false +endif + +ifeq ($(BR2_PACKAGE_PCRE2),y) +SYSTEMD_DEPENDENCIES += pcre2 +SYSTEMD_CONF_OPTS += -Dpcre2=true +else +SYSTEMD_CONF_OPTS += -Dpcre2=false +endif + +ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBBLKID),y) +SYSTEMD_CONF_OPTS += -Dblkid=true +else +SYSTEMD_CONF_OPTS += -Dblkid=false +endif + +ifeq ($(BR2_PACKAGE_UTIL_LINUX_NOLOGIN),y) +SYSTEMD_CONF_OPTS += -Dnologin-path=/sbin/nologin +else +SYSTEMD_CONF_OPTS += -Dnologin-path=/bin/false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_INITRD),y) +SYSTEMD_CONF_OPTS += -Dinitrd=true +else +SYSTEMD_CONF_OPTS += -Dinitrd=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_KERNELINSTALL),y) +SYSTEMD_CONF_OPTS += -Dkernel-install=true +else +SYSTEMD_CONF_OPTS += -Dkernel-install=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_ANALYZE),y) +SYSTEMD_CONF_OPTS += -Danalyze=true +else +SYSTEMD_CONF_OPTS += -Danalyze=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_JOURNAL_REMOTE),y) +# remote also depends on libcurl, this is already added above. +SYSTEMD_DEPENDENCIES += libmicrohttpd +SYSTEMD_CONF_OPTS += -Dremote=true -Dmicrohttpd=true +SYSTEMD_REMOTE_USER = systemd-journal-remote -1 systemd-journal-remote -1 * - - - systemd Journal Remote +else +SYSTEMD_CONF_OPTS += -Dremote=false -Dmicrohttpd=false +endif + +ifeq ($(BR2_PACKAGE_LIBQRENCODE),y) +SYSTEMD_DEPENDENCIES += libqrencode +SYSTEMD_CONF_OPTS += -Dqrencode=true +else +SYSTEMD_CONF_OPTS += -Dqrencode=false +endif + +ifeq ($(BR2_PACKAGE_LIBSELINUX),y) +SYSTEMD_DEPENDENCIES += libselinux +SYSTEMD_CONF_OPTS += -Dselinux=true +else +SYSTEMD_CONF_OPTS += -Dselinux=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_HWDB),y) +SYSTEMD_CONF_OPTS += -Dhwdb=true +define SYSTEMD_BUILD_HWDB + $(HOST_DIR)/bin/udevadm hwdb --update --root $(TARGET_DIR) +endef +SYSTEMD_TARGET_FINALIZE_HOOKS += SYSTEMD_BUILD_HWDB +define SYSTEMD_RM_HWDB_SRV + rm -rf $(TARGET_DIR)/$(HOST_EUDEV_SYSCONFDIR)/udev/hwdb.d/ +endef +SYSTEMD_ROOTFS_PRE_CMD_HOOKS += SYSTEMD_RM_HWDB_SRV +else +SYSTEMD_CONF_OPTS += -Dhwdb=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_BINFMT),y) +SYSTEMD_CONF_OPTS += -Dbinfmt=true +else +SYSTEMD_CONF_OPTS += -Dbinfmt=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_VCONSOLE),y) +SYSTEMD_CONF_OPTS += -Dvconsole=true +else +SYSTEMD_CONF_OPTS += -Dvconsole=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_QUOTACHECK),y) +SYSTEMD_CONF_OPTS += -Dquotacheck=true +else +SYSTEMD_CONF_OPTS += -Dquotacheck=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_TMPFILES),y) +SYSTEMD_CONF_OPTS += -Dtmpfiles=true +else +SYSTEMD_CONF_OPTS += -Dtmpfiles=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_SYSUSERS),y) +SYSTEMD_CONF_OPTS += -Dsysusers=true +else +SYSTEMD_CONF_OPTS += -Dsysusers=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_FIRSTBOOT),y) +SYSTEMD_CONF_OPTS += -Dfirstboot=true +else +SYSTEMD_CONF_OPTS += -Dfirstboot=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_RANDOMSEED),y) +SYSTEMD_CONF_OPTS += -Drandomseed=true +else +SYSTEMD_CONF_OPTS += -Drandomseed=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_BACKLIGHT),y) +SYSTEMD_CONF_OPTS += -Dbacklight=true +else +SYSTEMD_CONF_OPTS += -Dbacklight=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_RFKILL),y) +SYSTEMD_CONF_OPTS += -Drfkill=true +else +SYSTEMD_CONF_OPTS += -Drfkill=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_LOGIND),y) +SYSTEMD_CONF_OPTS += -Dlogind=true +else +SYSTEMD_CONF_OPTS += -Dlogind=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_MACHINED),y) +SYSTEMD_CONF_OPTS += -Dmachined=true -Dnss-mymachines=true +else +SYSTEMD_CONF_OPTS += -Dmachined=false -Dnss-mymachines=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_IMPORTD),y) +SYSTEMD_CONF_OPTS += -Dimportd=true +else +SYSTEMD_CONF_OPTS += -Dimportd=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_HOMED),y) +SYSTEMD_CONF_OPTS += -Dhomed=true +SYSTEMD_DEPENDENCIES += cryptsetup openssl +else +SYSTEMD_CONF_OPTS += -Dhomed=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_HOSTNAMED),y) +SYSTEMD_CONF_OPTS += -Dhostnamed=true +else +SYSTEMD_CONF_OPTS += -Dhostnamed=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_MYHOSTNAME),y) +SYSTEMD_CONF_OPTS += -Dnss-myhostname=true +else +SYSTEMD_CONF_OPTS += -Dnss-myhostname=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_TIMEDATED),y) +SYSTEMD_CONF_OPTS += -Dtimedated=true +else +SYSTEMD_CONF_OPTS += -Dtimedated=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_LOCALED),y) +SYSTEMD_CONF_OPTS += -Dlocaled=true +else +SYSTEMD_CONF_OPTS += -Dlocaled=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_REPART),y) +SYSTEMD_CONF_OPTS += -Drepart=true +SYSTEMD_DEPENDENCIES += openssl +else +SYSTEMD_CONF_OPTS += -Drepart=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_USERDB),y) +SYSTEMD_CONF_OPTS += -Duserdb=true +else +SYSTEMD_CONF_OPTS += -Duserdb=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_COREDUMP),y) +SYSTEMD_CONF_OPTS += -Dcoredump=true +SYSTEMD_COREDUMP_USER = systemd-coredump -1 systemd-coredump -1 * - - - systemd core dump processing +else +SYSTEMD_CONF_OPTS += -Dcoredump=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_PSTORE),y) +SYSTEMD_CONF_OPTS += -Dpstore=true +else +SYSTEMD_CONF_OPTS += -Dpstore=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_POLKIT),y) +SYSTEMD_CONF_OPTS += -Dpolkit=true +SYSTEMD_DEPENDENCIES += polkit +else +SYSTEMD_CONF_OPTS += -Dpolkit=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_PORTABLED),y) +SYSTEMD_CONF_OPTS += -Dportabled=true +else +SYSTEMD_CONF_OPTS += -Dportabled=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_NETWORKD),y) +SYSTEMD_CONF_OPTS += -Dnetworkd=true +SYSTEMD_NETWORKD_USER = systemd-network -1 systemd-network -1 * - - - systemd Network Management +SYSTEMD_NETWORKD_DHCP_IFACE = $(call qstrip,$(BR2_SYSTEM_DHCP)) +ifneq ($(SYSTEMD_NETWORKD_DHCP_IFACE),) +define SYSTEMD_INSTALL_NETWORK_CONFS + sed s/SYSTEMD_NETWORKD_DHCP_IFACE/$(SYSTEMD_NETWORKD_DHCP_IFACE)/ \ + $(SYSTEMD_PKGDIR)/dhcp.network > \ + $(TARGET_DIR)/etc/systemd/network/$(SYSTEMD_NETWORKD_DHCP_IFACE).network +endef +endif +else +SYSTEMD_CONF_OPTS += -Dnetworkd=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_RESOLVED),y) +define SYSTEMD_INSTALL_RESOLVCONF_HOOK + ln -sf ../run/systemd/resolve/resolv.conf \ + $(TARGET_DIR)/etc/resolv.conf +endef +SYSTEMD_CONF_OPTS += -Dnss-resolve=true -Dresolve=true +SYSTEMD_RESOLVED_USER = systemd-resolve -1 systemd-resolve -1 * - - - systemd Resolver +else +SYSTEMD_CONF_OPTS += -Dnss-resolve=false -Dresolve=false +endif + +ifeq ($(BR2_PACKAGE_GNUTLS),y) +SYSTEMD_CONF_OPTS += -Ddns-over-tls=gnutls -Ddefault-dns-over-tls=opportunistic +SYSTEMD_DEPENDENCIES += gnutls +else ifeq ($(BR2_PACKAGE_OPENSSL),y) +SYSTEMD_CONF_OPTS += -Ddns-over-tls=openssl -Ddefault-dns-over-tls=opportunistic +SYSTEMD_DEPENDENCIES += openssl +else +SYSTEMD_CONF_OPTS += -Ddns-over-tls=false -Ddefault-dns-over-tls=no +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_TIMESYNCD),y) +SYSTEMD_CONF_OPTS += -Dtimesyncd=true +SYSTEMD_TIMESYNCD_USER = systemd-timesync -1 systemd-timesync -1 * - - - systemd Time Synchronization +else +SYSTEMD_CONF_OPTS += -Dtimesyncd=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_SMACK_SUPPORT),y) +SYSTEMD_CONF_OPTS += -Dsmack=true +else +SYSTEMD_CONF_OPTS += -Dsmack=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_HIBERNATE),y) +SYSTEMD_CONF_OPTS += -Dhibernate=true +else +SYSTEMD_CONF_OPTS += -Dhibernate=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_BOOT),y) +SYSTEMD_INSTALL_IMAGES = YES +SYSTEMD_DEPENDENCIES += gnu-efi +SYSTEMD_CONF_OPTS += \ + -Defi=true \ + -Dgnu-efi=true \ + -Defi-cc=$(TARGET_CC) \ + -Defi-ld=$(TARGET_LD) \ + -Defi-libdir=$(STAGING_DIR)/usr/lib \ + -Defi-ldsdir=$(STAGING_DIR)/usr/lib \ + -Defi-includedir=$(STAGING_DIR)/usr/include/efi + +SYSTEMD_BOOT_EFI_ARCH = $(call qstrip,$(BR2_PACKAGE_SYSTEMD_BOOT_EFI_ARCH)) +define SYSTEMD_INSTALL_BOOT_FILES + $(INSTALL) -D -m 0644 $(@D)/build/src/boot/efi/systemd-boot$(SYSTEMD_BOOT_EFI_ARCH).efi \ + $(BINARIES_DIR)/efi-part/EFI/BOOT/boot$(SYSTEMD_BOOT_EFI_ARCH).efi + echo "boot$(SYSTEMD_BOOT_EFI_ARCH).efi" > \ + $(BINARIES_DIR)/efi-part/startup.nsh + $(INSTALL) -D -m 0644 $(SYSTEMD_PKGDIR)/boot-files/loader.conf \ + $(BINARIES_DIR)/efi-part/loader/loader.conf + $(INSTALL) -D -m 0644 $(SYSTEMD_PKGDIR)/boot-files/buildroot.conf \ + $(BINARIES_DIR)/efi-part/loader/entries/buildroot.conf +endef + +else +SYSTEMD_CONF_OPTS += -Defi=false -Dgnu-efi=false +endif # BR2_PACKAGE_SYSTEMD_BOOT == y + +SYSTEMD_FALLBACK_HOSTNAME = $(call qstrip,$(BR2_TARGET_GENERIC_HOSTNAME)) +ifneq ($(SYSTEMD_FALLBACK_HOSTNAME),) +SYSTEMD_CONF_OPTS += -Dfallback-hostname=$(SYSTEMD_FALLBACK_HOSTNAME) +endif + +define SYSTEMD_INSTALL_INIT_HOOK + ln -fs multi-user.target \ + $(TARGET_DIR)/usr/lib/systemd/system/default.target +endef + +define SYSTEMD_INSTALL_MACHINEID_HOOK + touch $(TARGET_DIR)/etc/machine-id +endef + +SYSTEMD_POST_INSTALL_TARGET_HOOKS += \ + SYSTEMD_INSTALL_INIT_HOOK \ + SYSTEMD_INSTALL_MACHINEID_HOOK + +define SYSTEMD_INSTALL_IMAGES_CMDS + $(SYSTEMD_INSTALL_BOOT_FILES) +endef + +define SYSTEMD_USERS + # udev user groups + # systemd user groups + - - systemd-journal -1 * - - - Journal + $(SYSTEMD_REMOTE_USER) + $(SYSTEMD_COREDUMP_USER) + $(SYSTEMD_NETWORKD_USER) + $(SYSTEMD_RESOLVED_USER) + $(SYSTEMD_TIMESYNCD_USER) +endef + +define SYSTEMD_INSTALL_NSSCONFIG_HOOK + $(SED) '/^passwd:/ {/systemd/! s/$$/ systemd/}' \ + -e '/^group:/ {/systemd/! s/$$/ [SUCCESS=merge] systemd/}' \ + $(if $(BR2_PACKAGE_SYSTEMD_RESOLVED), \ + -e '/^hosts:/ s/[[:space:]]*mymachines//' \ + -e '/^hosts:/ {/resolve/! s/files/files resolve [!UNAVAIL=return]/}' ) \ + $(if $(BR2_PACKAGE_SYSTEMD_MYHOSTNAME), \ + -e '/^hosts:/ {/myhostname/! s/$$/ myhostname/}' ) \ + $(if $(BR2_PACKAGE_SYSTEMD_MACHINED), \ + -e '/^passwd:/ {/mymachines/! s/files/files mymachines/}' \ + -e '/^group:/ {/mymachines/! s/files/files [SUCCESS=merge] mymachines/}' \ + -e '/^hosts:/ {/mymachines/! s/files/files mymachines/}' ) \ + $(TARGET_DIR)/etc/nsswitch.conf +endef + +SYSTEMD_TARGET_FINALIZE_HOOKS += \ + SYSTEMD_INSTALL_NSSCONFIG_HOOK \ + SYSTEMD_INSTALL_RESOLVCONF_HOOK + +ifneq ($(call qstrip,$(BR2_TARGET_GENERIC_GETTY_PORT)),) +# systemd provides multiple units to autospawn getty as neede +# * getty@.service to start a getty on normal TTY +# * sertial-getty@.service to start a getty on serial lines +# * console-getty.service for generic /dev/console +# * container-getty@.service for a getty on /dev/pts/* +# +# the generator systemd-getty-generator will +# * read the console= kernel command line parameter +# * enable one of the above units depending on what it finds +# +# Systemd defaults to enablinb getty@tty1.service +# +# What we want to do +# * Enable a getty on $BR2_TARGET_GENERIC_TTY_PATH +# * Set the baudrate for all units according to BR2_TARGET_GENERIC_GETTY_BAUDRATE +# * Always enable a getty on the console using systemd-getty-generator +# (backward compatibility with previous releases of buildroot) +# +# What we do +# * disable getty@tty1 (enabled by upstream systemd) +# * enable getty@xxx if $BR2_TARGET_GENERIC_TTY_PATH is a tty +# * enable serial-getty@xxx for other $BR2_TARGET_GENERIC_TTY_PATH +# * rewrite baudrates if a baudrate is provided +define SYSTEMD_INSTALL_SERVICE_TTY + mkdir -p $(TARGET_DIR)/usr/lib/systemd/system/getty@.service.d; \ + printf '[Install]\nDefaultInstance=\n' \ + >$(TARGET_DIR)/usr/lib/systemd/system/getty@.service.d/buildroot-console.conf; \ + if [ $(BR2_TARGET_GENERIC_GETTY_PORT) = "console" ]; \ + then \ + : ; \ + elif echo $(BR2_TARGET_GENERIC_GETTY_PORT) | egrep -q 'tty[0-9]*$$'; \ + then \ + printf '[Install]\nDefaultInstance=%s\n' \ + $(call qstrip,$(BR2_TARGET_GENERIC_GETTY_PORT)) \ + >$(TARGET_DIR)/usr/lib/systemd/system/getty@.service.d/buildroot-console.conf; \ + else \ + mkdir -p $(TARGET_DIR)/usr/lib/systemd/system/serial-getty@.service.d;\ + printf '[Install]\nDefaultInstance=%s\n' \ + $(call qstrip,$(BR2_TARGET_GENERIC_GETTY_PORT)) \ + >$(TARGET_DIR)/usr/lib/systemd/system/serial-getty@.service.d/buildroot-console.conf;\ + fi; \ + if [ $(call qstrip,$(BR2_TARGET_GENERIC_GETTY_BAUDRATE)) -gt 0 ] ; \ + then \ + $(SED) 's/115200/$(BR2_TARGET_GENERIC_GETTY_BAUDRATE),115200/' $(TARGET_DIR)/lib/systemd/system/getty@.service; \ + $(SED) 's/115200/$(BR2_TARGET_GENERIC_GETTY_BAUDRATE),115200/' $(TARGET_DIR)/lib/systemd/system/serial-getty@.service; \ + $(SED) 's/115200/$(BR2_TARGET_GENERIC_GETTY_BAUDRATE),115200/' $(TARGET_DIR)/lib/systemd/system/console-getty@.service; \ + $(SED) 's/115200/$(BR2_TARGET_GENERIC_GETTY_BAUDRATE),115200/' $(TARGET_DIR)/lib/systemd/system/container-getty@.service; \ + fi; \ + if [ "$(BR2_TARGET_GENERIC_GETTY_AUTOLOGIN)" = "y" ] ; \ + then \ + $(SED) 's/-o[[:space:]]'"'"'-p[[:space:]]--[[:space:]]\\\\u'"'"'/-a root/' $(TARGET_DIR)/lib/systemd/system/getty@.service; \ + $(SED) 's/-o[[:space:]]'"'"'-p[[:space:]]--[[:space:]]\\\\u'"'"'/-a root/' $(TARGET_DIR)/lib/systemd/system/serial-getty@.service; \ + $(SED) 's/-o[[:space:]]'"'"'-p[[:space:]]--[[:space:]]\\\\u'"'"'/-a root/' $(TARGET_DIR)/lib/systemd/system/console-getty@.service; \ + $(SED) 's/-o[[:space:]]'"'"'-p[[:space:]]--[[:space:]]\\\\u'"'"'/-a root/' $(TARGET_DIR)/lib/systemd/system/container-getty@.service; \ + fi; \ + if [ "$(BR2_TARGET_TTY0_GETTY_ENABLE)" = "y" ] ; \ + then \ + cd $(TARGET_DIR)/lib/systemd/system && ln -s getty@.service getty@tty0.service; \ + fi +endef +endif + +define SYSTEMD_INSTALL_PRESET + $(INSTALL) -D -m 644 $(SYSTEMD_PKGDIR)/80-buildroot.preset $(TARGET_DIR)/usr/lib/systemd/system-preset/80-buildroot.preset +endef + +define SYSTEMD_INSTALL_INIT_SYSTEMD + $(SYSTEMD_INSTALL_PRESET) + $(SYSTEMD_INSTALL_SERVICE_TTY) + $(SYSTEMD_INSTALL_NETWORK_CONFS) +endef + +define SYSTEMD_PRESET_ALL + $(HOST_DIR)/bin/systemctl --root=$(TARGET_DIR) preset-all +endef +SYSTEMD_ROOTFS_PRE_CMD_HOOKS += SYSTEMD_PRESET_ALL + +SYSTEMD_CONF_ENV = $(HOST_UTF8_LOCALE_ENV) +SYSTEMD_NINJA_ENV = $(HOST_UTF8_LOCALE_ENV) + +define SYSTEMD_LINUX_CONFIG_FIXUPS + $(call KCONFIG_ENABLE_OPT,CONFIG_CGROUPS) + $(call KCONFIG_ENABLE_OPT,CONFIG_FHANDLE) + $(call KCONFIG_ENABLE_OPT,CONFIG_EPOLL) + $(call KCONFIG_ENABLE_OPT,CONFIG_SIGNALFD) + $(call KCONFIG_ENABLE_OPT,CONFIG_TIMERFD) + $(call KCONFIG_ENABLE_OPT,CONFIG_INOTIFY_USER) + $(call KCONFIG_ENABLE_OPT,CONFIG_PROC_FS) + $(call KCONFIG_ENABLE_OPT,CONFIG_SYSFS) + $(call KCONFIG_ENABLE_OPT,CONFIG_AUTOFS4_FS) + $(call KCONFIG_ENABLE_OPT,CONFIG_TMPFS_POSIX_ACL) + $(call KCONFIG_ENABLE_OPT,CONFIG_TMPFS_XATTR) +endef + +# We need a very minimal host variant, so we disable as much as possible. +HOST_SYSTEMD_CONF_OPTS = \ + -Dsplit-bin=true \ + -Dsplit-usr=false \ + --prefix=/usr \ + --libdir=lib \ + --sysconfdir=/etc \ + --localstatedir=/var \ + -Dmode=release \ + -Dutmp=false \ + -Dhibernate=false \ + -Dldconfig=false \ + -Dresolve=false \ + -Defi=false \ + -Dtpm=false \ + -Denvironment-d=false \ + -Dbinfmt=false \ + -Drepart=false \ + -Dcoredump=false \ + -Dpstore=false \ + -Dlogind=false \ + -Dhostnamed=false \ + -Dlocaled=false \ + -Dmachined=false \ + -Dportabled=false \ + -Duserdb=false \ + -Dhomed=false \ + -Dnetworkd=false \ + -Dtimedated=false \ + -Dtimesyncd=false \ + -Dremote=false \ + -Dcreate-log-dirs=false \ + -Dnss-myhostname=false \ + -Dnss-mymachines=false \ + -Dnss-resolve=false \ + -Dnss-systemd=false \ + -Dfirstboot=false \ + -Drandomseed=false \ + -Dbacklight=false \ + -Dvconsole=false \ + -Dquotacheck=false \ + -Dsysusers=false \ + -Dtmpfiles=false \ + -Dimportd=false \ + -Dhwdb=false \ + -Drfkill=false \ + -Dman=false \ + -Dhtml=false \ + -Dsmack=false \ + -Dpolkit=false \ + -Dblkid=false \ + -Didn=false \ + -Dadm-group=false \ + -Dwheel-group=false \ + -Dzlib=false \ + -Dgshadow=false \ + -Dima=false \ + -Dtests=false \ + -Dglib=false \ + -Dacl=false \ + -Dsysvinit-path='' \ + -Dinitrd=false \ + -Dxdg-autostart=false \ + -Dkernel-install=false \ + -Dsystemd-analyze=false \ + -Dlibcryptsetup=false \ + -Daudit=false \ + -Dzstd=false + +HOST_SYSTEMD_DEPENDENCIES = \ + $(BR2_COREUTILS_HOST_DEPENDENCY) \ + host-util-linux \ + host-patchelf \ + host-libcap \ + host-gperf + +HOST_SYSTEMD_NINJA_ENV = DESTDIR=$(HOST_DIR) + +# Fix RPATH After installation +# * systemd provides a install_rpath instruction to meson because the binaries +# need to link with libsystemd which is not in a standard path +# * meson can only replace the RPATH, not append to it +# * the original rpath is thus lost. +# * the original path had been tweaked by buildroot via LDFLAGS to add +# $(HOST_DIR)/lib +# * thus re-tweak rpath after the installation for all binaries that need it +HOST_SYSTEMD_HOST_TOOLS = busctl journalctl systemctl systemd-* udevadm + +define HOST_SYSTEMD_FIX_RPATH + for f in $(addprefix $(HOST_DIR)/bin/,$(HOST_SYSTEMD_HOST_TOOLS)); do \ + [ -e $$f ] || continue; \ + $(HOST_DIR)/bin/patchelf --set-rpath $(HOST_DIR)/lib:$(HOST_DIR)/lib/systemd $${f} \ + || exit 1; \ + done +endef +HOST_SYSTEMD_POST_INSTALL_HOOKS += HOST_SYSTEMD_FIX_RPATH + +$(eval $(meson-package)) +$(eval $(host-meson-package)) diff --git a/package/sysvinit/0001-Makefile-disable-stack-protector-strong.patch b/package/sysvinit/0001-Makefile-disable-stack-protector-strong.patch new file mode 100644 index 00000000..066bdb36 --- /dev/null +++ b/package/sysvinit/0001-Makefile-disable-stack-protector-strong.patch @@ -0,0 +1,33 @@ +From 0759f3f9bb2850df455599e7c82eda4ec804e3b6 Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Wed, 10 Mar 2021 22:57:50 +0100 +Subject: [PATCH] Makefile: disable stack-protector-strong + +Fixes: + + .../aarch64-buildroot-linux-uclibc/bin/ld: runlevel.o: in function `main': + runlevel.c:(.text.startup+0x4): undefined reference to `__stack_chk_guard' + .../aarch64-buildroot-linux-uclibc/bin/ld: cannot find -lssp_nonshared + .../aarch64-buildroot-linux-uclibc/bin/ld: cannot find -lssp + +Signed-off-by: Peter Seiderer +--- + src/Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/Makefile b/src/Makefile +index 1b368dc..1985929 100644 +--- a/src/Makefile ++++ b/src/Makefile +@@ -10,7 +10,7 @@ + + CPPFLAGS = + CFLAGS ?= -O2 +-override CFLAGS += -ansi -fomit-frame-pointer -fstack-protector-strong -W -Wall -Wunreachable-code -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -D_XOPEN_SOURCE -D_GNU_SOURCE -DVERSION=\"$(VERSION)\" ++override CFLAGS += -ansi -fomit-frame-pointer -W -Wall -Wunreachable-code -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -D_XOPEN_SOURCE -D_GNU_SOURCE -DVERSION=\"$(VERSION)\" + override CFLAGS += $(shell getconf LFS_CFLAGS) + STATIC = + MANDB := s@^\('\\\\\"\)[^\*-]*-\*- coding: [^[:blank:]]\+ -\*-@\1@ +-- +2.30.1 + diff --git a/package/sysvinit/Config.in b/package/sysvinit/Config.in new file mode 100644 index 00000000..7f27a70f --- /dev/null +++ b/package/sysvinit/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_SYSVINIT + bool "sysvinit" + depends on BR2_USE_MMU # fork() + depends on BR2_INIT_SYSV + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + help + System V style implementation of /sbin/init, parent of all + processes + + http://savannah.nongnu.org/projects/sysvinit diff --git a/package/sysvinit/inittab b/package/sysvinit/inittab new file mode 100644 index 00000000..a3147103 --- /dev/null +++ b/package/sysvinit/inittab @@ -0,0 +1,31 @@ +# /etc/inittab +# +# This inittab is a basic inittab sample for sysvinit, which mimics +# Buildroot's default inittab for BusyBox. +id:3:initdefault: + +si0::sysinit:/bin/mount -t proc proc /proc +si1::sysinit:/bin/mount -o remount,rw / +si2::sysinit:/bin/mkdir -p /dev/pts /dev/shm +si3::sysinit:/bin/mount -a +si4::sysinit:/sbin/swapon -a +si5::sysinit:/bin/ln -sf /proc/self/fd /dev/fd 2>/dev/null +si6::sysinit:/bin/ln -sf /proc/self/fd/0 /dev/stdin 2>/dev/null +si7::sysinit:/bin/ln -sf /proc/self/fd/1 /dev/stdout 2>/dev/null +si8::sysinit:/bin/ln -sf /proc/self/fd/2 /dev/stderr 2>/dev/null +si9::sysinit:/bin/hostname -F /etc/hostname +rcS:12345:wait:/etc/init.d/rcS + +# S0:1:respawn:/sbin/getty -L ttyS0 115200 vt100 # GENERIC_SERIAL + +# Stuff to do for the 3-finger salute +#ca::ctrlaltdel:/sbin/reboot + +# Stuff to do before rebooting +shd0:06:wait:/etc/init.d/rcK +shd1:06:wait:/sbin/swapoff -a +shd2:06:wait:/bin/umount -a -r + +# The usual halt or reboot actions +hlt0:0:wait:/sbin/halt -dhp +reb0:6:wait:/sbin/reboot diff --git a/package/sysvinit/sysvinit.hash b/package/sysvinit/sysvinit.hash new file mode 100644 index 00000000..24e5333d --- /dev/null +++ b/package/sysvinit/sysvinit.hash @@ -0,0 +1,5 @@ +# Locally computed: +sha256 7b2c3ffaf19eaf1ca80268762f85f9e4eb8e3c973213d49f9802605b72caa7dc sysvinit-2.98.tar.xz + +# Hash for license files: +sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING diff --git a/package/sysvinit/sysvinit.mk b/package/sysvinit/sysvinit.mk new file mode 100644 index 00000000..7deec969 --- /dev/null +++ b/package/sysvinit/sysvinit.mk @@ -0,0 +1,50 @@ +################################################################################ +# +# sysvinit +# +################################################################################ + +SYSVINIT_VERSION = 2.98 +SYSVINIT_SOURCE = sysvinit-$(SYSVINIT_VERSION).tar.xz +SYSVINIT_SITE = http://download.savannah.nongnu.org/releases/sysvinit +SYSVINIT_LICENSE = GPL-2.0+ +SYSVINIT_LICENSE_FILES = COPYING +SYSVINIT_CPE_ID_VENDOR = sysvinit_project + +SYSVINIT_MAKE_OPTS = SYSROOT=$(STAGING_DIR) + +ifeq ($(BR2_PACKAGE_LIBSELINUX),y) +SYSVINIT_DEPENDENCIES += libselinux +SYSVINIT_MAKE_OPTS += WITH_SELINUX="yes" +endif + +define SYSVINIT_BUILD_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) $(SYSVINIT_MAKE_OPTS) -C $(@D)/src +endef + +define SYSVINIT_INSTALL_TARGET_CMDS + for x in halt init shutdown killall5; do \ + $(INSTALL) -D -m 0755 $(@D)/src/$$x $(TARGET_DIR)/sbin/$$x || exit 1; \ + done + $(INSTALL) -D -m 0644 package/sysvinit/inittab $(TARGET_DIR)/etc/inittab + ln -sf /sbin/halt $(TARGET_DIR)/sbin/reboot + ln -sf /sbin/halt $(TARGET_DIR)/sbin/poweroff + ln -sf killall5 $(TARGET_DIR)/sbin/pidof +endef + +ifeq ($(BR2_TARGET_GENERIC_GETTY),y) +define SYSVINIT_SET_GETTY + $(SED) '/# GENERIC_SERIAL$$/s~^.*#~$(shell echo $(SYSTEM_GETTY_PORT) | tail -c+4)::respawn:/sbin/getty -L $(SYSTEM_GETTY_OPTIONS) $(SYSTEM_GETTY_PORT) $(SYSTEM_GETTY_BAUDRATE) $(SYSTEM_GETTY_TERM) #~' \ + $(TARGET_DIR)/etc/inittab +endef +else +define SYSVINIT_SET_GETTY + $(SED) '/# GENERIC_SERIAL$$/s~^.*#~# S0:1:respawn:/sbin/getty -L ttyS0 115200 vt100 #~' \ + $(TARGET_DIR)/etc/inittab +endef +endif # BR2_TARGET_GENERIC_GETTY +SYSVINIT_TARGET_FINALIZE_HOOKS += SYSVINIT_SET_GETTY + +SYSVINIT_TARGET_FINALIZE_HOOKS += SYSTEM_REMOUNT_ROOT_INITTAB + +$(eval $(generic-package)) diff --git a/package/szip/Config.in b/package/szip/Config.in new file mode 100644 index 00000000..5a24362f --- /dev/null +++ b/package/szip/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_SZIP + bool "szip" + help + Szip is an implementation of the extended-Rice lossless + compression algorithm. + + The Consultative Committee on Space Data Systems (CCSDS) has + adopted the extended-Rice algorithm for international + standards for space applications[1,6,7]. Szip is reported to + provide fast and effective compression, specifically for the + EOS data generated by the NASA Earth Observatory System + (EOS)[1]. It was originally developed at University of New + Mexico (UNM) and integrated with HDF4 by UNM researchers and + developers. + + http://www.hdfgroup.org/doc_resource/SZIP diff --git a/package/szip/szip.hash b/package/szip/szip.hash new file mode 100644 index 00000000..3b582d90 --- /dev/null +++ b/package/szip/szip.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 21ee958b4f2d4be2c9cabfa5e1a94877043609ce86fde5f286f105f7ff84d412 szip-2.1.1.tar.gz +sha256 98cc66747133b26563fefc4630ad4c8c7848c722c7b8a60ecd4afbc4c7d7eb01 COPYING diff --git a/package/szip/szip.mk b/package/szip/szip.mk new file mode 100644 index 00000000..7a8a5a82 --- /dev/null +++ b/package/szip/szip.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# szip +# +################################################################################ + +SZIP_VERSION = 2.1.1 +SZIP_SITE = http://www.hdfgroup.org/ftp/lib-external/szip/2.1.1/src +SZIP_LICENSE = szip license +SZIP_LICENSE_FILES = COPYING +SZIP_INSTALL_STAGING = YES + +$(eval $(autotools-package)) diff --git a/package/taglib/0001-fix-taglib-config-file-for-cross-compiling-906.patch b/package/taglib/0001-fix-taglib-config-file-for-cross-compiling-906.patch new file mode 100644 index 00000000..2c6ebd74 --- /dev/null +++ b/package/taglib/0001-fix-taglib-config-file-for-cross-compiling-906.patch @@ -0,0 +1,66 @@ +From 7470f92a67375d00e53b3785a88fa7b26ad6f1da Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Fri, 17 May 2019 13:13:35 +0200 +Subject: [PATCH] fix taglib-config file for cross compiling (#906) +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The current taglib-config program does not work for cross-compiling as it only +returns the paths to the host, which breaks building programs which uses +`taglib-config` to link against taglib. + +Fix this by passing sysroot to the `prefix` and `exec_prefix` fields. + +Backported from: 7470f92a67375d00e53b3785a88fa7b26ad6f1da + +Signed-off-by: Jörg Krause +--- + CMakeLists.txt | 2 +- + taglib-config.cmake | 10 +++++----- + 2 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 2de06324..1a0302c4 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -105,7 +105,7 @@ math(EXPR TAGLIB_SOVERSION_PATCH "${TAGLIB_SOVERSION_REVISION}") + include(ConfigureChecks.cmake) + + if(NOT WIN32) +- configure_file("${CMAKE_CURRENT_SOURCE_DIR}/taglib-config.cmake" "${CMAKE_CURRENT_BINARY_DIR}/taglib-config") ++ configure_file("${CMAKE_CURRENT_SOURCE_DIR}/taglib-config.cmake" "${CMAKE_CURRENT_BINARY_DIR}/taglib-config" @ONLY) + install(PROGRAMS "${CMAKE_CURRENT_BINARY_DIR}/taglib-config" DESTINATION "${BIN_INSTALL_DIR}") + endif() + +diff --git a/taglib-config.cmake b/taglib-config.cmake +index 2bc2811a..96ef6883 100644 +--- a/taglib-config.cmake ++++ b/taglib-config.cmake +@@ -14,10 +14,10 @@ EOH + exit 1; + } + +-prefix=${CMAKE_INSTALL_PREFIX} +-exec_prefix=${CMAKE_INSTALL_PREFIX} +-libdir=${LIB_INSTALL_DIR} +-includedir=${INCLUDE_INSTALL_DIR} ++prefix=@CMAKE_SYSROOT@@CMAKE_INSTALL_PREFIX@ ++exec_prefix=@CMAKE_SYSROOT@@CMAKE_INSTALL_PREFIX@ ++libdir=${exec_prefix}/lib ++includedir=${prefix}/include + + flags="" + +@@ -35,7 +35,7 @@ do + flags="$flags -I$includedir/taglib" + ;; + --version) +- echo ${TAGLIB_LIB_VERSION_STRING} ++ echo @TAGLIB_LIB_VERSION_STRING@ + ;; + --prefix) + echo $prefix +-- +2.22.0 + diff --git a/package/taglib/0002-Don-t-assume-TDRC-is-an-instance-of-TextIdentificationFrame.patch b/package/taglib/0002-Don-t-assume-TDRC-is-an-instance-of-TextIdentificationFrame.patch new file mode 100644 index 00000000..c7ca9500 --- /dev/null +++ b/package/taglib/0002-Don-t-assume-TDRC-is-an-instance-of-TextIdentificationFrame.patch @@ -0,0 +1,33 @@ +From eb9ded1206f18f2c319157337edea2533a40bea6 Mon Sep 17 00:00:00 2001 +From: "Stephen F. Booth" +Date: Sun, 23 Jul 2017 10:11:09 -0400 +Subject: [PATCH] Don't assume TDRC is an instance of TextIdentificationFrame + +If TDRC is encrypted, FrameFactory::createFrame() returns UnknownFrame +which causes problems in rebuildAggregateFrames() when it is assumed +that TDRC is a TextIdentificationFrame +[Retrieved from: +https://github.com/taglib/taglib/pull/831/commits/eb9ded1206f18f2c319157337edea2533a40bea6] +Signed-off-by: Fabrice Fontaine +--- + taglib/mpeg/id3v2/id3v2framefactory.cpp | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/taglib/mpeg/id3v2/id3v2framefactory.cpp b/taglib/mpeg/id3v2/id3v2framefactory.cpp +index 759a9b7be..9347ab869 100644 +--- a/taglib/mpeg/id3v2/id3v2framefactory.cpp ++++ b/taglib/mpeg/id3v2/id3v2framefactory.cpp +@@ -334,10 +334,11 @@ void FrameFactory::rebuildAggregateFrames(ID3v2::Tag *tag) const + tag->frameList("TDAT").size() == 1) + { + TextIdentificationFrame *tdrc = +- static_cast(tag->frameList("TDRC").front()); ++ dynamic_cast(tag->frameList("TDRC").front()); + UnknownFrame *tdat = static_cast(tag->frameList("TDAT").front()); + +- if(tdrc->fieldList().size() == 1 && ++ if(tdrc && ++ tdrc->fieldList().size() == 1 && + tdrc->fieldList().front().size() == 4 && + tdat->data().size() >= 5) + { diff --git a/package/taglib/0003-Fixed-OOB-read-when-loading-invalid-ogg-flac-file.patch b/package/taglib/0003-Fixed-OOB-read-when-loading-invalid-ogg-flac-file.patch new file mode 100644 index 00000000..b245659c --- /dev/null +++ b/package/taglib/0003-Fixed-OOB-read-when-loading-invalid-ogg-flac-file.patch @@ -0,0 +1,45 @@ +From 2c4ae870ec086f2ddd21a47861a3709c36faac45 Mon Sep 17 00:00:00 2001 +From: Scott Gayou +Date: Tue, 9 Oct 2018 18:46:55 -0500 +Subject: [PATCH] Fixed OOB read when loading invalid ogg flac file. (#868) + (#869) + +CVE-2018-11439 is caused by a failure to check the minimum length +of a ogg flac header. This header is detailed in full at: +https://xiph.org/flac/ogg_mapping.html. Added more strict checking +for entire header. +[Retrieved from: +https://github.com/taglib/taglib/commit/2c4ae870ec086f2ddd21a47861a3709c36faac45] +Signed-off-by: Fabrice Fontaine +--- + taglib/ogg/flac/oggflacfile.cpp | 14 ++++++++++++-- + 1 file changed, 12 insertions(+), 2 deletions(-) + +diff --git a/taglib/ogg/flac/oggflacfile.cpp b/taglib/ogg/flac/oggflacfile.cpp +index 53d04508a..07ea9dccc 100644 +--- a/taglib/ogg/flac/oggflacfile.cpp ++++ b/taglib/ogg/flac/oggflacfile.cpp +@@ -231,11 +231,21 @@ void Ogg::FLAC::File::scan() + + if(!metadataHeader.startsWith("fLaC")) { + // FLAC 1.1.2+ ++ // See https://xiph.org/flac/ogg_mapping.html for the header specification. ++ if(metadataHeader.size() < 13) ++ return; ++ ++ if(metadataHeader[0] != 0x7f) ++ return; ++ + if(metadataHeader.mid(1, 4) != "FLAC") + return; + +- if(metadataHeader[5] != 1) +- return; // not version 1 ++ if(metadataHeader[5] != 1 && metadataHeader[6] != 0) ++ return; // not version 1.0 ++ ++ if(metadataHeader.mid(9, 4) != "fLaC") ++ return; + + metadataHeader = metadataHeader.mid(13); + } diff --git a/package/taglib/Config.in b/package/taglib/Config.in new file mode 100644 index 00000000..6a87a132 --- /dev/null +++ b/package/taglib/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_TAGLIB + bool "taglib" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_USE_WCHAR + help + TagLib is a library for reading and editing the meta-data of + several popular audio formats. Currently it supports both + ID3v1 and ID3v2 for MP3 files, Ogg Vorbis comments and ID3 + tags and Vorbis comments in FLAC, MPC, Speex, WavPack and + TrueAudio files. + + http://taglib.org/ + +comment "taglib needs a toolchain w/ C++, wchar" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR diff --git a/package/taglib/taglib.hash b/package/taglib/taglib.hash new file mode 100644 index 00000000..4b99e86d --- /dev/null +++ b/package/taglib/taglib.hash @@ -0,0 +1,4 @@ +# Locally calculated +sha256 b6d1a5a610aae6ff39d93de5efd0fdc787aa9e9dc1e7026fa4c961b26563526b taglib-1.11.1.tar.gz +sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LGPL +sha256 53692a2ed6c6a2c6ec9b32dd0b820dfae91e0a1fcdf625ca9ed0bdf8705fcc4f COPYING.MPL diff --git a/package/taglib/taglib.mk b/package/taglib/taglib.mk new file mode 100644 index 00000000..f31f1046 --- /dev/null +++ b/package/taglib/taglib.mk @@ -0,0 +1,30 @@ +################################################################################ +# +# taglib +# +################################################################################ + +TAGLIB_VERSION = 1.11.1 +TAGLIB_SITE = http://taglib.github.io/releases +TAGLIB_INSTALL_STAGING = YES +TAGLIB_LICENSE = LGPL-2.1 or MPL-1.1 +TAGLIB_LICENSE_FILES = COPYING.LGPL COPYING.MPL +TAGLIB_CPE_ID_VENDOR = taglib + +# 0002-Don-t-assume-TDRC-is-an-instance-of-TextIdentificationFrame.patch +TAGLIB_IGNORE_CVES += CVE-2017-12678 + +# 0003-Fixed-OOB-read-when-loading-invalid-ogg-flac-file.patch +TAGLIB_IGNORE_CVES += CVE-2018-11439 + +ifeq ($(BR2_PACKAGE_ZLIB),y) +TAGLIB_DEPENDENCIES += zlib +endif + +define TAGLIB_REMOVE_DEVFILE + rm -f $(TARGET_DIR)/usr/bin/taglib-config +endef + +TAGLIB_POST_INSTALL_TARGET_HOOKS += TAGLIB_REMOVE_DEVFILE + +$(eval $(cmake-package)) diff --git a/package/tar/0001-Fix-memory-leak-in-read_header.patch b/package/tar/0001-Fix-memory-leak-in-read_header.patch new file mode 100644 index 00000000..874b27df --- /dev/null +++ b/package/tar/0001-Fix-memory-leak-in-read_header.patch @@ -0,0 +1,129 @@ +From d9d4435692150fa8ff68e1b1a473d187cc3fd777 Mon Sep 17 00:00:00 2001 +From: Sergey Poznyakoff +Date: Sun, 17 Jan 2021 20:41:11 +0200 +Subject: [PATCH] Fix memory leak in read_header + +Bug reported in https://savannah.gnu.org/bugs/?59897 + +* src/list.c (read_header): Don't return directly from the loop. +Instead set the status and break. Return the status. Free +next_long_name and next_long_link before returning. + +Signed-off-by: Peter Korsgaard +--- + src/list.c | 40 ++++++++++++++++++++++++++++------------ + 1 file changed, 28 insertions(+), 12 deletions(-) + +diff --git a/src/list.c b/src/list.c +index e40a5c8..d7ef441 100644 +--- a/src/list.c ++++ b/src/list.c +@@ -408,26 +408,27 @@ read_header (union block **return_block, struct tar_stat_info *info, + enum read_header_mode mode) + { + union block *header; +- union block *header_copy; + char *bp; + union block *data_block; + size_t size, written; +- union block *next_long_name = 0; +- union block *next_long_link = 0; ++ union block *next_long_name = NULL; ++ union block *next_long_link = NULL; + size_t next_long_name_blocks = 0; + size_t next_long_link_blocks = 0; +- ++ enum read_header status = HEADER_SUCCESS; ++ + while (1) + { +- enum read_header status; +- + header = find_next_block (); + *return_block = header; + if (!header) +- return HEADER_END_OF_FILE; ++ { ++ status = HEADER_END_OF_FILE; ++ break; ++ } + + if ((status = tar_checksum (header, false)) != HEADER_SUCCESS) +- return status; ++ break; + + /* Good block. Decode file size and return. */ + +@@ -437,7 +438,10 @@ read_header (union block **return_block, struct tar_stat_info *info, + { + info->stat.st_size = OFF_FROM_HEADER (header->header.size); + if (info->stat.st_size < 0) +- return HEADER_FAILURE; ++ { ++ status = HEADER_FAILURE; ++ break; ++ } + } + + if (header->header.typeflag == GNUTYPE_LONGNAME +@@ -447,10 +451,14 @@ read_header (union block **return_block, struct tar_stat_info *info, + || header->header.typeflag == SOLARIS_XHDTYPE) + { + if (mode == read_header_x_raw) +- return HEADER_SUCCESS_EXTENDED; ++ { ++ status = HEADER_SUCCESS_EXTENDED; ++ break; ++ } + else if (header->header.typeflag == GNUTYPE_LONGNAME + || header->header.typeflag == GNUTYPE_LONGLINK) + { ++ union block *header_copy; + size_t name_size = info->stat.st_size; + size_t n = name_size % BLOCKSIZE; + size = name_size + BLOCKSIZE; +@@ -517,7 +525,10 @@ read_header (union block **return_block, struct tar_stat_info *info, + xheader_decode_global (&xhdr); + xheader_destroy (&xhdr); + if (mode == read_header_x_global) +- return HEADER_SUCCESS_EXTENDED; ++ { ++ status = HEADER_SUCCESS_EXTENDED; ++ break; ++ } + } + + /* Loop! */ +@@ -536,6 +547,7 @@ read_header (union block **return_block, struct tar_stat_info *info, + name = next_long_name->buffer + BLOCKSIZE; + recent_long_name = next_long_name; + recent_long_name_blocks = next_long_name_blocks; ++ next_long_name = NULL; + } + else + { +@@ -567,6 +579,7 @@ read_header (union block **return_block, struct tar_stat_info *info, + name = next_long_link->buffer + BLOCKSIZE; + recent_long_link = next_long_link; + recent_long_link_blocks = next_long_link_blocks; ++ next_long_link = NULL; + } + else + { +@@ -578,9 +591,12 @@ read_header (union block **return_block, struct tar_stat_info *info, + } + assign_string (&info->link_name, name); + +- return HEADER_SUCCESS; ++ break; + } + } ++ free (next_long_name); ++ free (next_long_link); ++ return status; + } + + #define ISOCTAL(c) ((c)>='0'&&(c)<='7') +-- +2.20.1 + diff --git a/package/tar/Config.in b/package/tar/Config.in new file mode 100644 index 00000000..caf12d6f --- /dev/null +++ b/package/tar/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_TAR + bool "tar" + depends on BR2_USE_WCHAR + depends on BR2_USE_MMU # fork() + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + help + A program that saves many files together into a single tape + or disk archive, and can restore individual files from the + archive. + + http://www.gnu.org/software/tar/ + +comment "tar needs a toolchain w/ wchar" + depends on !BR2_USE_WCHAR + depends on BR2_USE_MMU + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS diff --git a/package/tar/tar.hash b/package/tar/tar.hash new file mode 100644 index 00000000..72f0cd6f --- /dev/null +++ b/package/tar/tar.hash @@ -0,0 +1,4 @@ +# Locally calculated after checking signature +sha256 d0d3ae07f103323be809bc3eac0dcc386d52c5262499fe05511ac4788af1fdd8 tar-1.32.tar.xz +sha256 9fbfba0cba05233421dd619b8825e1ceb7c144e433c15ae48b68f17ede8d404a tar-1.32.cpio.gz +sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING diff --git a/package/tar/tar.mk b/package/tar/tar.mk new file mode 100644 index 00000000..c512d13e --- /dev/null +++ b/package/tar/tar.mk @@ -0,0 +1,57 @@ +################################################################################ +# +# tar +# +################################################################################ + +TAR_VERSION = 1.32 +TAR_SOURCE = tar-$(TAR_VERSION).tar.xz +TAR_SITE = $(BR2_GNU_MIRROR)/tar +# busybox installs in /bin, so we need tar to install as well in /bin +# so that we don't end up with two different tar +TAR_CONF_OPTS = --exec-prefix=/ +TAR_LICENSE = GPL-3.0+ +TAR_LICENSE_FILES = COPYING +TAR_CPE_ID_VENDOR = gnu +# only tar <= 1.16 +TAR_IGNORE_CVES += CVE-2007-4476 + +# 0001-Fix-memory-leak-in-read_header.patch +TAR_IGNORE_CVES += CVE-2021-20193 + +ifeq ($(BR2_PACKAGE_ACL),y) +TAR_DEPENDENCIES += acl +TAR_CONF_OPTS += --with-posix-acls +else +TAR_CONF_OPTS += --without-posix-acls +endif + +ifeq ($(BR2_PACKAGE_ATTR),y) +TAR_DEPENDENCIES += attr +TAR_CONF_OPTS += --with-xattrs +else +TAR_CONF_OPTS += --without-xattrs +endif + +$(eval $(autotools-package)) + +# host-tar: use cpio.gz instead of tar.gz to prevent chicken-egg problem +# of needing tar to build tar. +HOST_TAR_SOURCE = tar-$(TAR_VERSION).cpio.gz + +define HOST_TAR_EXTRACT_CMDS + mkdir -p $(@D) + cd $(@D) && \ + $(call suitable-extractor,$(HOST_TAR_SOURCE)) $(TAR_DL_DIR)/$(HOST_TAR_SOURCE) | cpio -i --preserve-modification-time + mv $(@D)/tar-$(HOST_TAR_VERSION)/* $(@D) + rmdir $(@D)/tar-$(HOST_TAR_VERSION) +endef + +HOST_TAR_CONF_OPTS = --without-selinux + +# we are built before ccache +HOST_TAR_CONF_ENV = \ + CC="$(HOSTCC_NOCCACHE)" \ + CXX="$(HOSTCXX_NOCCACHE)" + +$(eval $(host-autotools-package)) diff --git a/package/targetcli-fb/Config.in b/package/targetcli-fb/Config.in new file mode 100644 index 00000000..24ff3145 --- /dev/null +++ b/package/targetcli-fb/Config.in @@ -0,0 +1,15 @@ +comment "targetcli-fb depends on Python" + depends on !BR2_PACKAGE_PYTHON && !BR2_PACKAGE_PYTHON3 + +config BR2_PACKAGE_TARGETCLI_FB + bool "targetcli-fb" + depends on BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3 + select BR2_PACKAGE_PYTHON_CONFIGSHELL_FB + select BR2_PACKAGE_PYTHON_RTSLIB_FB + select BR2_PACKAGE_PYTHON_SIX + help + targetcli-fb is a command-line interface for configuring the + LIO generic SCSI target, present in 3.x Linux kernel + versions. + + https://github.com/open-iscsi/targetcli-fb diff --git a/package/targetcli-fb/S50target b/package/targetcli-fb/S50target new file mode 100644 index 00000000..3ce55ab4 --- /dev/null +++ b/package/targetcli-fb/S50target @@ -0,0 +1,46 @@ +#!/bin/sh +# +# Restore / clear the Linux "SCSI target" driver configuration with `targetctl` +# + +start() { + local ret + + printf "Restoring target configuration: " + /usr/bin/targetctl restore >/dev/null 2>&1 + ret=$? + echo "done" + + return $ret +} + +stop() { + local ret + + printf "Clearing target configuration: " + /usr/bin/targetctl clear >/dev/null 2>&1 + ret=$? + echo "done" + + return $ret +} + +restart() { + stop + start +} + +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart) + restart + ;; + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac diff --git a/package/targetcli-fb/target.service b/package/targetcli-fb/target.service new file mode 100644 index 00000000..400284ed --- /dev/null +++ b/package/targetcli-fb/target.service @@ -0,0 +1,14 @@ +[Unit] +Description=Restore LIO kernel target configuration +Requires=sys-kernel-config.mount +After=sys-kernel-config.mount network.target local-fs.target + +[Service] +Type=oneshot +RemainAfterExit=yes +ExecStart=/usr/bin/targetctl restore +ExecStop=/usr/bin/targetctl clear +SyslogIdentifier=target + +[Install] +WantedBy=multi-user.target diff --git a/package/targetcli-fb/targetcli-fb.hash b/package/targetcli-fb/targetcli-fb.hash new file mode 100644 index 00000000..207c38e0 --- /dev/null +++ b/package/targetcli-fb/targetcli-fb.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 0f32ab6f3ecd234280d55be5e89ce2b3a02f9c82c8dccaae66e26464cff8901a targetcli-fb-2.1.fb41.tar.gz +sha256 5df2a0d87d6c562f0ea11c688ac52532aa28d744cabc7994ff0537f64b3b3320 COPYING diff --git a/package/targetcli-fb/targetcli-fb.mk b/package/targetcli-fb/targetcli-fb.mk new file mode 100644 index 00000000..75643446 --- /dev/null +++ b/package/targetcli-fb/targetcli-fb.mk @@ -0,0 +1,34 @@ +################################################################################ +# +# targetcli-fb +# +################################################################################ + +# When upgrading the version, be sure to also upgrade python-rtslib-fb +# and python-configshell-fb at the same time. +TARGETCLI_FB_VERSION = 2.1.fb41 +TARGETCLI_FB_SITE = $(call github,open-iscsi,targetcli-fb,v$(TARGETCLI_FB_VERSION)) +TARGETCLI_FB_LICENSE = Apache-2.0 +TARGETCLI_FB_LICENSE_FILES = COPYING +TARGETCLI_FB_SETUP_TYPE = setuptools +TARGETCLI_FB_DEPENDENCIES = python-configshell-fb python-rtslib-fb python-six + +define TARGETCLI_FB_INSTALL_INIT_SYSV + $(INSTALL) -m 0755 -D package/targetcli-fb/S50target \ + $(TARGET_DIR)/etc/init.d/S50target +endef + +define TARGETCLI_FB_INSTALL_INIT_SYSTEMD + $(INSTALL) -m 0644 -D package/targetcli-fb/target.service \ + $(TARGET_DIR)/usr/lib/systemd/system/target.service +endef + +# Targetcli stores its configuration in /etc/target/saveconfig.json +# and complains if the /etc/target/ directory does not exist. +define TARGETCLI_FB_INSTALL_CONF_DIR + $(INSTALL) -m 0755 -d $(TARGET_DIR)/etc/target +endef + +TARGETCLI_FB_POST_INSTALL_TARGET_HOOKS += TARGETCLI_FB_INSTALL_CONF_DIR + +$(eval $(python-package)) diff --git a/package/taskd/0001-Fix-missing-cmakedefine-HAVE_GET_CURRENT_DIR_NAME.patch b/package/taskd/0001-Fix-missing-cmakedefine-HAVE_GET_CURRENT_DIR_NAME.patch new file mode 100644 index 00000000..960c71b9 --- /dev/null +++ b/package/taskd/0001-Fix-missing-cmakedefine-HAVE_GET_CURRENT_DIR_NAME.patch @@ -0,0 +1,28 @@ +From b067ab9bf667bb9257bb9eeaa6bf25f9a1a17f06 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Fri, 6 May 2016 23:35:42 +0200 +Subject: [PATCH] Fix missing cmakedefine HAVE_GET_CURRENT_DIR_NAME +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Jörg Krause +--- + cmake.h.in | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/cmake.h.in b/cmake.h.in +index 4124ce9..0b8f9d0 100644 +--- a/cmake.h.in ++++ b/cmake.h.in +@@ -51,6 +51,7 @@ + #cmakedefine HAVE_ST_BIRTHTIME + + /* Functions */ ++#cmakedefine HAVE_GET_CURRENT_DIR_NAME + #cmakedefine HAVE_TIMEGM + #cmakedefine HAVE_UUID_UNPARSE_LOWER + +-- +2.8.2 + diff --git a/package/taskd/0002-Use-correct-variables-for-GnuTLS-detection.patch b/package/taskd/0002-Use-correct-variables-for-GnuTLS-detection.patch new file mode 100644 index 00000000..f2365ea2 --- /dev/null +++ b/package/taskd/0002-Use-correct-variables-for-GnuTLS-detection.patch @@ -0,0 +1,32 @@ +From 88fee5c6eb2271d3de6b9878cd29a0494999aa18 Mon Sep 17 00:00:00 2001 +From: "Arnout Vandecappelle (Essensium/Mind)" +Date: Sun, 20 Nov 2016 23:46:45 +0100 +Subject: [PATCH] Use correct variables for GnuTLS detection + +At least with recent CMake, it seems the variables created by +find_package (GnuTLS) are called PC_GNUTLS_INCLUDE_DIRS and +PC_GNUTLS_LIBRARIES. + +Signed-off-by: Arnout Vandecappelle (Essensium/Mind) +--- + CMakeLists.txt | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index d8125d9..ccf827b 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -110,8 +110,8 @@ message ("-- Looking for GnuTLS") + find_package (GnuTLS REQUIRED) + if (GNUTLS_FOUND) + set (HAVE_LIBGNUTLS true) +- set (TASKD_INCLUDE_DIRS ${TASKD_INCLUDE_DIRS} ${GNUTLS_INCLUDE_DIR}) +- set (TASKD_LIBRARIES ${TASKD_LIBRARIES} ${GNUTLS_LIBRARIES}) ++ set (TASKD_INCLUDE_DIRS ${TASKD_INCLUDE_DIRS} ${PC_GNUTLS_INCLUDE_DIRS}) ++ set (TASKD_LIBRARIES ${TASKD_LIBRARIES} ${PC_GNUTLS_LIBRARIES}) + endif (GNUTLS_FOUND) + + message ("-- Looking for libuuid") +-- +2.10.2 + diff --git a/package/taskd/0003-CMakeLists-use-pkg-config-uuid-detection.patch b/package/taskd/0003-CMakeLists-use-pkg-config-uuid-detection.patch new file mode 100644 index 00000000..34139fef --- /dev/null +++ b/package/taskd/0003-CMakeLists-use-pkg-config-uuid-detection.patch @@ -0,0 +1,40 @@ +CMakeLists.txt: use pkg-config to detect uuid when possible + +In order to take into account the libraries used by libuuid when +building statically, using pkg-config is recommended. This patch +therefore improves the CMakeLists.txt to use pkg-config to detect +libuuid when pkg-config is available. + +Signed-off-by: Thomas Petazzoni + +Index: b/CMakeLists.txt +=================================================================== +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -6,6 +6,7 @@ + + include (CheckFunctionExists) + include (CheckStructHasMember) ++include (FindPkgConfig) + + set (HAVE_CMAKE true) + +@@ -119,8 +120,16 @@ + # Apple and FreeBSD include the uuid functions in their libc, rather than libuuid + check_function_exists (uuid_unparse_lower HAVE_UUID_UNPARSE_LOWER) + else (DARWIN OR FREEBSD) +- find_path (UUID_INCLUDE_DIR uuid/uuid.h) +- find_library (UUID_LIBRARY NAMES uuid) ++ if(PKG_CONFIG_FOUND) ++ pkg_check_modules(PC_UUID uuid) ++ if(PC_UUID_FOUND) ++ set (UUID_INCLUDE_DIR ${PC_UUID_INCLUDE_DIRS}) ++ set (UUID_LIBRARY ${PC_UUID_LIBRARIES}) ++ endif(PC_UUID_FOUND) ++ else(PKG_CONFIG_FOUND) ++ find_path (UUID_INCLUDE_DIR uuid/uuid.h) ++ find_library (UUID_LIBRARY NAMES uuid) ++ endif(PKG_CONFIG_FOUND) + if (UUID_INCLUDE_DIR AND UUID_LIBRARY) + set (TASKD_INCLUDE_DIRS ${TASKD_INCLUDE_DIRS} ${UUID_INCLUDE_DIR}) + set (TASKD_LIBRARIES ${TASKD_LIBRARIES} ${UUID_LIBRARY}) diff --git a/package/taskd/Config.in b/package/taskd/Config.in new file mode 100644 index 00000000..19d123fb --- /dev/null +++ b/package/taskd/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_TASKD + bool "taskd" + depends on !BR2_STATIC_LIBS # gnutls + depends on BR2_USE_WCHAR # gnutls + depends on BR2_USE_MMU # fork() + depends on BR2_INSTALL_LIBSTDCPP + select BR2_PACKAGE_GNUTLS + select BR2_PACKAGE_UTIL_LINUX + select BR2_PACKAGE_UTIL_LINUX_LIBUUID + help + Task management synchronization daemon. + + http://taskwarrior.org/ + +comment "taskd needs a toolchain w/ C++, wchar, dynamic library" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP || \ + BR2_STATIC_LIBS diff --git a/package/taskd/taskd.hash b/package/taskd/taskd.hash new file mode 100644 index 00000000..63bb87c1 --- /dev/null +++ b/package/taskd/taskd.hash @@ -0,0 +1,5 @@ +# From http://taskwarrior.org/download/ +sha1 ded339deeee65277e4712f71a9159502f8b20b52 taskd-1.1.0.tar.gz +# Locally calculated +sha256 7b8488e687971ae56729ff4e2e5209ff8806cf8cd57718bfd7e521be130621b4 taskd-1.1.0.tar.gz +sha256 84d1a8c2e6e306864ff350857a36b6c74756e61e2eae6822cf2fa88212720f68 COPYING diff --git a/package/taskd/taskd.mk b/package/taskd/taskd.mk new file mode 100644 index 00000000..b19be689 --- /dev/null +++ b/package/taskd/taskd.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# taskd +# +################################################################################ + +TASKD_VERSION = 1.1.0 +TASKD_SITE = http://taskwarrior.org/download +TASKD_LICENSE = MIT +TASKD_LICENSE_FILES = COPYING +TASKD_DEPENDENCIES = gnutls util-linux host-pkgconf + +$(eval $(cmake-package)) diff --git a/package/tcf-agent/Config.in b/package/tcf-agent/Config.in new file mode 100644 index 00000000..50e58642 --- /dev/null +++ b/package/tcf-agent/Config.in @@ -0,0 +1,41 @@ +config BR2_PACKAGE_TCF_AGENT + bool "tcf-agent" + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_PACKAGE_TCF_AGENT_ARCH_SUPPORTS + depends on BR2_USE_MMU # util-linux + select BR2_PACKAGE_UTIL_LINUX + select BR2_PACKAGE_UTIL_LINUX_LIBUUID + help + Target Communication Framework Agent is an example + application using the Target Communication Framework + Library. + + Target Communication Framework is universal, extensible, + simple, lightweight, vendor agnostic framework for tools and + targets to communicate for purpose of debugging, profiling, + code patching and other device software development needs. + + tcf-agent is a daemon, which provides TCF services that can + be used by local and remote clients. + + https://wiki.eclipse.org/TCF + +config BR2_PACKAGE_TCF_AGENT_ARCH + string + default "arm" if BR2_arm || BR2_armeb + default "a64" if BR2_aarch64 || BR2_aarch64_be + default "i686" if BR2_i386 && BR2_ARCH="i686" + default "i386" if BR2_i386 && !BR2_ARCH="i686" + default "x86_64" if BR2_x86_64 + default "powerpc" if BR2_powerpc || BR2_powerpcle + default "ppc64" if BR2_powerpc64 || BR2_powerpc64le + default "microblaze" if BR2_microblaze || BR2_microblazeel + +config BR2_PACKAGE_TCF_AGENT_ARCH_SUPPORTS + bool + default y if BR2_PACKAGE_TCF_AGENT_ARCH != "" + +comment "tcf-agent needs a toolchain w/ threads" + depends on BR2_PACKAGE_TCF_AGENT_ARCH_SUPPORTS + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/tcf-agent/S55tcf-agent b/package/tcf-agent/S55tcf-agent new file mode 100644 index 00000000..4418a543 --- /dev/null +++ b/package/tcf-agent/S55tcf-agent @@ -0,0 +1,40 @@ +#!/bin/sh + +DAEMON_PATH=/usr/sbin/tcf-agent +DAEMON_NAME=tcf-agent +DAEMON_ARGS="-L- -l0" + +PIDFILE=/var/run/$DAEMON_NAME.pid +[ -r /etc/default/$DAEMON_NAME ] && . /etc/default/$DAEMON_NAME + +start() { + printf "Starting $DAEMON_NAME: " + start-stop-daemon -S -o -q -p $PIDFILE -m -b \ + -x $DAEMON_PATH -- $DAEMON_ARGS + + [ $? = 0 ] && echo "OK" || echo "FAIL" +} + +stop() { + printf "Stopping $DAEMON_NAME: " + start-stop-daemon -K -o -q -p $PIDFILE \ + -x $DAEMON_PATH + + [ $? = 0 ] && echo "OK" || echo "FAIL" +} + +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart|reload) + stop + start + ;; + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac diff --git a/package/tcf-agent/tcf-agent.hash b/package/tcf-agent/tcf-agent.hash new file mode 100644 index 00000000..3ff4d9a5 --- /dev/null +++ b/package/tcf-agent/tcf-agent.hash @@ -0,0 +1,5 @@ +# Locally computed: +sha256 2f8c7be8a0bf7c86c72fd5680bc19a9e8f98792d40c94a0fee30ceb6428b8f33 org.eclipse.tcf.agent-1.7.0.tar.gz + +# Hash for license files: +sha256 f82d01b74a513bd3504d08136026a5ac2a7e6ff62ebcde391fa74aa222d11ce0 agent/edl-v10.html diff --git a/package/tcf-agent/tcf-agent.mk b/package/tcf-agent/tcf-agent.mk new file mode 100644 index 00000000..2b8a61b6 --- /dev/null +++ b/package/tcf-agent/tcf-agent.mk @@ -0,0 +1,34 @@ +################################################################################ +# +# tcf-agent +# +################################################################################ + +TCF_AGENT_VERSION = 1.7.0 +# the tar.xz link was broken the time this file got authored +TCF_AGENT_SOURCE = org.eclipse.tcf.agent-$(TCF_AGENT_VERSION).tar.gz +TCF_AGENT_SITE = http://git.eclipse.org/c/tcf/org.eclipse.tcf.agent.git/snapshot +# see https://wiki.spdx.org/view/Legal_Team/License_List/Licenses_Under_Consideration +TCF_AGENT_LICENSE = BSD-3-Clause +TCF_AGENT_LICENSE_FILES = agent/edl-v10.html + +TCF_AGENT_DEPENDENCIES = util-linux +TCF_AGENT_SUBDIR = agent + +# there is not much purpose for the shared lib, +# if wont be used (unmodifed) outside the tcf-agent application +TCF_AGENT_CONF_OPTS = \ + -DBUILD_SHARED_LIBS=OFF \ + -DTCF_MACHINE=$(call qstrip,$(BR2_PACKAGE_TCF_AGENT_ARCH)) + +define TCF_AGENT_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 644 package/tcf-agent/tcf-agent.service \ + $(TARGET_DIR)/usr/lib/systemd/system/tcf-agent.service +endef + +define TCF_AGENT_INSTALL_INIT_SYSV + $(INSTALL) -D -m 755 package/tcf-agent/S55tcf-agent \ + $(TARGET_DIR)/etc/init.d/S55tcf-agent +endef + +$(eval $(cmake-package)) diff --git a/package/tcf-agent/tcf-agent.service b/package/tcf-agent/tcf-agent.service new file mode 100644 index 00000000..8d2023b1 --- /dev/null +++ b/package/tcf-agent/tcf-agent.service @@ -0,0 +1,9 @@ +[Unit] +Description=Target Communication Framework Agent +After=network.target + +[Service] +ExecStart=/usr/sbin/tcf-agent -L- -l0 + +[Install] +WantedBy=multi-user.target diff --git a/package/tcl/0001-dont-build-compat.patch b/package/tcl/0001-dont-build-compat.patch new file mode 100644 index 00000000..c0d5d85d --- /dev/null +++ b/package/tcl/0001-dont-build-compat.patch @@ -0,0 +1,25 @@ +From: Andrew Ruder +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 +[Fabrice: Update for 8.6.9] +Signed-off-by: Fabrice Fontaine +--- + +diff --git a/unix/tcl.m4 b/unix/tcl.m4 +--- a/unix/tcl.m4 ++++ b/unix/tcl.m4 +@@ -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/Config.in b/package/tcl/Config.in new file mode 100644 index 00000000..f1fa0541 --- /dev/null +++ b/package/tcl/Config.in @@ -0,0 +1,39 @@ +comment "tcl needs a toolchain w/ threads, dynamic library" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS + +config BR2_PACKAGE_TCL + bool "tcl" + # fork() + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_THREADS + # See this mailing list thread: + # http://lists.busybox.net/pipermail/buildroot/2015-March/121198.html + depends on !BR2_STATIC_LIBS + help + TCL (Tool Command Language) is a simple textual language. + + http://www.tcl.tk + +if BR2_PACKAGE_TCL + +config BR2_PACKAGE_TCL_DEL_ENCODINGS + bool "delete encodings (saves 1.6Mb)" + default y + help + Delete encoding files for TCL. If your programs do not use + various tcl character recoding functions, you may safely + choose Y here. + + It saves approx. 1.6 Mb of space. + +config BR2_PACKAGE_TCL_SHLIB_ONLY + bool "install only shared library" + default y + help + Install only TCL shared library and not binary tcl + interpreter (tclsh). + + Saves ~14kb. + +endif diff --git a/package/tcl/tcl.hash b/package/tcl/tcl.hash new file mode 100644 index 00000000..913190b9 --- /dev/null +++ b/package/tcl/tcl.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 ad0cd2de2c87b9ba8086b43957a0de3eb2eb565c7159d5f53ccbba3feb915f4e tcl8.6.9-src.tar.gz +sha256 c0a69a2bfd757361ec7e6143973b103c90409316b49e9c88db26ad6388e79f16 license.terms diff --git a/package/tcl/tcl.mk b/package/tcl/tcl.mk new file mode 100644 index 00000000..7c456e89 --- /dev/null +++ b/package/tcl/tcl.mk @@ -0,0 +1,81 @@ +################################################################################ +# +# tcl +# +################################################################################ + +TCL_VERSION_MAJOR = 8.6 +TCL_VERSION = $(TCL_VERSION_MAJOR).9 +TCL_SOURCE = tcl$(TCL_VERSION)-src.tar.gz +TCL_SITE = http://downloads.sourceforge.net/project/tcl/Tcl/$(TCL_VERSION) +TCL_LICENSE = TCL +TCL_LICENSE_FILES = license.terms +TCL_CPE_ID_VENDOR = tcl +TCL_SUBDIR = unix +TCL_INSTALL_STAGING = YES +TCL_AUTORECONF = YES + +TCL_CONF_OPTS = \ + --disable-symbols \ + --disable-langinfo \ + --disable-framework + +HOST_TCL_CONF_OPTS = \ + --disable-symbols \ + --disable-langinfo \ + --disable-framework + +# I haven't found a good way to force pkgs to not build +# or configure without just removing the entire pkg directory. +define HOST_TCL_REMOVE_PACKAGES + rm -fr $(@D)/pkgs/sqlite3* $(@D)/pkgs/tdbc* +endef +HOST_TCL_PRE_CONFIGURE_HOOKS += HOST_TCL_REMOVE_PACKAGES + +# We remove the bundled sqlite as we prefer to not use bundled stuff at all. +define TCL_REMOVE_PACKAGES + rm -fr $(@D)/pkgs/sqlite3* \ + $(if $(BR2_PACKAGE_MYSQL),,$(@D)/pkgs/tdbcmysql*) \ + $(@D)/pkgs/tdbcodbc* \ + $(if $(BR2_PACKAGE_POSTGRESQL),,$(@D)/pkgs/tdbcpostgres*) \ + $(if $(BR2_PACKAGE_SQLITE),,$(@D)/pkgs/tdbcsqlite3*) +endef +TCL_PRE_CONFIGURE_HOOKS += TCL_REMOVE_PACKAGES + +ifeq ($(BR2_PACKAGE_TCL_DEL_ENCODINGS),y) +define TCL_REMOVE_ENCODINGS + rm -rf $(TARGET_DIR)/usr/lib/tcl$(TCL_VERSION_MAJOR)/encoding/* +endef +TCL_POST_INSTALL_TARGET_HOOKS += TCL_REMOVE_ENCODINGS +endif + +ifeq ($(BR2_PACKAGE_TCL_SHLIB_ONLY),y) +define TCL_REMOVE_TCLSH + rm -f $(TARGET_DIR)/usr/bin/tclsh$(TCL_VERSION_MAJOR) +endef +TCL_POST_INSTALL_TARGET_HOOKS += TCL_REMOVE_TCLSH +else +define TCL_SYMLINK_TCLSH + ln -sf tclsh$(TCL_VERSION_MAJOR) $(TARGET_DIR)/usr/bin/tclsh +endef +TCL_POST_INSTALL_TARGET_HOOKS += TCL_SYMLINK_TCLSH +endif + +# Until someone needs it, we don't handle locale installation. tcl has +# a complicated method of translating LANG-style locale names into its internal +# .msg name which makes it difficult to save the correct locales per the +# configured whitelist. +define TCL_REMOVE_EXTRA + rm -fr $(TARGET_DIR)/usr/lib/tclConfig.sh \ + $(TARGET_DIR)/usr/lib/tclooConfig.sh \ + $(TARGET_DIR)/usr/lib/tcl$(TCL_VERSION_MAJOR)/tclAppInit.c \ + $(TARGET_DIR)/usr/lib/tcl$(TCL_VERSION_MAJOR)/msgs +endef +TCL_POST_INSTALL_TARGET_HOOKS += TCL_REMOVE_EXTRA + +TCL_DEPENDENCIES = $(if $(BR2_PACKAGE_SQLITE),sqlite) \ + $(if $(BR2_PACKAGE_MYSQL),mysql) \ + $(if $(BR2_PACKAGE_POSTGRESQL),postgresql) + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/tclap/Config.in b/package/tclap/Config.in new file mode 100644 index 00000000..560cf331 --- /dev/null +++ b/package/tclap/Config.in @@ -0,0 +1,18 @@ +comment "tclap needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP + +config BR2_PACKAGE_TCLAP + bool "tclap" + depends on BR2_INSTALL_LIBSTDCPP + help + This is a small, flexible library that provides a simple + interface for defining and accessing command line + arguments. It was initially inspired by the user friendly + CLAP libary. The difference is that this library is + templatized, so the argument class is type independent. Type + independence avoids identical-except-for-type objects, such + as IntArg, FloatArg, and StringArg. While the library is not + strictly compliant with the GNU or POSIX standards, it is + close. + + http://tclap.sourceforge.net/ diff --git a/package/tclap/tclap.hash b/package/tclap/tclap.hash new file mode 100644 index 00000000..2b2097be --- /dev/null +++ b/package/tclap/tclap.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 f5013be7fcaafc69ba0ce2d1710f693f61e9c336b6292ae4f57554f59fde5837 tclap-1.2.2.tar.gz +sha256 cd81a61d47aeb1ed63036ca260baee37719923bbd7ebd988ec4edae128f3b6eb COPYING diff --git a/package/tclap/tclap.mk b/package/tclap/tclap.mk new file mode 100644 index 00000000..e1856420 --- /dev/null +++ b/package/tclap/tclap.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# tclap +# +################################################################################ + +TCLAP_VERSION = 1.2.2 +TCLAP_SITE = http://downloads.sourceforge.net/project/tclap +TCLAP_LICENSE = MIT +TCLAP_LICENSE_FILES = COPYING +TCLAP_INSTALL_STAGING = YES +TCLAP_CPE_ID_VENDOR = tclap_project + +# This package is a pure C++ template library, only made of headers. +TCLAP_INSTALL_TARGET = NO + +$(eval $(autotools-package)) diff --git a/package/tcllib/Config.in b/package/tcllib/Config.in new file mode 100644 index 00000000..3a307b9a --- /dev/null +++ b/package/tcllib/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_TCLLIB + bool "tcllib" + help + Tcllib is a collection of utility modules for Tcl. These + modules provide a wide variety of functionality, from + implementations of standard data structures to + implementations of common networking protocols. The intent + is to collect commonly used function into a single library, + which users can rely on to be available and stable + + https://www.tcl.tk/software/tcllib/ diff --git a/package/tcllib/tcllib.hash b/package/tcllib/tcllib.hash new file mode 100644 index 00000000..d08b5a17 --- /dev/null +++ b/package/tcllib/tcllib.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 0db9e17d6c0f44d3ca2df2ea5023e35c0f3767e7008c3cb26d201446eb68add1 tcllib-1.13.tar.bz2 +sha256 530ec70eb11a455bd582d86b6d74c2dd7cc367d90b8bbdd59fcb43ae02f95a4b license.terms diff --git a/package/tcllib/tcllib.mk b/package/tcllib/tcllib.mk new file mode 100644 index 00000000..dfa35c89 --- /dev/null +++ b/package/tcllib/tcllib.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# tcllib +# +################################################################################ + +TCLLIB_VERSION = 1.13 +TCLLIB_SOURCE = tcllib-$(TCLLIB_VERSION).tar.bz2 +TCLLIB_SITE = http://downloads.sourceforge.net/project/tcllib/tcllib/$(TCLLIB_VERSION) +TCLLIB_LICENSE = TCL +TCLLIB_LICENSE_FILES = license.terms +TCLLIB_DEPENDENCIES = host-tcl +TCLLIB_CONF_ENV = ac_cv_path_tclsh="$(HOST_DIR)/bin/tclsh$(TCL_VERSION_MAJOR)" + +$(eval $(autotools-package)) diff --git a/package/tcpdump/Config.in b/package/tcpdump/Config.in new file mode 100644 index 00000000..8b54c603 --- /dev/null +++ b/package/tcpdump/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_TCPDUMP + bool "tcpdump" + select BR2_PACKAGE_LIBPCAP + help + A tool for network monitoring and data acquisition. + + http://www.tcpdump.org/ + +if BR2_PACKAGE_TCPDUMP + +config BR2_PACKAGE_TCPDUMP_SMB + bool "smb dump support" + help + enable possibly-buggy SMB printer + +endif diff --git a/package/tcpdump/tcpdump.hash b/package/tcpdump/tcpdump.hash new file mode 100644 index 00000000..1990aa79 --- /dev/null +++ b/package/tcpdump/tcpdump.hash @@ -0,0 +1,5 @@ +# Locally calculated after checking pgp signature at +# https://www.tcpdump.org/release/tcpdump-4.99.1.tar.gz.sig +# using key 1F166A5742ABB9E0249A8D30E089DEF1D9C15D0D +sha256 79b36985fb2703146618d87c4acde3e068b91c553fb93f021a337f175fd10ebe tcpdump-4.99.1.tar.gz +sha256 8a54594d257e14a5260ac770f1633516cb51e3fc28c40136ce2697014eda7afd LICENSE diff --git a/package/tcpdump/tcpdump.mk b/package/tcpdump/tcpdump.mk new file mode 100644 index 00000000..7741c3b5 --- /dev/null +++ b/package/tcpdump/tcpdump.mk @@ -0,0 +1,30 @@ +################################################################################ +# +# tcpdump +# +################################################################################ + +TCPDUMP_VERSION = 4.99.1 +TCPDUMP_SITE = https://www.tcpdump.org/release +TCPDUMP_LICENSE = BSD-3-Clause +TCPDUMP_LICENSE_FILES = LICENSE +TCPDUMP_CPE_ID_VENDOR = tcpdump +TCPDUMP_CONF_ENV = \ + ac_cv_linux_vers=2 \ + td_cv_buggygetaddrinfo=no \ + PCAP_CONFIG=$(STAGING_DIR)/usr/bin/pcap-config +TCPDUMP_CONF_OPTS = \ + --without-crypto \ + --disable-local-libpcap \ + $(if $(BR2_PACKAGE_TCPDUMP_SMB),--enable-smb,--disable-smb) +TCPDUMP_DEPENDENCIES = libpcap host-pkgconf +TCPDUMP_SELINUX_MODULES = netutils + +# make install installs an unneeded extra copy of the tcpdump binary +define TCPDUMP_REMOVE_DUPLICATED_BINARY + rm -f $(TARGET_DIR)/usr/bin/tcpdump.$(TCPDUMP_VERSION) +endef + +TCPDUMP_POST_INSTALL_TARGET_HOOKS += TCPDUMP_REMOVE_DUPLICATED_BINARY + +$(eval $(autotools-package)) diff --git a/package/tcping/Config.in b/package/tcping/Config.in new file mode 100644 index 00000000..c963e681 --- /dev/null +++ b/package/tcping/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_TCPING + bool "tcping" + help + tcping does a TCP connect to the given ip/port + combination. The user can specify a timeout in seconds. This + is useful in shell scripts running in firewalled + environments. Often SYNs are just being dropped by + firewalls, thus connection establishment will be retried + several times (for minutes) until a TCP timeout is + reached. With tcping it is possible to check first if the + desired port is reachable and then start connection + establishment. + + https://github.com/mkirchner/tcping diff --git a/package/tcping/tcping.hash b/package/tcping/tcping.hash new file mode 100644 index 00000000..49f6e5ba --- /dev/null +++ b/package/tcping/tcping.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 a731f0e48ff931d7b2a0e896e4db40867043740fe901dd225780f2164fdbdcf3 tcping-1.3.6.tar.gz +sha256 4a35620e27ddb8de27898e4206c8f93633d877c1e128e98e95a035f760d94428 LICENSE diff --git a/package/tcping/tcping.mk b/package/tcping/tcping.mk new file mode 100644 index 00000000..5eaf702e --- /dev/null +++ b/package/tcping/tcping.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# tcping +# +################################################################################ + +TCPING_VERSION = 1.3.6 +TCPING_SITE = $(call github,mkirchner,tcping,$(TCPING_VERSION)) +TCPING_LICENSE = MIT +TCPING_LICENSE_FILES = LICENSE + +define TCPING_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" CCFLAGS="$(TARGET_CFLAGS) $(TARGET_LDFLAGS)" \ + -C $(@D) tcping.linux +endef + +define TCPING_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/tcping $(TARGET_DIR)/usr/bin/tcping +endef + +$(eval $(generic-package)) diff --git a/package/tcpreplay/0001-configure-ac-fix-without-libdnet.patch b/package/tcpreplay/0001-configure-ac-fix-without-libdnet.patch new file mode 100644 index 00000000..75ed4f94 --- /dev/null +++ b/package/tcpreplay/0001-configure-ac-fix-without-libdnet.patch @@ -0,0 +1,76 @@ +From acee9c0c46f71f1f4c33c2dadf69d19e24b90f27 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Tue, 13 Aug 2019 20:19:23 +0200 +Subject: [PATCH] configure.ac: fix --without-libdnet + +Allow the user to disable libdnet check through --without-libdnet. +This option is useful to cross-compile tcpreplay to avoid build failures +if libdnet is installed on host but not on target, see +https://bugs.buildroot.org/show_bug.cgi?id=12096 + +Signed-off-by: Fabrice Fontaine +[Upstream status: https://github.com/appneta/tcpreplay/pull/567] +--- + configure.ac | 48 +++++++++++++++++++++++++----------------------- + 1 file changed, 25 insertions(+), 23 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 39ba58b7..5de3dcb5 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1464,30 +1464,32 @@ if test $have_cygwin = no ; then + AC_HELP_STRING([--with-libdnet=DIR], [Use libdnet in DIR]), + [trydnetdir=$withval]) + +- case "$build_os" in +- linux*) +- dnl # Debian/Ubuntu already have a package called libdnet +- dnl # so you the package you want to install libdumbnet-dev +- for testdir in $trydnetdir /usr/local /opt/local /usr ; do +- if test -x ${testdir}/bin/dumbnet-config -a $founddnet = no ; then +- LDNETINC="$($testdir/bin/dumbnet-config --cflags)" +- LDNETLIB="$($testdir/bin/dumbnet-config --libs)" +- libdnet_version="$($testdir/bin/dumbnet-config --version) (libdumbnet)" +- founddnet=$testdir +- fi +- done +- ;; +- esac ++ if test $trydnetdir != no; then ++ case "$build_os" in ++ linux*) ++ dnl # Debian/Ubuntu already have a package called libdnet ++ dnl # so you the package you want to install libdumbnet-dev ++ for testdir in $trydnetdir /usr/local /opt/local /usr ; do ++ if test -x ${testdir}/bin/dumbnet-config -a $founddnet = no ; then ++ LDNETINC="$($testdir/bin/dumbnet-config --cflags)" ++ LDNETLIB="$($testdir/bin/dumbnet-config --libs)" ++ libdnet_version="$($testdir/bin/dumbnet-config --version) (libdumbnet)" ++ founddnet=$testdir ++ fi ++ done ++ ;; ++ esac + +- if test $founddnet = no ; then +- for testdir in $trydnetdir /usr/local /opt/local $MACOSX_SDK_PATH/usr /usr ; do +- if test -x ${testdir}/bin/dnet-config -a $founddnet = no ; then +- LDNETINC="$($testdir/bin/dnet-config --cflags)" +- LDNETLIB="$($testdir/bin/dnet-config --libs)" +- libdnet_version="$($testdir/bin/dnet-config --version)" +- founddnet=$testdir +- fi +- done ++ if test $founddnet = no ; then ++ for testdir in $trydnetdir /usr/local /opt/local $MACOSX_SDK_PATH/usr /usr ; do ++ if test -x ${testdir}/bin/dnet-config -a $founddnet = no ; then ++ LDNETINC="$($testdir/bin/dnet-config --cflags)" ++ LDNETLIB="$($testdir/bin/dnet-config --libs)" ++ libdnet_version="$($testdir/bin/dnet-config --version)" ++ founddnet=$testdir ++ fi ++ done ++ fi + fi + + if test $founddnet = no ; then diff --git a/package/tcpreplay/Config.in b/package/tcpreplay/Config.in new file mode 100644 index 00000000..5e36452c --- /dev/null +++ b/package/tcpreplay/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_TCPREPLAY + bool "tcpreplay" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_LIBPCAP + help + Tcpreplay is a tool for replaying network traffic from files + saved with tcpdump or other tools which write pcap(3) files. + + http://tcpreplay.appneta.com/ diff --git a/package/tcpreplay/tcpreplay.hash b/package/tcpreplay/tcpreplay.hash new file mode 100644 index 00000000..e83efd78 --- /dev/null +++ b/package/tcpreplay/tcpreplay.hash @@ -0,0 +1,5 @@ +# Locally calculated after checking pgp signature +# https://github.com/appneta/tcpreplay/releases/download/v4.3.3/tcpreplay-4.3.3.tar.xz.asc +# using key 84E4FA215C934A7D97DC76D5E9E2149793BDE17E +sha256 5e960e2a4432f583adbd11fa0855d17b73d9e0f2d6453b749f27aacaee53bab5 tcpreplay-4.3.3.tar.xz +sha256 5971b0c544622f4b210a9cc56436a970685d3b0666e373c09e3cf9304db15d05 docs/LICENSE diff --git a/package/tcpreplay/tcpreplay.mk b/package/tcpreplay/tcpreplay.mk new file mode 100644 index 00000000..9208cb81 --- /dev/null +++ b/package/tcpreplay/tcpreplay.mk @@ -0,0 +1,39 @@ +################################################################################ +# +# tcpreplay +# +################################################################################ + +TCPREPLAY_VERSION = 4.3.3 +TCPREPLAY_SITE = https://github.com/appneta/tcpreplay/releases/download/v$(TCPREPLAY_VERSION) +TCPREPLAY_SOURCE = tcpreplay-$(TCPREPLAY_VERSION).tar.xz +TCPREPLAY_LICENSE = GPL-3.0 +TCPREPLAY_LICENSE_FILES = docs/LICENSE +TCPREPLAY_CPE_ID_VENDOR = tcpreplay +TCPREPLAY_CONF_ENV = \ + ac_cv_path_ac_pt_PCAP_CONFIG="$(STAGING_DIR)/usr/bin/pcap-config" +TCPREPLAY_CONF_OPTS = --with-libpcap=$(STAGING_DIR)/usr \ + --enable-pcapconfig +TCPREPLAY_DEPENDENCIES = libpcap +# We're patching configure.ac +TCPREPLAY_AUTORECONF = YES + +ifeq ($(BR2_STATIC_LIBS),y) +TCPREPLAY_CONF_OPTS += --enable-dynamic-link=no +TCPREPLAY_CONF_ENV += LIBS="`$(STAGING_DIR)/usr/bin/pcap-config --static --libs`" +endif + +ifeq ($(BR2_PACKAGE_LIBDNET),y) +TCPREPLAY_DEPENDENCIES += libdnet +TCPREPLAY_CONF_OPTS += --with-libdnet=$(STAGING_DIR)/usr +else +TCPREPLAY_CONF_OPTS += --without-libdnet +endif + +ifeq ($(BR2_PACKAGE_TCPDUMP),y) +TCPREPLAY_CONF_ENV += ac_cv_path_tcpdump_path=/usr/sbin/tcpdump +else +TCPREPLAY_CONF_ENV += ac_cv_path_tcpdump_path=no +endif + +$(eval $(autotools-package)) diff --git a/package/tegrarcm/Config.in.host b/package/tegrarcm/Config.in.host new file mode 100644 index 00000000..937d81bd --- /dev/null +++ b/package/tegrarcm/Config.in.host @@ -0,0 +1,13 @@ +config BR2_PACKAGE_HOST_TEGRARCM + bool "host tegrarcm" + depends on BR2_arm || BR2_armeb + depends on BR2_HOST_GCC_AT_LEAST_4_9 # host-libusb + help + This program is used to send code to a Tegra device in + recovery mode. + + https://github.com/NVIDIA/tegrarcm + +comment "host tegrarcm needs a toolchain w/ host gcc >= 4.9" + depends on BR2_arm || BR2_armeb + depends on !BR2_HOST_GCC_AT_LEAST_4_9 diff --git a/package/tegrarcm/tegrarcm.hash b/package/tegrarcm/tegrarcm.hash new file mode 100644 index 00000000..38ff2809 --- /dev/null +++ b/package/tegrarcm/tegrarcm.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 08329ee0247499b28ec37b0cc639f35443792dfb9bc4a8a182eea63dae6f64ea tegrarcm-1.8.tar.gz +sha256 5f20d276321cb37346d911712a813cb7ce4c8e3a570bffc919bec820eeef13f6 LICENSE diff --git a/package/tegrarcm/tegrarcm.mk b/package/tegrarcm/tegrarcm.mk new file mode 100644 index 00000000..3ec5ea94 --- /dev/null +++ b/package/tegrarcm/tegrarcm.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# tegrarcm +# +################################################################################ + +TEGRARCM_VERSION = 1.8 +TEGRARCM_SITE = $(call github,NVIDIA,tegrarcm,v$(TEGRARCM_VERSION)) +TEGRARCM_LICENSE = BSD-3-Clause / NVIDIA Software License (src/miniloader) +TEGRARCM_LICENSE_FILES = LICENSE +TEGRARCM_AUTORECONF = YES +HOST_TEGRARCM_DEPENDENCIES = host-libusb host-pkgconf host-cryptopp + +$(eval $(host-autotools-package)) diff --git a/package/tekui/Config.in b/package/tekui/Config.in new file mode 100644 index 00000000..067a6dd7 --- /dev/null +++ b/package/tekui/Config.in @@ -0,0 +1,22 @@ +config BR2_PACKAGE_TEKUI + bool "tekui" + depends on !BR2_STATIC_LIBS + depends on BR2_PACKAGE_HAS_LUAINTERPRETER + depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_FREETYPE + select BR2_PACKAGE_LUAFILESYSTEM # runtime only + select BR2_PACKAGE_LUAEXPAT # runtime only + select BR2_PACKAGE_LUASOCKET # runtime only + select BR2_PACKAGE_LUAPOSIX # runtime only + help + TekUI is a small, freestanding and portable graphical user + interface (GUI) toolkit written in Lua and C. It was + initially developed for the X Window System and has been + ported to DirectFB, Windows, Nano-X and a raw framebuffer + since + + http://tekui.neoscientists.org/ + +comment "tekui needs a Lua interpreter and a toolchain w/ threads, dynamic library" + depends on !BR2_PACKAGE_HAS_LUAINTERPRETER || !BR2_TOOLCHAIN_HAS_THREADS || \ + BR2_STATIC_LIBS diff --git a/package/tekui/tekui.hash b/package/tekui/tekui.hash new file mode 100644 index 00000000..f82e7503 --- /dev/null +++ b/package/tekui/tekui.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 28abfaacc0f2ddae962afbbca862a7fb619c33a99a497be9edd746091013dd7f tekui-1.12.tgz +sha256 92cdb348af49efe4c769ccbaeb34a23be084ddda408eace8f1a3a2c5dd4aad14 COPYRIGHT diff --git a/package/tekui/tekui.mk b/package/tekui/tekui.mk new file mode 100644 index 00000000..13000edd --- /dev/null +++ b/package/tekui/tekui.mk @@ -0,0 +1,69 @@ +################################################################################ +# +# tekui +# +################################################################################ + +TEKUI_VERSION = 1.12 +TEKUI_SOURCE = tekui-$(TEKUI_VERSION).tgz +TEKUI_SITE = http://tekui.neoscientists.org/releases +TEKUI_LICENSE = MIT +TEKUI_LICENSE_FILES = COPYRIGHT +TEKUI_DEPENDENCIES = freetype luainterpreter + +# Package does not build in parallel due to improper make rules +TEKUI_MAKE = $(MAKE1) + +TEKUI_MAKE_OPTS = \ + CC="$(TARGET_CC) -fPIC" \ + AR="$(TARGET_AR) rcu" \ + INSTALL_S="install" \ + LUAVER=$(LUAINTERPRETER_ABIVER) \ + LUA_DEFS="" + +ifeq ($(BR2_PACKAGE_LIBPNG),y) +TEKUI_DEPENDENCIES += libpng +TEKUI_MAKE_OPTS += TEKUI_DEFS="-DENABLE_GRADIENT -DENABLE_FILENO -DENABLE_PIXMAP_CACHE -DENABLE_PNG" +TEKUI_MAKE_OPTS += TEKUI_LIBS=-lpng +else +TEKUI_MAKE_OPTS += TEKUI_DEFS="-DENABLE_GRADIENT -DENABLE_FILENO -DENABLE_PIXMAP_CACHE" +endif + +ifeq ($(BR2_PACKAGE_DEJAVU),y) +TEKUI_FONTDIR=/usr/share/fonts/dejavu +else +TEKUI_FONTDIR=/usr/share/lua/$(LUAINTERPRETER_ABIVER)/tek/ui/font +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXFT)$(BR2_PACKAGE_XLIB_LIBXXF86VM),yy) +TEKUI_DEPENDENCIES += xlib_libXft xlib_libXxf86vm +TEKUI_MAKE_OPTS += \ + X11_LIBS="-lXext -lXxf86vm -lXft -lfreetype -lfontconfig" \ + X11_DEFS="-D_XOPEN_SOURCE -DENABLE_XFT -DENABLE_XVID -I$(STAGING_DIR)/usr/include/freetype2 -I$(STAGING_DIR)/usr/include/fontconfig" \ + DISPLAY_DRIVER=x11 +else +ifeq ($(BR2_PACKAGE_DIRECTFB),y) +TEKUI_DEPENDENCIES += directfb +TEKUI_MAKE_OPTS += \ + DIRECTFB_LIBS="-lfreetype -ldirectfb -lpthread" \ + DIRECTFB_DEFS="-D_REENTRANT -I$(STAGING_DIR)/usr/include/directfb -I$(STAGING_DIR)/usr/include/freetype2" \ + DISPLAY_DRIVER=directfb +else +TEKUI_MAKE_OPTS += \ + FREETYPE_LIBS=-lfreetype \ + FREETYPE_DEFS="-I$(STAGING_DIR)/usr/include/freetype2" \ + RAWFB_SUB_LIBS="" \ + RAWFB_SUB_DEFS="-DDEF_FONTDIR=\\\"$(TEKUI_FONTDIR)\\\"" \ + DISPLAY_DRIVER=rawfb +endif +endif + +define TEKUI_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TEKUI_MAKE_OPTS) PREFIX="/usr" -C $(@D) all +endef + +define TEKUI_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TEKUI_MAKE_OPTS) PREFIX="$(TARGET_DIR)/usr" -C $(@D) install +endef + +$(eval $(generic-package)) diff --git a/package/terminology/Config.in b/package/terminology/Config.in new file mode 100644 index 00000000..f367ce51 --- /dev/null +++ b/package/terminology/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_TERMINOLOGY + bool "terminology" + depends on BR2_PACKAGE_EFL + help + Terminology is an EFL terminal emulator with some extra + bells and whistles. + + https://www.enlightenment.org/about-terminology diff --git a/package/terminology/terminology.hash b/package/terminology/terminology.hash new file mode 100644 index 00000000..5dee767d --- /dev/null +++ b/package/terminology/terminology.hash @@ -0,0 +1,3 @@ +# From https://download.enlightenment.org/rel/apps/terminology/terminology-1.8.1.tar.xz.sha256sum +sha256 04a69ac8ade443cba7dae20f82bbaa431fd155cec60c133b263d82f18e93b8bb terminology-1.8.1.tar.xz +sha256 6863ee700fc82b9c3b82a1627136f6935a9eb68e6a64491f20e00b4023c33622 COPYING diff --git a/package/terminology/terminology.mk b/package/terminology/terminology.mk new file mode 100644 index 00000000..6c6ec13c --- /dev/null +++ b/package/terminology/terminology.mk @@ -0,0 +1,23 @@ +################################################################################ +# +# terminology +# +################################################################################ + +TERMINOLOGY_VERSION = 1.8.1 +TERMINOLOGY_SOURCE = terminology-$(TERMINOLOGY_VERSION).tar.xz +TERMINOLOGY_SITE = https://download.enlightenment.org/rel/apps/terminology +TERMINOLOGY_LICENSE = BSD-2-Clause +TERMINOLOGY_LICENSE_FILES = COPYING +TERMINOLOGY_CPE_ID_VENDOR = enlightenment + +TERMINOLOGY_DEPENDENCIES = $(TARGET_NLS_DEPENDENCIES) efl host-pkgconf +TERMINOLOGY_CONF_OPTS = -Dedje-cc=$(HOST_DIR)/bin/edje_cc + +ifeq ($(BR2_SYSTEM_ENABLE_NLS),y) +TERMINOLOGY_CONF_OPTS += -Dnls=true +else +TERMINOLOGY_CONF_OPTS += -Dnls=false +endif + +$(eval $(meson-package)) diff --git a/package/tesseract-ocr/0001-Fix-timeval-structure-build-failure.patch b/package/tesseract-ocr/0001-Fix-timeval-structure-build-failure.patch new file mode 100644 index 00000000..0b0bb1a8 --- /dev/null +++ b/package/tesseract-ocr/0001-Fix-timeval-structure-build-failure.patch @@ -0,0 +1,27 @@ +From ea1e1ddfc0af9966a0c613a93087bc3e0a5979a7 Mon Sep 17 00:00:00 2001 +From: Gilles Talis +Date: Fri, 19 Jul 2019 18:52:03 +0200 +Subject: [PATCH] Fix timeval structure build failure + +timeval structure definition requires to be included + +Signed-off-by: Gilles Talis +--- + src/ccutil/ocrclass.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/ccutil/ocrclass.h b/src/ccutil/ocrclass.h +index d39a6dd..2a01118 100644 +--- a/src/ccutil/ocrclass.h ++++ b/src/ccutil/ocrclass.h +@@ -28,6 +28,7 @@ + + #include + #include ++#include + #ifdef _WIN32 + #include // for timeval + #endif +-- +2.7.4 + diff --git a/package/tesseract-ocr/Config.in b/package/tesseract-ocr/Config.in new file mode 100644 index 00000000..3afaca77 --- /dev/null +++ b/package/tesseract-ocr/Config.in @@ -0,0 +1,44 @@ +comment "tesseract-ocr needs a toolchain w/ threads, C++, gcc >= 4.8, dynamic library, wchar" + depends on BR2_USE_MMU + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || BR2_STATIC_LIBS || !BR2_USE_WCHAR + +menuconfig BR2_PACKAGE_TESSERACT_OCR + bool "tesseract-ocr" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 + depends on BR2_USE_MMU # fork() + depends on !BR2_STATIC_LIBS + depends on BR2_USE_WCHAR + select BR2_PACKAGE_LEPTONICA + help + Tesseract is an OCR (Optical Character Recognition) engine, + It can be used directly, or (for programmers) using an API. + It supports a wide variety of languages. + + https://github.com/tesseract-ocr/tesseract + +if BR2_PACKAGE_TESSERACT_OCR + +comment "tesseract-ocr languages support" + +config BR2_PACKAGE_TESSERACT_OCR_LANG_ENG + bool "English" + +config BR2_PACKAGE_TESSERACT_OCR_LANG_FRA + bool "French" + +config BR2_PACKAGE_TESSERACT_OCR_LANG_GER + bool "German" + +config BR2_PACKAGE_TESSERACT_OCR_LANG_SPA + bool "Spanish" + +config BR2_PACKAGE_TESSERACT_OCR_LANG_CHI_SIM + bool "Simplified Chinese" + +config BR2_PACKAGE_TESSERACT_OCR_LANG_CHI_TRA + bool "Traditional Chinese" + +endif diff --git a/package/tesseract-ocr/tesseract-ocr.hash b/package/tesseract-ocr/tesseract-ocr.hash new file mode 100644 index 00000000..808ea174 --- /dev/null +++ b/package/tesseract-ocr/tesseract-ocr.hash @@ -0,0 +1,9 @@ +# locally computed +sha256 2a66ff0d8595bff8f04032165e6c936389b1e5727c3ce5a27b3e059d218db1cb tesseract-ocr-4.1.1.tar.gz +sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE +sha256 daa0c97d651c19fba3b25e81317cd697e9908c8208090c94c3905381c23fc047 eng.traineddata +sha256 eac01c1d72540d6090facb7b2f42dd0a2ee8fc57c5be1b20548ae668e2761913 fra.traineddata +sha256 896b3b4956503ab9daa10285db330881b2d74b70d889b79262cc534b9ec699a4 deu.traineddata +sha256 0b0fcbb4665189e01ab8019e591f014dd7260460de072543edd4b2cb4ede7c96 spa.traineddata +sha256 fc05d89ab31d8b4e226910f16a8bcbf78e43bae3e2580bb5feefd052efdab363 chi_sim.traineddata +sha256 559067dc0f7c94788884742129d66a0117dde7f4ff12b263d92147173497db14 chi_tra.traineddata diff --git a/package/tesseract-ocr/tesseract-ocr.mk b/package/tesseract-ocr/tesseract-ocr.mk new file mode 100644 index 00000000..fc083c27 --- /dev/null +++ b/package/tesseract-ocr/tesseract-ocr.mk @@ -0,0 +1,66 @@ +################################################################################ +# +# tesseract-ocr +# +################################################################################ + +TESSERACT_OCR_VERSION = 4.1.1 +TESSERACT_OCR_DATA_VERSION = 4.0.0 +TESSERACT_OCR_SITE = $(call github,tesseract-ocr,tesseract,$(TESSERACT_OCR_VERSION)) +TESSERACT_OCR_LICENSE = Apache-2.0 +TESSERACT_OCR_LICENSE_FILES = LICENSE + +# Source from github, no configure script provided +TESSERACT_OCR_AUTORECONF = YES + +# cairo, pango and icu are optional dependencies, but only needed for +# building training tools, which are only built explicitly with "make +# training", which is not done by this package. +TESSERACT_OCR_DEPENDENCIES = leptonica host-pkgconf +TESSERACT_OCR_INSTALL_STAGING = YES +TESSERACT_OCR_CONF_ENV = \ + ac_cv_prog_have_asciidoc=false \ + LIBLEPT_HEADERSDIR=$(STAGING_DIR)/usr/include/leptonica +TESSERACT_OCR_CONF_OPTS = \ + --disable-opencl + +# Language data files download +ifeq ($(BR2_PACKAGE_TESSERACT_OCR_LANG_ENG),y) +TESSERACT_OCR_DATA_FILES += eng.traineddata +endif + +ifeq ($(BR2_PACKAGE_TESSERACT_OCR_LANG_FRA),y) +TESSERACT_OCR_DATA_FILES += fra.traineddata +endif + +ifeq ($(BR2_PACKAGE_TESSERACT_OCR_LANG_DEU),y) +TESSERACT_OCR_DATA_FILES += deu.traineddata +endif + +ifeq ($(BR2_PACKAGE_TESSERACT_OCR_LANG_SPA),y) +TESSERACT_OCR_DATA_FILES += spa.traineddata +endif + +ifeq ($(BR2_PACKAGE_TESSERACT_OCR_LANG_CHI_SIM),y) +TESSERACT_OCR_DATA_FILES += chi_sim.traineddata +endif + +ifeq ($(BR2_PACKAGE_TESSERACT_OCR_LANG_CHI_TRA),y) +TESSERACT_OCR_DATA_FILES += chi_tra.traineddata +endif + +TESSERACT_OCR_EXTRA_DOWNLOADS = \ + $(addprefix https://github.com/tesseract-ocr/tessdata/raw/$(TESSERACT_OCR_DATA_VERSION)/,\ + $(TESSERACT_OCR_DATA_FILES)) + +# Language data files installation +define TESSERACT_OCR_INSTALL_LANG_DATA + $(foreach langfile,$(TESSERACT_OCR_DATA_FILES), \ + $(INSTALL) -D -m 0644 $(TESSERACT_OCR_DL_DIR)/$(langfile) \ + $(TARGET_DIR)/usr/share/tessdata/$(langfile) + ) +endef + +TESSERACT_OCR_POST_INSTALL_TARGET_HOOKS += TESSERACT_OCR_INSTALL_LANG_DATA + +$(eval $(autotools-package)) diff --git a/package/tftpd/0001-Use-extern-qualifier-to-fix-gcc-10.x-build.patch b/package/tftpd/0001-Use-extern-qualifier-to-fix-gcc-10.x-build.patch new file mode 100644 index 00000000..c9645553 --- /dev/null +++ b/package/tftpd/0001-Use-extern-qualifier-to-fix-gcc-10.x-build.patch @@ -0,0 +1,29 @@ +From 6f994166d8571961a08479736ae86c5baa2bb47f Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Fri, 7 Aug 2020 12:07:45 +0200 +Subject: [PATCH] Use "extern" qualifier to fix gcc 10.x build + +Patch from +https://src.fedoraproject.org/rpms/tftp/raw/master/f/tftp-hpa-5.2-gcc10.patch. + +Signed-off-by: Thomas Petazzoni +--- + tftp/tftp.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tftp/tftp.c b/tftp/tftp.c +index d15da22..d067f96 100644 +--- a/tftp/tftp.c ++++ b/tftp/tftp.c +@@ -48,7 +48,7 @@ extern int maxtimeout; + #define PKTSIZE SEGSIZE+4 + char ackbuf[PKTSIZE]; + int timeout; +-sigjmp_buf toplevel; ++extern sigjmp_buf toplevel; + sigjmp_buf timeoutbuf; + + static void nak(int, const char *); +-- +2.26.2 + diff --git a/package/tftpd/Config.in b/package/tftpd/Config.in new file mode 100644 index 00000000..d4e81e70 --- /dev/null +++ b/package/tftpd/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_TFTPD + bool "tftpd" + # linker issue with pre-6.x toolchains + depends on !(BR2_nios2 && !BR2_TOOLCHAIN_GCC_AT_LEAST_6) + depends on BR2_USE_MMU # fork() + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + help + HPA's Trivial File Transfer Protocol (tftp) server. + + https://git.kernel.org/pub/scm/network/tftp/tftp-hpa.git diff --git a/package/tftpd/S80tftpd-hpa b/package/tftpd/S80tftpd-hpa new file mode 100644 index 00000000..4e8361fa --- /dev/null +++ b/package/tftpd/S80tftpd-hpa @@ -0,0 +1,81 @@ +#! /bin/sh + +OPTIONS="-c -l -s /var/lib/tftpboot" + +set -e + +PATH=/sbin:/bin:/usr/sbin:/usr/bin +DESC="HPA's tftpd" +NAME=tftpd +DAEMON=/usr/sbin/$NAME +PIDFILE=/var/run/$NAME.pid +SCRIPTNAME=/etc/init.d/S80tftpd-hpa + +# +# Function that starts the daemon/service. +# +d_start() { + mkdir -p /var/lib/tftpboot + chmod 1777 /var/lib/tftpboot + $DAEMON $OPTIONS +} + +# +# Function that stops the daemon/service. +# +d_stop() { + killall -q $NAME +} + +# +# Function that sends a SIGHUP to the daemon/service. +# +d_reload() { + d_start + d_stop +} + +case "$1" in + start) + printf "Starting $DESC: " + d_start + echo "done" + ;; + stop) + printf "Stopping $DESC: " + d_stop + echo "done" + ;; + #reload) + # + # If the daemon can reload its configuration without + # restarting (for example, when it is sent a SIGHUP), + # then implement that here. + # + # If the daemon responds to changes in its config file + # directly anyway, make this an "exit 0". + # + # printf "Reloading $DESC configuration..." + # d_reload + # echo "done." + #;; + restart|force-reload) + # + # If the "reload" option is implemented, move the "force-reload" + # option to the "reload" entry above. If not, "force-reload" is + # just the same as "restart". + # + printf "Restarting $DESC: " + d_stop + sleep 1 + d_start + echo "done" + ;; + *) + # echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2 + echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2 + exit 1 + ;; +esac + +exit 0 diff --git a/package/tftpd/tftpd.hash b/package/tftpd/tftpd.hash new file mode 100644 index 00000000..3cccb0f2 --- /dev/null +++ b/package/tftpd/tftpd.hash @@ -0,0 +1,5 @@ +# Locally calculated +sha256 c86520c30dab0b6bcbae021ab26d2ac63227696596d37a9b02aa3e56ec5c2e77 tftpd-b2b34cecc8cbc18ff6f1fc00bda6ae6e9011e6c7-br1.tar.gz + +# Hash for license file +sha256 67754ebd8f265571d3226ac97e521b1bd6fd8a61363ecd4ab7806a6f90efab92 tftpd/tftpd.c diff --git a/package/tftpd/tftpd.mk b/package/tftpd/tftpd.mk new file mode 100644 index 00000000..ffd52ce0 --- /dev/null +++ b/package/tftpd/tftpd.mk @@ -0,0 +1,26 @@ +################################################################################ +# +# tftpd +# +################################################################################ + +TFTPD_VERSION = b2b34cecc8cbc18ff6f1fc00bda6ae6e9011e6c7 +TFTPD_SITE = git://git.kernel.org/pub/scm/network/tftp/tftp-hpa.git +TFTPD_CONF_OPTS = --without-tcpwrappers +TFTPD_LICENSE = BSD-4-Clause +TFTPD_LICENSE_FILES = tftpd/tftpd.c +TFTPD_CPE_ID_VENDOR = tftpd-hpa_project +TFTPD_CPE_ID_PRODUCT = tftpd-hpa +# From git +TFTPD_AUTORECONF = YES + +define TFTPD_INSTALL_TARGET_CMDS + $(INSTALL) -D $(@D)/tftp/tftp $(TARGET_DIR)/usr/bin/tftp + $(INSTALL) -D $(@D)/tftpd/tftpd $(TARGET_DIR)/usr/sbin/tftpd +endef + +define TFTPD_INSTALL_INIT_SYSV + $(INSTALL) -D -m 0755 package/tftpd/S80tftpd-hpa $(TARGET_DIR)/etc/init.d/S80tftpd-hpa +endef + +$(eval $(autotools-package)) diff --git a/package/thermald/0001-thd_trip_point-fix-32-bit-build-error-with-musl-v1.2.patch b/package/thermald/0001-thd_trip_point-fix-32-bit-build-error-with-musl-v1.2.patch new file mode 100644 index 00000000..db5bc99a --- /dev/null +++ b/package/thermald/0001-thd_trip_point-fix-32-bit-build-error-with-musl-v1.2.patch @@ -0,0 +1,53 @@ +From 074575bf3640485ab6d43ae1efed3eff9cebae13 Mon Sep 17 00:00:00 2001 +From: Naveen Saini +Date: Thu, 5 Mar 2020 13:45:57 +0800 +Subject: [PATCH] thd_trip_point: fix 32-bit build error with musl v1.2.0 + +Error log: + ../git/src/thd_trip_point.cpp: In member function 'bool cthd_trip_point::thd_trip_point_check(int, unsigned int, int, bool*)': +| ../git/src/thd_trip_point.cpp:250:19: error: format '%ld' expects argument of type 'long int', but argument 6 has type 'time_t' {aka 'long long int'} [-Werror=format=] +| 250 | thd_log_info("Too early to act zone:%d index %d tm %ld\n", + +musl 1.2.0 have new feature: +time_t is now 64-bit on all archs (not just 64-bit archs) + +Commit id: +https://git.musl-libc.org/cgit/musl/commit/?id=38143339646a4ccce8afe298c34467767c899f51 + +Release note link for musl 1.2.0: +https://git.musl-libc.org/cgit/musl/diff/ + +use %jd and typecast with intmax_t which is maximum width integer type + +Signed-off-by: Naveen Saini +[Upstream: https://github.com/intel/thermal_daemon/commit/a7136682b9e6ebdb53c3c8b472bcd5039d62dc78.patch] +Signed-off-by: Peter Seiderer +--- + src/thd_trip_point.cpp | 10 ++-------- + 1 file changed, 2 insertions(+), 8 deletions(-) + +diff --git a/src/thd_trip_point.cpp b/src/thd_trip_point.cpp +index 46f692d..6358c27 100644 +--- a/src/thd_trip_point.cpp ++++ b/src/thd_trip_point.cpp +@@ -242,15 +242,9 @@ bool cthd_trip_point::thd_trip_point_check(int id, unsigned int read_temp, + time_t tm; + time(&tm); + if ((tm - cdevs[i].last_op_time) < cdevs[i].sampling_priod) { +-#if defined __x86_64__ && defined __ILP32__ +- thd_log_info("Too early to act zone:%d index %d tm %lld\n", ++ thd_log_info("Too early to act zone:%d index %d tm %jd\n", + zone_id, cdev->thd_cdev_get_index(), +- tm - cdevs[i].last_op_time); +-#else +- thd_log_info("Too early to act zone:%d index %d tm %ld\n", +- zone_id, cdev->thd_cdev_get_index(), +- tm - cdevs[i].last_op_time); +-#endif ++ (intmax_t)tm - cdevs[i].last_op_time); + break; + } + cdevs[i].last_op_time = tm; +-- +2.29.2 + diff --git a/package/thermald/Config.in b/package/thermald/Config.in new file mode 100644 index 00000000..f32a4b27 --- /dev/null +++ b/package/thermald/Config.in @@ -0,0 +1,23 @@ +config BR2_PACKAGE_THERMALD + bool "thermald" + depends on BR2_i386 || BR2_x86_64 # needs + depends on BR2_USE_MMU # uses fork() + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS # dbus-glib -> glib2, dbus + depends on BR2_USE_WCHAR # dbus-glib -> glib2 + select BR2_PACKAGE_DBUS + select BR2_PACKAGE_DBUS_GLIB + select BR2_PACKAGE_LIBXML2 + help + Thermal Daemon is a Linux daemon for monitoring and + controlling platform temperatures. Once the system temperature + reaches a certain threshold, the Linux daemon activates + various cooling methods to try to cool the system. + + https://01.org/linux-thermal-daemon + +comment "thermald needs a toolchain w/ C++, wchar, threads" + depends on BR2_i386 || BR2_x86_64 + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_INSTALL_LIBSTDCPP diff --git a/package/thermald/thermald.hash b/package/thermald/thermald.hash new file mode 100644 index 00000000..34094ac8 --- /dev/null +++ b/package/thermald/thermald.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 aaf5ffdc12344eef2417b41b433094bb30e4ebf321f0140b090f97bfcf24ea1f thermald-1.9.1.tar.gz +sha256 e98be8bc482e038a14bfbc01caf800bbd0024fff275ef14cd999db6560254a8d COPYING diff --git a/package/thermald/thermald.mk b/package/thermald/thermald.mk new file mode 100644 index 00000000..5619258c --- /dev/null +++ b/package/thermald/thermald.mk @@ -0,0 +1,23 @@ +################################################################################ +# +# thermald +# +################################################################################ + +THERMALD_VERSION = 1.9.1 +THERMALD_SITE = $(call github,intel,thermal_daemon,v$(THERMALD_VERSION)) +# fetched from Github, with no configure script +THERMALD_AUTORECONF = YES +THERMALD_DEPENDENCIES = dbus dbus-glib libxml2 $(TARGET_NLS_DEPENDENCIES) +# tools are GPL-3.0+ but are not added to the target +THERMALD_LICENSE = GPL-2.0+ +THERMALD_LICENSE_FILES = COPYING +THERMALD_CPE_ID_VENDOR = intel +THERMALD_CONF_ENV = LIBS=$(TARGET_NLS_LIBS) + +ifeq ($(BR2_INIT_SYSTEMD),y) +THERMALD_DEPENDENCIES += systemd +THERMALD_CONF_OPTS += --with-systemdsystemunitdir=/usr/lib/systemd/system +endif + +$(eval $(autotools-package)) diff --git a/package/thrift/Config.in b/package/thrift/Config.in new file mode 100644 index 00000000..2fa04705 --- /dev/null +++ b/package/thrift/Config.in @@ -0,0 +1,22 @@ +config BR2_PACKAGE_THRIFT + bool "thrift" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_USE_WCHAR + depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_BOOST + select BR2_PACKAGE_LIBEVENT + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_ZLIB + help + The Apache Thrift software framework, for scalable + cross-language services development, combines a software + stack with a code generation engine to build services that + work efficiently and seamlessly between C++, Java, Python, + PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, + Node.js, Smalltalk, OCaml and Delphi and other languages. + + http://thrift.apache.org/ + +comment "thrift needs a toolchain w/ C++, wchar, threads" + depends on !BR2_USE_WCHAR || \ + !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP diff --git a/package/thrift/thrift.hash b/package/thrift/thrift.hash new file mode 100644 index 00000000..20d6baea --- /dev/null +++ b/package/thrift/thrift.hash @@ -0,0 +1,4 @@ +# From https://www.apache.org/dist/thrift/0.14.1/thrift-0.14.1.tar.gz.sha256 +sha256 13da5e1cd9c8a3bb89778c0337cc57eb0c29b08f3090b41cf6ab78594b410ca5 thrift-0.14.1.tar.gz +# License files, locally calculated +sha256 d315e6cdedc07c478de6992027bfb66f220886c6216fd7e9885ced30c3703646 LICENSE diff --git a/package/thrift/thrift.mk b/package/thrift/thrift.mk new file mode 100644 index 00000000..c36efce2 --- /dev/null +++ b/package/thrift/thrift.mk @@ -0,0 +1,71 @@ +################################################################################ +# +# thrift +# +################################################################################ + +THRIFT_VERSION = 0.14.1 +THRIFT_SITE = http://www.us.apache.org/dist/thrift/$(THRIFT_VERSION) +THRIFT_LICENSE = Apache-2.0 +THRIFT_LICENSE_FILES = LICENSE +THRIFT_CPE_ID_VENDOR = apache + +THRIFT_DEPENDENCIES = host-pkgconf host-thrift boost \ + libevent openssl zlib +THRIFT_INSTALL_STAGING = YES +HOST_THRIFT_DEPENDENCIES = host-bison host-boost \ + host-flex host-libevent host-openssl host-pkgconf host-zlib + +THRIFT_COMMON_CONF_OPTS = -DBUILD_TUTORIALS=OFF \ + -DBUILD_TESTING=OFF \ + -DWITH_NODEJS=OFF \ + -DWITH_PYTHON=OFF \ + -DWITH_JAVA=OFF \ + -DWITH_JAVASCRIPT=OFF \ + -DWITH_QT5=OFF + +THRIFT_CONF_OPTS = $(THRIFT_COMMON_CONF_OPTS) -DBUILD_COMPILER=OFF +HOST_THRIFT_CONF_OPTS = $(THRIFT_COMMON_CONF_OPTS) -DBUILD_COMPILER=ON + +# relocation truncated to fit: R_68K_GOT16O +ifeq ($(BR2_m68k_cf),y) +THRIFT_CONF_ENV += CXXFLAGS="$(TARGET_CXXFLAGS) -mxgot" +endif + +# thrift doesn't use the regular flags BUILD_{STATIC,SHARED}_LIBS +ifeq ($(BR2_STATIC_LIBS),y) +THRIFT_CONF_OPTS += -DWITH_STATIC_LIB=ON -DWITH_BOOST_STATIC=ON -DWITH_SHARED_LIB=OFF +else ifeq ($(BR2_SHARED_LIBS),y) +THRIFT_CONF_OPTS += -DWITH_STATIC_LIB=OFF -DWITH_BOOST_STATIC=OFF -DWITH_SHARED_LIB=ON +else +# BR2_SHARED_STATIC_LIBS +THRIFT_CONF_OPTS += -DWITH_STATIC_LIB=ON -DWITH_BOOST_STATIC=OFF -DWITH_SHARED_LIB=ON +endif + +# Language selection for the compiler +HOST_THRIFT_CONF_OPTS += -DTHRIFT_COMPILER_CSHARP=OFF \ + -DTHRIFT_COMPILER_JAVA=OFF \ + -DTHRIFT_COMPILER_ERL=OFF \ + -DTHRIFT_COMPILER_PY=OFF \ + -DTHRIFT_COMPILER_PERL=OFF \ + -DTHRIFT_COMPILER_PHP=OFF \ + -DTHRIFT_COMPILER_RB=OFF \ + -DTHRIFT_COMPILER_HS=OFF \ + -DTHRIFT_COMPILER_GO=OFF \ + -DTHRIFT_COMPILER_D=OFF \ + -DTHRIFT_COMPILER_LUA=OFF \ + -DBUILD_C_GLIB=OFF + +# C bindings +ifeq ($(BR2_PACKAGE_LIBGLIB2),y) +THRIFT_DEPENDENCIES += libglib2 +THRIFT_CONF_OPTS += -DBUILD_C_GLIB=ON +else +THRIFT_CONF_OPTS += -DBUILD_C_GLIB=OFF +endif + +$(eval $(cmake-package)) +$(eval $(host-cmake-package)) + +# to be used by other packages +THRIFT = $(HOST_DIR)/bin/thrift diff --git a/package/thttpd/Config.in b/package/thttpd/Config.in new file mode 100644 index 00000000..66537aa2 --- /dev/null +++ b/package/thttpd/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_THTTPD + bool "thttpd" + depends on BR2_USE_MMU # fork() + help + thttpd is a simple, small, portable, fast, and secure HTTP + server + + http://www.acme.com/software/thttpd/ diff --git a/package/thttpd/S90thttpd b/package/thttpd/S90thttpd new file mode 100644 index 00000000..94b079b0 --- /dev/null +++ b/package/thttpd/S90thttpd @@ -0,0 +1,54 @@ +#!/bin/sh + +DAEMON="thttpd" +PIDFILE="/var/run/$DAEMON.pid" + +THTTPD_ARGS="-C /etc/thttpd.conf" + +# shellcheck source=/dev/null +[ -r "/etc/default/$DAEMON" ] && . "/etc/default/$DAEMON" + +start() { + printf 'Starting %s: ' "$DAEMON" + # shellcheck disable=SC2086 # we need the word splitting + start-stop-daemon -S -q -p "$PIDFILE" -x "/usr/sbin/$DAEMON" \ + -- $THTTPD_ARGS + status=$? + if [ "$status" -eq 0 ]; then + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +stop() { + printf 'Stopping %s: ' "$DAEMON" + start-stop-daemon -K -q -p "$PIDFILE" + status=$? + if [ "$status" -eq 0 ]; then + # thttpd does not remove the pid file on exit + rm -f "$PIDFILE" + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +restart() { + stop + sleep 1 + start +} + +case "$1" in + start|stop|restart) + "$1";; + reload) + # Restart, since there is no true "reload" feature. + restart;; + *) + echo "Usage: $0 {start|stop|restart|reload}" + exit 1 +esac diff --git a/package/thttpd/thttpd.hash b/package/thttpd/thttpd.hash new file mode 100644 index 00000000..4bdd7fe7 --- /dev/null +++ b/package/thttpd/thttpd.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 99c09f47da326b1e7b5295c45549d2b65534dce27c44812cf7eef1441681a397 thttpd-2.29.tar.gz +sha256 be059e6b8219d5bb5480fa6a2864bbb34892f56951d03d08b356bc1fa8c81a01 thttpd.c diff --git a/package/thttpd/thttpd.mk b/package/thttpd/thttpd.mk new file mode 100644 index 00000000..3815705b --- /dev/null +++ b/package/thttpd/thttpd.mk @@ -0,0 +1,42 @@ +################################################################################ +# +# thttpd +# +################################################################################ + +THTTPD_VERSION = 2.29 +THTTPD_SITE = https://acme.com/software/thttpd +THTTPD_LICENSE = BSD-2-Clause +THTTPD_LICENSE_FILES = thttpd.c +THTTPD_CPE_ID_VENDOR = acme + +THTTPD_MAKE = $(MAKE1) + +define THTTPD_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/thttpd $(TARGET_DIR)/usr/sbin/thttpd + $(INSTALL) -D -m 0755 $(@D)/extras/htpasswd $(TARGET_DIR)/usr/bin/htpasswd + $(INSTALL) -D -m 0755 $(@D)/extras/makeweb $(TARGET_DIR)/usr/bin/makeweb + $(INSTALL) -D -m 0755 $(@D)/extras/syslogtocern $(TARGET_DIR)/usr/bin/syslogtocern + $(INSTALL) -D -m 0755 $(@D)/scripts/thttpd_wrapper $(TARGET_DIR)/usr/sbin/thttpd_wrapper + $(SED) 's:/usr/local/sbin:/usr/sbin:g' -e \ + 's:/usr/local/www/thttpd_config:/etc/thttpd.conf:g' \ + $(TARGET_DIR)/usr/sbin/thttpd_wrapper + $(INSTALL) -d $(TARGET_DIR)/var/www/data + $(INSTALL) -d $(TARGET_DIR)/var/www/logs + echo "dir=/var/www/data" > $(TARGET_DIR)/etc/thttpd.conf + echo 'cgipat=**.cgi' >> $(TARGET_DIR)/etc/thttpd.conf + echo "logfile=/var/www/logs/thttpd_log" >> $(TARGET_DIR)/etc/thttpd.conf + echo "pidfile=/var/run/thttpd.pid" >> $(TARGET_DIR)/etc/thttpd.conf +endef + +define THTTPD_INSTALL_INIT_SYSV + $(INSTALL) -D -m 0755 package/thttpd/S90thttpd \ + $(TARGET_DIR)/etc/init.d/S90thttpd +endef + +define THTTPD_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 0644 package/thttpd/thttpd.service \ + $(TARGET_DIR)/usr/lib/systemd/system/thttpd.service +endef + +$(eval $(autotools-package)) diff --git a/package/thttpd/thttpd.service b/package/thttpd/thttpd.service new file mode 100644 index 00000000..e3c93e7b --- /dev/null +++ b/package/thttpd/thttpd.service @@ -0,0 +1,10 @@ +[Unit] +Description=Tiny HTTP Daemon + +[Service] +PIDFile=/run/thttpd.pid +ExecStart=/usr/sbin/thttpd -D -C /etc/thttpd.conf +Restart=always + +[Install] +WantedBy=multi-user.target diff --git a/package/ti-cgt-pru/Config.in.host b/package/ti-cgt-pru/Config.in.host new file mode 100644 index 00000000..eab3cd72 --- /dev/null +++ b/package/ti-cgt-pru/Config.in.host @@ -0,0 +1,18 @@ +config BR2_PACKAGE_HOST_TI_CGT_PRU_ARCH_SUPPORTS + bool + default y + depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + depends on BR2_arm + +config BR2_PACKAGE_HOST_TI_CGT_PRU + bool "host ti-cgt-pru" + depends on BR2_PACKAGE_HOST_TI_CGT_PRU_ARCH_SUPPORTS + select BR2_HOSTARCH_NEEDS_IA32_LIBS + help + This package provides the Code Generation Tools for the PRU + unit found on some TI processors e.g. AM3358. + + Note: this is a binary cross toolchain that runs on x86 hosts + targeting PRU cores found alongside some ARM processors. + + http://processors.wiki.ti.com/index.php/Programmable_Realtime_Unit_Software_Development diff --git a/package/ti-cgt-pru/ti-cgt-pru.hash b/package/ti-cgt-pru/ti-cgt-pru.hash new file mode 100644 index 00000000..4dee3218 --- /dev/null +++ b/package/ti-cgt-pru/ti-cgt-pru.hash @@ -0,0 +1,4 @@ +# Locally calculated +sha256 1f1405167214f2c0ef848591b17a7799fdcd9f55f11bc90db9ace3490d426215 ti_cgt_pru_2.3.3_linux_installer_x86.bin +sha256 913cb4ab564f874b7c9a11726a16c4ccdc7ecc60be2738201281a1e28dc93641 PRU_Code_Generation_Tools_2.3.x_manifest.html +sha256 5e198df9782c63cedc8363f0e298b241a9a8084398a925f6e1003dbcb60801cb pru_rts_2_3_0_82167478-F8C9-49b2-82BD-12F8550770F9.spdx diff --git a/package/ti-cgt-pru/ti-cgt-pru.mk b/package/ti-cgt-pru/ti-cgt-pru.mk new file mode 100644 index 00000000..8bf907cc --- /dev/null +++ b/package/ti-cgt-pru/ti-cgt-pru.mk @@ -0,0 +1,33 @@ +################################################################################ +# +# ti-cgt-pru +# +################################################################################ + +TI_CGT_PRU_VERSION = 2.3.3 +TI_CGT_PRU_SOURCE = ti_cgt_pru_$(TI_CGT_PRU_VERSION)_linux_installer_x86.bin +TI_CGT_PRU_SITE = http://downloads.ti.com/codegen/esd/cgt_public_sw/PRU/$(TI_CGT_PRU_VERSION) +TI_CGT_PRU_LICENSE = TI Technology and Software Publicly Available License (compiler + PRU library), \ + BSL-1.0 (compiler), BSD-2-Clause, BSD-3-Clause, MIT, AFL-3.0, Hewlett-Packard (PRU library) +TI_CGT_PRU_LICENSE_FILES = PRU_Code_Generation_Tools_2.3.x_manifest.html \ + pru_rts_2_3_0_82167478-F8C9-49b2-82BD-12F8550770F9.spdx + +define HOST_TI_CGT_PRU_EXTRACT_CMDS + chmod +x $(HOST_TI_CGT_PRU_DL_DIR)/$(TI_CGT_PRU_SOURCE) + $(HOST_TI_CGT_PRU_DL_DIR)/$(TI_CGT_PRU_SOURCE) --prefix $(@D) --mode unattended + mv $(@D)/ti-cgt-pru_$(TI_CGT_PRU_VERSION)/* $(@D) + rmdir $(@D)/ti-cgt-pru_$(TI_CGT_PRU_VERSION)/ +endef + +# Since this is largely prebuilt toolchain and likes to live in its +# own directory, put it in $(HOST_DIR)/share/ti-cgt-pru/. +# Packages wanting to use this toolchain need to use this path as TI's +# standard PRU_CGT path e.g. make PRU_CGT=$(TI_CGT_PRU_INSTALLDIR)... +TI_CGT_PRU_INSTALLDIR = $(HOST_DIR)/share/ti-cgt-pru + +define HOST_TI_CGT_PRU_INSTALL_CMDS + mkdir -p $(TI_CGT_PRU_INSTALLDIR) + cp -dpfr $(@D)/* $(TI_CGT_PRU_INSTALLDIR) +endef + +$(eval $(host-generic-package)) diff --git a/package/ti-gfx/0001-newclkapi.patch b/package/ti-gfx/0001-newclkapi.patch new file mode 100644 index 00000000..69574c15 --- /dev/null +++ b/package/ti-gfx/0001-newclkapi.patch @@ -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 +[yann.morin.1998@free.fr: rebased ontop of 5.01.00.01] +Signed-off-by: "Yann E. MORIN" +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 index 00000000..002d01c1 --- /dev/null +++ b/package/ti-gfx/0002-fix-build-omaplfb-linux.patch @@ -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 + +--- 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 index 00000000..2cf6e815 --- /dev/null +++ b/package/ti-gfx/0003-km_install_modules.patch @@ -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 +---- +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/Config.in b/package/ti-gfx/Config.in new file mode 100644 index 00000000..76aabcb8 --- /dev/null +++ b/package/ti-gfx/Config.in @@ -0,0 +1,84 @@ +config BR2_PACKAGE_TI_GFX + bool "ti-gfx" + depends on BR2_LINUX_KERNEL && BR2_TOOLCHAIN_USES_GLIBC && BR2_arm + depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + select BR2_HOSTARCH_NEEDS_IA32_LIBS + select BR2_PACKAGE_HAS_LIBEGL + select BR2_PACKAGE_HAS_LIBGLES + select BR2_PACKAGE_HAS_POWERVR + select BR2_PACKAGE_FBSET if !BR2_PACKAGE_BUSYBOX # Runtime dependency only + select BR2_LINUX_NEEDS_MODULES # not using kernel-module infra + help + Graphics libraries for TI boards using SGX acceleration. + + Supports OMAP35xx, DM37xx/AM37xx, DM816x, DM814x, AM335x and + AM43xx. + + For newer CPUs or kernels use the ti-sgx-{km,um} packages. + + http://downloads.ti.com/dsps/dsps_public_sw/gfxsdk/ + +if BR2_PACKAGE_TI_GFX + +config BR2_PACKAGE_PROVIDES_LIBEGL + default "ti-gfx" + +config BR2_PACKAGE_PROVIDES_LIBGLES + default "ti-gfx" + +config BR2_PACKAGE_PROVIDES_POWERVR + default "ti-gfx" + +config BR2_PACKAGE_TI_GFX_DEBUG + bool "enable debug support" + help + Turns on debugging in the kernel module, install libraries + built with debugging enabled, installs various tests and + installs esrev script. + +config BR2_PACKAGE_TI_GFX_DEMOS + bool "install demos" + default y + help + Install the OGLES2ChameleonMan and OGLES2MagicLantern demos + +config BR2_PACKAGE_TI_GFX_EGLIMAGE + bool "install eglimage version of libraries" + help + Installs OpenGL libaries which support the eglimage api. + +choice + prompt "Target" + default BR2_PACKAGE_TI_GFX_ES3 + help + Select the SOC for which you would like to install + drivers. Please use the chart at + http://processors.wiki.ti.com/index.php/OMAP35x_Graphics_SDK_Getting_Started_Guide + +config BR2_PACKAGE_TI_GFX_ES3 + bool "es3.x (OMAP35xx, AM35xx Rev 3.1+)" + help + OMAP35xx, AM35xx Rev 3.1+ + +config BR2_PACKAGE_TI_GFX_ES5 + bool "es5.x (AM37xx, DM37xx)" + help + AM37xx, DM37xx + +config BR2_PACKAGE_TI_GFX_ES6 + bool "es6.x (AM387x, DMA814x, AM389x, DM816x)" + help + AM387x, DM814x, AM389x, DM816x + +config BR2_PACKAGE_TI_GFX_ES8 + bool "es8.x (AM335x)" + help + AM335x + +endchoice + +endif + +comment "ti-gfx needs a glibc toolchain and a Linux kernel to be built" + depends on BR2_arm + depends on !(BR2_LINUX_KERNEL && BR2_TOOLCHAIN_USES_GLIBC) diff --git a/package/ti-gfx/S80ti-gfx b/package/ti-gfx/S80ti-gfx new file mode 100644 index 00000000..fc5999a8 --- /dev/null +++ b/package/ti-gfx/S80ti-gfx @@ -0,0 +1,53 @@ +#!/bin/sh + +start() { + echo "ti-gfx: starting pvr driver" + + BITSPERPIXEL="$(fbset | awk '/geom/ {print $6}')" + YRES="$(fbset | awk '/geom/ {print $3}')" + # Set RGBA ordering to something the drivers like + if [ "$BITSPERPIXEL" = "32" ] ; then + fbset -rgba 8/16,8/8,8/0,8/24 + fi + # Try to enable triple buffering when there's enough VRAM + fbset -vyres $(( YRES*3 )) + + modprobe pvrsrvkm + modprobe omaplfb + modprobe bufferclass_ti + + pvr_maj=$(awk '$2=="pvrsrvkm" { print $1; }' /proc/devices) + rm -f /dev/pvrsrvkm + + mknod /dev/pvrsrvkm c $pvr_maj 0 + chmod 600 /dev/pvrsrvkm + + if ! /usr/bin/pvrsrvctl --start --no-module; then + echo "ti-gfx: unable to start server" + fi +} + +stop() { + echo "ti-gfx: stopping pvr driver" + + rmmod bufferclass_ti + rmmod omaplfb + rmmod pvrsrvkm +} + +case "$1" in +start) + start +;; +stop) + stop +;; +restart) + stop + start +;; +*) + echo "ti-gfx: Please use start, stop, or restart." + exit 1 +;; +esac diff --git a/package/ti-gfx/egl.pc b/package/ti-gfx/egl.pc new file mode 100644 index 00000000..36ea4131 --- /dev/null +++ b/package/ti-gfx/egl.pc @@ -0,0 +1,11 @@ +prefix=/usr/ +exec_prefix=${prefix} +libdir=${exec_prefix}/lib +includedir=${prefix}/include + +Name: egl +Description: TI Graphics SDK implementation of EGL +Version: 1.9.2188537 +Requires: +Libs: -L${libdir} -lEGL -lGLESv2 -lIMGegl +Cflags: -I${includedir} diff --git a/package/ti-gfx/esrev.sh b/package/ti-gfx/esrev.sh new file mode 100644 index 00000000..8109334b --- /dev/null +++ b/package/ti-gfx/esrev.sh @@ -0,0 +1,60 @@ +#!/bin/sh + +# Debug script to determine proper ES revision for the current board. The +# pvrsrvkm module must be insmoded before attempting to get the es rev. + +machine_id() { # return the machine ID + awk 'BEGIN { FS=": " } /Hardware/ \ + { gsub(" ", "_", $2); print tolower($2) } ' +Date: Sun, 10 Nov 2019 22:44:44 -0300 +Subject: [PATCH] Makefile: do not install init script + +Use a custom one, made for Buildroot, instead. + +Signed-off-by: Carlos Santos +--- + Makefile | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/Makefile b/Makefile +index 649111a..19016f3 100755 +--- a/Makefile ++++ b/Makefile +@@ -3,7 +3,6 @@ TARGET_PRODUCT ?= jacinto6evm + SRCDIR = ./targetfs/${TARGET_PRODUCT} + + prefix = /usr +-etcdir = /etc + bindir = ${prefix}/bin + incdir = ${prefix}/include + libdir = ${prefix}/lib +@@ -11,11 +10,9 @@ libdir = ${prefix}/lib + all: + + install: +- mkdir -p ${DESTDIR}${etcdir} + mkdir -p ${DESTDIR}${bindir} + mkdir -p ${DESTDIR}${incdir} + mkdir -p ${DESTDIR}${libdir} +- cp -ar ${SRCDIR}/etc/* ${DESTDIR}${etcdir} + cp -ar ${SRCDIR}/bin/* ${DESTDIR}${bindir} + cp -ar ${SRCDIR}/include/* ${DESTDIR}${incdir} + cp -ar ${SRCDIR}/lib/* ${DESTDIR}${libdir} +-- +2.18.1 + diff --git a/package/ti-sgx-um/Config.in b/package/ti-sgx-um/Config.in new file mode 100644 index 00000000..b97469a3 --- /dev/null +++ b/package/ti-sgx-um/Config.in @@ -0,0 +1,40 @@ +comment "ti-sgx-um needs the ti-sgx-km driver" + depends on !BR2_PACKAGE_TI_SGX_KM + +comment "ti-sgx-um needs udev and a glibc toolchain w/ threads" + depends on !BR2_PACKAGE_HAS_UDEV || !BR2_TOOLCHAIN_USES_GLIBC \ + || !BR2_TOOLCHAIN_HAS_THREADS + +config BR2_PACKAGE_TI_SGX_UM + bool "ti-sgx-um" + depends on BR2_PACKAGE_TI_SGX_KM + depends on BR2_TOOLCHAIN_HAS_THREADS # libdrm + depends on BR2_PACKAGE_HAS_UDEV + # pre-built binaries + depends on BR2_TOOLCHAIN_USES_GLIBC + select BR2_PACKAGE_LIBDRM + select BR2_PACKAGE_LIBDRM_OMAP + select BR2_PACKAGE_HAS_LIBEGL + select BR2_PACKAGE_HAS_LIBGLES + select BR2_PACKAGE_HAS_POWERVR + select BR2_PACKAGE_LIBFFI + select BR2_PACKAGE_WAYLAND + help + Graphics libraries for TI CPUs with SGX5xx GPU. + This package supports AM335x, AM437x, AM4430 and AM5430. + For older CPUs or kernels use the ti-gfx package. + + https://git.ti.com/cgit/graphics/omap5-sgx-ddk-um-linux + +if BR2_PACKAGE_TI_SGX_UM + +config BR2_PACKAGE_PROVIDES_LIBEGL + default "ti-sgx-um" + +config BR2_PACKAGE_PROVIDES_LIBGLES + default "ti-sgx-um" + +config BR2_PACKAGE_PROVIDES_POWERVR + default "ti-sgx-um" + +endif diff --git a/package/ti-sgx-um/S80ti-sgx b/package/ti-sgx-um/S80ti-sgx new file mode 100644 index 00000000..2630a057 --- /dev/null +++ b/package/ti-sgx-um/S80ti-sgx @@ -0,0 +1,56 @@ +#!/bin/sh + +pvrsrvkm_ko="/lib/modules/$(/bin/uname -r)/extra/pvrsrvkm.ko" + +pvr_loaded() { + /sbin/lsmod | /bin/grep -q '^\' +} + +pvr_load() { + /sbin/insmod "$pvrsrvkm_ko" > /dev/null 2>&1 +} + +start() { + printf 'Loading pvrsrvkm module: ' + pvr_loaded || pvr_load + status=$? + if [ "$status" -eq 0 ]; then + printf 'Starting PowerVR services: ' + /usr/bin/pvrsrvctl --start --no-module > /dev/null 2>&1 + status=$? + fi + if [ "$status" -eq 0 ]; then + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +stop() { + printf 'Starting PowerVR services: ' + /usr/bin/pvrsrvctl --stop > /dev/null 2>&1 + status=$? + if [ "$status" -eq 0 ]; then + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +restart() { + stop + sleep 1 + start +} + +case "$1" in + start|stop|restart) + "$1";; + reload) + restart;; + *) + echo "Usage: $0 {start|stop|restart|reload}" + exit 1 +esac diff --git a/package/ti-sgx-um/ti-sgx-um.hash b/package/ti-sgx-um/ti-sgx-um.hash new file mode 100644 index 00000000..109b2e9e --- /dev/null +++ b/package/ti-sgx-um/ti-sgx-um.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 e52c743194516fcc92d570bc5a26dfaa26d18c13d92d41640019f544ef25be3a ti-sgx-um-909e237baf47d0bde006ff25552f5403fd7e359d-br1.tar.gz +sha256 368c306246c9130b5c90a6fef2f80085f70b6225b3f552654a288c0f39fc1531 TI-Linux-Graphics-DDK-UM-Manifest.doc diff --git a/package/ti-sgx-um/ti-sgx-um.mk b/package/ti-sgx-um/ti-sgx-um.mk new file mode 100644 index 00000000..83dbc680 --- /dev/null +++ b/package/ti-sgx-um/ti-sgx-um.mk @@ -0,0 +1,36 @@ +################################################################################ +# +# ti-sgx-um +# +################################################################################ + +# This corresponds to SDK 06.01.00.08 +TI_SGX_UM_VERSION = 909e237baf47d0bde006ff25552f5403fd7e359d +TI_SGX_UM_SITE = http://git.ti.com/git/graphics/omap5-sgx-ddk-um-linux.git +TI_SGX_UM_SITE_METHOD = git +TI_SGX_UM_LICENSE = TI TSPA License +TI_SGX_UM_LICENSE_FILES = TI-Linux-Graphics-DDK-UM-Manifest.doc +TI_SGX_UM_INSTALL_STAGING = YES +TI_SGX_UM_TARGET=ti335x + +# ti-sgx-um is a egl/gles provider only if libdrm is installed +TI_SGX_UM_DEPENDENCIES = libdrm wayland + +define TI_SGX_UM_INSTALL_STAGING_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DISCIMAGE=$(STAGING_DIR) \ + TARGET_PRODUCT=$(TI_SGX_UM_TARGET) install +endef + +define TI_SGX_UM_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DISCIMAGE=$(TARGET_DIR) \ + TARGET_PRODUCT=$(TI_SGX_UM_TARGET) install +endef + +TI_SGX_UM_POST_INSTALL_TARGET_HOOKS += TI_SGX_UM_INSTALL_CONF + +define TI_SGX_UM_INSTALL_INIT_SYSV + $(INSTALL) -D -m 0755 package/ti-sgx-um/S80ti-sgx \ + $(TARGET_DIR)/etc/init.d/S80ti-sgx +endef + +$(eval $(generic-package)) diff --git a/package/ti-uim/Config.in b/package/ti-uim/Config.in new file mode 100644 index 00000000..451aad13 --- /dev/null +++ b/package/ti-uim/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_TI_UIM + bool "ti-uim" + help + User Mode Initialization Manager for TI wl12xx connectivity + chip shared transport drivers. This daemon is needed to get + the btwilink driver to work. + + http://omappedia.org/wiki/Device_Driver_Interface_of_WiLink_Solution diff --git a/package/ti-uim/ti-uim.hash b/package/ti-uim/ti-uim.hash new file mode 100644 index 00000000..9c29b746 --- /dev/null +++ b/package/ti-uim/ti-uim.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 da8a66968f4bf99366ab2b63baf358d937a6b1a5636ef6179c3aa7c852cbd1b2 ti-uim-a0236bc252e6484835ce266ae4a50b361f6a902d.tar.gz +sha256 4e39276507524f938459b05d061ae77562f3f85926fe73027cfcac259cb03d0e uim.h diff --git a/package/ti-uim/ti-uim.mk b/package/ti-uim/ti-uim.mk new file mode 100644 index 00000000..8b1678f6 --- /dev/null +++ b/package/ti-uim/ti-uim.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# ti-uim +# +################################################################################ + +TI_UIM_VERSION = a0236bc252e6484835ce266ae4a50b361f6a902d +TI_UIM_SITE = $(call github,96boards,uim,$(TI_UIM_VERSION)) +TI_UIM_LICENSE = GPL-2.0+ +TI_UIM_LICENSE_FILES = uim.h + +define TI_UIM_BUILD_CMDS + $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) +endef + +define TI_UIM_INSTALL_TARGET_CMDS + $(INSTALL) -m 0755 -D $(@D)/uim \ + $(TARGET_DIR)/usr/sbin/uim +endef + +$(eval $(generic-package)) diff --git a/package/ti-utils/0001-plt.h-fix-build-with-gcc-10.patch b/package/ti-utils/0001-plt.h-fix-build-with-gcc-10.patch new file mode 100644 index 00000000..e36b735e --- /dev/null +++ b/package/ti-utils/0001-plt.h-fix-build-with-gcc-10.patch @@ -0,0 +1,35 @@ +From 9ed1946cef876acd5346ae806eecd7fc2e1e5341 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sat, 3 Oct 2020 10:32:48 +0200 +Subject: [PATCH] plt.h: fix build with gcc 10 + +Drop EFUSE_PARAMETER_TYPE_ENM to avoid the following build failure with +gcc 10 (which defaults to -fno-common): + +/home/naourr/work/instance-1/output-1/host/lib/gcc/arm-buildroot-linux-gnueabihf/10.2.0/../../../../arm-buildroot-linux-gnueabihf/bin/ld: misc_cmds.o:(.bss+0x0): multiple definition of `EFUSE_PARAMETER_TYPE_ENM'; nvs.o:(.bss+0x0): first defined here + +Fixes: + - http://autobuild.buildroot.org/results/e96c70910544085dc5299fa59f80ab9c5922fde2 + +Signed-off-by: Fabrice Fontaine +[Upstream status: https://github.com/gxk/ti-utils/pull/2] +--- + plt.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/plt.h b/plt.h +index 523fded..8ba01c9 100644 +--- a/plt.h ++++ b/plt.h +@@ -363,7 +363,7 @@ enum EFUSE_PARAMETER_TYPE_ENMT { + TX_BIP_PD_BUFFER_VBIAS_ERROR_E, + EFUSE_NUMBER_OF_PARAMETERS_E, + EFUSE_LAST_PARAMETER_E = (EFUSE_NUMBER_OF_PARAMETERS_E - 1) +-} EFUSE_PARAMETER_TYPE_ENM; ++}; + + int get_mac_addr(int ifc_num, unsigned char *mac_addr); + +-- +2.28.0 + diff --git a/package/ti-utils/Config.in b/package/ti-utils/Config.in new file mode 100644 index 00000000..99232348 --- /dev/null +++ b/package/ti-utils/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_TI_UTILS + bool "ti-utils" + depends on BR2_TOOLCHAIN_HAS_THREADS # libnl + select BR2_PACKAGE_LIBNL + help + The calibrator and other useful utilities for TI wireless + solution, based on wl12xx driver. + + http://linuxwireless.sipsolutions.net/en/users/Drivers/wl12xx/calibrator/ + +comment "ti-utils needs a toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/ti-utils/ti-utils.hash b/package/ti-utils/ti-utils.hash new file mode 100644 index 00000000..0548427f --- /dev/null +++ b/package/ti-utils/ti-utils.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 d05d4e3ad3599fca7854109938aebd24bbab72ac7d69dd053260f735a36613f9 ti-utils-06dbdb2727354b5f3ad7c723897f40051fddee49.tar.gz +sha256 363cef40b276a7a91ebcff3f78626d9cfe5e5a51927c725236007259403d5fc4 COPYING diff --git a/package/ti-utils/ti-utils.mk b/package/ti-utils/ti-utils.mk new file mode 100644 index 00000000..73048080 --- /dev/null +++ b/package/ti-utils/ti-utils.mk @@ -0,0 +1,31 @@ +################################################################################ +# +# ti-utils +# +################################################################################ + +TI_UTILS_VERSION = 06dbdb2727354b5f3ad7c723897f40051fddee49 +TI_UTILS_SITE = $(call github,gxk,ti-utils,$(TI_UTILS_VERSION)) +TI_UTILS_DEPENDENCIES = libnl host-pkgconf +TI_UTILS_LICENSE = BSD-3-Clause +TI_UTILS_LICENSE_FILES = COPYING + +TI_UTILS_CFLAGS = `$(PKG_CONFIG_HOST_BINARY) --cflags libnl-genl-3.0` +TI_UTILS_LIBS = `$(PKG_CONFIG_HOST_BINARY) --libs libnl-genl-3.0` + +define TI_UTILS_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE1) NFSROOT="$(STAGING_DIR)" \ + CC="$(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS) $(TI_UTILS_CFLAGS)" \ + LIBS="$(TI_UTILS_LIBS)" -C $(@D) all +endef + +define TI_UTILS_INSTALL_TARGET_CMDS + $(INSTALL) -m 0755 -D $(@D)/calibrator \ + $(TARGET_DIR)/usr/bin/calibrator + $(INSTALL) -m 0755 -D $(@D)/scripts/go.sh \ + $(TARGET_DIR)/usr/share/ti-utils/scripts/go.sh + + cp -r $(@D)/ini_files $(TARGET_DIR)/usr/share/ti-utils +endef + +$(eval $(generic-package)) diff --git a/package/tiff/Config.in b/package/tiff/Config.in new file mode 100644 index 00000000..f842c2ea --- /dev/null +++ b/package/tiff/Config.in @@ -0,0 +1,70 @@ +menuconfig BR2_PACKAGE_TIFF + bool "tiff" + help + Library for handling TIFF (Tag Image File Format) images. + + http://simplesystems.org/libtiff/ + +if BR2_PACKAGE_TIFF + +config BR2_PACKAGE_TIFF_CCITT + bool "CCITT Group 3 & 4 support" + default y + +config BR2_PACKAGE_TIFF_PACKBITS + bool "Macintosh PackBits algorithm" + default y + +config BR2_PACKAGE_TIFF_LZW + bool "LZW algorithm" + default y + +config BR2_PACKAGE_TIFF_THUNDER + bool "ThunderScan 4-bit RLE algorithm" + default y + +config BR2_PACKAGE_TIFF_NEXT + bool "NeXT 2-bit RLE algorithm" + default y + +config BR2_PACKAGE_TIFF_LOGLUV + bool "LogLuv high dynamic range encoding" + default y + +config BR2_PACKAGE_TIFF_MDI + bool "Microsoft Document Imaging" + default y + +config BR2_PACKAGE_TIFF_ZLIB + bool "Zlib usage (required for Deflate compression)" + default y + select BR2_PACKAGE_ZLIB + +config BR2_PACKAGE_TIFF_XZ + bool "XZ compression" + select BR2_PACKAGE_XZ + +config BR2_PACKAGE_TIFF_PIXARLOG + bool "Pixar log-format algorithm (requires Zlib)" + default y + select BR2_PACKAGE_TIFF_ZLIB + +config BR2_PACKAGE_TIFF_JPEG + bool "JPEG compression" + default y + select BR2_PACKAGE_JPEG + +config BR2_PACKAGE_TIFF_OLD_JPEG + bool "Old JPEG decompression" + default y + +config BR2_PACKAGE_TIFF_JBIG + bool "JBIG compression" + default y + +config BR2_PACKAGE_TIFF_UTILITIES + bool "tiff utilities" + help + Install all tiff utilities. + +endif diff --git a/package/tiff/tiff.hash b/package/tiff/tiff.hash new file mode 100644 index 00000000..472ec40e --- /dev/null +++ b/package/tiff/tiff.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 eb0484e568ead8fa23b513e9b0041df7e327f4ee2d22db5a533929dfc19633cb tiff-4.2.0.tar.gz +sha256 fbd6fed7938541d2c809c0826225fc85e551fdbfa8732b10f0c87e0847acafd7 COPYRIGHT diff --git a/package/tiff/tiff.mk b/package/tiff/tiff.mk new file mode 100644 index 00000000..c3d80451 --- /dev/null +++ b/package/tiff/tiff.mk @@ -0,0 +1,94 @@ +################################################################################ +# +# tiff +# +################################################################################ + +TIFF_VERSION = 4.2.0 +TIFF_SITE = http://download.osgeo.org/libtiff +TIFF_LICENSE = tiff license +TIFF_LICENSE_FILES = COPYRIGHT +TIFF_CPE_ID_VENDOR = libtiff +TIFF_CPE_ID_PRODUCT = libtiff +TIFF_INSTALL_STAGING = YES +TIFF_CONF_OPTS = \ + --disable-cxx \ + --without-x + +TIFF_DEPENDENCIES = host-pkgconf + +HOST_TIFF_CONF_OPTS = \ + --disable-cxx \ + --without-x \ + --disable-zlib \ + --disable-lzma \ + --disable-jpeg +HOST_TIFF_DEPENDENCIES = host-pkgconf + +ifneq ($(BR2_PACKAGE_TIFF_CCITT),y) +TIFF_CONF_OPTS += --disable-ccitt +endif + +ifneq ($(BR2_PACKAGE_TIFF_PACKBITS),y) +TIFF_CONF_OPTS += --disable-packbits +endif + +ifneq ($(BR2_PACKAGE_TIFF_LZW),y) +TIFF_CONF_OPTS += --disable-lzw +endif + +ifneq ($(BR2_PACKAGE_TIFF_THUNDER),y) +TIFF_CONF_OPTS += --disable-thunder +endif + +ifneq ($(BR2_PACKAGE_TIFF_NEXT),y) +TIFF_CONF_OPTS += --disable-next +endif + +ifneq ($(BR2_PACKAGE_TIFF_LOGLUV),y) +TIFF_CONF_OPTS += --disable-logluv +endif + +ifneq ($(BR2_PACKAGE_TIFF_MDI),y) +TIFF_CONF_OPTS += --disable-mdi +endif + +ifneq ($(BR2_PACKAGE_TIFF_ZLIB),y) +TIFF_CONF_OPTS += --disable-zlib +else +TIFF_DEPENDENCIES += zlib +endif + +ifneq ($(BR2_PACKAGE_TIFF_XZ),y) +TIFF_CONF_OPTS += --disable-lzma +else +TIFF_DEPENDENCIES += xz +endif + +ifneq ($(BR2_PACKAGE_TIFF_PIXARLOG),y) +TIFF_CONF_OPTS += --disable-pixarlog +endif + +ifneq ($(BR2_PACKAGE_TIFF_JPEG),y) +TIFF_CONF_OPTS += --disable-jpeg +else +TIFF_DEPENDENCIES += jpeg +endif + +ifneq ($(BR2_PACKAGE_TIFF_OLD_JPEG),y) +TIFF_CONF_OPTS += --disable-old-jpeg +endif + +ifneq ($(BR2_PACKAGE_TIFF_JBIG),y) +TIFF_CONF_OPTS += --disable-jbig +endif + +TIFF_SUBDIRS = port libtiff +ifeq ($(BR2_PACKAGE_TIFF_UTILITIES),y) +TIFF_SUBDIRS += tools +endif + +TIFF_MAKE = $(MAKE) SUBDIRS="$(TIFF_SUBDIRS)" + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/time/Config.in b/package/time/Config.in new file mode 100644 index 00000000..40275cf0 --- /dev/null +++ b/package/time/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_TIME + bool "time" + depends on BR2_USE_MMU # fork() + # See https://savannah.gnu.org/bugs/index.php?48000 + depends on !BR2_STATIC_LIBS + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + help + The GNU time utility. + + http://savannah.gnu.org/projects/time/ + +comment "time needs a toolchain w/ dynamic library" + depends on BR2_USE_MMU + depends on BR2_STATIC_LIBS diff --git a/package/time/time.hash b/package/time/time.hash new file mode 100644 index 00000000..cea57dc2 --- /dev/null +++ b/package/time/time.hash @@ -0,0 +1,5 @@ +# From https://lists.gnu.org/archive/html/info-gnu/2018-03/msg00004.html +sha1 75068c26abbed3ad3980685bae21d7202d288317 time-1.9.tar.gz +sha256 fbacf0c81e62429df3e33bda4cee38756604f18e01d977338e23306a3e3b521e time-1.9.tar.gz +# Locally calculated +sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING diff --git a/package/time/time.mk b/package/time/time.mk new file mode 100644 index 00000000..400eca0d --- /dev/null +++ b/package/time/time.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# time +# +################################################################################ + +TIME_VERSION = 1.9 +TIME_SITE = $(BR2_GNU_MIRROR)/time +TIME_CONF_ENV = ac_cv_func_wait3_rusage=yes +TIME_LICENSE = GPL-3.0+ +TIME_LICENSE_FILES = COPYING + +$(eval $(autotools-package)) diff --git a/package/timescaledb/0001-Allow-building-against-PG13-source.patch b/package/timescaledb/0001-Allow-building-against-PG13-source.patch new file mode 100644 index 00000000..96de9914 --- /dev/null +++ b/package/timescaledb/0001-Allow-building-against-PG13-source.patch @@ -0,0 +1,85 @@ +From 64c17f08c4a78cf6063651632d95906ab3bcb41b Mon Sep 17 00:00:00 2001 +From: Sven Klemm +Date: Sat, 19 Sep 2020 17:43:52 +0200 +Subject: [PATCH] Allow building against PG13 source + +This patch adjusts the version checks to allow building against +postgres 13. It also adjusts the cmake version check to allow +building against RC and devel versions. + +Signed-off-by: Maxim Kochetkov +Fetch from: https://github.com/timescale/timescaledb/commit/21dc9b9c1a307e46eda5fa621488ebeb6ee9636c.patch +--- + CMakeLists.txt | 18 ++++++++---------- + src/compat.h | 7 ++++++- + 2 files changed, 14 insertions(+), 11 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 8288b444..ce6e9d48 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -221,27 +221,25 @@ execute_process( + OUTPUT_VARIABLE PG_VERSION_STRING + OUTPUT_STRIP_TRAILING_WHITESPACE) + +-if (NOT ${PG_VERSION_STRING} MATCHES "^PostgreSQL[ ]+([0-9]+)\\.([0-9]+)(\\.([0-9]+))*") ++if (NOT ${PG_VERSION_STRING} MATCHES "^PostgreSQL[ ]+([0-9]+)(\\.([0-9]+)|devel|rc[0-9]+)") + message(FATAL_ERROR "Could not parse PostgreSQL version ${PG_VERSION_STRING}") + endif () + + set(PG_VERSION_MAJOR ${CMAKE_MATCH_1}) +-set(PG_VERSION_MINOR ${CMAKE_MATCH_2}) +-set(PG_VERSION_PATCH ${CMAKE_MATCH_4}) +- +-if (NOT ${PG_VERSION_PATCH} OR ${PG_VERSION_PATCH} EQUAL "") +- set(PG_VERSION "${PG_VERSION_MAJOR}.${PG_VERSION_MINOR}") +-else () +- set(PG_VERSION "${PG_VERSION_MAJOR}.${PG_VERSION_MINOR}.${PG_VERSION_PATCH}") ++if (${CMAKE_MATCH_COUNT} GREATER "2" ) ++ set(PG_VERSION_MINOR ${CMAKE_MATCH_3}) ++else() ++ set(PG_VERSION_MINOR 0) + endif () ++set(PG_VERSION "${PG_VERSION_MAJOR}.${PG_VERSION_MINOR}") + + message(STATUS "Compiling against PostgreSQL version ${PG_VERSION}") + + # Ensure that PostgreSQL version is supported and consistent + # with src/compat.h version check + if ((${PG_VERSION_MAJOR} LESS "11") OR +- (${PG_VERSION_MAJOR} GREATER "12")) +- message(FATAL_ERROR "TimescaleDB only supports PostgreSQL 11 and 12") ++ (${PG_VERSION_MAJOR} GREATER "13")) ++ message(FATAL_ERROR "TimescaleDB only supports PostgreSQL 11, 12 and 13") + endif() + + # Get PostgreSQL configuration from pg_config +diff --git a/src/compat.h b/src/compat.h +index 475217c6..267bb09a 100644 +--- a/src/compat.h ++++ b/src/compat.h +@@ -24,15 +24,20 @@ + + #define is_supported_pg_version_11(version) ((version >= 110000) && (version < 120000)) + #define is_supported_pg_version_12(version) ((version >= 120000) && (version < 130000)) ++#define is_supported_pg_version_13(version) ((version >= 130000) && (version < 140000)) + + #define is_supported_pg_version(version) \ +- (is_supported_pg_version_11(version) || is_supported_pg_version_12(version)) ++ (is_supported_pg_version_11(version) || is_supported_pg_version_12(version) || \ ++ is_supported_pg_version_13(version)) + + #define PG11 is_supported_pg_version_11(PG_VERSION_NUM) + #define PG12 is_supported_pg_version_12(PG_VERSION_NUM) ++#define PG13 is_supported_pg_version_13(PG_VERSION_NUM) + + #define PG12_LT PG11 + #define PG12_GE !(PG12_LT) ++#define PG13_LT !(PG13) ++#define PG13_GE PG13 + + #if !(is_supported_pg_version(PG_VERSION_NUM)) + #error "Unsupported PostgreSQL version" +-- +2.29.2 + diff --git a/package/timescaledb/0002-Add-compatibilty-wrapper-functions-for-base64-encodi.patch b/package/timescaledb/0002-Add-compatibilty-wrapper-functions-for-base64-encodi.patch new file mode 100644 index 00000000..d54b49ef --- /dev/null +++ b/package/timescaledb/0002-Add-compatibilty-wrapper-functions-for-base64-encodi.patch @@ -0,0 +1,73 @@ +From b020863a3ea18488448bc09234a4e3b26b68058d Mon Sep 17 00:00:00 2001 +From: Sven Klemm +Date: Sat, 19 Sep 2020 19:17:38 +0200 +Subject: [PATCH] Add compatibilty wrapper functions for base64 + encoding/decoding + +PG13 adds a destination length 4th argument to pg_b64_decode and +pg_b64_encode functions so this patch adds a macro that translates +to the 3 argument and 4 argument calls depending on postgres version. +This patch also adds checking of return values for those functions. + +https://github.com/postgres/postgres/commit/cfc40d384a + +Signed-off-by: Maxim Kochetkov +Fetch from: https://github.com/timescale/timescaledb/commit/002510cb01e1d09767a526560f89c1857c1738a2.patch +--- + src/compat.h | 11 +++++++++++ + tsl/src/compression/compression.c | 12 ++++++++++-- + 2 files changed, 21 insertions(+), 2 deletions(-) + +diff --git a/src/compat.h b/src/compat.h +index 267bb09a..d84f8754 100644 +--- a/src/compat.h ++++ b/src/compat.h +@@ -347,4 +347,15 @@ get_vacuum_options(const VacuumStmt *stmt) + #endif + } + ++/* PG13 added a dstlen parameter to pg_b64_decode and pg_b64_encode */ ++#if PG13_LT ++#define pg_b64_encode_compat(src, srclen, dst, dstlen) pg_b64_encode((src), (srclen), (dst)) ++#define pg_b64_decode_compat(src, srclen, dst, dstlen) pg_b64_decode((src), (srclen), (dst)) ++#else ++#define pg_b64_encode_compat(src, srclen, dst, dstlen) \ ++ pg_b64_encode((src), (srclen), (dst), (dstlen)) ++#define pg_b64_decode_compat(src, srclen, dst, dstlen) \ ++ pg_b64_decode((src), (srclen), (dst), (dstlen)) ++#endif ++ + #endif /* TIMESCALEDB_COMPAT_H */ +diff --git a/tsl/src/compression/compression.c b/tsl/src/compression/compression.c +index 470ec4b9..169f74e9 100644 +--- a/tsl/src/compression/compression.c ++++ b/tsl/src/compression/compression.c +@@ -1424,7 +1424,11 @@ tsl_compressed_data_in(PG_FUNCTION_ARGS) + + decoded_len = pg_b64_dec_len(input_len); + decoded = palloc(decoded_len + 1); +- decoded_len = pg_b64_decode(input, input_len, decoded); ++ decoded_len = pg_b64_decode_compat(input, input_len, decoded, decoded_len); ++ ++ if (decoded_len < 0) ++ elog(ERROR, "could not decode base64-encoded compressed data"); ++ + decoded[decoded_len] = '\0'; + data = (StringInfoData){ + .data = decoded, +@@ -1446,7 +1450,11 @@ tsl_compressed_data_out(PG_FUNCTION_ARGS) + const char *raw_data = VARDATA(bytes); + int encoded_len = pg_b64_enc_len(raw_len); + char *encoded = palloc(encoded_len + 1); +- encoded_len = pg_b64_encode(raw_data, raw_len, encoded); ++ encoded_len = pg_b64_encode_compat(raw_data, raw_len, encoded, encoded_len); ++ ++ if (encoded_len < 0) ++ elog(ERROR, "could not base64-encode compressed data"); ++ + encoded[encoded_len] = '\0'; + + PG_RETURN_CSTRING(encoded); +-- +2.29.2 + diff --git a/package/timescaledb/0003-Add-missing-utils-acl.h-includes.patch b/package/timescaledb/0003-Add-missing-utils-acl.h-includes.patch new file mode 100644 index 00000000..382c4e92 --- /dev/null +++ b/package/timescaledb/0003-Add-missing-utils-acl.h-includes.patch @@ -0,0 +1,149 @@ +From e68915d0aad6760c1feebb04219af9bfbccd71d7 Mon Sep 17 00:00:00 2001 +From: Sven Klemm +Date: Sat, 26 Sep 2020 13:58:17 +0200 +Subject: [PATCH] Add missing utils/acl.h includes + +PG13 removed acl.h from objectaddress.h so the places that need it +need to now include it explicitly if they got it indirectly this +way previously. + +https://github.com/postgres/postgres/commit/3c173a53a8 + +Signed-off-by: Maxim Kochetkov +Fetch from: https://github.com/timescale/timescaledb/commit/be8dd086a089f7419824bbc3b77182b95d0bbba7.patch +--- + src/bgw/job.c | 1 + + src/bgw/scheduler.c | 1 + + src/chunk.c | 1 + + src/chunk_adaptive.c | 1 + + src/extension_utils.c | 1 + + src/license_guc.c | 1 + + src/process_utility.c | 1 + + tsl/src/bgw_policy/continuous_aggregate_api.c | 1 + + tsl/src/bgw_policy/job_api.c | 1 + + tsl/src/continuous_aggs/refresh.c | 1 + + 10 files changed, 10 insertions(+) + +diff --git a/src/bgw/job.c b/src/bgw/job.c +index 313caa94..3ae8c9f7 100644 +--- a/src/bgw/job.c ++++ b/src/bgw/job.c +@@ -19,6 +19,7 @@ + #include + #include + #include ++#include + #include + #include + +diff --git a/src/bgw/scheduler.c b/src/bgw/scheduler.c +index 2d024317..7a7e360c 100644 +--- a/src/bgw/scheduler.c ++++ b/src/bgw/scheduler.c +@@ -19,6 +19,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/src/chunk.c b/src/chunk.c +index c2671885..e5ffc3fa 100644 +--- a/src/chunk.c ++++ b/src/chunk.c +@@ -29,6 +29,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/src/chunk_adaptive.c b/src/chunk_adaptive.c +index 470248ed..88e2910b 100644 +--- a/src/chunk_adaptive.c ++++ b/src/chunk_adaptive.c +@@ -7,6 +7,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/src/extension_utils.c b/src/extension_utils.c +index 3fac177b..3d72c5f0 100644 +--- a/src/extension_utils.c ++++ b/src/extension_utils.c +@@ -18,6 +18,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/src/license_guc.c b/src/license_guc.c +index 32629ca9..baa49be5 100644 +--- a/src/license_guc.c ++++ b/src/license_guc.c +@@ -5,6 +5,7 @@ + */ + #include + #include ++#include + #include + #include + #include +diff --git a/src/process_utility.c b/src/process_utility.c +index 3576cb97..8f915113 100644 +--- a/src/process_utility.c ++++ b/src/process_utility.c +@@ -22,6 +22,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/tsl/src/bgw_policy/continuous_aggregate_api.c b/tsl/src/bgw_policy/continuous_aggregate_api.c +index 1c18d2e0..596f3bf7 100644 +--- a/tsl/src/bgw_policy/continuous_aggregate_api.c ++++ b/tsl/src/bgw_policy/continuous_aggregate_api.c +@@ -7,6 +7,7 @@ + #include + #include + #include ++#include + + #include + #include +diff --git a/tsl/src/bgw_policy/job_api.c b/tsl/src/bgw_policy/job_api.c +index e1c24841..536ce692 100644 +--- a/tsl/src/bgw_policy/job_api.c ++++ b/tsl/src/bgw_policy/job_api.c +@@ -7,6 +7,7 @@ + #include + #include + #include ++#include + #include + + #include +diff --git a/tsl/src/continuous_aggs/refresh.c b/tsl/src/continuous_aggs/refresh.c +index 71d5075f..46f83127 100644 +--- a/tsl/src/continuous_aggs/refresh.c ++++ b/tsl/src/continuous_aggs/refresh.c +@@ -4,6 +4,7 @@ + * LICENSE-TIMESCALE for a copy of the license. + */ + #include ++#include + #include + #include + #include +-- +2.29.2 + diff --git a/package/timescaledb/0004-Add-support-for-PG13-List-implementation.patch b/package/timescaledb/0004-Add-support-for-PG13-List-implementation.patch new file mode 100644 index 00000000..2412b07d --- /dev/null +++ b/package/timescaledb/0004-Add-support-for-PG13-List-implementation.patch @@ -0,0 +1,473 @@ +From 259ff80eb29c2c70e6afb77d266ce49cccbef223 Mon Sep 17 00:00:00 2001 +From: Sven Klemm +Date: Sat, 19 Sep 2020 22:20:34 +0200 +Subject: [PATCH] Add support for PG13 List implementation + +PG13 changes the List implementation from a linked list to an array +while most of the API functions did not change a few them have slightly +different signature in PG13, additionally the list_make5 functions +got removed. + +https://github.com/postgres/postgres/commit/1cff1b95ab + +Signed-off-by: Maxim Kochetkov +Fetch from: https://github.com/timescale/timescaledb/commit/b1a9c3b7b7d44ee78456931292655d52c252930d.patch +--- + .clang-format | 1 + + src/bgw/scheduler.c | 12 ++++++------ + src/cache.c | 10 ++++++++-- + src/chunk_append/chunk_append.c | 2 +- + src/chunk_append/exec.c | 4 ++-- + src/compat.h | 16 ++++++++++++++++ + src/import/planner.c | 2 +- + src/plan_agg_bookend.c | 7 ++++--- + src/plan_expand_hypertable.c | 13 +++++++++---- + test/src/bgw/test_job_refresh.c | 3 ++- + tsl/src/continuous_aggs/create.c | 2 +- + tsl/src/debug.c | 15 ++++++++++----- + tsl/src/fdw/deparse.c | 6 +++--- + .../nodes/decompress_chunk/decompress_chunk.c | 6 +++--- + tsl/src/nodes/decompress_chunk/exec.c | 3 ++- + tsl/src/nodes/gapfill/planner.c | 11 +++++++---- + 16 files changed, 76 insertions(+), 37 deletions(-) + +diff --git a/.clang-format b/.clang-format +index 5bb275cd..9aac7ef4 100644 +--- a/.clang-format ++++ b/.clang-format +@@ -60,6 +60,7 @@ ForEachMacros: + - foreach + - forboth + - for_each_cell ++ - for_each_cell_compat + - for_both_cell + - forthree + IncludeBlocks: Preserve # separate include blocks will not be merged +diff --git a/src/bgw/scheduler.c b/src/bgw/scheduler.c +index 7a7e360c..2630ff9f 100644 +--- a/src/bgw/scheduler.c ++++ b/src/bgw/scheduler.c +@@ -456,7 +456,7 @@ ts_update_scheduled_jobs_list(List *cur_jobs_list, MemoryContext mctx) + */ + terminate_and_cleanup_job(cur_sjob); + +- cur_ptr = lnext(cur_ptr); ++ cur_ptr = lnext_compat(cur_jobs_list, cur_ptr); + continue; + } + if (cur_sjob->job.fd.id == new_sjob->job.fd.id) +@@ -472,15 +472,15 @@ ts_update_scheduled_jobs_list(List *cur_jobs_list, MemoryContext mctx) + if (cur_sjob->state == JOB_STATE_SCHEDULED) + scheduled_bgw_job_transition_state_to(new_sjob, JOB_STATE_SCHEDULED); + +- cur_ptr = lnext(cur_ptr); +- new_ptr = lnext(new_ptr); ++ cur_ptr = lnext_compat(cur_jobs_list, cur_ptr); ++ new_ptr = lnext_compat(new_jobs, new_ptr); + } + else if (cur_sjob->job.fd.id > new_sjob->job.fd.id) + { + scheduled_bgw_job_transition_state_to(new_sjob, JOB_STATE_SCHEDULED); + + /* Advance the new_job list until we catch up to cur_list */ +- new_ptr = lnext(new_ptr); ++ new_ptr = lnext_compat(new_jobs, new_ptr); + } + } + +@@ -489,7 +489,7 @@ ts_update_scheduled_jobs_list(List *cur_jobs_list, MemoryContext mctx) + { + ListCell *ptr; + +- for_each_cell (ptr, cur_ptr) ++ for_each_cell_compat (ptr, cur_jobs_list, cur_ptr) + terminate_and_cleanup_job(lfirst(ptr)); + } + +@@ -498,7 +498,7 @@ ts_update_scheduled_jobs_list(List *cur_jobs_list, MemoryContext mctx) + /* Then there are more new jobs. Initialize all of them. */ + ListCell *ptr; + +- for_each_cell (ptr, new_ptr) ++ for_each_cell_compat (ptr, new_jobs, new_ptr) + scheduled_bgw_job_transition_state_to(lfirst(ptr), JOB_STATE_SCHEDULED); + } + +diff --git a/src/cache.c b/src/cache.c +index cc6b2d07..3b53485a 100644 +--- a/src/cache.c ++++ b/src/cache.c +@@ -7,6 +7,7 @@ + #include + + #include "cache.h" ++#include "compat.h" + + /* List of pinned caches. A cache occurs once in this list for every pin + * taken */ +@@ -105,7 +106,10 @@ ts_cache_pin(Cache *cache) + static void + remove_pin(Cache *cache, SubTransactionId subtxnid) + { +- ListCell *lc, *prev = NULL; ++ ListCell *lc; ++#if PG13_LT ++ ListCell *prev = NULL; ++#endif + + foreach (lc, pinned_caches) + { +@@ -113,12 +117,14 @@ remove_pin(Cache *cache, SubTransactionId subtxnid) + + if (cp->cache == cache && cp->subtxnid == subtxnid) + { +- pinned_caches = list_delete_cell(pinned_caches, lc, prev); ++ pinned_caches = list_delete_cell_compat(pinned_caches, lc, prev); + pfree(cp); + return; + } + ++#if PG13_LT + prev = lc; ++#endif + } + + /* should never reach here: there should always be a pin to remove */ +diff --git a/src/chunk_append/chunk_append.c b/src/chunk_append/chunk_append.c +index fb1c87ff..ed91ff39 100644 +--- a/src/chunk_append/chunk_append.c ++++ b/src/chunk_append/chunk_append.c +@@ -209,7 +209,7 @@ ts_chunk_append_path_create(PlannerInfo *root, RelOptInfo *rel, Hypertable *ht, + if (is_not_pruned) + { + merge_childs = lappend(merge_childs, child); +- flat = lnext(flat); ++ flat = lnext_compat(children, flat); + if (flat == NULL) + break; + } +diff --git a/src/chunk_append/exec.c b/src/chunk_append/exec.c +index 8f4dd5d6..84f79e23 100644 +--- a/src/chunk_append/exec.c ++++ b/src/chunk_append/exec.c +@@ -344,8 +344,8 @@ initialize_runtime_exclusion(ChunkAppendState *state) + state->runtime_number_exclusions++; + } + +- lc_clauses = lnext(lc_clauses); +- lc_constraints = lnext(lc_constraints); ++ lc_clauses = lnext_compat(state->filtered_ri_clauses, lc_clauses); ++ lc_constraints = lnext_compat(state->filtered_constraints, lc_constraints); + } + + state->runtime_initialized = true; +diff --git a/src/compat.h b/src/compat.h +index d84f8754..51c1c181 100644 +--- a/src/compat.h ++++ b/src/compat.h +@@ -358,4 +358,20 @@ get_vacuum_options(const VacuumStmt *stmt) + pg_b64_decode((src), (srclen), (dst), (dstlen)) + #endif + ++/* PG13 changes the List implementation from a linked list to an array ++ * while most of the API functions did not change a few them have slightly ++ * different signature in PG13, additionally the list_make5 functions ++ * got removed. */ ++#if PG13_LT ++#define lnext_compat(l, lc) lnext((lc)) ++#define list_delete_cell_compat(l, lc, prev) list_delete_cell((l), (lc), (prev)) ++#define for_each_cell_compat(cell, list, initcell) for_each_cell ((cell), (initcell)) ++#else ++#define lnext_compat(l, lc) lnext((l), (lc)) ++#define list_delete_cell_compat(l, lc, prev) list_delete_cell((l), (lc)) ++#define list_make5(x1, x2, x3, x4, x5) lappend(list_make4(x1, x2, x3, x4), x5) ++#define list_make5_oid(x1, x2, x3, x4, x5) lappend_oid(list_make4_oid(x1, x2, x3, x4), x5) ++#define for_each_cell_compat(cell, list, initcell) for_each_cell ((cell), (list), (initcell)) ++#endif ++ + #endif /* TIMESCALEDB_COMPAT_H */ +diff --git a/src/import/planner.c b/src/import/planner.c +index 31a4889d..b907390d 100644 +--- a/src/import/planner.c ++++ b/src/import/planner.c +@@ -196,7 +196,7 @@ ts_make_partial_grouping_target(struct PlannerInfo *root, PathTarget *grouping_t + struct List *non_group_cols; + struct List *non_group_exprs; + int i; +- struct ListCell *lc; ++ ListCell *lc; + + partial_target = create_empty_pathtarget(); + non_group_cols = NIL; +diff --git a/src/plan_agg_bookend.c b/src/plan_agg_bookend.c +index d4d06f5b..5394cf5d 100644 +--- a/src/plan_agg_bookend.c ++++ b/src/plan_agg_bookend.c +@@ -696,13 +696,14 @@ build_first_last_path(PlannerInfo *root, FirstLastAggInfo *fl_info, Oid eqop, Oi + if (app->parent_reloid == rte->relid) + { + subroot->append_rel_list = +- list_delete_cell(subroot->append_rel_list, next, prev); +- next = prev != NULL ? prev->next : list_head(subroot->append_rel_list); ++ list_delete_cell_compat(subroot->append_rel_list, next, prev); ++ next = prev != NULL ? lnext_compat(subroot->append_rel_list, next) : ++ list_head(subroot->append_rel_list); + } + else + { + prev = next; +- next = next->next; ++ next = lnext_compat(subroot->append_rel_list, next); + } + } + } +diff --git a/src/plan_expand_hypertable.c b/src/plan_expand_hypertable.c +index 37282ce4..2b99c93b 100644 +--- a/src/plan_expand_hypertable.c ++++ b/src/plan_expand_hypertable.c +@@ -581,7 +581,8 @@ process_quals(Node *quals, CollectQualCtx *ctx, bool is_outer_join) + ListCell *prev pg_attribute_unused() = NULL; + List *additional_quals = NIL; + +- for (lc = list_head((List *) quals); lc != NULL; prev = lc, lc = lnext(lc)) ++ for (lc = list_head((List *) quals); lc != NULL; ++ prev = lc, lc = lnext_compat((List *) quals, lc)) + { + Expr *qual = lfirst(lc); + Relids relids = pull_varnos((Node *) qual); +@@ -611,7 +612,7 @@ process_quals(Node *quals, CollectQualCtx *ctx, bool is_outer_join) + * is called, so we can remove the functions from that directly + */ + #if PG12_LT +- quals = (Node *) list_delete_cell((List *) quals, lc, prev); ++ quals = (Node *) list_delete_cell_compat((List *) quals, lc, prev); + #endif + return quals; + } +@@ -663,7 +664,9 @@ process_quals(Node *quals, CollectQualCtx *ctx, bool is_outer_join) + static List * + remove_exclusion_fns(List *restrictinfo) + { ++#if PG13_LT + ListCell *prev = NULL; ++#endif + ListCell *lc = list_head(restrictinfo); + + while (lc != NULL) +@@ -682,11 +685,13 @@ remove_exclusion_fns(List *restrictinfo) + (errcode(ERRCODE_INVALID_PARAMETER_VALUE), + errmsg("first parameter for chunks_in function needs to be record"))); + +- restrictinfo = list_delete_cell((List *) restrictinfo, lc, prev); ++ restrictinfo = list_delete_cell_compat((List *) restrictinfo, lc, prev); + return restrictinfo; + } ++#if PG13_LT + prev = lc; +- lc = lnext(lc); ++#endif ++ lc = lnext_compat(restrictinfo, lc); + } + return restrictinfo; + } +diff --git a/test/src/bgw/test_job_refresh.c b/test/src/bgw/test_job_refresh.c +index 51a3b0d7..d51415d4 100644 +--- a/test/src/bgw/test_job_refresh.c ++++ b/test/src/bgw/test_job_refresh.c +@@ -13,6 +13,7 @@ + #include + #include + ++#include "compat.h" + #include "export.h" + #include "bgw/scheduler.h" + +@@ -70,7 +71,7 @@ ts_test_job_refresh(PG_FUNCTION_ARGS) + memset(nulls, 0, sizeof(*nulls) * funcctx->tuple_desc->natts); + tuple = heap_form_tuple(funcctx->tuple_desc, values, nulls); + +- funcctx->user_fctx = lnext(lc); ++ funcctx->user_fctx = lnext_compat(cur_scheduled_jobs, lc); + SRF_RETURN_NEXT(funcctx, HeapTupleGetDatum(tuple)); + } + +diff --git a/tsl/src/continuous_aggs/create.c b/tsl/src/continuous_aggs/create.c +index bdf4470a..f767dabb 100644 +--- a/tsl/src/continuous_aggs/create.c ++++ b/tsl/src/continuous_aggs/create.c +@@ -1566,7 +1566,7 @@ fixup_userview_query_tlist(Query *userquery, List *tlist_aliases) + if (tle->resjunk) + continue; + tle->resname = pstrdup(strVal(lfirst(alist_item))); +- alist_item = lnext(alist_item); ++ alist_item = lnext_compat(tlist_aliases, alist_item); + if (alist_item == NULL) + break; /* done assigning aliases */ + } +diff --git a/tsl/src/debug.c b/tsl/src/debug.c +index 697bfc0b..023097ee 100644 +--- a/tsl/src/debug.c ++++ b/tsl/src/debug.c +@@ -168,7 +168,7 @@ append_func_expr(StringInfo buf, const Node *expr, const List *rtable) + foreach (l, e->args) + { + append_expr(buf, lfirst(l), rtable); +- if (lnext(l)) ++ if (lnext_compat(e->args, l)) + appendStringInfoString(buf, ", "); + } + appendStringInfoChar(buf, ')'); +@@ -217,7 +217,7 @@ append_restrict_clauses(StringInfo buf, PlannerInfo *root, List *clauses) + RestrictInfo *c = lfirst(cell); + + append_expr(buf, (Node *) c->clause, root->parse->rtable); +- if (lnext(cell)) ++ if (lnext_compat(clauses, cell)) + appendStringInfoString(buf, ", "); + } + } +@@ -270,7 +270,7 @@ append_pathkeys(StringInfo buf, const List *pathkeys, const List *rtable) + append_expr(buf, (Node *) mem->em_expr, rtable); + } + appendStringInfoChar(buf, ')'); +- if (lnext(i)) ++ if (lnext_compat(pathkeys, i)) + appendStringInfoString(buf, ", "); + } + appendStringInfoChar(buf, ')'); +@@ -601,7 +601,10 @@ tsl_debug_append_pruned_pathlist(StringInfo buf, PlannerInfo *root, RelOptInfo * + foreach (lc1, rel->pathlist) + { + Path *p1 = (Path *) lfirst(lc1); +- ListCell *lc2, *prev = NULL; ++ ListCell *lc2; ++#if PG13_LT ++ ListCell *prev = NULL; ++#endif + + foreach (lc2, fdw_info->considered_paths) + { +@@ -610,11 +613,13 @@ tsl_debug_append_pruned_pathlist(StringInfo buf, PlannerInfo *root, RelOptInfo * + if (path_is_origin(p1, p2)) + { + fdw_info->considered_paths = +- list_delete_cell(fdw_info->considered_paths, lc2, prev); ++ list_delete_cell_compat(fdw_info->considered_paths, lc2, prev); + fdw_utils_free_path(p2); + break; + } ++#if PG13_LT + prev = lc2; ++#endif + } + } + +diff --git a/tsl/src/fdw/deparse.c b/tsl/src/fdw/deparse.c +index d90636b5..efd7debb 100644 +--- a/tsl/src/fdw/deparse.c ++++ b/tsl/src/fdw/deparse.c +@@ -2211,7 +2211,7 @@ deparseSubscriptingRef(SubscriptingRef *node, deparse_expr_cxt *context) + { + deparseExpr(lfirst(lowlist_item), context); + appendStringInfoChar(buf, ':'); +- lowlist_item = lnext(lowlist_item); ++ lowlist_item = lnext_compat(node->reflowerindexpr, lowlist_item); + } + deparseExpr(lfirst(uplist_item), context); + appendStringInfoChar(buf, ']'); +@@ -2273,7 +2273,7 @@ deparseFuncExpr(FuncExpr *node, deparse_expr_cxt *context) + { + if (!first) + appendStringInfoString(buf, ", "); +- if (use_variadic && lnext(arg) == NULL) ++ if (use_variadic && lnext_compat(node->args, arg) == NULL) + appendStringInfoString(buf, "VARIADIC "); + deparseExpr((Expr *) lfirst(arg), context); + first = false; +@@ -2601,7 +2601,7 @@ deparseAggref(Aggref *node, deparse_expr_cxt *context) + first = false; + + /* Add VARIADIC */ +- if (use_variadic && lnext(arg) == NULL) ++ if (use_variadic && lnext_compat(node->args, arg) == NULL) + appendStringInfoString(buf, "VARIADIC "); + + deparseExpr((Expr *) n, context); +diff --git a/tsl/src/nodes/decompress_chunk/decompress_chunk.c b/tsl/src/nodes/decompress_chunk/decompress_chunk.c +index 90b6c7c3..1e36f5dc 100644 +--- a/tsl/src/nodes/decompress_chunk/decompress_chunk.c ++++ b/tsl/src/nodes/decompress_chunk/decompress_chunk.c +@@ -182,7 +182,7 @@ build_compressed_scan_pathkeys(SortInfo *sort_info, PlannerInfo *root, List *chu + + for (lc = list_head(chunk_pathkeys); + lc != NULL && bms_num_members(segmentby_columns) < info->num_segmentby_columns; +- lc = lnext(lc)) ++ lc = lnext_compat(chunk_pathkeys, lc)) + { + PathKey *pk = lfirst(lc); + var = (Var *) ts_find_em_expr_for_rel(pk->pk_eclass, info->chunk_rel); +@@ -1210,7 +1210,7 @@ build_sortinfo(RelOptInfo *chunk_rel, CompressionInfo *info, List *pathkeys) + * we keep looping even if we found all segmentby columns in case a + * columns appears both in baserestrictinfo and in ORDER BY clause + */ +- for (; lc != NULL; lc = lnext(lc)) ++ for (; lc != NULL; lc = lnext_compat(pathkeys, lc)) + { + Assert(bms_num_members(segmentby_columns) <= info->num_segmentby_columns); + pk = lfirst(lc); +@@ -1250,7 +1250,7 @@ build_sortinfo(RelOptInfo *chunk_rel, CompressionInfo *info, List *pathkeys) + * loop over the rest of pathkeys + * this needs to exactly match the configured compress_orderby + */ +- for (pk_index = 1; lc != NULL; lc = lnext(lc), pk_index++) ++ for (pk_index = 1; lc != NULL; lc = lnext_compat(pathkeys, lc), pk_index++) + { + bool reverse = false; + pk = lfirst(lc); +diff --git a/tsl/src/nodes/decompress_chunk/exec.c b/tsl/src/nodes/decompress_chunk/exec.c +index 035f2de4..f58e6f6c 100644 +--- a/tsl/src/nodes/decompress_chunk/exec.c ++++ b/tsl/src/nodes/decompress_chunk/exec.c +@@ -121,7 +121,8 @@ initialize_column_state(DecompressChunkState *state) + + state->columns = palloc0(state->num_columns * sizeof(DecompressChunkColumnState)); + +- for (i = 0, lc = list_head(state->varattno_map); i < state->num_columns; lc = lnext(lc), i++) ++ for (i = 0, lc = list_head(state->varattno_map); i < state->num_columns; ++ lc = lnext_compat(state->varattno_map, lc), i++) + { + DecompressChunkColumnState *column = &state->columns[i]; + column->attno = lfirst_int(lc); +diff --git a/tsl/src/nodes/gapfill/planner.c b/tsl/src/nodes/gapfill/planner.c +index 56bdffd5..765a14ce 100644 +--- a/tsl/src/nodes/gapfill/planner.c ++++ b/tsl/src/nodes/gapfill/planner.c +@@ -295,8 +295,10 @@ gapfill_build_pathtarget(PathTarget *pt_upper, PathTarget *pt_path, PathTarget * + /* + * check arguments past first argument dont have Vars + */ +- for (lc_arg = lnext(list_head(context.call.window->args)); lc_arg != NULL; +- lc_arg = lnext(lc_arg)) ++ for (lc_arg = lnext_compat(context.call.window->args, ++ list_head(context.call.window->args)); ++ lc_arg != NULL; ++ lc_arg = lnext_compat(context.call.window->args, lc_arg)) + { + if (contain_var_clause(lfirst(lc_arg))) + ereport(ERROR, +@@ -553,9 +555,10 @@ gapfill_adjust_window_targetlist(PlannerInfo *root, RelOptInfo *input_rel, RelOp + /* + * check arguments past first argument dont have Vars + */ +- for (lc_arg = lnext(list_head(context.call.window->args)); ++ for (lc_arg = lnext_compat(context.call.window->args, ++ list_head(context.call.window->args)); + lc_arg != NULL; +- lc_arg = lnext(lc_arg)) ++ lc_arg = lnext_compat(context.call.window->args, lc_arg)) + { + if (contain_var_clause(lfirst(lc_arg))) + ereport(ERROR, +-- +2.29.2 + diff --git a/package/timescaledb/0005-Adjust-code-to-PG13-list-sort-changes.patch b/package/timescaledb/0005-Adjust-code-to-PG13-list-sort-changes.patch new file mode 100644 index 00000000..f92cfc40 --- /dev/null +++ b/package/timescaledb/0005-Adjust-code-to-PG13-list-sort-changes.patch @@ -0,0 +1,59 @@ +From 4a149cb833dbb45507cd52e63707311e9642587c Mon Sep 17 00:00:00 2001 +From: Sven Klemm +Date: Sat, 19 Sep 2020 23:20:37 +0200 +Subject: [PATCH] Adjust code to PG13 list sort changes + +PG13 changes the name of the list sorting function from list_qsort +to list_sort. Additionally PG13 does in-place sort. + +https://github.com/postgres/postgres/commit/569ed7f483 + +Signed-off-by: Maxim Kochetkov +Fetch from: https://github.com/timescale/timescaledb/commit/13d8aac33b6fc5104c8ad1da816dc0d009fc13a7.patch +--- + src/bgw/scheduler.c | 15 ++++++++++++++- + 1 file changed, 14 insertions(+), 1 deletion(-) + +diff --git a/src/bgw/scheduler.c b/src/bgw/scheduler.c +index 2630ff9f..b9d1aa38 100644 +--- a/src/bgw/scheduler.c ++++ b/src/bgw/scheduler.c +@@ -530,10 +530,15 @@ ts_populate_scheduled_job_tuple(ScheduledBgwJob *sjob, Datum *values) + #endif + + static int ++#if PG13_LT + cmp_next_start(const void *left, const void *right) + { + const ListCell *left_cell = *((ListCell **) left); + const ListCell *right_cell = *((ListCell **) right); ++#else ++cmp_next_start(const ListCell *left_cell, const ListCell *right_cell) ++{ ++#endif + ScheduledBgwJob *left_sjob = lfirst(left_cell); + ScheduledBgwJob *right_sjob = lfirst(right_cell); + +@@ -549,10 +554,18 @@ cmp_next_start(const void *left, const void *right) + static void + start_scheduled_jobs(register_background_worker_callback_type bgw_register) + { ++ List *ordered_scheduled_jobs; + ListCell *lc; + Assert(CurrentMemoryContext == scratch_mctx); ++ + /* Order jobs by increasing next_start */ +- List *ordered_scheduled_jobs = list_qsort(scheduled_jobs, cmp_next_start); ++#if PG13_LT ++ ordered_scheduled_jobs = list_qsort(scheduled_jobs, cmp_next_start); ++#else ++ /* PG13 does in-place sort */ ++ ordered_scheduled_jobs = scheduled_jobs; ++ list_sort(ordered_scheduled_jobs, cmp_next_start); ++#endif + + foreach (lc, ordered_scheduled_jobs) + { +-- +2.29.2 + diff --git a/package/timescaledb/0006-Adjust-copy-code-to-PG13-addRTEtoQuery-changes.patch b/package/timescaledb/0006-Adjust-copy-code-to-PG13-addRTEtoQuery-changes.patch new file mode 100644 index 00000000..435273e8 --- /dev/null +++ b/package/timescaledb/0006-Adjust-copy-code-to-PG13-addRTEtoQuery-changes.patch @@ -0,0 +1,37 @@ +From 196943ff91a6a21c575fbca1f047544970ec4c98 Mon Sep 17 00:00:00 2001 +From: Sven Klemm +Date: Thu, 24 Sep 2020 16:18:43 +0200 +Subject: [PATCH] Adjust copy code to PG13 addRTEtoQuery changes + +PG13 removes addRTEtoQuery and provides a similar function +addNSItemToQuery which has a different signature. + +https://github.com/postgres/postgres/commit/5815696bc6 + +Signed-off-by: Maxim Kochetkov +Fetch from: https://github.com/timescale/timescaledb/commit/10d1c2d698c1b7cbf5af86082287adda4f0c6e97.patch +--- + src/copy.c | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/src/copy.c b/src/copy.c +index 2e63dc76..c8ce93e6 100644 +--- a/src/copy.c ++++ b/src/copy.c +@@ -535,7 +535,12 @@ copy_constraints_and_check(ParseState *pstate, Relation rel, List *attnums) + { + ListCell *cur; + char *xactReadOnly; +-#if PG12_GE ++#if PG13_GE ++ ParseNamespaceItem *nsitem = ++ addRangeTableEntryForRelation(pstate, rel, RowExclusiveLock, NULL, false, false); ++ RangeTblEntry *rte = nsitem->p_rte; ++ addNSItemToQuery(pstate, nsitem, true, true, true); ++#elif PG12 + RangeTblEntry *rte = + addRangeTableEntryForRelation(pstate, rel, RowExclusiveLock, NULL, false, false); + addRTEtoQuery(pstate, rte, false, true, true); +-- +2.29.2 + diff --git a/package/timescaledb/0007-Adjust-code-to-PG13-convert_tuples_by_name-signature.patch b/package/timescaledb/0007-Adjust-code-to-PG13-convert_tuples_by_name-signature.patch new file mode 100644 index 00000000..b6a0362f --- /dev/null +++ b/package/timescaledb/0007-Adjust-code-to-PG13-convert_tuples_by_name-signature.patch @@ -0,0 +1,65 @@ +From 1c50cdc9a1c06c58f9fa72ab963d595c9a99d3d8 Mon Sep 17 00:00:00 2001 +From: Sven Klemm +Date: Thu, 24 Sep 2020 05:33:38 +0200 +Subject: [PATCH] Adjust code to PG13 convert_tuples_by_name signature + change + +PG13 removed the msg parameter from convert_tuples_by_name. + +https://github.com/postgres/postgres/commit/fe66125974 + +Signed-off-by: Maxim Kochetkov +Fetch from: https://github.com/timescale/timescaledb/commit/968de59f8cd981ba0ca9cca1929d4ba17fbc256f.patch +--- + src/chunk_insert_state.c | 21 +++++++++++++++------ + 1 file changed, 15 insertions(+), 6 deletions(-) + +diff --git a/src/chunk_insert_state.c b/src/chunk_insert_state.c +index 398a8811..5dc294df 100644 +--- a/src/chunk_insert_state.c ++++ b/src/chunk_insert_state.c +@@ -379,8 +379,11 @@ setup_on_conflict_state(ChunkInsertState *state, ChunkDispatch *dispatch, AttrNu + + if (NULL == chunk_attnos) + chunk_attnos = convert_tuples_by_name_map(RelationGetDescr(chunk_rel), +- RelationGetDescr(first_rel), +- gettext_noop("could not convert row type")); ++ RelationGetDescr(first_rel) ++#if PG13_LT ++ , gettext_noop("could not convert row type") ++#endif ++ ); + + onconflset = translate_clause(ts_chunk_dispatch_get_on_conflict_set(dispatch), + chunk_attnos, +@@ -484,8 +487,11 @@ adjust_projections(ChunkInsertState *cis, ChunkDispatch *dispatch, Oid rowtype) + * to work correctly in mapping hypertable attnos->chunk attnos. + */ + chunk_attnos = convert_tuples_by_name_map(RelationGetDescr(chunk_rel), +- RelationGetDescr(hyper_rel), +- gettext_noop("could not convert row type")); ++ RelationGetDescr(hyper_rel) ++#if PG13_LT ++ ,gettext_noop("could not convert row type") ++#endif ++ ); + + chunk_rri->ri_projectReturning = + get_adjusted_projection_info_returning(chunk_rri->ri_projectReturning, +@@ -590,8 +596,11 @@ ts_chunk_insert_state_create(Chunk *chunk, ChunkDispatch *dispatch) + if (chunk->relkind != RELKIND_FOREIGN_TABLE) + state->hyper_to_chunk_map = + convert_tuples_by_name(RelationGetDescr(parent_rel), +- RelationGetDescr(rel), +- gettext_noop("could not convert row type")); ++ RelationGetDescr(rel) ++#if PG13_LT ++ ,gettext_noop("could not convert row type") ++#endif ++ ); + + adjust_projections(state, dispatch, RelationGetForm(rel)->reltype); + +-- +2.29.2 + diff --git a/package/timescaledb/0008-Adjust-code-to-PG13-tuple-conversion-changes.patch b/package/timescaledb/0008-Adjust-code-to-PG13-tuple-conversion-changes.patch new file mode 100644 index 00000000..ce00ac34 --- /dev/null +++ b/package/timescaledb/0008-Adjust-code-to-PG13-tuple-conversion-changes.patch @@ -0,0 +1,259 @@ +From 5c17cb0aa7f06bb3ac15d4ca72a37f59a10fa59e Mon Sep 17 00:00:00 2001 +From: Sven Klemm +Date: Thu, 24 Sep 2020 15:21:04 +0200 +Subject: [PATCH] Adjust code to PG13 tuple conversion changes + +PG13 changes the way attribute mappings are done and uses AttrMap +instead of AttrNumber[] in the new function signatures. This patch +changes ChunkInsertState to use TupleConversionMap which abstracts +this change. + +https://github.com/postgres/postgres/commit/e1551f96e6 + +Signed-off-by: Maxim Kochetkov +Fetch from: https://github.com/timescale/timescaledb/commit/2cb7c41276c8f8112bd225a020fef709a8e776ff.patch +--- + src/chunk_insert_state.c | 92 +++++++++++++++++++++------------------ + src/compat.h | 15 +++++++ + tsl/src/fdw/modify_exec.c | 4 ++ + 3 files changed, 69 insertions(+), 42 deletions(-) + +diff --git a/src/chunk_insert_state.c b/src/chunk_insert_state.c +index 5dc294df..f8200dd8 100644 +--- a/src/chunk_insert_state.c ++++ b/src/chunk_insert_state.c +@@ -120,7 +120,7 @@ create_chunk_result_relation_info(ChunkDispatch *dispatch, Relation rel) + + static ProjectionInfo * + get_adjusted_projection_info_returning(ProjectionInfo *orig, List *returning_clauses, +- AttrNumber *map, int map_size, Index varno, Oid rowtype, ++ TupleConversionMap *map, Index varno, Oid rowtype, + TupleDesc chunk_desc) + { + bool found_whole_row; +@@ -128,14 +128,15 @@ get_adjusted_projection_info_returning(ProjectionInfo *orig, List *returning_cla + Assert(returning_clauses != NIL); + + /* map hypertable attnos -> chunk attnos */ +- returning_clauses = castNode(List, +- map_variable_attnos((Node *) returning_clauses, +- varno, +- 0, +- map, +- map_size, +- rowtype, +- &found_whole_row)); ++ if (map != NULL) ++ returning_clauses = castNode(List, ++ map_variable_attnos_compat((Node *) returning_clauses, ++ varno, ++ 0, ++ map->attrMap, ++ map->outdesc->natts, ++ rowtype, ++ &found_whole_row)); + + return ExecBuildProjectionInfo(returning_clauses, + orig->pi_exprContext, +@@ -145,7 +146,7 @@ get_adjusted_projection_info_returning(ProjectionInfo *orig, List *returning_cla + } + + static List * +-translate_clause(List *inclause, AttrNumber *chunk_attnos, Index varno, Relation hyper_rel, ++translate_clause(List *inclause, TupleConversionMap *chunk_map, Index varno, Relation hyper_rel, + Relation chunk_rel) + { + List *clause = copyObject(inclause); +@@ -153,23 +154,23 @@ translate_clause(List *inclause, AttrNumber *chunk_attnos, Index varno, Relation + + /* map hypertable attnos -> chunk attnos for the "excluded" table */ + clause = castNode(List, +- map_variable_attnos((Node *) clause, +- INNER_VAR, +- 0, +- chunk_attnos, +- RelationGetDescr(hyper_rel)->natts, +- RelationGetForm(chunk_rel)->reltype, +- &found_whole_row)); ++ map_variable_attnos_compat((Node *) clause, ++ INNER_VAR, ++ 0, ++ chunk_map->attrMap, ++ RelationGetDescr(hyper_rel)->natts, ++ RelationGetForm(chunk_rel)->reltype, ++ &found_whole_row)); + + /* map hypertable attnos -> chunk attnos for the hypertable */ + clause = castNode(List, +- map_variable_attnos((Node *) clause, +- varno, +- 0, +- chunk_attnos, +- RelationGetDescr(hyper_rel)->natts, +- RelationGetForm(chunk_rel)->reltype, +- &found_whole_row)); ++ map_variable_attnos_compat((Node *) clause, ++ varno, ++ 0, ++ chunk_map->attrMap, ++ RelationGetDescr(hyper_rel)->natts, ++ RelationGetForm(chunk_rel)->reltype, ++ &found_whole_row)); + + return clause; + } +@@ -193,7 +194,11 @@ adjust_hypertable_tlist(List *tlist, TupleConversionMap *map) + { + List *new_tlist = NIL; + TupleDesc chunk_tupdesc = map->outdesc; ++#if PG13_GE ++ AttrNumber *attrMap = map->attrMap->attnums; ++#else + AttrNumber *attrMap = map->attrMap; ++#endif + AttrNumber chunk_attrno; + + for (chunk_attrno = 1; chunk_attrno <= chunk_tupdesc->natts; chunk_attrno++) +@@ -351,7 +356,8 @@ get_default_existing_slot(ChunkInsertState *state, ChunkDispatch *dispatch) + * columns, etc. + */ + static void +-setup_on_conflict_state(ChunkInsertState *state, ChunkDispatch *dispatch, AttrNumber *chunk_attnos) ++setup_on_conflict_state(ChunkInsertState *state, ChunkDispatch *dispatch, ++ TupleConversionMap *chunk_map) + { + TupleConversionMap *map = state->hyper_to_chunk_map; + ResultRelInfo *chunk_rri = get_chunk_rri(state); +@@ -377,16 +383,17 @@ setup_on_conflict_state(ChunkInsertState *state, ChunkDispatch *dispatch, AttrNu + + Assert(map->outdesc == RelationGetDescr(chunk_rel)); + +- if (NULL == chunk_attnos) +- chunk_attnos = convert_tuples_by_name_map(RelationGetDescr(chunk_rel), +- RelationGetDescr(first_rel) ++ if (NULL == chunk_map) ++ chunk_map = convert_tuples_by_name(RelationGetDescr(chunk_rel), ++ RelationGetDescr(first_rel) + #if PG13_LT +- , gettext_noop("could not convert row type") ++ , ++ gettext_noop("could not convert row type") + #endif +- ); ++ ); + + onconflset = translate_clause(ts_chunk_dispatch_get_on_conflict_set(dispatch), +- chunk_attnos, ++ chunk_map, + hyper_rri->ri_RangeTableIndex, + hyper_rel, + chunk_rel); +@@ -412,7 +419,7 @@ setup_on_conflict_state(ChunkInsertState *state, ChunkDispatch *dispatch, AttrNu + if (NULL != onconflict_where) + { + List *clause = translate_clause(castNode(List, onconflict_where), +- chunk_attnos, ++ chunk_map, + hyper_rri->ri_RangeTableIndex, + hyper_rel, + chunk_rel); +@@ -476,7 +483,7 @@ adjust_projections(ChunkInsertState *cis, ChunkDispatch *dispatch, Oid rowtype) + ResultRelInfo *chunk_rri = cis->result_relation_info; + Relation hyper_rel = dispatch->hypertable_result_rel_info->ri_RelationDesc; + Relation chunk_rel = cis->rel; +- AttrNumber *chunk_attnos = NULL; ++ TupleConversionMap *chunk_map = NULL; + OnConflictAction onconflict_action = ts_chunk_dispatch_get_on_conflict_action(dispatch); + + if (ts_chunk_dispatch_has_returning(dispatch)) +@@ -486,19 +493,19 @@ adjust_projections(ChunkInsertState *cis, ChunkDispatch *dispatch, Oid rowtype) + * to have the hypertable_desc in the out spot for map_variable_attnos + * to work correctly in mapping hypertable attnos->chunk attnos. + */ +- chunk_attnos = convert_tuples_by_name_map(RelationGetDescr(chunk_rel), +- RelationGetDescr(hyper_rel) ++ chunk_map = convert_tuples_by_name(RelationGetDescr(chunk_rel), ++ RelationGetDescr(hyper_rel) + #if PG13_LT +- ,gettext_noop("could not convert row type") ++ , ++ gettext_noop("could not convert row type") + #endif +- ); ++ ); + + chunk_rri->ri_projectReturning = + get_adjusted_projection_info_returning(chunk_rri->ri_projectReturning, + ts_chunk_dispatch_get_returning_clauses( + dispatch), +- chunk_attnos, +- RelationGetDescr(hyper_rel)->natts, ++ chunk_map, + dispatch->hypertable_result_rel_info + ->ri_RangeTableIndex, + rowtype, +@@ -511,7 +518,7 @@ adjust_projections(ChunkInsertState *cis, ChunkDispatch *dispatch, Oid rowtype) + set_arbiter_indexes(cis, dispatch); + + if (onconflict_action == ONCONFLICT_UPDATE) +- setup_on_conflict_state(cis, dispatch, chunk_attnos); ++ setup_on_conflict_state(cis, dispatch, chunk_map); + } + } + +@@ -598,9 +605,10 @@ ts_chunk_insert_state_create(Chunk *chunk, ChunkDispatch *dispatch) + convert_tuples_by_name(RelationGetDescr(parent_rel), + RelationGetDescr(rel) + #if PG13_LT +- ,gettext_noop("could not convert row type") ++ , ++ gettext_noop("could not convert row type") + #endif +- ); ++ ); + + adjust_projections(state, dispatch, RelationGetForm(rel)->reltype); + +diff --git a/src/compat.h b/src/compat.h +index 51c1c181..1b2ed8e5 100644 +--- a/src/compat.h ++++ b/src/compat.h +@@ -374,4 +374,19 @@ get_vacuum_options(const VacuumStmt *stmt) + #define for_each_cell_compat(cell, list, initcell) for_each_cell ((cell), (list), (initcell)) + #endif + ++/* PG13 removes the natts parameter from map_variable_attnos */ ++#if PG13_LT ++#define map_variable_attnos_compat(node, varno, sublevels_up, map, natts, rowtype, found_wholerow) \ ++ map_variable_attnos((node), \ ++ (varno), \ ++ (sublevels_up), \ ++ (map), \ ++ (natts), \ ++ (rowtype), \ ++ (found_wholerow)) ++#else ++#define map_variable_attnos_compat(node, varno, sublevels_up, map, natts, rowtype, found_wholerow) \ ++ map_variable_attnos((node), (varno), (sublevels_up), (map), (rowtype), (found_wholerow)) ++#endif ++ + #endif /* TIMESCALEDB_COMPAT_H */ +diff --git a/tsl/src/fdw/modify_exec.c b/tsl/src/fdw/modify_exec.c +index 38d0e0c6..5307079d 100644 +--- a/tsl/src/fdw/modify_exec.c ++++ b/tsl/src/fdw/modify_exec.c +@@ -202,7 +202,11 @@ convert_attrs(TupleConversionMap *map, List *attrs) + + for (i = 0; i < map->outdesc->natts; i++) + { ++#if PG13_GE ++ if (map->attrMap->attnums[i] == attnum) ++#else + if (map->attrMap[i] == attnum) ++#endif + { + new_attrs = lappend_int(new_attrs, AttrOffsetGetAttrNumber(i)); + break; +-- +2.29.2 + diff --git a/package/timescaledb/0009-Adjust-hypertable-expansion-to-PG13-changes.patch b/package/timescaledb/0009-Adjust-hypertable-expansion-to-PG13-changes.patch new file mode 100644 index 00000000..9e615134 --- /dev/null +++ b/package/timescaledb/0009-Adjust-hypertable-expansion-to-PG13-changes.patch @@ -0,0 +1,88 @@ +From 8cf647f2995afbd594d67abb1e6556b97096a1c6 Mon Sep 17 00:00:00 2001 +From: Sven Klemm +Date: Thu, 24 Sep 2020 04:42:45 +0200 +Subject: [PATCH] Adjust hypertable expansion to PG13 changes + +PG13 merges setup_append_rel_array into setup_simple_rel_arrays +which we use to build the append_rel_array. + +https://github.com/postgres/postgres/commit/1661a40505 + +Signed-off-by: Maxim Kochetkov +Fetch from: https://github.com/timescale/timescaledb/pull/2735/commits/e6e2711d8e00958cb0a35c23f4e81a75f273113a.patch +--- + src/plan_expand_hypertable.c | 30 ++++++++++++++++++++++++++++-- + 1 file changed, 28 insertions(+), 2 deletions(-) + +diff --git a/src/plan_expand_hypertable.c b/src/plan_expand_hypertable.c +index 2b99c93b..4baa1b4c 100644 +--- a/src/plan_expand_hypertable.c ++++ b/src/plan_expand_hypertable.c +@@ -95,6 +95,24 @@ is_time_bucket_function(Expr *node) + return false; + } + ++#if PG13_GE ++/* PG13 merged setup_append_rel_array with setup_simple_rel_arrays */ ++static void ++setup_append_rel_array(PlannerInfo *root) ++{ ++ root->append_rel_array = ++ repalloc(root->append_rel_array, root->simple_rel_array_size * sizeof(AppendRelInfo *)); ++ ListCell *lc; ++ foreach (lc, root->append_rel_list) ++ { ++ AppendRelInfo *appinfo = lfirst_node(AppendRelInfo, lc); ++ int child_relid = appinfo->child_relid; ++ ++ root->append_rel_array[child_relid] = appinfo; ++ } ++} ++#endif ++ + /* + * Pre-check to determine if an expression is eligible for constification. + * A more thorough check is in constify_timestamptz_op_interval. +@@ -1146,7 +1164,6 @@ ts_plan_expand_hypertable_chunks(Hypertable *ht, PlannerInfo *root, RelOptInfo * + .join_conditions = NIL, + .propagate_conditions = NIL, + }; +- Size old_rel_array_len; + Index first_chunk_index = 0; + #if PG12_GE + Index i; +@@ -1178,6 +1195,11 @@ ts_plan_expand_hypertable_chunks(Hypertable *ht, PlannerInfo *root, RelOptInfo * + propagate_join_quals(root, rel, &ctx); + + inh_oids = get_chunk_oids(&ctx, root, rel, ht); ++ ++ /* nothing to do here if we have no chunks and no data nodes */ ++ if (list_length(inh_oids) + list_length(ht->data_nodes) == 0) ++ return; ++ + oldrelation = table_open(parent_oid, NoLock); + + /* +@@ -1185,7 +1207,10 @@ ts_plan_expand_hypertable_chunks(Hypertable *ht, PlannerInfo *root, RelOptInfo * + * children to them. We include potential data node rels we might need to + * create in case of a distributed hypertable. + */ +- old_rel_array_len = root->simple_rel_array_size; ++#if PG12_GE ++ expand_planner_arrays(root, list_length(inh_oids) + list_length(ht->data_nodes)); ++#else ++ Size old_rel_array_len = root->simple_rel_array_size; + root->simple_rel_array_size += (list_length(inh_oids) + list_length(ht->data_nodes)); + root->simple_rel_array = + repalloc(root->simple_rel_array, root->simple_rel_array_size * sizeof(RelOptInfo *)); +@@ -1200,6 +1225,7 @@ ts_plan_expand_hypertable_chunks(Hypertable *ht, PlannerInfo *root, RelOptInfo * + memset(root->simple_rte_array + old_rel_array_len, + 0, + list_length(inh_oids) * sizeof(*root->simple_rte_array)); ++#endif + + /* Adding partition info will make PostgreSQL consider the inheritance + * children as part of a partitioned relation. This will enable +-- +2.29.2 + diff --git a/package/timescaledb/0010-Adjust-decompress-code-to-Var-field-renames.patch b/package/timescaledb/0010-Adjust-decompress-code-to-Var-field-renames.patch new file mode 100644 index 00000000..34ecdb43 --- /dev/null +++ b/package/timescaledb/0010-Adjust-decompress-code-to-Var-field-renames.patch @@ -0,0 +1,41 @@ +From d0f82f514eb1f59d63fcbfe71ec99d5d8f82649d Mon Sep 17 00:00:00 2001 +From: Sven Klemm +Date: Fri, 25 Sep 2020 14:23:01 +0200 +Subject: [PATCH] Adjust decompress code to Var field renames + +PG13 renames the varnoold and varoattno field of Var to varnosyn and +varattnosyn. + +https://github.com/postgres/postgres/commit/9ce77d75c5 + +Signed-off-by: Maxim Kochetkov +Fetch from: https://github.com/timescale/timescaledb/pull/2786/commits/d46b5de84b975d6f394a7f1fa94a34c5062f50ca.patch +--- + tsl/src/nodes/decompress_chunk/decompress_chunk.c | 8 ++++++-- + 1 file changed, 6 insertions(+), 2 deletions(-) + +diff --git a/tsl/src/nodes/decompress_chunk/decompress_chunk.c b/tsl/src/nodes/decompress_chunk/decompress_chunk.c +index 1e36f5dc..4a6fa782 100644 +--- a/tsl/src/nodes/decompress_chunk/decompress_chunk.c ++++ b/tsl/src/nodes/decompress_chunk/decompress_chunk.c +@@ -739,11 +739,15 @@ create_var_for_compressed_equivalence_member(Var *var, const EMCreationContext * + if (var->varlevelsup == 0) + { + var->varno = context->compressed_relid_idx; +- var->varnoold = context->compressed_relid_idx; + var->varattno = + get_attnum(context->compressed_relid, NameStr(context->current_col_info->attname)); +- ++#if PG13_GE ++ var->varnosyn = var->varno; ++ var->varattnosyn = var->varattno; ++#else ++ var->varnoold = var->varno; + var->varoattno = var->varattno; ++#endif + + return (Node *) var; + } +-- +2.29.2 + diff --git a/package/timescaledb/0011-Adjust-jsonb_utils-to-PG13-changes.patch b/package/timescaledb/0011-Adjust-jsonb_utils-to-PG13-changes.patch new file mode 100644 index 00000000..f117e150 --- /dev/null +++ b/package/timescaledb/0011-Adjust-jsonb_utils-to-PG13-changes.patch @@ -0,0 +1,39 @@ +From aef77c6cf3bac36f93ba44244ecd8a23de701896 Mon Sep 17 00:00:00 2001 +From: Sven Klemm +Date: Sat, 26 Sep 2020 02:14:28 +0200 +Subject: [PATCH] Adjust jsonb_utils to PG13 changes + +PG13 moved jsonapi.h from utils to common. + +https://github.com/postgres/postgres/commit/beb4699091 + +Signed-off-by: Maxim Kochetkov +Fetch from: https://github.com/timescale/timescaledb/pull/2787/commits/aa1e0c8ac78ca109994269c659d52983fe49db7f.patch +--- + src/jsonb_utils.c | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/src/jsonb_utils.c b/src/jsonb_utils.c +index 46173871..dd901a38 100644 +--- a/src/jsonb_utils.c ++++ b/src/jsonb_utils.c +@@ -9,9 +9,15 @@ + #include + #include + #include +-#include + + #include "compat.h" ++ ++#if PG13_LT ++#include ++#else ++#include ++#endif ++ + #include "export.h" + + #include "jsonb_utils.h" +-- +2.29.2 + diff --git a/package/timescaledb/0012-Handle-AT_DropExpression-in-process_utility.patch b/package/timescaledb/0012-Handle-AT_DropExpression-in-process_utility.patch new file mode 100644 index 00000000..9a3bb58c --- /dev/null +++ b/package/timescaledb/0012-Handle-AT_DropExpression-in-process_utility.patch @@ -0,0 +1,48 @@ +From 8a2ed03f78601596e1f74fa2e75f9cdf52c4ff83 Mon Sep 17 00:00:00 2001 +From: Sven Klemm +Date: Fri, 25 Sep 2020 14:31:55 +0200 +Subject: [PATCH] Handle AT_DropExpression in process_utility + +PG13 adds a new ALTER TABLE subcommand for dropping the generated +property from a column. + +https://github.com/postgres/postgres/commit/f595117e24 + +Signed-off-by: Maxim Kochetkov +Fetch from: https://github.com/timescale/timescaledb/pull/2498/commits/cdb29e2e61ec3f3b52fb8962d12a15727757e35b.patch +--- + src/process_utility.c | 11 ++++++++--- + 1 file changed, 8 insertions(+), 3 deletions(-) + +diff --git a/src/process_utility.c b/src/process_utility.c +index 8f915113..0f76f141 100644 +--- a/src/process_utility.c ++++ b/src/process_utility.c +@@ -3266,6 +3266,9 @@ process_altertable_end_subcmd(Hypertable *ht, Node *parsetree, ObjectAddress *ob + case AT_AddColumnRecurse: + case AT_DropColumn: + case AT_DropColumnRecurse: ++#if PG13_GE ++ case AT_DropExpression: ++#endif + + /* + * adding and dropping columns handled in +@@ -3276,9 +3279,11 @@ process_altertable_end_subcmd(Hypertable *ht, Node *parsetree, ObjectAddress *ob + case AT_DropConstraintRecurse: + /* drop constraints handled by process_ddl_sql_drop */ + break; +- case AT_ProcessedConstraint: /* internal command never hit in our +- * test code, so don't know how to +- * handle */ ++#if PG13_LT ++ case AT_ProcessedConstraint: /* internal command never hit in our ++ * test code, so don't know how to ++ * handle */ ++#endif + case AT_ReAddComment: /* internal command never hit in our test + * code, so don't know how to handle */ + case AT_AddColumnToView: /* only used with views */ +-- +2.29.2 + diff --git a/package/timescaledb/0013-Adjust-copy-code-to-PG13-changes.patch b/package/timescaledb/0013-Adjust-copy-code-to-PG13-changes.patch new file mode 100644 index 00000000..46686527 --- /dev/null +++ b/package/timescaledb/0013-Adjust-copy-code-to-PG13-changes.patch @@ -0,0 +1,34 @@ +From 5cea3a687f7227997deb0eacbb061c586c6713f7 Mon Sep 17 00:00:00 2001 +From: Sven Klemm +Date: Sat, 26 Sep 2020 02:57:38 +0200 +Subject: [PATCH] Adjust copy code to PG13 changes + +PG13 adds a CmdType argument to ExecComputeStoredGenerated. + +https://github.com/postgres/postgres/commit/c6679e4fca + +Signed-off-by: Maxim Kochetkov +Fetch from: https://github.com/timescale/timescaledb/pull/2498/commits/a2d15828cbbbe7570afb03bb930df083ddeafd7a.patch +--- + src/copy.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/src/copy.c b/src/copy.c +index c8ce93e6..e38ae15e 100644 +--- a/src/copy.c ++++ b/src/copy.c +@@ -379,7 +379,11 @@ copyfrom(CopyChunkState *ccstate, List *range_table, Hypertable *ht, void (*call + /* Compute stored generated columns */ + if (resultRelInfo->ri_RelationDesc->rd_att->constr && + resultRelInfo->ri_RelationDesc->rd_att->constr->has_generated_stored) ++#if PG13_GE ++ ExecComputeStoredGenerated(estate, myslot, CMD_INSERT); ++#else + ExecComputeStoredGenerated(estate, myslot); ++#endif + #endif + /* + * If the target is a plain table, check the constraints of +-- +2.29.2 + diff --git a/package/timescaledb/0014-Adjust-code-to-PG13-command-completion-tag-changes.patch b/package/timescaledb/0014-Adjust-code-to-PG13-command-completion-tag-changes.patch new file mode 100644 index 00000000..d5331fab --- /dev/null +++ b/package/timescaledb/0014-Adjust-code-to-PG13-command-completion-tag-changes.patch @@ -0,0 +1,186 @@ +From 6ef08914041b6166db6f77dd516ae8d66d0ecce6 Mon Sep 17 00:00:00 2001 +From: Sven Klemm +Date: Wed, 30 Sep 2020 01:47:01 +0200 +Subject: [PATCH] Adjust code to PG13 command completion tag changes + +PG13 changes the representation of command completion tags to structs. + +https://github.com/postgres/postgres/commit/2f9661311b + +Signed-off-by: Maxim Kochetkov +Fetch from: https://github.com/timescale/timescaledb/pull/2498/commits/d37ec4e23bc678bc84f126c5b952fb1707ad7fe4.patch +--- + src/loader/loader.c | 13 +++++++- + src/process_utility.c | 59 +++++++++++++++++++++++++++--------- + src/process_utility.h | 4 +++ + tsl/test/src/test_ddl_hook.c | 4 +++ + 4 files changed, 65 insertions(+), 15 deletions(-) + +diff --git a/src/loader/loader.c b/src/loader/loader.c +index f60f9e77..ed35f288 100644 +--- a/src/loader/loader.c ++++ b/src/loader/loader.c +@@ -464,7 +464,14 @@ post_analyze_hook(ParseState *pstate, Query *query) + static void + loader_process_utility_hook(PlannedStmt *pstmt, const char *query_string, + ProcessUtilityContext context, ParamListInfo params, +- QueryEnvironment *queryEnv, DestReceiver *dest, char *completion_tag) ++ QueryEnvironment *queryEnv, DestReceiver *dest, ++#if PG13_GE ++ QueryCompletion *qc ++#else ++ char *completion_tag ++#endif ++ ++) + { + bool is_distributed_database = false; + char *dist_uuid = NULL; +@@ -500,7 +507,11 @@ loader_process_utility_hook(PlannedStmt *pstmt, const char *query_string, + else + process_utility = standard_ProcessUtility; + ++#if PG13_GE ++ process_utility(pstmt, query_string, context, params, queryEnv, dest, qc); ++#else + process_utility(pstmt, query_string, context, params, queryEnv, dest, completion_tag); ++#endif + + /* + * Show a NOTICE warning message in case of dropping a +diff --git a/src/process_utility.c b/src/process_utility.c +index 0f76f141..d9d7514d 100644 +--- a/src/process_utility.c ++++ b/src/process_utility.c +@@ -91,7 +91,12 @@ prev_ProcessUtility(ProcessUtilityArgs *args) + args->params, + args->queryEnv, + args->dest, +- args->completion_tag); ++#if PG13_GE ++ args->qc ++#else ++ args->completion_tag ++#endif ++ ); + } + else + { +@@ -102,7 +107,12 @@ prev_ProcessUtility(ProcessUtilityArgs *args) + args->params, + args->queryEnv, + args->dest, +- args->completion_tag); ++#if PG13_GE ++ args->qc ++#else ++ args->completion_tag ++#endif ++ ); + } + } + +@@ -493,8 +503,13 @@ process_copy(ProcessUtilityArgs *args) + /* Performs acl check in here inside `copy_security_check` */ + timescaledb_DoCopy(stmt, args->query_string, &processed, ht); + ++#if PG13_GE ++ args->qc->commandTag = CMDTAG_COPY; ++ args->qc->nprocessed = processed; ++#else + if (args->completion_tag) + snprintf(args->completion_tag, COMPLETION_TAG_BUFSIZE, "COPY " UINT64_FORMAT, processed); ++#endif + + process_add_hypertable(args, ht); + +@@ -3646,7 +3661,11 @@ process_ddl_command_start(ProcessUtilityArgs *args) + return false; + + if (check_read_only) ++#if PG13_GE ++ PreventCommandIfReadOnly(CreateCommandName(args->parsetree)); ++#else + PreventCommandIfReadOnly(CreateCommandTag(args->parsetree)); ++#endif + + return handler(args); + } +@@ -3845,18 +3864,30 @@ process_ddl_sql_drop(EventTriggerDropObject *obj) + static void + timescaledb_ddl_command_start(PlannedStmt *pstmt, const char *query_string, + ProcessUtilityContext context, ParamListInfo params, +- QueryEnvironment *queryEnv, DestReceiver *dest, char *completion_tag) +-{ +- ProcessUtilityArgs args = { .query_string = query_string, +- .context = context, +- .params = params, +- .dest = dest, +- .completion_tag = completion_tag, +- .pstmt = pstmt, +- .parsetree = pstmt->utilityStmt, +- .queryEnv = queryEnv, +- .parse_state = make_parsestate(NULL), +- .hypertable_list = NIL }; ++ QueryEnvironment *queryEnv, DestReceiver *dest, ++#if PG13_GE ++ QueryCompletion *qc ++#else ++ char *completion_tag ++#endif ++) ++{ ++ ProcessUtilityArgs args = { ++ .query_string = query_string, ++ .context = context, ++ .params = params, ++ .dest = dest, ++#if PG13_GE ++ .qc = qc, ++#else ++ .completion_tag = completion_tag, ++#endif ++ .pstmt = pstmt, ++ .parsetree = pstmt->utilityStmt, ++ .queryEnv = queryEnv, ++ .parse_state = make_parsestate(NULL), ++ .hypertable_list = NIL ++ }; + + bool altering_timescaledb = false; + DDLResult result; +diff --git a/src/process_utility.h b/src/process_utility.h +index ac5519f4..f66448fb 100644 +--- a/src/process_utility.h ++++ b/src/process_utility.h +@@ -24,7 +24,11 @@ typedef struct ProcessUtilityArgs + ParamListInfo params; + DestReceiver *dest; + List *hypertable_list; ++#if PG13_GE ++ QueryCompletion *qc; ++#else + char *completion_tag; ++#endif + } ProcessUtilityArgs; + + typedef enum +diff --git a/tsl/test/src/test_ddl_hook.c b/tsl/test/src/test_ddl_hook.c +index 4fb58f02..d01e6114 100644 +--- a/tsl/test/src/test_ddl_hook.c ++++ b/tsl/test/src/test_ddl_hook.c +@@ -80,7 +80,11 @@ test_ddl_command_end(EventTriggerData *command) + ListCell *cell; + Hypertable *ht; + ++#if PG13_GE ++ elog(NOTICE, "test_ddl_command_end: %s", GetCommandTagName(command->tag)); ++#else + elog(NOTICE, "test_ddl_command_end: %s", command->tag); ++#endif + + if (tsl_delayed_execution_list == NIL) + return; +-- +2.29.2 + diff --git a/package/timescaledb/0015-Adjust-copy-to-PG13-HEAP_INSERT_SKIP_WAL-change.patch b/package/timescaledb/0015-Adjust-copy-to-PG13-HEAP_INSERT_SKIP_WAL-change.patch new file mode 100644 index 00000000..8ce69e17 --- /dev/null +++ b/package/timescaledb/0015-Adjust-copy-to-PG13-HEAP_INSERT_SKIP_WAL-change.patch @@ -0,0 +1,51 @@ +From 399acf6de6d02b3362faa13379b6bd948b91e20c Mon Sep 17 00:00:00 2001 +From: Sven Klemm +Date: Fri, 2 Oct 2020 00:58:57 +0200 +Subject: [PATCH] Adjust copy to PG13 HEAP_INSERT_SKIP_WAL change + +Signed-off-by: Maxim Kochetkov +Fetch from: https://github.com/timescale/timescaledb/pull/2498/commits/446f977be8ead518579b3c5b2458429f27518b48.patch +--- + src/copy.c | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/src/copy.c b/src/copy.c +index e38ae15e..1187a696 100644 +--- a/src/copy.c ++++ b/src/copy.c +@@ -27,6 +27,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -215,8 +216,10 @@ copyfrom(CopyChunkState *ccstate, List *range_table, Hypertable *ht, void (*call + ccstate->rel->rd_newRelfilenodeSubid != InvalidSubTransactionId) + { + ti_options |= HEAP_INSERT_SKIP_FSM; ++#if PG13_LT + if (!XLogIsNeeded()) + ti_options |= HEAP_INSERT_SKIP_WAL; ++#endif + } + + /* +@@ -449,8 +452,13 @@ copyfrom(CopyChunkState *ccstate, List *range_table, Hypertable *ht, void (*call + * If we skipped writing WAL, then we need to sync the heap (but not + * indexes since those use WAL anyway) + */ ++#if PG13_LT + if (ti_options & HEAP_INSERT_SKIP_WAL) + heap_sync(ccstate->rel); ++#else ++ if (!RelationNeedsWAL(ccstate->rel)) ++ smgrimmedsync(ccstate->rel->rd_smgr, MAIN_FORKNUM); ++#endif + + return processed; + } +-- +2.29.2 + diff --git a/package/timescaledb/0016-Adjust-planner-code-to-PG13-planner_hook-signature-c.patch b/package/timescaledb/0016-Adjust-planner-code-to-PG13-planner_hook-signature-c.patch new file mode 100644 index 00000000..130d66b1 --- /dev/null +++ b/package/timescaledb/0016-Adjust-planner-code-to-PG13-planner_hook-signature-c.patch @@ -0,0 +1,58 @@ +From 280db3fdb6c365dd37d82afaeeebd16efa70e965 Mon Sep 17 00:00:00 2001 +From: Sven Klemm +Date: Wed, 30 Sep 2020 01:45:29 +0200 +Subject: [PATCH] Adjust planner code to PG13 planner_hook signature + change + +PG13 adds the query string as argument to the planner_hook. + +https://github.com/postgres/postgres/commit/6aba63ef3e + +Signed-off-by: Maxim Kochetkov +Fetch from: https://github.com/timescale/timescaledb/pull/2498/commits/90e3eb3df98f3165f08a17bf5548e3a30713de26.patch +--- + src/planner.c | 17 +++++++++++++++-- + 1 file changed, 15 insertions(+), 2 deletions(-) + +diff --git a/src/planner.c b/src/planner.c +index b4d4907a..cd40fa84 100644 +--- a/src/planner.c ++++ b/src/planner.c +@@ -278,7 +278,12 @@ preprocess_query(Node *node, Query *rootquery) + } + + static PlannedStmt * ++#if PG13_GE ++timescaledb_planner(Query *parse, const char *query_string, int cursor_opts, ++ ParamListInfo bound_params) ++#else + timescaledb_planner(Query *parse, int cursor_opts, ParamListInfo bound_params) ++#endif + { + PlannedStmt *stmt; + ListCell *lc; +@@ -302,11 +307,19 @@ timescaledb_planner(Query *parse, int cursor_opts, ParamListInfo bound_params) + preprocess_query((Node *) parse, parse); + + if (prev_planner_hook != NULL) +- /* Call any earlier hooks */ ++ /* Call any earlier hooks */ ++#if PG13_GE ++ stmt = (prev_planner_hook)(parse, query_string, cursor_opts, bound_params); ++#else + stmt = (prev_planner_hook)(parse, cursor_opts, bound_params); ++#endif + else +- /* Call the standard planner */ ++ /* Call the standard planner */ ++#if PG13_GE ++ stmt = standard_planner(parse, query_string, cursor_opts, bound_params); ++#else + stmt = standard_planner(parse, cursor_opts, bound_params); ++#endif + + if (ts_extension_is_loaded()) + { +-- +2.29.2 + diff --git a/package/timescaledb/0017-Adjust-code-to-deparse_context-changes.patch b/package/timescaledb/0017-Adjust-code-to-deparse_context-changes.patch new file mode 100644 index 00000000..87a12b2d --- /dev/null +++ b/package/timescaledb/0017-Adjust-code-to-deparse_context-changes.patch @@ -0,0 +1,34 @@ +From d7960c761542d7e90e91a32e91b82459e5fcc84f Mon Sep 17 00:00:00 2001 +From: Sven Klemm +Date: Sat, 3 Oct 2020 15:53:19 +0200 +Subject: [PATCH] Adjust code to deparse_context changes + +PG13 changes EXPLAIN to use Plan instead PlanState as context. + +https://github.com/postgres/postgres/commit/6ef77cf46e + +Signed-off-by: Maxim Kochetkov +Fetch from: https://github.com/timescale/timescaledb/pull/2498/commits/20c5ef33fc9c6d47cd6a95ca79b0b260ee3cfd25.patch +--- + src/chunk_append/explain.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/src/chunk_append/explain.c b/src/chunk_append/explain.c +index 0111cf72..7ee089c1 100644 +--- a/src/chunk_append/explain.c ++++ b/src/chunk_append/explain.c +@@ -84,7 +84,11 @@ show_sort_group_keys(ChunkAppendState *state, List *ancestors, ExplainState *es) + initStringInfo(&sortkeybuf); + + /* Set up deparsing context */ ++#if PG13_GE ++ context = set_deparse_context_plan(es->deparse_cxt, plan, ancestors); ++#else + context = set_deparse_context_planstate(es->deparse_cxt, (Node *) state, ancestors); ++#endif + useprefix = (list_length(es->rtable) > 1 || es->verbose); + + for (keyno = 0; keyno < nkeys; keyno++) +-- +2.29.2 + diff --git a/package/timescaledb/0018-Update-compat.h.patch b/package/timescaledb/0018-Update-compat.h.patch new file mode 100644 index 00000000..6e6dd9db --- /dev/null +++ b/package/timescaledb/0018-Update-compat.h.patch @@ -0,0 +1,27 @@ +From 67744f30f481a05e3cb6a2e73c0cb17117a2eb38 Mon Sep 17 00:00:00 2001 +From: fidomax +Date: Mon, 11 Jan 2021 14:16:06 +0300 +Subject: [PATCH] Update compat.h + +Signed-off-by: Maxim Kochetkov +Fetch from: https://github.com/timescale/timescaledb/pull/2801/commits/6a927ee84c91797025fc48ac4aab74c3344ebdad.patch +--- + src/compat.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/compat.h b/src/compat.h +index 1b2ed8e5..6b461e38 100644 +--- a/src/compat.h ++++ b/src/compat.h +@@ -371,7 +371,7 @@ get_vacuum_options(const VacuumStmt *stmt) + #define list_delete_cell_compat(l, lc, prev) list_delete_cell((l), (lc)) + #define list_make5(x1, x2, x3, x4, x5) lappend(list_make4(x1, x2, x3, x4), x5) + #define list_make5_oid(x1, x2, x3, x4, x5) lappend_oid(list_make4_oid(x1, x2, x3, x4), x5) +-#define for_each_cell_compat(cell, list, initcell) for_each_cell ((cell), (list), (initcell)) ++#define for_each_cell_compat(cell, list, initcell) for_each_cell (cell, list, initcell) + #endif + + /* PG13 removes the natts parameter from map_variable_attnos */ +-- +2.29.2 + diff --git a/package/timescaledb/0019-Adjust-code-to-PG13-tuptoaster-changes.patch b/package/timescaledb/0019-Adjust-code-to-PG13-tuptoaster-changes.patch new file mode 100644 index 00000000..0793bf1d --- /dev/null +++ b/package/timescaledb/0019-Adjust-code-to-PG13-tuptoaster-changes.patch @@ -0,0 +1,70 @@ +From 42ac10738119c7d31892d8c3f45d525ad5bda756 Mon Sep 17 00:00:00 2001 +From: Sven Klemm +Date: Sat, 26 Sep 2020 02:19:56 +0200 +Subject: [PATCH] Adjust code to PG13 tuptoaster changes + +PG13 split tuptoaster.c into three separate files. This patch also +removes unnecesary tuptoaster.h includes. + +https://github.com/postgres/postgres/commit/8b94dab066 + +Signed-off-by: Maxim Kochetkov +Fetch from: https://github.com/timescale/timescaledb/commit/2bef612c04435cdb5257d40373c4955a0d617c39.patch +--- + tsl/src/remote/async.c | 1 - + tsl/src/remote/stmt_params.c | 1 - + tsl/src/reorder.c | 7 ++++++- + 3 files changed, 6 insertions(+), 3 deletions(-) + +diff --git a/tsl/src/remote/async.c b/tsl/src/remote/async.c +index f3462809..0d55deb7 100644 +--- a/tsl/src/remote/async.c ++++ b/tsl/src/remote/async.c +@@ -13,7 +13,6 @@ + #include + #include + #include +-#include + + #include "compat.h" + #if PG12_GE +diff --git a/tsl/src/remote/stmt_params.c b/tsl/src/remote/stmt_params.c +index 0f315f37..1682d476 100644 +--- a/tsl/src/remote/stmt_params.c ++++ b/tsl/src/remote/stmt_params.c +@@ -6,7 +6,6 @@ + #include + #include + #include +-#include + #include + #include + #include +diff --git a/tsl/src/reorder.c b/tsl/src/reorder.c +index c4b42c12..7f301b2b 100644 +--- a/tsl/src/reorder.c ++++ b/tsl/src/reorder.c +@@ -19,7 +19,6 @@ + #include + #include + #include +-#include + #include + #include + #include +@@ -58,6 +57,12 @@ + #include + #endif + ++#if PG13_LT ++#include ++#else ++#include ++#endif ++ + #include "chunk.h" + #include "chunk_index.h" + #include "hypertable_cache.h" +-- +2.29.2 + diff --git a/package/timescaledb/Config.in b/package/timescaledb/Config.in new file mode 100644 index 00000000..af4a8685 --- /dev/null +++ b/package/timescaledb/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_TIMESCALEDB + bool "timescaledb" + depends on BR2_PACKAGE_POSTGRESQL + help + TimescaleDB is an open-source database designed + to make SQL scalable for time-series data. + It is engineered up from PostgreSQL and packaged + as a PostgreSQL extension, providing automatic + partitioning across time and space (partitioning key), + as well as full SQL support. + + https://www.timescale.com/ diff --git a/package/timescaledb/timescaledb.hash b/package/timescaledb/timescaledb.hash new file mode 100644 index 00000000..dfde3b51 --- /dev/null +++ b/package/timescaledb/timescaledb.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 afb11b632455cfa593f60946125c8ed6ac0db4713c203d6582e662266f9e1045 timescaledb-2.0.2.tar.gz +sha256 0378e0948feefd85f579319c74d6e2b671194037f550c7176ef26649d94c895b LICENSE diff --git a/package/timescaledb/timescaledb.mk b/package/timescaledb/timescaledb.mk new file mode 100644 index 00000000..08680f89 --- /dev/null +++ b/package/timescaledb/timescaledb.mk @@ -0,0 +1,37 @@ +################################################################################ +# +# timescaledb +# +################################################################################ + +TIMESCALEDB_VERSION = 2.0.2 +TIMESCALEDB_SITE = $(call github,timescale,timescaledb,$(TIMESCALEDB_VERSION)) +TIMESCALEDB_LICENSE = Apache-2.0 +TIMESCALEDB_LICENSE_FILES = LICENSE + +TIMESCALEDB_DEPENDENCIES = postgresql + +# The PG_CPPFLAGS, PG_CFLAGS, PG_LDFLAGS and PG_LIBS variables must be +# non-empty, otherwise CMake will call the pg_config script, and our +# pg_config replacement doesn't implement --cppflags --cflags +# --ldflags and --libs. +TIMESCALEDB_CONF_OPTS = \ + -DREGRESS_CHECKS=OFF \ + -DWARNINGS_AS_ERRORS=OFF \ + -DPG_PKGLIBDIR=lib/postgresql \ + -DPG_SHAREDIR=share/postgresql \ + -DPG_BINDIR=bin \ + -DPG_CPPFLAGS="$(TARGET_CPPFLAGS) " \ + -DPG_CFLAGS="$(TARGET_CFLAGS) " \ + -DPG_LDFLAGS="$(TARGET_LDFLAGS) " \ + -DPG_LIBS=" " + +# There's no dependency on the OpenSSL package, because USE_OPENSSL +# only tells if postgresql was built with OpenSSL support or not. +ifeq ($(BR2_PACKAGE_OPENSSL),y) +TIMESCALEDB_CONF_OPTS += -DUSE_OPENSSL=1 +else +TIMESCALEDB_CONF_OPTS += -DUSE_OPENSSL=0 +endif + +$(eval $(cmake-package)) diff --git a/package/tinc/Config.in b/package/tinc/Config.in new file mode 100644 index 00000000..837f556b --- /dev/null +++ b/package/tinc/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_TINC + bool "tinc" + depends on !BR2_STATIC_LIBS # tinc requires libdl for OpenSSL + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_LZO + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_ZLIB + help + tinc is a Virtual Private Network (VPN) daemon that uses + tunnelling and encryption to create a secure private network + between hosts on the Internet. + + http://www.tinc-vpn.org/ + +comment "tinc needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/tinc/tinc.hash b/package/tinc/tinc.hash new file mode 100644 index 00000000..5bd7aa2b --- /dev/null +++ b/package/tinc/tinc.hash @@ -0,0 +1,4 @@ +# Locally calculated after checking pgp signature +sha256 40f73bb3facc480effe0e771442a706ff0488edea7a5f2505d4ccb2aa8163108 tinc-1.0.36.tar.gz +sha256 3b37ffbf3459f2aceeef169aa65ee8b111ac1f8ba24a2a1b90b079678a9c7faa COPYING +sha256 9bf76a8aa304d807df20bf3d221c21d259764be63e39b58f299b80ba3ac14b5b COPYING.README diff --git a/package/tinc/tinc.mk b/package/tinc/tinc.mk new file mode 100644 index 00000000..0726e81d --- /dev/null +++ b/package/tinc/tinc.mk @@ -0,0 +1,26 @@ +################################################################################ +# +# tinc +# +################################################################################ + +TINC_VERSION = 1.0.36 +TINC_SITE = http://www.tinc-vpn.org/packages +TINC_DEPENDENCIES = lzo openssl zlib +TINC_LICENSE = GPL-2.0+ with OpenSSL exception +TINC_LICENSE_FILES = COPYING COPYING.README +TINC_CPE_ID_VENDOR = tinc-vpn +TINC_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) -std=c99" + +ifeq ($(BR2_TOOLCHAIN_SUPPORTS_PIE),) +TINC_CONF_ENV += \ + ax_cv_check_cflags___fPIE=no \ + ax_cv_check_ldflags___pie=no +endif + +ifeq ($(BR2_INIT_SYSTEMD),y) +TINC_DEPENDENCIES += systemd +TINC_CONF_OPTS += --with-systemdsystemunitdir=/usr/lib/systemd/system +endif + +$(eval $(autotools-package)) diff --git a/package/tini/Config.in b/package/tini/Config.in new file mode 100644 index 00000000..719e1e1f --- /dev/null +++ b/package/tini/Config.in @@ -0,0 +1,17 @@ +config BR2_PACKAGE_TINI + bool "tini" + depends on BR2_USE_MMU # fork() + help + tini is a simple but valid init binary to + act as PID 1 for containers. + + https://github.com/krallin/tini + +if BR2_PACKAGE_TINI + +config BR2_PACKAGE_TINI_MINIMAL + bool "build minimal variant" + help + Disables argument parsing and verbose output. + +endif diff --git a/package/tini/tini.hash b/package/tini/tini.hash new file mode 100644 index 00000000..83a97a40 --- /dev/null +++ b/package/tini/tini.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 e5f46bca81266bdd511cf08018d66866870531794569c04f9b45f50dd23c28b0 LICENSE +sha256 0fd35a7030052acd9f58948d1d900fe1e432ee37103c5561554408bdac6bbf0d tini-0.19.0.tar.gz diff --git a/package/tini/tini.mk b/package/tini/tini.mk new file mode 100644 index 00000000..9da54f8a --- /dev/null +++ b/package/tini/tini.mk @@ -0,0 +1,38 @@ +################################################################################ +# +# tini +# +################################################################################ + +TINI_VERSION = 0.19.0 +TINI_SITE = $(call github,krallin,tini,v$(TINI_VERSION)) +TINI_LICENSE = MIT +TINI_LICENSE_FILES = LICENSE +TINI_CPE_ID_VENDOR = tini_project + +TINI_CFLAGS = $(TARGET_CFLAGS) \ + -static \ + -DTINI_VERSION=\"$(TINI_VERSION)\" \ + -DTINI_GIT=\"\" + +ifeq ($(BR2_PACKAGE_TINI_MINIMAL),y) +TINI_CFLAGS += -DTINI_MINIMAL +endif + +define TINI_CONFIGURE_CMDS + printf "#pragma once\n" > $(@D)/src/tiniConfig.h +endef + +define TINI_BUILD_CMDS + mkdir -p $(@D)/bin + $(TARGET_CC) $(TINI_CFLAGS) \ + -o $(@D)/bin/tini $(@D)/src/tini.c +endef + +define TINI_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/bin/tini $(TARGET_DIR)/usr/bin/tini + ln -sf tini $(TARGET_DIR)/usr/bin/docker-init +endef + +# Tini's CMakeLists.txt is not suitable for Buildroot. +$(eval $(generic-package)) diff --git a/package/tinyalsa/0001-disable-doxygen-usage.patch b/package/tinyalsa/0001-disable-doxygen-usage.patch new file mode 100644 index 00000000..ed939fb9 --- /dev/null +++ b/package/tinyalsa/0001-disable-doxygen-usage.patch @@ -0,0 +1,35 @@ +Disable doxygen usage + +In order to avoid a dependency on doxygen on the build machine, this +patch adjusts the main Makefile to not build and install the +documentation. + +[Vincent: tweak patch for 1.1.1 version] + +Signed-off-by: Thomas Petazzoni +Signed-off-by: Vicente Olivert Riera + +diff -rup a/Makefile b/Makefile +--- a/Makefile 2017-05-24 05:23:57.000000000 +0100 ++++ b/Makefile 2017-05-25 10:35:20.781747053 +0100 +@@ -11,14 +11,12 @@ export MANDIR ?= $(PREFIX)/share/man + all: + $(MAKE) -C src + $(MAKE) -C utils +- $(MAKE) -C doxygen + $(MAKE) -C examples + + .PHONY: clean + clean: + $(MAKE) -C src clean + $(MAKE) -C utils clean +- $(MAKE) -C doxygen clean + $(MAKE) -C examples clean + + .PHONY: install +@@ -30,5 +28,4 @@ install: + install include/tinyalsa/version.h $(DESTDIR)$(INCDIR)/ + $(MAKE) -C src install + $(MAKE) -C utils install +- $(MAKE) -C doxygen install + diff --git a/package/tinyalsa/0002-interval.h-add-missing-header.patch b/package/tinyalsa/0002-interval.h-add-missing-header.patch new file mode 100644 index 00000000..c043145b --- /dev/null +++ b/package/tinyalsa/0002-interval.h-add-missing-header.patch @@ -0,0 +1,36 @@ +From 685e530d8a0063134642371eaacd01fee2f62d85 Mon Sep 17 00:00:00 2001 +From: Baruch Siach +Date: Fri, 2 Jun 2017 12:19:03 +0300 +Subject: [PATCH] interval.h: add missing header + +The ssize_t type requires the unistd.h header. This fixes build with musl +libc: + +In file included from ../include/tinyalsa/limits.h:32:0, + from limits.c:1: +../include/tinyalsa/interval.h:38:2: error: unknown type name 'ssize_t' + ssize_t max; + ^ + +Signed-off-by: Baruch Siach +--- +Upstream status: https://github.com/tinyalsa/tinyalsa/pull/98 + + include/tinyalsa/interval.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/include/tinyalsa/interval.h b/include/tinyalsa/interval.h +index 3f6f3dce5d90..068571df5a63 100644 +--- a/include/tinyalsa/interval.h ++++ b/include/tinyalsa/interval.h +@@ -30,6 +30,7 @@ + #define TINYALSA_INTERVAL_H + + #include ++#include + + /** A closed range signed interval. */ + +-- +2.11.0 + diff --git a/package/tinyalsa/Config.in b/package/tinyalsa/Config.in new file mode 100644 index 00000000..d9ce22c8 --- /dev/null +++ b/package/tinyalsa/Config.in @@ -0,0 +1,17 @@ +config BR2_PACKAGE_TINYALSA + bool "tinyalsa" + depends on !BR2_STATIC_LIBS + help + a small library to interface with ALSA in the Linux kernel + + The aims are: + + - Provide a basic pcm and mixer API + - If it's not absolutely needed, don't add it to the API + - Avoid supporting complex and unnecessary operations that + could be dealt with at a higher level + + https://github.com/tinyalsa/tinyalsa + +comment "tinyalsa needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/tinyalsa/tinyalsa.hash b/package/tinyalsa/tinyalsa.hash new file mode 100644 index 00000000..d078bab5 --- /dev/null +++ b/package/tinyalsa/tinyalsa.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 d92b438cea348ae316c4b2cbf367b4f01ed821a947e6a34d813624e9e3c936c1 tinyalsa-1.1.1.tar.gz +sha256 ca2b89a68c33fba3c8bcaec96f32907e2ede0eb33688ae61d29ec49732158f6d NOTICE diff --git a/package/tinyalsa/tinyalsa.mk b/package/tinyalsa/tinyalsa.mk new file mode 100644 index 00000000..bd9d9a00 --- /dev/null +++ b/package/tinyalsa/tinyalsa.mk @@ -0,0 +1,33 @@ +################################################################################ +# +# tinyalsa +# +################################################################################ + +TINYALSA_VERSION = 1.1.1 +TINYALSA_SITE = $(call github,tinyalsa,tinyalsa,$(TINYALSA_VERSION)) +TINYALSA_LICENSE = BSD-3-Clause +TINYALSA_LICENSE_FILES = NOTICE +TINYALSA_INSTALL_STAGING = YES + +define TINYALSA_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) CROSS_COMPILE="$(TARGET_CROSS)" -C $(@D) +endef + +define TINYALSA_INSTALL_STAGING_CMDS + $(TARGET_MAKE_ENV) $(MAKE) \ + -C $(@D) \ + PREFIX="/usr" \ + CROSS_COMPILE="$(TARGET_CROSS)" \ + DESTDIR="$(STAGING_DIR)" install +endef + +define TINYALSA_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) \ + -C $(@D) \ + PREFIX="/usr" \ + CROSS_COMPILE="$(TARGET_CROSS)" \ + DESTDIR="$(TARGET_DIR)" install +endef + +$(eval $(generic-package)) diff --git a/package/tinycbor/0001-Enable-build-for-different-c-libraries.patch b/package/tinycbor/0001-Enable-build-for-different-c-libraries.patch new file mode 100644 index 00000000..40f92886 --- /dev/null +++ b/package/tinycbor/0001-Enable-build-for-different-c-libraries.patch @@ -0,0 +1,39 @@ +From 085ca40781f7c39febe6d14fb7e5cba342e1804b Mon Sep 17 00:00:00 2001 +From: Ricardo Crudo +Date: Sat, 30 May 2020 22:03:01 +0200 +Subject: [PATCH] Enable build for different c libraries + +The open_memstream.c was using GLIBC macro definition to test if the +library is building on a Linux box. This makes impossible to build +tinycbor against other C libraries, as musl for example. + +Signed-off-by: Ricardo Crudo +[Retrieved from: +https://github.com/intel/tinycbor/commit/085ca40781f7c39febe6d14fb7e5cba342e1804b] +Signed-off-by: Fabrice Fontaine +--- + src/open_memstream.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/open_memstream.c b/src/open_memstream.c +index 18f3de8..3365378 100644 +--- a/src/open_memstream.c ++++ b/src/open_memstream.c +@@ -38,7 +38,7 @@ + #ifdef __APPLE__ + typedef int RetType; + typedef int LenType; +-#elif __GLIBC__ ++#elif __linux__ + typedef ssize_t RetType; + typedef size_t LenType; + #else +@@ -101,7 +101,7 @@ FILE *open_memstream(char **bufptr, size_t *lenptr) + + #ifdef __APPLE__ + return funopen(b, NULL, write_to_buffer, NULL, close_buffer); +-#elif __GLIBC__ ++#elif __linux__ + static const cookie_io_functions_t vtable = { + NULL, + write_to_buffer, diff --git a/package/tinycbor/Config.in b/package/tinycbor/Config.in new file mode 100644 index 00000000..41f0b5fa --- /dev/null +++ b/package/tinycbor/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_TINYCBOR + bool "tinycbor" + help + Concise Binary Object Representation (CBOR) Library + + https://github.com/01org/tinycbor diff --git a/package/tinycbor/tinycbor.hash b/package/tinycbor/tinycbor.hash new file mode 100644 index 00000000..8ff706bb --- /dev/null +++ b/package/tinycbor/tinycbor.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 956eb4b670ea4969eaee67395b5bb6437b153960385b77357d6692e979d1b12d tinycbor-0.5.3.tar.gz +sha256 3c6ba0b5bfa7830505301ffb336a17b0748e0d61c4d34216e9dc98f10e40395e LICENSE diff --git a/package/tinycbor/tinycbor.mk b/package/tinycbor/tinycbor.mk new file mode 100644 index 00000000..ef095ea6 --- /dev/null +++ b/package/tinycbor/tinycbor.mk @@ -0,0 +1,45 @@ +################################################################################ +# +# tinycbor +# +################################################################################ + +TINYCBOR_VERSION = 0.5.3 +TINYCBOR_SITE = $(call github,intel,tinycbor,v$(TINYCBOR_VERSION)) +TINYCBOR_LICENSE = MIT +TINYCBOR_LICENSE_FILES = LICENSE + +TINYCBOR_DEPENDENCIES = host-pkgconf +TINYCBOR_INSTALL_STAGING = YES + +ifeq ($(BR2_PACKAGE_CJSON),y) +TINYCBOR_DEPENDENCIES += cjson +endif + +TINYCBOR_MAKE_OPTS = $(TARGET_CONFIGURE_OPTS) V=1 + +ifeq ($(BR2_STATIC_LIBS),y) +TINYCBOR_MAKE_OPTS += BUILD_STATIC=1 BUILD_SHARED=0 +else ifeq ($(BR2_SHARED_STATIC_LIBS),y) +TINYCBOR_MAKE_OPTS += BUILD_STATIC=1 BUILD_SHARED=1 +else ifeq ($(BR2_SHARED_LIBS),y) +TINYCBOR_MAKE_OPTS += BUILD_STATIC=0 BUILD_SHARED=1 +endif + +# disabled parallel build because of build failures while +# producing the .config file +define TINYCBOR_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE1) $(TINYCBOR_MAKE_OPTS) -C $(@D) +endef + +define TINYCBOR_INSTALL_STAGING_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TINYCBOR_MAKE_OPTS) -C $(@D) \ + DESTDIR=$(STAGING_DIR) prefix=/usr install +endef + +define TINYCBOR_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TINYCBOR_MAKE_OPTS) -C $(@D) \ + DESTDIR=$(TARGET_DIR) prefix=/usr install +endef + +$(eval $(generic-package)) diff --git a/package/tinydtls/0001-sha2-sha2.c-fix-build-on-big-endian.patch b/package/tinydtls/0001-sha2-sha2.c-fix-build-on-big-endian.patch new file mode 100644 index 00000000..09d74d8a --- /dev/null +++ b/package/tinydtls/0001-sha2-sha2.c-fix-build-on-big-endian.patch @@ -0,0 +1,119 @@ +From 608738ccad9ac3743ccd535bde1e84f401e6176f Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sat, 20 Jun 2020 12:50:40 +0200 +Subject: [PATCH] sha2/sha2.c: fix build on big endian + +Build is broken since 865ec9ba1d44e629c1107c299aebd20e901a19ff because +tmp is undefined in put32be and put64be: + +sha2.c: In function 'put32be': +sha2.c:177:34: error: 'tmp' undeclared (first use in this function) + MEMCPY_BCOPY(data, &val, sizeof(tmp)); + ^~~ + +Fix this error by replacing tmp by val + +Moreover, move MEMCPY_BCOPY before its usage or linking step will fail + +Fixes: + - http://autobuild.buildroot.org/results/e8704e02fdede7b63e22da552292977b23380b32 + +Signed-off-by: Fabrice Fontaine +[Upstream: https://github.com/eclipse/tinydtls/commit/78a2d32f47165eda10cbf8f5cf79f86fa1c4872b] +--- + sha2/sha2.c | 58 ++++++++++++++++++++++++++--------------------------- + 1 file changed, 29 insertions(+), 29 deletions(-) + +diff --git a/sha2/sha2.c b/sha2/sha2.c +index cb6d90f..5c794c6 100644 +--- a/sha2/sha2.c ++++ b/sha2/sha2.c +@@ -114,6 +114,33 @@ + #error Define BYTE_ORDER to be equal to either LITTLE_ENDIAN or BIG_ENDIAN + #endif + ++/* ++ * Macros for copying blocks of memory and for zeroing out ranges ++ * of memory. Using these macros makes it easy to switch from ++ * using memset()/memcpy() and using bzero()/bcopy(). ++ * ++ * Please define either SHA2_USE_MEMSET_MEMCPY or define ++ * SHA2_USE_BZERO_BCOPY depending on which function set you ++ * choose to use: ++ */ ++#if !defined(SHA2_USE_MEMSET_MEMCPY) && !defined(SHA2_USE_BZERO_BCOPY) ++/* Default to memset()/memcpy() if no option is specified */ ++#define SHA2_USE_MEMSET_MEMCPY 1 ++#endif ++#if defined(SHA2_USE_MEMSET_MEMCPY) && defined(SHA2_USE_BZERO_BCOPY) ++/* Abort with an error if BOTH options are defined */ ++#error Define either SHA2_USE_MEMSET_MEMCPY or SHA2_USE_BZERO_BCOPY, not both! ++#endif ++ ++#ifdef SHA2_USE_MEMSET_MEMCPY ++#define MEMSET_BZERO(p,l) memset((p), 0, (l)) ++#define MEMCPY_BCOPY(d,s,l) memcpy((d), (s), (l)) ++#endif ++#ifdef SHA2_USE_BZERO_BCOPY ++#define MEMSET_BZERO(p,l) bzero((p), (l)) ++#define MEMCPY_BCOPY(d,s,l) bcopy((s), (d), (l)) ++#endif ++ + /* + * Define the followingsha2_* types to types of the correct length on + * the native archtecture. Most BSD systems and Linux define u_intXX_t +@@ -174,7 +201,7 @@ static inline void put32be(sha2_byte* data, sha2_word32 val) + data[1] = val; val >>= 8; + data[0] = val; + #else /* BYTE_ORDER != LITTLE_ENDIAN */ +- MEMCPY_BCOPY(data, &val, sizeof(tmp)); ++ MEMCPY_BCOPY(data, &val, sizeof(val)); + #endif /* BYTE_ORDER != LITTLE_ENDIAN */ + } + +@@ -209,7 +236,7 @@ static inline void put64be(sha2_byte* data, sha2_word64 val) + data[1] = val; val >>= 8; + data[0] = val; + #else /* BYTE_ORDER != LITTLE_ENDIAN */ +- MEMCPY_BCOPY(data, &val, sizeof(tmp)); ++ MEMCPY_BCOPY(data, &val, sizeof(val)); + #endif /* BYTE_ORDER != LITTLE_ENDIAN */ + } + +@@ -225,33 +252,6 @@ static inline void put64be(sha2_byte* data, sha2_word64 val) + } \ + } + +-/* +- * Macros for copying blocks of memory and for zeroing out ranges +- * of memory. Using these macros makes it easy to switch from +- * using memset()/memcpy() and using bzero()/bcopy(). +- * +- * Please define either SHA2_USE_MEMSET_MEMCPY or define +- * SHA2_USE_BZERO_BCOPY depending on which function set you +- * choose to use: +- */ +-#if !defined(SHA2_USE_MEMSET_MEMCPY) && !defined(SHA2_USE_BZERO_BCOPY) +-/* Default to memset()/memcpy() if no option is specified */ +-#define SHA2_USE_MEMSET_MEMCPY 1 +-#endif +-#if defined(SHA2_USE_MEMSET_MEMCPY) && defined(SHA2_USE_BZERO_BCOPY) +-/* Abort with an error if BOTH options are defined */ +-#error Define either SHA2_USE_MEMSET_MEMCPY or SHA2_USE_BZERO_BCOPY, not both! +-#endif +- +-#ifdef SHA2_USE_MEMSET_MEMCPY +-#define MEMSET_BZERO(p,l) memset((p), 0, (l)) +-#define MEMCPY_BCOPY(d,s,l) memcpy((d), (s), (l)) +-#endif +-#ifdef SHA2_USE_BZERO_BCOPY +-#define MEMSET_BZERO(p,l) bzero((p), (l)) +-#define MEMCPY_BCOPY(d,s,l) bcopy((s), (d), (l)) +-#endif +- + + /*** THE SIX LOGICAL FUNCTIONS ****************************************/ + /* +-- +2.26.2 + diff --git a/package/tinydtls/Config.in b/package/tinydtls/Config.in new file mode 100644 index 00000000..98cbbb58 --- /dev/null +++ b/package/tinydtls/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_TINYDTLS + bool "tinydtls" + depends on BR2_TOOLCHAIN_HAS_THREADS + help + tinydtls is a library for Datagram Transport Layer Security + (DTLS) covering both the client and the server state + machine. It is implemented in C and provides support for + the mandatory cipher suites specified in CoAP. + + https://projects.eclipse.org/projects/iot.tinydtls + +comment "tinydtls needs a toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/tinydtls/tinydtls.hash b/package/tinydtls/tinydtls.hash new file mode 100644 index 00000000..be6bf182 --- /dev/null +++ b/package/tinydtls/tinydtls.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 af73742835b5a66dc0b4a9c126ca8243b5db2986b4969d76e2b4531aa7e13f67 tinydtls-0.9-rc1.tar.gz +sha256 7e906fb56da52bb6bba38e77eec00e7d37fe65b0b7b28c4bf68ff036573d0de5 LICENSE diff --git a/package/tinydtls/tinydtls.mk b/package/tinydtls/tinydtls.mk new file mode 100644 index 00000000..6d839bc0 --- /dev/null +++ b/package/tinydtls/tinydtls.mk @@ -0,0 +1,19 @@ +################################################################################ +# +# tinydtls +# +################################################################################ + +TINYDTLS_VERSION = 0.9-rc1 +TINYDTLS_SITE = $(call github,eclipse,tinydtls,v$(TINYDTLS_VERSION)) +TINYDTLS_LICENSE = EPL-1.0 or EDL-1.0 +TINYDTLS_LICENSE_FILES = LICENSE +TINYDTLS_CPE_ID_VENDOR = eclipse +TINYDTLS_INSTALL_STAGING = YES +TINYDTLS_DEPENDENCIES = host-pkgconf +# From git +TINYDTLS_AUTORECONF = YES +# use inttypes.h data types instead of u_intXX_t for musl compatibility +TINYDTLS_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -DSHA2_USE_INTTYPES_H" + +$(eval $(autotools-package)) diff --git a/package/tinymembench/0001-arm-fix-build-on-Thumb-only-architectures.patch b/package/tinymembench/0001-arm-fix-build-on-Thumb-only-architectures.patch new file mode 100644 index 00000000..88559ec0 --- /dev/null +++ b/package/tinymembench/0001-arm-fix-build-on-Thumb-only-architectures.patch @@ -0,0 +1,47 @@ +From 034a3552e9700c6d424bd706db106f5bce1f5a5e Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Fri, 11 Nov 2016 21:49:39 +0100 +Subject: [PATCH] arm: fix build on Thumb-only architectures + +Building tinymembench for ARM Cortex-M currently fails, because the +arm-neon.S file contains ARM code that doesn't build on Thumb-only +architectures. To account for this and fix the build for Cortex-M, +this patch adjusts the compile time condition to also verify that the +architecture supports the ARM instruction set, by testing the +__ARM_ARCH_ISA_ARM compiler define. + +Signed-off-by: Thomas Petazzoni +--- + arm-neon.S | 2 +- + asm-opt.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/arm-neon.S b/arm-neon.S +index 4db78ce..19c30ad 100644 +--- a/arm-neon.S ++++ b/arm-neon.S +@@ -21,7 +21,7 @@ + * DEALINGS IN THE SOFTWARE. + */ + +-#ifdef __arm__ ++#if defined(__arm__) && defined(__ARM_ARCH_ISA_ARM) + + .text + .fpu neon +diff --git a/asm-opt.c b/asm-opt.c +index 9da4596..eba1183 100644 +--- a/asm-opt.c ++++ b/asm-opt.c +@@ -202,7 +202,7 @@ bench_info *get_asm_framebuffer_benchmarks(void) + return empty; + } + +-#elif defined(__arm__) ++#elif defined(__arm__) && defined(__ARM_ARCH_ISA_ARM) + + #include "arm-neon.h" + +-- +2.7.4 + diff --git a/package/tinymembench/Config.in b/package/tinymembench/Config.in new file mode 100644 index 00000000..8f6e1a2b --- /dev/null +++ b/package/tinymembench/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_TINYMEMBENCH + bool "tinymembench" + depends on !BR2_MIPS_NABI32 && !BR2_MIPS_NABI64 + help + Tinymembench is a simple memory benchmark program, which + tries to measure the peak bandwidth of sequential memory + accesses and the latency of random memory accesses. + Bandwidth is measured by running different assembly code for + the aligned memory blocks and attempting different prefetch + strategies. + + https://github.com/ssvb/tinymembench diff --git a/package/tinymembench/tinymembench.hash b/package/tinymembench/tinymembench.hash new file mode 100644 index 00000000..c0b767e9 --- /dev/null +++ b/package/tinymembench/tinymembench.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 e37a2682065b2778f2fa7f22bd59472f5ca2191be48503952ae020b8f023f23d tinymembench-0.4.tar.gz +sha256 8ba473aced4630aee2808efe17b53e904a9d68a9b3361de491717f9a4e75da39 LICENSE diff --git a/package/tinymembench/tinymembench.mk b/package/tinymembench/tinymembench.mk new file mode 100644 index 00000000..016d680c --- /dev/null +++ b/package/tinymembench/tinymembench.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# tinymembench +# +################################################################################ + +TINYMEMBENCH_VERSION = 0.4 +TINYMEMBENCH_SITE = $(call github,ssvb,tinymembench,v$(TINYMEMBENCH_VERSION)) +TINYMEMBENCH_LICENSE = MIT +TINYMEMBENCH_LICENSE_FILES = LICENSE + +define TINYMEMBENCH_BUILD_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) +endef + +define TINYMEMBENCH_INSTALL_TARGET_CMDS + $(INSTALL) -m 0755 -D $(@D)/tinymembench \ + $(TARGET_DIR)/usr/bin/tinymembench +endef + +$(eval $(generic-package)) diff --git a/package/tinyproxy/Config.in b/package/tinyproxy/Config.in new file mode 100644 index 00000000..aec2ab81 --- /dev/null +++ b/package/tinyproxy/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_TINYPROXY + bool "tinyproxy" + depends on BR2_USE_WCHAR + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_MMU # fork() + help + Tinyproxy is a small, efficient HTTP/SSL proxy daemon released + under the GNU General Public License. Tinyproxy is very + useful in a small network setting, where a larger proxy would + be too resource intensive. + + https://tinyproxy.github.io + +comment "tinyproxy needs a toolchain w/ threads, wchar" + depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR + depends on BR2_USE_MMU diff --git a/package/tinyproxy/tinyproxy.hash b/package/tinyproxy/tinyproxy.hash new file mode 100644 index 00000000..80967415 --- /dev/null +++ b/package/tinyproxy/tinyproxy.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 a23a8f647f622f01e51b93fa882ea5a15c20e026d45c3aafa81ec579e464daf7 tinyproxy-1.10.0.tar.bz2 +sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING diff --git a/package/tinyproxy/tinyproxy.mk b/package/tinyproxy/tinyproxy.mk new file mode 100644 index 00000000..326bfa8b --- /dev/null +++ b/package/tinyproxy/tinyproxy.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# tinyproxy +# +################################################################################ + +TINYPROXY_VERSION = 1.10.0 +TINYPROXY_SITE = https://github.com/tinyproxy/tinyproxy/releases/download/$(TINYPROXY_VERSION) +TINYPROXY_SOURCE = tinyproxy-$(TINYPROXY_VERSION).tar.bz2 +TINYPROXY_LICENSE = GPL-2.0+ +TINYPROXY_LICENSE_FILES = COPYING +TINYPROXY_CPE_ID_VENDOR = tinyproxy_project +TINYPROXY_CONF_ENV = ac_cv_path_A2X=no + +$(eval $(autotools-package)) diff --git a/package/tinyssh/Config.in b/package/tinyssh/Config.in new file mode 100644 index 00000000..da19d2d4 --- /dev/null +++ b/package/tinyssh/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_TINYSSH + bool "tinyssh" + depends on BR2_USE_MMU # fork() + help + TinySSH is a minimalistic SSH server which implements only + a subset of SSHv2 features. + + https://tinyssh.org diff --git a/package/tinyssh/tinyssh.hash b/package/tinyssh/tinyssh.hash new file mode 100644 index 00000000..99ee4afa --- /dev/null +++ b/package/tinyssh/tinyssh.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 65a7dc785861a09399419a1e7c42cddf66f32dc233a33277327b11f1bd8a772c tinyssh-7e2b4025bf3a2dae4c6617e3eb39df4bcde37454.tar.gz +sha256 b5dc19477e29f4111e1c16cd89ec0782f5a07b1a30e3bdb7c155425b81b12c46 LICENCE diff --git a/package/tinyssh/tinyssh.mk b/package/tinyssh/tinyssh.mk new file mode 100644 index 00000000..6f22be6c --- /dev/null +++ b/package/tinyssh/tinyssh.mk @@ -0,0 +1,20 @@ +################################################################################ +# +# tinyssh +# +################################################################################ + +TINYSSH_VERSION = 7e2b4025bf3a2dae4c6617e3eb39df4bcde37454 +TINYSSH_SITE = $(call github,janmojzis,tinyssh,$(TINYSSH_VERSION)) +TINYSSH_LICENSE = Public Domain, CC0-1.0 +TINYSSH_LICENSE_FILES = LICENCE + +define TINYSSH_BUILD_CMDS + $(TARGET_MAKE_ENV) CC="$(TARGET_CC)" $(MAKE) -C $(@D) cross-compile +endef + +define TINYSSH_INSTALL_TARGET_CMDS + $(MAKE) DESTDIR="$(TARGET_DIR)" -C $(@D) install +endef + +$(eval $(generic-package)) diff --git a/package/tinyxml/Config.in b/package/tinyxml/Config.in new file mode 100644 index 00000000..061ff671 --- /dev/null +++ b/package/tinyxml/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_TINYXML + bool "tinyxml" + depends on BR2_INSTALL_LIBSTDCPP + help + TinyXML is a simple, small, C++ XML parser that can be + easily integrating into other programs. + + https://github.com/leethomason/tinyxml2 + +comment "tinyxml needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/tinyxml/tinyxml.hash b/package/tinyxml/tinyxml.hash new file mode 100644 index 00000000..650a3b22 --- /dev/null +++ b/package/tinyxml/tinyxml.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 8164c9ad48b9028667768a584d62f7760cfbfb90d0dd6214ad174403058da10c tinyxml-2.6.2_2.tar.gz +sha256 a65b8363834ccbe31ab7b49dcba723ed204622df30326793e0121435624c1a8d README diff --git a/package/tinyxml/tinyxml.mk b/package/tinyxml/tinyxml.mk new file mode 100644 index 00000000..15280517 --- /dev/null +++ b/package/tinyxml/tinyxml.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# tinyxml +# +################################################################################ + +TINYXML_VERSION = 2.6.2_2 +TINYXML_SITE = http://mirrors.xbmc.org/build-deps/sources +# AUTORECONF is needed because the XBMC's version of TinyXML contains a +# configure.ac which is not present in mainline. +TINYXML_AUTORECONF = YES +TINYXML_INSTALL_STAGING = YES +TINYXML_LICENSE = Zlib +TINYXML_LICENSE_FILES = README + +$(eval $(autotools-package)) diff --git a/package/tinyxml2/Config.in b/package/tinyxml2/Config.in new file mode 100644 index 00000000..2f575012 --- /dev/null +++ b/package/tinyxml2/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_TINYXML2 + bool "tinyxml2" + depends on BR2_INSTALL_LIBSTDCPP + help + TinyXML-2 is a simple, small, efficient, C++ XML parser that + can be easily integrating into other programs. + + http://www.grinninglizard.com/tinyxml2/index.html + +comment "tinyxml2 needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/tinyxml2/tinyxml2.hash b/package/tinyxml2/tinyxml2.hash new file mode 100644 index 00000000..3c59d159 --- /dev/null +++ b/package/tinyxml2/tinyxml2.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 6ce574fbb46751842d23089485ae73d3db12c1b6639cda7721bf3a7ee862012c tinyxml2-8.0.0.tar.gz +sha256 9332252e9b9e46db8285d4a3f0bf25f139bf1dca6781b956d57f2302efca6432 LICENSE.txt diff --git a/package/tinyxml2/tinyxml2.mk b/package/tinyxml2/tinyxml2.mk new file mode 100644 index 00000000..d760d54a --- /dev/null +++ b/package/tinyxml2/tinyxml2.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# tinyxml2 +# +################################################################################ + +TINYXML2_VERSION = 8.0.0 +TINYXML2_SITE = $(call github,leethomason,tinyxml2,$(TINYXML2_VERSION)) +TINYXML2_LICENSE = Zlib +TINYXML2_LICENSE_FILES = LICENSE.txt +TINYXML2_INSTALL_STAGING = YES +TINYXML2_CPE_ID_VENDOR = tinyxml2_project + +ifeq ($(BR2_STATIC_LIBS),y) +TINYXML2_CONF_OPTS += -DBUILD_STATIC_LIBS=ON +endif + +$(eval $(cmake-package)) diff --git a/package/tio/Config.in b/package/tio/Config.in new file mode 100644 index 00000000..d5d61910 --- /dev/null +++ b/package/tio/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_TIO + bool "tio" + depends on !BR2_sparc64 && !BR2_sparc + help + "tio" is a simple TTY terminal application which features a + straightforward commandline interface to easily connect to + TTY devices for basic input/output. + + https://tio.github.io/ + +# tio is disabled for sparc and sparc64 architectures because it fails +# to build with a redefinition of 'struct termio' error, with no proper +# fix or workaround for now +comment "tio is disabled for sparc and sparc64 architectures" + depends on BR2_sparc64 || BR2_sparc diff --git a/package/tio/tio.hash b/package/tio/tio.hash new file mode 100644 index 00000000..3053bd1b --- /dev/null +++ b/package/tio/tio.hash @@ -0,0 +1,5 @@ +# Locally computed: +sha256 a8f5ed6994cacb96780baa416b19e5a6d7d67e8c162a8ea4fd9eccd64984ae44 tio-1.32.tar.xz + +# Hash for license files: +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/tio/tio.mk b/package/tio/tio.mk new file mode 100644 index 00000000..31f1dfb5 --- /dev/null +++ b/package/tio/tio.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# tio +# +################################################################################ + +TIO_VERSION = 1.32 +TIO_SOURCE = tio-$(TIO_VERSION).tar.xz +TIO_SITE = https://github.com/tio/tio/releases/download/v$(TIO_VERSION) +TIO_LICENSE = GPL-2.0+ +TIO_LICENSE_FILES = COPYING + +$(eval $(autotools-package)) diff --git a/package/tk/Config.in b/package/tk/Config.in new file mode 100644 index 00000000..507b0bf9 --- /dev/null +++ b/package/tk/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_TK + bool "tk" + depends on BR2_USE_MMU # tcl + depends on BR2_TOOLCHAIN_HAS_THREADS # tcl + depends on !BR2_STATIC_LIBS # tcl + depends on BR2_PACKAGE_XORG7 + select BR2_PACKAGE_TCL + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXFT + help + A windowing toolkit for use with tcl + + http://www.tcl.tk + +comment "tk needs a toolchain w/ threads, dynamic library" + depends on BR2_USE_MMU + depends on BR2_PACKAGE_XORG7 + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/tk/tk.hash b/package/tk/tk.hash new file mode 100644 index 00000000..5fc0b6fc --- /dev/null +++ b/package/tk/tk.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 d62c371a71b4744ed830e3c21d27968c31dba74dd2c45f36b9b071e6d88eb19d tk8.6.6-src.tar.gz +sha256 2cde822b93ca16ae535c954b7dfe658b4ad10df2a193628d1b358f1765e8b198 license.terms diff --git a/package/tk/tk.mk b/package/tk/tk.mk new file mode 100644 index 00000000..102d3685 --- /dev/null +++ b/package/tk/tk.mk @@ -0,0 +1,31 @@ +################################################################################ +# +# tk +# +################################################################################ + +TK_VERSION_MAJOR = 8.6 +TK_VERSION = $(TK_VERSION_MAJOR).6 +TK_SOURCE = tk$(TK_VERSION)-src.tar.gz +TK_SITE = http://downloads.sourceforge.net/project/tcl/Tcl/$(TK_VERSION) +TK_LICENSE = TCL +TK_LICENSE_FILES = license.terms +TK_SUBDIR = unix +TK_INSTALL_STAGING = YES + +TK_DEPENDENCIES = tcl xlib_libX11 xlib_libXft + +# hopefully our strtod is not buggy +TK_CONF_ENV = tcl_cv_strtod_buggy=no + +TK_CONF_OPTS = --disable-rpath \ + --with-tcl=$(BUILD_DIR)/tcl-$(TCL_VERSION)/unix \ + --x-includes=$(STAGING_DIR)/usr/include \ + --x-libraries=$(STAGING_DIR)/usr/lib + +define TK_WISH_SYMLINK + ln -sf /usr/bin/wish$(TK_VERSION_MAJOR) $(TARGET_DIR)/usr/bin/wish +endef +TK_POST_INSTALL_TARGET_HOOKS += TK_WISH_SYMLINK + +$(eval $(autotools-package)) diff --git a/package/tmux/Config.in b/package/tmux/Config.in new file mode 100644 index 00000000..756f38a0 --- /dev/null +++ b/package/tmux/Config.in @@ -0,0 +1,19 @@ +config BR2_PACKAGE_TMUX + bool "tmux" + depends on BR2_USE_MMU # fork() + depends on BR2_USE_WCHAR # mbtowc() + depends on BR2_ENABLE_LOCALE # runtime + select BR2_PACKAGE_LIBEVENT + select BR2_PACKAGE_NCURSES + help + tmux is a terminal multiplexer, it enables a number of + terminals (or windows) to be accessed and controlled from a + single terminal. + + NOTE: tmux needs a working UTF-8 locale (BR2_GENERATE_LOCALE) + + https://tmux.github.io/ + +comment "tmux needs a toolchain w/ wchar, locale" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_ENABLE_LOCALE diff --git a/package/tmux/tmux.hash b/package/tmux/tmux.hash new file mode 100644 index 00000000..75538e09 --- /dev/null +++ b/package/tmux/tmux.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 918f7220447bef33a1902d4faff05317afd9db4ae1c9971bef5c787ac6c88386 tmux-3.1c.tar.gz +sha256 c031bd37f464c534277814f6aa38686fa023d094261d57fd2545ad592bb53ccd COPYING diff --git a/package/tmux/tmux.mk b/package/tmux/tmux.mk new file mode 100644 index 00000000..281b7d8e --- /dev/null +++ b/package/tmux/tmux.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# tmux +# +################################################################################ + +TMUX_VERSION = 3.1c +TMUX_SITE = https://github.com/tmux/tmux/releases/download/$(TMUX_VERSION) +TMUX_LICENSE = ISC +TMUX_LICENSE_FILES = COPYING +TMUX_CPE_ID_VENDOR = tmux_project +TMUX_DEPENDENCIES = libevent ncurses host-pkgconf + +# Add /usr/bin/tmux to /etc/shells otherwise some login tools like dropbear +# can reject the user connection. See man shells. +define TMUX_ADD_TMUX_TO_SHELLS + grep -qsE '^/usr/bin/tmux$$' $(TARGET_DIR)/etc/shells \ + || echo "/usr/bin/tmux" >> $(TARGET_DIR)/etc/shells +endef +TMUX_TARGET_FINALIZE_HOOKS += TMUX_ADD_TMUX_TO_SHELLS + +$(eval $(autotools-package)) diff --git a/package/tor/0001-Fix-static-linking-with-OpenSSL.patch b/package/tor/0001-Fix-static-linking-with-OpenSSL.patch new file mode 100644 index 00000000..8385c289 --- /dev/null +++ b/package/tor/0001-Fix-static-linking-with-OpenSSL.patch @@ -0,0 +1,94 @@ +From ba6b8ee5b6dee19493a150c3715b0e202440d206 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Thu, 24 Jan 2019 18:19:51 +0100 +Subject: [PATCH] Fix static linking with OpenSSL + +Adjust link order of libz to solve bug with static linking +and remove host paths when looking for openssl. + +[Vincent: + - Adapt the patch to make it apply on the new version.] +[Bernd: rebased for tor-0.2.7.6, 0.2.8.10, 0.2.9.9, 0.3.1.7, 0.3.2.10, + 0.3.4.8, 0.3.5.7, 0.4.4.5 & 0.4.5.6] +[Fabrice: fix detection of openssl functions in 0.3.5.8] +Signed-off-by: Vicente Olivert Riera +Signed-off-by: Bernd Kuhls +Signed-off-by: Fabrice Fontaine +--- + configure.ac | 4 ++-- + src/test/include.am | 8 ++++---- + src/tools/include.am | 4 ++-- + 4 files changed, 9 insertions(+), 9 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 05e1392cf..580befa6b 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1056,7 +1056,7 @@ AC_ARG_WITH(ssl-dir, + ]) + + AC_MSG_NOTICE([Now, we'll look for OpenSSL >= 1.0.1]) +-TOR_SEARCH_LIBRARY(openssl, $tryssldir, [-lssl -lcrypto $TOR_LIB_GDI $TOR_LIB_WS32 $TOR_LIB_CRYPT32], ++TOR_SEARCH_LIBRARY(openssl, $tryssldir, [-lssl -lcrypto -lz $TOR_LIB_GDI $TOR_LIB_WS32 $TOR_LIB_CRYPT32], + [#include + char *getenv(const char *);], + [struct ssl_cipher_st; +@@ -1086,7 +1086,7 @@ dnl Now check for particular openssl functions. + save_LIBS="$LIBS" + save_LDFLAGS="$LDFLAGS" + save_CPPFLAGS="$CPPFLAGS" +-LIBS="$TOR_OPENSSL_LIBS $LIBS" ++LIBS="$TOR_OPENSSL_LIBS -lz $LIBS" + LDFLAGS="$TOR_LDFLAGS_openssl $LDFLAGS" + CPPFLAGS="$TOR_CPPFLAGS_openssl $CPPFLAGS" + +diff --git a/src/test/include.am b/src/test/include.am +index ecb768957..39a622e88 100644 +--- a/src/test/include.am ++++ b/src/test/include.am +@@ -404,8 +404,8 @@ src_test_test_ntor_cl_LDFLAGS = @TOR_LDFLAGS_zlib@ $(TOR_LDFLAGS_CRYPTLIB) + src_test_test_ntor_cl_LDADD = \ + libtor.a \ + $(rust_ldadd) \ +- @TOR_ZLIB_LIBS@ @TOR_LIB_MATH@ \ +- $(TOR_LIBS_CRYPTLIB) @TOR_LIB_WS32@ @TOR_LIB_IPHLPAPI@ @TOR_LIB_SHLWAPI@ @TOR_LIB_GDI@ @TOR_LIB_USERENV@ \ ++ @TOR_LIB_MATH@ \ ++ $(TOR_LIBS_CRYPTLIB) @TOR_ZLIB_LIBS@ @TOR_LIB_WS32@ @TOR_LIB_IPHLPAPI@ @TOR_LIB_SHLWAPI@ @TOR_LIB_GDI@ @TOR_LIB_USERENV@ \ + @CURVE25519_LIBS@ @TOR_LZMA_LIBS@ @TOR_TRACE_LIBS@ + src_test_test_ntor_cl_AM_CPPFLAGS = \ + $(AM_CPPFLAGS) +@@ -414,8 +414,8 @@ + src_test_test_hs_ntor_cl_LDFLAGS = @TOR_LDFLAGS_zlib@ $(TOR_LDFLAGS_CRYPTLIB) + src_test_test_hs_ntor_cl_LDADD = \ + libtor.a \ +- @TOR_ZLIB_LIBS@ @TOR_LIB_MATH@ \ +- $(TOR_LIBS_CRYPTLIB) @TOR_LIB_WS32@ @TOR_LIB_IPHLPAPI@ @TOR_LIB_SHLWAPI@ @TOR_LIB_GDI@ \ ++ @TOR_LIB_MATH@ \ ++ $(TOR_LIBS_CRYPTLIB) @TOR_ZLIB_LIBS@ @TOR_LIB_WS32@ @TOR_LIB_IPHLPAPI@ @TOR_LIB_SHLWAPI@ @TOR_LIB_GDI@ \ + @CURVE25519_LIBS@ @TOR_TRACE_LIBS@ + src_test_test_hs_ntor_cl_AM_CPPFLAGS = \ + $(AM_CPPFLAGS) +diff --git a/src/tools/include.am b/src/tools/include.am +index f7aa7e0d1..4c4e8aa7a 100644 +--- a/src/tools/include.am ++++ b/src/tools/include.am +@@ -35,7 +35,7 @@ src_tools_tor_gencert_LDADD = \ + $(TOR_CRYPTO_LIBS) \ + $(TOR_UTIL_LIBS) \ + $(rust_ldadd) \ +- @TOR_LIB_MATH@ @TOR_ZLIB_LIBS@ $(TOR_LIBS_CRYPTLIB) \ ++ @TOR_LIB_MATH@ $(TOR_LIBS_CRYPTLIB) @TOR_ZLIB_LIBS@ \ + @TOR_LIB_WS32@ @TOR_LIB_IPHLPAPI@ @TOR_LIB_SHLWAPI@ @TOR_LIB_GDI@ @TOR_LIB_USERENV@ @CURVE25519_LIBS@ + endif + +@@ -45,7 +45,7 @@ src_tools_tor_print_ed_signing_cert_LDADD = \ + src/trunnel/libor-trunnel.a \ + $(TOR_CRYPTO_LIBS) \ + $(TOR_UTIL_LIBS) \ +- @TOR_LIB_MATH@ $(TOR_LIBS_CRYPTLIB) \ ++ @TOR_LIB_MATH@ $(TOR_LIBS_CRYPTLIB) @TOR_ZLIB_LIBS@ \ + @TOR_LIB_WS32@ @TOR_LIB_USERENV@ @TOR_LIB_SHLWAPI@ @TOR_LIB_GDI@ + + if USE_NSS +-- +2.20.1 diff --git a/package/tor/Config.in b/package/tor/Config.in new file mode 100644 index 00000000..52009267 --- /dev/null +++ b/package/tor/Config.in @@ -0,0 +1,19 @@ +config BR2_PACKAGE_TOR + bool "tor" + depends on BR2_USE_MMU # fork() + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_PACKAGE_LIBEVENT + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_ZLIB + help + Tor is free software and an open network that helps you + defend against traffic analysis, a form of network + surveillance that threatens personal freedom and privacy, + confidential business activities and relationships, and + state security. + + https://www.torproject.org + +comment "tor needs a toolchain w/ NPTL" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL diff --git a/package/tor/tor.hash b/package/tor/tor.hash new file mode 100644 index 00000000..8622281c --- /dev/null +++ b/package/tor/tor.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 f304e456102ed26c39e5f16ece2115585398cdb4e67455139c86ea43cdf70856 tor-0.4.5.9.tar.gz +sha256 47b54ed17e8fdcab3c44729a1789a09b208f9a63a845a7e50def9df729eebad0 LICENSE diff --git a/package/tor/tor.mk b/package/tor/tor.mk new file mode 100644 index 00000000..f6aeba2d --- /dev/null +++ b/package/tor/tor.mk @@ -0,0 +1,77 @@ +################################################################################ +# +# tor +# +################################################################################ + +TOR_VERSION = 0.4.5.9 +TOR_SITE = https://dist.torproject.org +TOR_LICENSE = BSD-3-Clause +TOR_LICENSE_FILES = LICENSE +TOR_CPE_ID_VENDOR = torproject +TOR_SELINUX_MODULES = tor +TOR_DEPENDENCIES = libevent openssl zlib +TOR_AUTORECONF = YES + +TOR_CONF_OPTS = \ + --disable-gcc-hardening \ + --disable-unittests \ + --with-libevent-dir=$(STAGING_DIR)/usr \ + --with-openssl-dir=$(STAGING_DIR)/usr \ + --with-zlib-dir=$(STAGING_DIR)/usr + +ifeq ($(BR2_STATIC_LIBS),y) +TOR_CONF_OPTS += \ + --enable-static-libevent \ + --enable-static-openssl \ + --enable-static-tor \ + --enable-static-zlib +endif + +ifeq ($(BR2_PACKAGE_LIBCAP),y) +TOR_DEPENDENCIES += libcap +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD),y) +TOR_CONF_OPTS += --enable-systemd +TOR_DEPENDENCIES += host-pkgconf systemd +else +TOR_CONF_OPTS += --disable-systemd +endif + +ifeq ($(BR2_PACKAGE_XZ),y) +TOR_CONF_OPTS += --enable-lzma +TOR_DEPENDENCIES += host-pkgconf xz +else +TOR_CONF_OPTS += --disable-lzma +endif + +ifeq ($(BR2_PACKAGE_ZSTD),y) +TOR_CONF_OPTS += --enable-zstd +TOR_DEPENDENCIES += host-pkgconf zstd +else +TOR_CONF_OPTS += --disable-zstd +endif + +ifeq ($(BR2_arm)$(BR2_armeb)$(BR2_i386)$(BR2_x86_64)$(BR2_PACKAGE_LIBSECCOMP),yy) +TOR_CONF_OPTS += --enable-seccomp +TOR_DEPENDENCIES += libseccomp +else +TOR_CONF_OPTS += --disable-seccomp +endif + +# uses gnu extensions +TOR_CONF_ENV = ac_cv_prog_cc_c99='-std=gnu99' + +ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) +TOR_CONF_ENV += LIBS=-latomic +endif + +define TOR_INSTALL_CONF + $(INSTALL) -D -m 644 $(@D)/src/config/torrc.minimal \ + $(TARGET_DIR)/etc/tor/torrc +endef + +TOR_POST_INSTALL_TARGET_HOOKS += TOR_INSTALL_CONF + +$(eval $(autotools-package)) diff --git a/package/tovid/0001-manpage.patch b/package/tovid/0001-manpage.patch new file mode 100644 index 00000000..21669c9d --- /dev/null +++ b/package/tovid/0001-manpage.patch @@ -0,0 +1,25 @@ +setup.py: disable man page to kill txt2tags SVN checkout dependency + +Signed-off-by: Steve Kenton + ++diff -pruN tovid-3534.ori/setup.py tovid-3534/setup.py +--- tovid-3534.ori/setup.py 2013-04-14 09:52:08.000000000 -0500 ++++ tovid-3534/setup.py 2015-03-21 09:39:14.880173176 -0500 +@@ -186,7 +186,7 @@ class BuildTovidInit (Command): + + # Build tovid-init with regular 'build' command + build.sub_commands.append(('build_tovid_init', None)) +-build.sub_commands.append(('build_docs', None)) ++#build.sub_commands.append(('build_docs', None)) + + # The actual setup + setup( +@@ -244,8 +244,6 @@ setup( + 'src/tovid.ini', + ]), + # Manual page +- ('share/man/man1', +- ['docs/man/tovid.1']), + # Desktop shortcut + ('share/applications', + ['tovidgui.desktop', diff --git a/package/tovid/Config.in b/package/tovid/Config.in new file mode 100644 index 00000000..f972e188 --- /dev/null +++ b/package/tovid/Config.in @@ -0,0 +1,50 @@ +config BR2_PACKAGE_TOVID + bool "tovid" + depends on BR2_USE_MMU # fork() + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_USE_WCHAR + depends on BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3 + depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # mpv + depends on BR2_TOOLCHAIN_HAS_ATOMIC # mpv + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # mpv + depends on !BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC # mpv + # The below dependencies are runtime dependencies only + select BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # procps_ng + select BR2_PACKAGE_DVDAUTHOR + select BR2_PACKAGE_DVDRW_TOOLS + select BR2_PACKAGE_FFMPEG + select BR2_PACKAGE_IMAGEMAGICK + select BR2_PACKAGE_JPEG + select BR2_PACKAGE_MJPEGTOOLS + select BR2_PACKAGE_MPV + select BR2_PACKAGE_PROCPS_NG # pgrep and pkill + select BR2_PACKAGE_SOX + help + The tovid suite, also known simply as tovid, is a collection + of shell and Python scripts for creating DVDs and + (S)VCDs. It is pronounced "to vid" (because it converts to + video disc formats). + + http://tovid.wikia.com/wiki/Installing_tovid + +comment "tovid needs a toolchain w/ threads, C++, wchar, gcc >= 4.9" + depends on BR2_USE_MMU + depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_HAS_ATOMIC + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on !BR2_TOOLCHAIN_HAS_THREADS \ + || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 \ + || !BR2_INSTALL_LIBSTDCPP \ + || !BR2_USE_WCHAR + depends on !BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC + +comment "tovid depends on python or python3" + depends on !BR2_PACKAGE_PYTHON && !BR2_PACKAGE_PYTHON3 + depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_HAS_ATOMIC + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + depends on !BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC diff --git a/package/tovid/tovid.hash b/package/tovid/tovid.hash new file mode 100644 index 00000000..89d0461a --- /dev/null +++ b/package/tovid/tovid.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 c03a746a3592a656bab0be4045da114a4231eb0f858d6c18503dac64049fbe48 tovid-87c676f4aadb7303d2cd921380b054bafa4b85bb.tar.gz +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/tovid/tovid.mk b/package/tovid/tovid.mk new file mode 100644 index 00000000..4c5c60aa --- /dev/null +++ b/package/tovid/tovid.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# tovid +# +################################################################################ + +TOVID_VERSION = 87c676f4aadb7303d2cd921380b054bafa4b85bb +TOVID_SITE = $(call github,tovid-suite,tovid,$(TOVID_VERSION)) +TOVID_LICENSE = GPL-2.0+ +TOVID_LICENSE_FILES = COPYING +TOVID_SETUP_TYPE = distutils + +$(eval $(python-package)) diff --git a/package/tpm-tools/Config.in b/package/tpm-tools/Config.in new file mode 100644 index 00000000..ca70adc8 --- /dev/null +++ b/package/tpm-tools/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_TPM_TOOLS + bool "tpm-tools" + depends on BR2_TOOLCHAIN_HAS_THREADS # trousers + depends on !BR2_STATIC_LIBS # trousers + select BR2_PACKAGE_TROUSERS + select BR2_PACKAGE_OPENSSL + help + Tools to manage and diagnose a TPM + + http://trousers.sourceforge.net/ + +comment "tpm-tools needs a toolchain w/ threads, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/tpm-tools/tpm-tools.hash b/package/tpm-tools/tpm-tools.hash new file mode 100644 index 00000000..a2da230a --- /dev/null +++ b/package/tpm-tools/tpm-tools.hash @@ -0,0 +1,7 @@ +# http://sourceforge.net/projects/trousers/files/tpm-tools/1.3.9.1/ +sha1 c35cb031c6b5220dd1c8a03995654fdd12aa3031 tpm-tools-1.3.9.1.tar.gz +md5 1532293aa632a0eaa7e60df87c779855 tpm-tools-1.3.9.1.tar.gz + +# Locally calculated +sha256 9cb714e2650826e2e932f65bc0ba9d61b927dc5fea47f2c2a2b64f0fdfcbfa68 tpm-tools-1.3.9.1.tar.gz +sha256 7b47225a5b77cb7825efc6a4d7e0ac57864c790542cf92f5080ec2bf310c00e5 LICENSE diff --git a/package/tpm-tools/tpm-tools.mk b/package/tpm-tools/tpm-tools.mk new file mode 100644 index 00000000..623e06fb --- /dev/null +++ b/package/tpm-tools/tpm-tools.mk @@ -0,0 +1,23 @@ +################################################################################ +# +# tpm-tools +# +################################################################################ + +TPM_TOOLS_VERSION = 1.3.9.1 +TPM_TOOLS_SITE = http://downloads.sourceforge.net/project/trousers/tpm-tools/$(TPM_TOOLS_VERSION) +TPM_TOOLS_LICENSE = Common Public License Version 1.0 +TPM_TOOLS_LICENSE_FILES = LICENSE +TPM_TOOLS_DEPENDENCIES = trousers openssl $(TARGET_NLS_DEPENDENCIES) + +TPM_TOOLS_CONF_OPTS = --disable-pkcs11-support + +ifeq ($(BR2_PACKAGE_LIBICONV),y) +TPM_TOOLS_CONF_ENV += LIBS='-liconv' +endif + +ifeq ($(BR2_arc770d)$(BR2_arc750d),y) +TPM_TOOLS_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -mno-compact-casesi" +endif + +$(eval $(autotools-package)) diff --git a/package/tpm2-abrmd/Config.in b/package/tpm2-abrmd/Config.in new file mode 100644 index 00000000..0c60db80 --- /dev/null +++ b/package/tpm2-abrmd/Config.in @@ -0,0 +1,28 @@ +config BR2_PACKAGE_TPM2_ABRMD + bool "tpm2-abrmd" + depends on BR2_USE_WCHAR # libglib2 + depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 + depends on BR2_USE_MMU # libglib2 + depends on BR2_PACKAGE_LIBOPENSSL_ARCH_SUPPORTS # tpm2-tss + depends on !BR2_STATIC_LIBS # tpm2-tss + select BR2_PACKAGE_LIBGLIB2 + select BR2_PACKAGE_TPM2_TSS + help + A system daemon implementing the TPM2 access broker (TAB) & + Resource Manager (RM) spec from the TCG. It should be started + during the OS boot process. Communication between the daemon + and clients using the TPM is done with a combination of DBus + and Unix pipes. + + The package also provides a client library for interacting + with the daemon via TPM Command Transmission Interface (TCTI). + It is intended for use with the SAPI library (libtss2-sys) + like any other TCTI. + + https://github.com/tpm2-software/tpm2-abrmd + +comment "tpm2-abrmd needs a toolchain w/ dynamic library, wchar, threads" + depends on BR2_USE_MMU + depends on BR2_PACKAGE_LIBOPENSSL_ARCH_SUPPORTS + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \ + BR2_STATIC_LIBS diff --git a/package/tpm2-abrmd/S80tpm2-abrmd b/package/tpm2-abrmd/S80tpm2-abrmd new file mode 100644 index 00000000..6a0bef0a --- /dev/null +++ b/package/tpm2-abrmd/S80tpm2-abrmd @@ -0,0 +1,74 @@ +#!/bin/sh + +my_name="$0" + +check_required_files() { + [ -f "$1" ] || { + echo "$my_name: $1 is missing" + exit 1 + } +} + +check_device() { + ls -1 /dev/tpm[0-9]* > /dev/null 2>&1 || { + echo "device driver not loaded, skipping." + exit 0 + } + chown tss:tss /dev/tpm[0-9]* && chmod 600 /dev/tpm* +} + +rm_stale_pidfile() { + if [ -e "$1" ]; then + exe="/proc/$(cat "$1")/exe" + { [ -s "$exe" ] && [ "$(readlink -f "$exe")" = "$2" ]; } || rm -f "$1" + fi +} + +start() { + printf "Starting tpm2-abrmd: " + check_device + rm_stale_pidfile /var/run/tpm2-abrmd.pid /usr/sbin/tpm2-abrmd + start-stop-daemon -S -q -o -b -m -p /var/run/tpm2-abrmd.pid -c tss:tss -x /usr/sbin/tpm2-abrmd -- ${DAEMON_OPTS} || { + echo "FAIL" + exit 1 + } + pidof /usr/sbin/tpm2-abrmd > /var/run/tpm2-abrmd.pid + echo "OK" +} + +stop() { + printf "Stopping tpm2-abrmd: " + start-stop-daemon -K -q -o -p /var/run/tpm2-abrmd.pid -u tss -x /usr/sbin/tpm2-abrmd || { + echo "FAIL" + exit 1 + } + rm_stale_pidfile /var/run/tpm2-abrmd.pid /usr/sbin/tpm2-abrmd + echo "OK" +} + +check_required_files /etc/dbus-1/system.d/tpm2-abrmd.conf + +# defaults +DAEMON_OPTS="--tcti=device --logger=syslog --max-connections=20" + +# Read configuration variable file if it is present +[ -r /etc/default/tpm2-abrmd ] && . /etc/default/tpm2-abrmd + +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart|reload) + stop + sleep 1 + start + ;; + *) + echo "Usage: tpm2-abrmd {start|stop|restart|reload}" >&2 + exit 1 +esac + +exit 0 diff --git a/package/tpm2-abrmd/tpm2-abrmd.hash b/package/tpm2-abrmd/tpm2-abrmd.hash new file mode 100644 index 00000000..1c6e7390 --- /dev/null +++ b/package/tpm2-abrmd/tpm2-abrmd.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 1e587808c6739079d59f124d9c1a0058f8d34dd84f1f656c946667fa0a181c48 tpm2-abrmd-2.3.3.tar.gz +sha256 18c1bf4b1ba1fb2c4ffa7398c234d83c0d55475298e470ae1e5e3a8a8bd2e448 LICENSE diff --git a/package/tpm2-abrmd/tpm2-abrmd.mk b/package/tpm2-abrmd/tpm2-abrmd.mk new file mode 100644 index 00000000..0584ba92 --- /dev/null +++ b/package/tpm2-abrmd/tpm2-abrmd.mk @@ -0,0 +1,35 @@ +################################################################################ +# +# tpm2-abrmd +# +################################################################################ + +TPM2_ABRMD_VERSION = 2.3.3 +TPM2_ABRMD_SITE = https://github.com/tpm2-software/tpm2-abrmd/releases/download/$(TPM2_ABRMD_VERSION) +TPM2_ABRMD_LICENSE = BSD-2-Clause +TPM2_ABRMD_LICENSE_FILES = LICENSE +TPM2_ABRMD_INSTALL_STAGING = YES +TPM2_ABRMD_DEPENDENCIES = libglib2 tpm2-tss host-pkgconf +TPM2_ABRMD_CONF_OPTS = \ + --disable-defaultflags \ + --with-systemdsystemunitdir=$(if $(BR2_INIT_SYSTEMD),/usr/lib/systemd/system,no) \ + --with-udevrulesdir=$(if $(BR2_PACKAGE_HAS_UDEV),/usr/lib/udev/rules.d,no) + +# uses C99 code but forgets to pass -std=c99 when --disable-defaultflags is used +TPM2_ABRMD_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -std=c99" + +define TPM2_ABRMD_INSTALL_INIT_SYSTEMD + $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D) DESTDIR=$(TARGET_DIR) \ + install-systemdpresetDATA install-systemdsystemunitDATA +endef + +define TPM2_ABRMD_INSTALL_INIT_SYSV + $(INSTALL) -D -m 0755 $(TPM2_ABRMD_PKGDIR)/S80tpm2-abrmd \ + $(TARGET_DIR)/etc/init.d/S80tpm2-abrmd +endef + +define TPM2_ABRMD_USERS + tss -1 tss -1 * - - - TPM2 Access Broker & Resource Management daemon +endef + +$(eval $(autotools-package)) diff --git a/package/tpm2-pkcs11/Config.in b/package/tpm2-pkcs11/Config.in new file mode 100644 index 00000000..ec82d72a --- /dev/null +++ b/package/tpm2-pkcs11/Config.in @@ -0,0 +1,17 @@ +config BR2_PACKAGE_TPM2_PKCS11 + bool "tpm2-pkcs11" + depends on BR2_PACKAGE_LIBOPENSSL_ARCH_SUPPORTS # tpm2-tss + depends on !BR2_STATIC_LIBS # tpm2-tss + depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_LIBYAML + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_SQLITE + select BR2_PACKAGE_TPM2_TSS + help + A PKCS#11 interface for TPM2 hardware + + https://github.com/tpm2-software/tpm2-pkcs11 + +comment "tpm2-pkcs11 needs a toolchain w/ dynamic library, threads" + depends on BR2_PACKAGE_LIBOPENSSL_ARCH_SUPPORTS + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/tpm2-pkcs11/tpm2-pkcs11.hash b/package/tpm2-pkcs11/tpm2-pkcs11.hash new file mode 100644 index 00000000..16dd9166 --- /dev/null +++ b/package/tpm2-pkcs11/tpm2-pkcs11.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 13425c34358ec798d333743099b9aec5e42f6a4653c4c0e40eb075681f369687 tpm2-pkcs11-1.5.0.tar.gz +sha256 793aa007f793458434d7cc60b1c827053a399308658b32fcaa6023802adc22e1 LICENSE diff --git a/package/tpm2-pkcs11/tpm2-pkcs11.mk b/package/tpm2-pkcs11/tpm2-pkcs11.mk new file mode 100644 index 00000000..3acce077 --- /dev/null +++ b/package/tpm2-pkcs11/tpm2-pkcs11.mk @@ -0,0 +1,46 @@ +################################################################################ +# +# tpm2-pkcs11 +# +################################################################################ + +TPM2_PKCS11_VERSION = 1.5.0 +TPM2_PKCS11_SITE = https://github.com/tpm2-software/tpm2-pkcs11/releases/download/$(TPM2_PKCS11_VERSION) +TPM2_PKCS11_LICENSE = BSD-2-Clause +TPM2_PKCS11_LICENSE_FILES = LICENSE +TPM2_PKCS11_DEPENDENCIES = host-pkgconf libyaml openssl sqlite tpm2-tss + +TPM2_PKCS11_CONF_OPTS += \ + --disable-hardening + +# Fix tpm.c:746:5: error: 'for' loop initial declarations are only allowed in C99 mode +# Fix implicit declaration of function 'strnlen' +TPM2_PKCS11_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -std=gnu99" + +# do not build man pages +TPM2_PKCS11_CONF_ENV += ac_cv_prog_PANDOC='' + +# tpm2-pkcs11 checks for tpm2-tools programs and errors out if not +# found, even though they are only used by the (unused in Buildroot) +# python-based tools +TPM2_PKCS11_CONF_ENV += \ + ac_cv_prog_tpm2_createprimary=yes \ + ac_cv_prog_tpm2_create=yes \ + ac_cv_prog_tpm2_evictcontrol=yes \ + ac_cv_prog_tpm2_readpublic=yes \ + ac_cv_prog_tpm2_load=yes \ + ac_cv_prog_tpm2_loadexternal=yes \ + ac_cv_prog_tpm2_unseal=yes \ + ac_cv_prog_tpm2_encryptdecrypt=yes \ + ac_cv_prog_tpm2_sign=yes \ + ac_cv_prog_tpm2_getcap=yes \ + ac_cv_prog_tpm2_import=yes \ + ac_cv_prog_tpm2_changeauth=yes + +ifeq ($(BR2_PACKAGE_P11_KIT),y) +TPM2_PKCS11_DEPENDENCIES += p11-kit +TPM2_PKCS11_CONF_OPTS += \ + --with-p11kitconfigdir=/usr/share/p11-kit/modules +endif + +$(eval $(autotools-package)) diff --git a/package/tpm2-tools/0001-tpm2_import-fix-fixed-AES-key-CVE-2021-3565.patch b/package/tpm2-tools/0001-tpm2_import-fix-fixed-AES-key-CVE-2021-3565.patch new file mode 100644 index 00000000..c0a43325 --- /dev/null +++ b/package/tpm2-tools/0001-tpm2_import-fix-fixed-AES-key-CVE-2021-3565.patch @@ -0,0 +1,47 @@ +From c069e4f179d5e6653a84fb236816c375dca82515 Mon Sep 17 00:00:00 2001 +From: William Roberts +Date: Fri, 21 May 2021 12:22:31 -0500 +Subject: [PATCH] tpm2_import: fix fixed AES key CVE-2021-3565 + +tpm2_import used a fixed AES key for the inner wrapper, which means that +a MITM attack would be able to unwrap the imported key. Even the +use of an encrypted session will not prevent this. The TPM only +encrypts the first parameter which is the fixed symmetric key. + +To fix this, ensure the key size is 16 bytes or bigger and use +OpenSSL to generate a secure random AES key. + +Fixes: #2738 + +Signed-off-by: William Roberts +Signed-off-by: Peter Korsgaard +--- + tools/tpm2_import.c | 12 +++++++++++- + 1 file changed, 11 insertions(+), 1 deletion(-) + +diff --git a/tools/tpm2_import.c b/tools/tpm2_import.c +index cfb6f207..f44326c8 100644 +--- a/tools/tpm2_import.c ++++ b/tools/tpm2_import.c +@@ -118,7 +118,17 @@ static tool_rc key_import(ESYS_CONTEXT *ectx, TPM2B_PUBLIC *parent_pub, + TPM2B_DATA enc_sensitive_key = { + .size = parent_pub->publicArea.parameters.rsaDetail.symmetric.keyBits.sym / 8 + }; +- memset(enc_sensitive_key.buffer, 0xFF, enc_sensitive_key.size); ++ ++ if(enc_sensitive_key.size < 16) { ++ LOG_ERR("Calculated wrapping keysize is less than 16 bytes, got: %u", enc_sensitive_key.size); ++ return tool_rc_general_error; ++ } ++ ++ int ossl_rc = RAND_bytes(enc_sensitive_key.buffer, enc_sensitive_key.size); ++ if (ossl_rc != 1) { ++ LOG_ERR("RAND_bytes failed: %s", ERR_error_string(ERR_get_error(), NULL)); ++ return tool_rc_general_error; ++ } + + /* + * Calculate the object name. +-- +2.20.1 + diff --git a/package/tpm2-tools/Config.in b/package/tpm2-tools/Config.in new file mode 100644 index 00000000..642bd9e4 --- /dev/null +++ b/package/tpm2-tools/Config.in @@ -0,0 +1,24 @@ +config BR2_PACKAGE_TPM2_TOOLS + bool "tpm2-tools" + depends on BR2_PACKAGE_LIBOPENSSL_ARCH_SUPPORTS # tpm2-tss + depends on !BR2_STATIC_LIBS # tpm2-tss + select BR2_PACKAGE_LIBCURL + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_TPM2_TSS + help + TPM (Trusted Platform Module) 2.0 CLI tools based on system + API of TPM2-TSS. These tools can be used to manage keys, + perform encryption/decryption/signing/etc crypto operations, + and manage non-volatile storage through a TPM2.0 HW + implementation. + + Notice: An in-kernel resource manager is provided by the + Linux kernel since 4.12. Depending on use cases and kernel + version, the user space resource manager provided by + tpm2-abrmd may be needed. + + https://github.com/tpm2-software/tpm2-tools + +comment "tpm2-tools needs a toolchain w/ dynamic library" + depends on BR2_PACKAGE_LIBOPENSSL_ARCH_SUPPORTS + depends on BR2_STATIC_LIBS diff --git a/package/tpm2-tools/tpm2-tools.hash b/package/tpm2-tools/tpm2-tools.hash new file mode 100644 index 00000000..dd558348 --- /dev/null +++ b/package/tpm2-tools/tpm2-tools.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 175472b63d1e047c2ad38314d06c36bd734ae37e0c6abfa2a804c0d6eb3f2936 tpm2-tools-4.1.2.tar.gz +sha256 e10dce74279166bf7bc463eb6e462c2025bceb3e50cadfe865d92c1c3dc0bb21 LICENSE diff --git a/package/tpm2-tools/tpm2-tools.mk b/package/tpm2-tools/tpm2-tools.mk new file mode 100644 index 00000000..8fd912a1 --- /dev/null +++ b/package/tpm2-tools/tpm2-tools.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# tpm2-tools +# +################################################################################ + +TPM2_TOOLS_VERSION = 4.1.2 +TPM2_TOOLS_SITE = https://github.com/tpm2-software/tpm2-tools/releases/download/$(TPM2_TOOLS_VERSION) +TPM2_TOOLS_LICENSE = BSD-3-Clause +TPM2_TOOLS_LICENSE_FILES = LICENSE +TPM2_TOOLS_CPE_ID_VENDOR = tpm2-tools_project +TPM2_TOOLS_DEPENDENCIES = libcurl openssl tpm2-tss host-pkgconf + +# -fstack-protector-all and FORTIFY_SOURCE=2 is used by +# default. Disable that so the BR2_SSP_* / BR2_FORTIFY_SOURCE_* options +# in the toolchain wrapper and CFLAGS are used instead +TPM2_TOOLS_CONF_OPTS = --disable-hardening + +# do not build man pages +TPM2_TOOLS_CONF_ENV += ac_cv_prog_PANDOC='' + +$(eval $(autotools-package)) diff --git a/package/tpm2-totp/Config.in b/package/tpm2-totp/Config.in new file mode 100644 index 00000000..7f274fa1 --- /dev/null +++ b/package/tpm2-totp/Config.in @@ -0,0 +1,25 @@ +config BR2_PACKAGE_TPM2_TOTP + bool "tpm2-totp" + depends on BR2_PACKAGE_LIBOPENSSL_ARCH_SUPPORTS # tpm2-tss + depends on !BR2_STATIC_LIBS # tpm2-tss + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM # glibc < 2.20 + select BR2_PACKAGE_LIBQRENCODE + select BR2_PACKAGE_TPM2_TSS + help + This is a reimplementation of Matthew Garrett's tpmtotp + software for TPM 2.0 using the tpm2-tss software stack. Its + purpose is to attest the trustworthiness of a device against + a human using time-based one-time passwords (TOTP), + facilitating the Trusted Platform Module (TPM) to bind the + TOTP secret to the known trustworthy system state. In + addition to the original tpmtotp, given the new capabilities + of in-TPM hmac calculation, the tpm2-totp's secret HMAC keys + do not have to be exported from the TPM to the CPU's RAM on + boot anymore. + + https://github.com/tpm2-software/tpm2-totp + +comment "tpm2-totp needs a toolchain w/ dynamic library" + depends on BR2_PACKAGE_LIBOPENSSL_ARCH_SUPPORTS + depends on BR2_STATIC_LIBS + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM diff --git a/package/tpm2-totp/tpm2-totp.hash b/package/tpm2-totp/tpm2-totp.hash new file mode 100644 index 00000000..a3fcb394 --- /dev/null +++ b/package/tpm2-totp/tpm2-totp.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 0b2b63cc7ea74f5a6952f2cd689896c08f6b94ee6865f48af609f9a8ac247dc1 tpm2-totp-0.2.1.tar.gz +sha256 67bc21a0bff2b0890307cfaa883bd3f5337f461eb6d8a612a015cea6d704e9ed LICENSE diff --git a/package/tpm2-totp/tpm2-totp.mk b/package/tpm2-totp/tpm2-totp.mk new file mode 100644 index 00000000..250a016a --- /dev/null +++ b/package/tpm2-totp/tpm2-totp.mk @@ -0,0 +1,25 @@ +################################################################################ +# +# tpm2-totp +# +################################################################################ + +TPM2_TOTP_VERSION = 0.2.1 +TPM2_TOTP_SITE = https://github.com/tpm2-software/tpm2-totp/releases/download/v$(TPM2_TOTP_VERSION) +TPM2_TOTP_LICENSE = BSD-3-Clause +TPM2_TOTP_LICENSE_FILES = LICENSE +TPM2_TOTP_DEPENDENCIES = libqrencode tpm2-tss host-pkgconf +TPM2_TOTP_CONF_OPTS = \ + --disable-defaultflags \ + --disable-doxygen-doc \ + --disable-plymouth \ + --without-initramfstoolsdir \ + --without-mkinitcpiodir + +# uses C99 code but forgets to pass -std=c99 when --disable-defaultflags is used +TPM2_TOTP_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -std=c99" + +# do not build man pages +TPM2_TOTP_CONF_ENV += ac_cv_path_PANDOC='' + +$(eval $(autotools-package)) diff --git a/package/tpm2-tss/0001-Temporary-fix-for-build-without-C.patch b/package/tpm2-tss/0001-Temporary-fix-for-build-without-C.patch new file mode 100644 index 00000000..812c753f --- /dev/null +++ b/package/tpm2-tss/0001-Temporary-fix-for-build-without-C.patch @@ -0,0 +1,44 @@ +From 7dc753ad27a8cd14c9b00be94ca89b847cf05ce9 Mon Sep 17 00:00:00 2001 +From: Carlos Santos +Date: Mon, 23 Dec 2019 08:02:19 -0300 +Subject: [PATCH] Temporary fix for build without C++ + +C++ is required only for the fuzzing tests but AC_PROG_CXX is included +by configure.ac even when fuzzing is not enabled (which we don't do on +Buildroot). + +The patch applied upstream had issues and was reverted[1]. Use a local +patch to solve the problem temporaryly. + +Fixes: + http://autobuild.buildroot.net/results/13f5e37b47b255da4158bec34e5459136f7e60d4 + http://autobuild.buildroot.net/results/1c26db2509c79e00c0de1165945277eaa57b149f + http://autobuild.buildroot.net/results/b7b6b7b7aca79e847b442cbd2305427d91fe5d70 + http://autobuild.buildroot.net/results/1cd5a82a0e799aa5027e2e2c03b246332cc3a15d + http://autobuild.buildroot.net/results/d7ec878907f714377c83e9a496e97cbf9382d787 + http://autobuild.buildroot.net/results/1c7f0c1b3ce4871cd87bd6059b1f0a6dc4e74a9c + http://autobuild.buildroot.net/results/196b81d580325607c8da90beeb79e1f6b8ab8b47 + http://autobuild.buildroot.net/results/f90f7b4ac710b56686635f8ae27059c11b963e47 + +1. https://github.com/tpm2-software/tpm2-tss/commit/60c26e4c4faba6ba12469485653e17092b510840 + +Signed-off-by: Carlos Santos +--- + configure.ac | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index ff59dd7c..3e4028fb 100755 +--- a/configure.ac ++++ b/configure.ac +@@ -26,7 +26,6 @@ AX_IS_RELEASE(dash-version) + AX_CHECK_ENABLE_DEBUG([info]) + + AC_PROG_CC +-AC_PROG_CXX + AC_PROG_LN_S + AC_USE_SYSTEM_EXTENSIONS + LT_INIT() +-- +2.26.2 + diff --git a/package/tpm2-tss/Config.in b/package/tpm2-tss/Config.in new file mode 100644 index 00000000..b1ab00dd --- /dev/null +++ b/package/tpm2-tss/Config.in @@ -0,0 +1,60 @@ +config BR2_PACKAGE_TPM2_TSS + bool "tpm2-tss" + depends on !BR2_STATIC_LIBS # dlfcn.h + depends on BR2_PACKAGE_LIBOPENSSL_ARCH_SUPPORTS + select BR2_PACKAGE_LIBURIPARSER + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_OPENSSL_FORCE_LIBOPENSSL + help + OSS implementation of the Trusted Computing Group's (TCG) TPM2 + Software Stack (TSS). This stack consists of the following + layers from top to bottom: + + * System API (SAPI) as described in the system level API and + TPM command transmission interface specification. This API + is a 1-to-1 mapping of the TPM2 commands documented in Part + 3 of the TPM2 specification. Additionally there are + asynchronous versions of each command. These asynchronous + variants may be useful for integration into event-driven + programming environments. Both the synchronous and + asynchronous API are exposed through a single library: + libtss2-sys. + + * TPM Command Transmission Interface (TCTI) that is described + in the same specification. This API provides a standard + interface to transmit / receive TPM command / response + buffers. It is expected that any number of libraries + implementing the TCTI API will be implemented as a way to + abstract various platform specific IPC mechanisms. Currently + this repository provides two TCTI implementations: + libtss2-tcti-device and libtss2-tcti-mssim. The prior should + be used for direct access to the TPM through the Linux + kernel driver. The later implements the protocol exposed by + the Microsoft software TPM2 simulator. + + https://github.com/tpm2-software/tpm2-tss + +if BR2_PACKAGE_TPM2_TSS + +config BR2_PACKAGE_TPM2_TSS_FAPI + bool "fapi support" + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # json-c + select BR2_PACKAGE_JSON_C + select BR2_PACKAGE_LIBCURL + help + This option allows to enable Feature API (FAPI). Feature + API (FAPI) as described in the "TSS 2.0 Feature API + Specification" along with "TSS 2.0 JSON Data Types and + Policy Language Specification" This API is designed to be + very high-level API, intended to make programming with the + TPM as simple as possible. The API functions are exposed + through a single library: libtss2-fapi. + + https://trustedcomputinggroup.org/wp-content/uploads/TSS_FAPI_v0.94_r04_pubrev.pdf + https://trustedcomputinggroup.org/wp-content/uploads/TSS_JSON_Policy_v0.7_r04_pubrev.pdf + +endif + +comment "tpm2-tss needs a toolchain w/ dynamic library" + depends on BR2_PACKAGE_LIBOPENSSL_ARCH_SUPPORTS + depends on BR2_STATIC_LIBS diff --git a/package/tpm2-tss/tpm2-tss.hash b/package/tpm2-tss/tpm2-tss.hash new file mode 100644 index 00000000..6856fd4f --- /dev/null +++ b/package/tpm2-tss/tpm2-tss.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 78392be7309baf47f51b122f566ac915fd4d1760ea78571cba2e1484f9b5be17 tpm2-tss-3.0.3.tar.gz +sha256 18c1bf4b1ba1fb2c4ffa7398c234d83c0d55475298e470ae1e5e3a8a8bd2e448 LICENSE diff --git a/package/tpm2-tss/tpm2-tss.mk b/package/tpm2-tss/tpm2-tss.mk new file mode 100644 index 00000000..9ffbef2f --- /dev/null +++ b/package/tpm2-tss/tpm2-tss.mk @@ -0,0 +1,29 @@ +################################################################################ +# +# tpm2-tss +# +################################################################################ + +TPM2_TSS_VERSION = 3.0.3 +TPM2_TSS_SITE = https://github.com/tpm2-software/tpm2-tss/releases/download/$(TPM2_TSS_VERSION) +TPM2_TSS_LICENSE = BSD-2-Clause +TPM2_TSS_LICENSE_FILES = LICENSE +TPM2_TSS_CPE_ID_VENDOR = tpm2_software_stack_project +TPM2_TSS_CPE_ID_PRODUCT = tpm2_software_stack +TPM2_TSS_INSTALL_STAGING = YES +TPM2_TSS_DEPENDENCIES = liburiparser openssl host-pkgconf +TPM2_TSS_CONF_OPTS = --with-crypto=ossl --disable-doxygen-doc --disable-defaultflags +# 0001-configure-Only-use-CXX-when-fuzzing.patch +TPM2_TSS_AUTORECONF = YES + +# uses C99 code but forgets to pass -std=c99 when --disable-defaultflags is used +TPM2_TSS_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -std=c99" + +ifeq ($(BR2_PACKAGE_TPM2_TSS_FAPI),y) +TPM2_TSS_DEPENDENCIES += json-c libcurl +TPM2_TSS_CONF_OPTS += --enable-fapi +else +TPM2_TSS_CONF_OPTS += --disable-fapi +endif + +$(eval $(autotools-package)) diff --git a/package/trace-cmd/0001-trace-cmd-libtracecmd-API-cleanup.patch b/package/trace-cmd/0001-trace-cmd-libtracecmd-API-cleanup.patch new file mode 100644 index 00000000..a0dee210 --- /dev/null +++ b/package/trace-cmd/0001-trace-cmd-libtracecmd-API-cleanup.patch @@ -0,0 +1,1486 @@ +From 4b6e124d8b5a0dfd21aedf21d2c347fc5f0705a2 Mon Sep 17 00:00:00 2001 +From: "Tzvetomir Stoyanov (VMware)" +Date: Thu, 12 Nov 2020 13:52:08 +0200 +Subject: [PATCH] trace-cmd: libtracecmd API cleanup + +The tracecmd library is used by trace-cmd and KernelShark applications. +All APIs, that are not used by KernelShark are removed from trace-cmd.h. +This is the first step to cleanup the library APIs and dependencies. + +Link: https://lore.kernel.org/linux-trace-devel/20201112115208.1250789-3-tz.stoyanov@gmail.com + +Signed-off-by: Tzvetomir Stoyanov (VMware) +Signed-off-by: Steven Rostedt (VMware) +[Retrieved from: +https://git.kernel.org/pub/scm/utils/trace-cmd/trace-cmd.git/commit/?id=4b6e124d8b5a0dfd21aedf21d2c347fc5f0705a2] +Signed-off-by: Fabrice Fontaine +--- + Makefile | 2 +- + include/trace-cmd/trace-cmd.h | 488 +----------------- + include/trace-cmd/trace-filter-hash.h | 64 --- + include/trace-cmd/trace-hash.h | 55 -- + include/trace-cmd/trace-msg.h | 15 - + .../include/private/trace-cmd-private.h | 480 +++++++++++++++++ + .../include/private/trace-filter-hash.h | 64 +++ + lib/trace-cmd/include/private/trace-hash.h | 55 ++ + lib/trace-cmd/include/private/trace-msg.h | 15 + + lib/trace-cmd/include/trace-cmd-local.h | 2 + + lib/trace-cmd/trace-ftrace.c | 2 +- + lib/trace-cmd/trace-hooks.c | 2 +- + lib/trace-cmd/trace-recorder.c | 2 +- + lib/trace-cmd/trace-timesync.c | 2 +- + lib/trace-cmd/trace-util.c | 2 +- + lib/traceevent/plugins/plugin_python_loader.c | 3 +- + python/ctracecmd.i | 1 + + tracecmd/include/trace-local.h | 2 +- + 18 files changed, 637 insertions(+), 619 deletions(-) + delete mode 100644 include/trace-cmd/trace-filter-hash.h + delete mode 100644 include/trace-cmd/trace-hash.h + delete mode 100644 include/trace-cmd/trace-msg.h + create mode 100644 lib/trace-cmd/include/private/trace-cmd-private.h + create mode 100644 lib/trace-cmd/include/private/trace-filter-hash.h + create mode 100644 lib/trace-cmd/include/private/trace-hash.h + create mode 100644 lib/trace-cmd/include/private/trace-msg.h + +diff --git a/Makefile b/Makefile +index b034042..6ef6936 100644 +--- a/Makefile ++++ b/Makefile +@@ -224,6 +224,7 @@ INCLUDES += -I$(src)/include/trace-cmd + INCLUDES += -I$(src)/include/tracefs + INCLUDES += -I$(src)/lib/traceevent/include + INCLUDES += -I$(src)/lib/trace-cmd/include ++INCLUDES += -I$(src)/lib/trace-cmd/include/private + INCLUDES += -I$(src)/lib/tracefs/include + INCLUDES += -I$(src)/tracecmd/include + INCLUDES += -I$(obj)/tracecmd/include +@@ -417,7 +418,6 @@ install_libs: libs + $(Q)$(call do_install,$(src)/include/traceevent/event-parse.h,$(includedir_SQ)/traceevent) + $(Q)$(call do_install,$(src)/include/traceevent/trace-seq.h,$(includedir_SQ)/traceevent) + $(Q)$(call do_install,$(src)/include/trace-cmd/trace-cmd.h,$(includedir_SQ)/trace-cmd) +- $(Q)$(call do_install,$(src)/include/trace-cmd/trace-filter-hash.h,$(includedir_SQ)/trace-cmd) + $(Q)$(call do_install,$(src)/include/tracefs/tracefs.h,$(includedir_SQ)/tracefs) + $(Q)$(call do_install_ld,$(TRACE_LD_FILE),$(LD_SO_CONF_DIR),$(libdir_SQ)/trace-cmd) + $(Q)$(call do_install_ld,$(TRACE_LD_FILE),$(LD_SO_CONF_DIR),$(libdir_SQ)/traceevent) +diff --git a/include/trace-cmd/trace-cmd.h b/include/trace-cmd/trace-cmd.h +index 3c2b474..9751ac3 100644 +--- a/include/trace-cmd/trace-cmd.h ++++ b/include/trace-cmd/trace-cmd.h +@@ -9,497 +9,31 @@ + #include "traceevent/event-parse.h" + #include "tracefs/tracefs.h" + +-#define TRACECMD_MAGIC { 23, 8, 68 } +- +-#define ARRAY_SIZE(_a) (sizeof(_a) / sizeof((_a)[0])) +-#define __weak __attribute__((weak)) +-#define __noreturn __attribute__((noreturn)) +- +-#define TRACECMD_ERR_MSK ((unsigned long)(-1) & ~((1UL << 14) - 1)) +-#define TRACECMD_ISERR(ptr) ((unsigned long)(ptr) > TRACECMD_ERR_MSK) +-#define TRACECMD_ERROR(ret) ((void *)((unsigned long)(ret) | TRACECMD_ERR_MSK)) +-#define TRACECMD_PTR2ERR(ptr) ((unisgned long)(ptr) & ~TRACECMD_ERR_MSK) +- +-void tracecmd_parse_cmdlines(struct tep_handle *pevent, char *file, int size); +-void tracecmd_parse_proc_kallsyms(struct tep_handle *pevent, char *file, unsigned int size); +-void tracecmd_parse_ftrace_printk(struct tep_handle *pevent, char *file, unsigned int size); +-struct tep_plugin_list *trace_load_plugins(struct tep_handle *tep); +- +-int *tracecmd_add_id(int *list, int id, int len); +- +-enum { +- RINGBUF_TYPE_PADDING = 29, +- RINGBUF_TYPE_TIME_EXTEND = 30, +- RINGBUF_TYPE_TIME_STAMP = 31, +-}; +- +-void tracecmd_record_ref(struct tep_record *record); +-void free_record(struct tep_record *record); +- +-void tracecmd_set_debug(bool set_debug); +-bool tracecmd_get_debug(void); +- + struct tracecmd_input; +-struct tracecmd_output; +-struct tracecmd_recorder; +-struct hook_list; +- +-/* --- tracecmd plugins --- */ +- +-extern int tracecmd_disable_sys_plugins; +-extern int tracecmd_disable_plugins; +- +-enum tracecmd_context { +- TRACECMD_INPUT, +- TRACECMD_OUTPUT, +-}; +- +-enum tracecmd_plugin_flag { +- TRACECMD_DISABLE_SYS_PLUGINS = 1, +- TRACECMD_DISABLE_PLUGINS = 1 << 1, +-}; +- +-struct trace_plugin_context; +- +-struct trace_plugin_context * +-tracecmd_plugin_context_create(enum tracecmd_context context, void *data); +- +-void tracecmd_plugin_set_flag(struct trace_plugin_context *context, +- enum tracecmd_plugin_flag flag); +- +-#define TRACECMD_PLUGIN_LOADER tracecmd_plugin_loader +-#define TRACECMD_PLUGIN_UNLOADER tracecmd_plugin_unloader +-#define TRACECMD_PLUGIN_ALIAS tracecmd_plugin_alias +-#define _MAKE_STR(x) #x +-#define MAKE_STR(x) _MAKE_STR(x) +-#define TRACECMD_PLUGIN_LOADER_NAME MAKE_STR(TRACECMD_PLUGIN_LOADER) +-#define TRACECMD_PLUGIN_UNLOADER_NAME MAKE_STR(TRACECMD_PLUGIN_UNLOADER) +-#define TRACECMD_PLUGIN_ALIAS_NAME MAKE_STR(TRACECMD_PLUGIN_ALIAS) +- +-typedef int (*tracecmd_plugin_load_func)(struct trace_plugin_context *trace); +-typedef int (*tracecmd_plugin_unload_func)(struct trace_plugin_context *trace); +- +-struct tracecmd_input * +-tracecmd_plugin_context_input(struct trace_plugin_context *trace_context); +-struct tracecmd_output * +-tracecmd_plugin_context_output(struct trace_plugin_context *trace_context); +- +-void tracecmd_set_quiet(struct tracecmd_output *handle, bool set_quiet); +-bool tracecmd_get_quiet(struct tracecmd_output *handle); +- +-static inline int tracecmd_host_bigendian(void) +-{ +- unsigned char str[] = { 0x1, 0x2, 0x3, 0x4 }; +- unsigned int *ptr; +- +- ptr = (unsigned int *)str; +- return *ptr == 0x01020304; +-} +- +-/* --- Opening and Reading the trace.dat file --- */ +- +-enum { +- TRACECMD_OPTION_DONE, +- TRACECMD_OPTION_DATE, +- TRACECMD_OPTION_CPUSTAT, +- TRACECMD_OPTION_BUFFER, +- TRACECMD_OPTION_TRACECLOCK, +- TRACECMD_OPTION_UNAME, +- TRACECMD_OPTION_HOOK, +- TRACECMD_OPTION_OFFSET, +- TRACECMD_OPTION_CPUCOUNT, +- TRACECMD_OPTION_VERSION, +- TRACECMD_OPTION_PROCMAPS, +- TRACECMD_OPTION_TRACEID, +- TRACECMD_OPTION_TIME_SHIFT, +- TRACECMD_OPTION_GUEST, +-}; +- +-enum { +- TRACECMD_FL_IGNORE_DATE = (1 << 0), +- TRACECMD_FL_BUFFER_INSTANCE = (1 << 1), +- TRACECMD_FL_LATENCY = (1 << 2), +- TRACECMD_FL_IN_USECS = (1 << 3), +- TRACECMD_FL_FLYRECORD = (1 << 4), +-}; +- +-struct tracecmd_ftrace { +- struct tracecmd_input *handle; +- struct tep_event *fgraph_ret_event; +- int fgraph_ret_id; +- int long_size; +-}; +- +-struct tracecmd_proc_addr_map { +- unsigned long long start; +- unsigned long long end; +- char *lib_name; +-}; +- +-typedef void (*tracecmd_show_data_func)(struct tracecmd_input *handle, +- struct tep_record *record); +-typedef void (*tracecmd_handle_init_func)(struct tracecmd_input *handle, +- struct hook_list *hook, int global); + +-struct tracecmd_input *tracecmd_alloc(const char *file); +-struct tracecmd_input *tracecmd_alloc_fd(int fd); +-struct tracecmd_input *tracecmd_open(const char *file); + struct tracecmd_input *tracecmd_open_head(const char *file); +-struct tracecmd_input *tracecmd_open_fd(int fd); ++void tracecmd_close(struct tracecmd_input *handle); + int tracecmd_pair_peer(struct tracecmd_input *handle, + struct tracecmd_input *peer); +-void tracecmd_unpair_peer(struct tracecmd_input *handle); +-void tracecmd_ref(struct tracecmd_input *handle); +-void tracecmd_close(struct tracecmd_input *handle); +-int tracecmd_read_headers(struct tracecmd_input *handle); +-int tracecmd_get_parsing_failures(struct tracecmd_input *handle); +-int tracecmd_long_size(struct tracecmd_input *handle); +-int tracecmd_page_size(struct tracecmd_input *handle); +-int tracecmd_cpus(struct tracecmd_input *handle); +-int tracecmd_copy_headers(struct tracecmd_input *handle, int fd); +-void tracecmd_set_flag(struct tracecmd_input *handle, int flag); +-void tracecmd_clear_flag(struct tracecmd_input *handle, int flag); +-unsigned long tracecmd_get_flags(struct tracecmd_input *handle); +-unsigned long long tracecmd_get_traceid(struct tracecmd_input *handle); +-int tracecmd_get_guest_cpumap(struct tracecmd_input *handle, +- unsigned long long trace_id, +- const char **name, +- int *vcpu_count, const int **cpu_pid); +-unsigned long long tracecmd_get_tsync_peer(struct tracecmd_input *handle); +-int tracecmd_enable_tsync(struct tracecmd_input *handle, bool enable); +- +-void tracecmd_parse_trace_clock(struct tracecmd_input *handle, char *file, int size); +- +-int tracecmd_make_pipe(struct tracecmd_input *handle, int cpu, int fd, int cpus); +- +-int tracecmd_buffer_instances(struct tracecmd_input *handle); +-const char *tracecmd_buffer_instance_name(struct tracecmd_input *handle, int indx); +-struct tracecmd_input *tracecmd_buffer_instance_handle(struct tracecmd_input *handle, int indx); +-int tracecmd_is_buffer_instance(struct tracecmd_input *handle); +- +-void tracecmd_set_ts_offset(struct tracecmd_input *handle, long long offset); +-void tracecmd_set_ts2secs(struct tracecmd_input *handle, unsigned long long hz); +- +-void tracecmd_print_events(struct tracecmd_input *handle, const char *regex); +- +-struct hook_list *tracecmd_hooks(struct tracecmd_input *handle); + + int tracecmd_init_data(struct tracecmd_input *handle); +- +-void tracecmd_print_stats(struct tracecmd_input *handle); +-void tracecmd_print_uname(struct tracecmd_input *handle); +-void tracecmd_print_version(struct tracecmd_input *handle); +- + struct tep_record * +-tracecmd_peek_data(struct tracecmd_input *handle, int cpu); +- +-static inline struct tep_record * +-tracecmd_peek_data_ref(struct tracecmd_input *handle, int cpu) +-{ +- struct tep_record *rec = tracecmd_peek_data(handle, cpu); +- if (rec) +- rec->ref_count++; +- return rec; +-} +- ++tracecmd_read_cpu_first(struct tracecmd_input *handle, int cpu); + struct tep_record * + tracecmd_read_data(struct tracecmd_input *handle, int cpu); +- +-struct tep_record * +-tracecmd_read_prev(struct tracecmd_input *handle, struct tep_record *record); +- +-struct tep_record * +-tracecmd_read_next_data(struct tracecmd_input *handle, int *rec_cpu); +- +-struct tep_record * +-tracecmd_peek_next_data(struct tracecmd_input *handle, int *rec_cpu); +- + struct tep_record * + tracecmd_read_at(struct tracecmd_input *handle, unsigned long long offset, + int *cpu); +-struct tep_record * +-tracecmd_translate_data(struct tracecmd_input *handle, +- void *ptr, int size); +-struct tep_record * +-tracecmd_read_cpu_first(struct tracecmd_input *handle, int cpu); +-struct tep_record * +-tracecmd_read_cpu_last(struct tracecmd_input *handle, int cpu); +-int tracecmd_refresh_record(struct tracecmd_input *handle, +- struct tep_record *record); +- +-int tracecmd_set_cpu_to_timestamp(struct tracecmd_input *handle, +- int cpu, unsigned long long ts); +-void +-tracecmd_set_all_cpus_to_timestamp(struct tracecmd_input *handle, +- unsigned long long time); +- +-int tracecmd_set_cursor(struct tracecmd_input *handle, +- int cpu, unsigned long long offset); +-unsigned long long +-tracecmd_get_cursor(struct tracecmd_input *handle, int cpu); ++void free_record(struct tep_record *record); + +-int tracecmd_ftrace_overrides(struct tracecmd_input *handle, struct tracecmd_ftrace *finfo); + struct tep_handle *tracecmd_get_pevent(struct tracecmd_input *handle); +-bool tracecmd_get_use_trace_clock(struct tracecmd_input *handle); +-tracecmd_show_data_func +-tracecmd_get_show_data_func(struct tracecmd_input *handle); +-void tracecmd_set_show_data_func(struct tracecmd_input *handle, +- tracecmd_show_data_func func); +- +-int tracecmd_record_at_buffer_start(struct tracecmd_input *handle, struct tep_record *record); +-unsigned long long tracecmd_page_ts(struct tracecmd_input *handle, +- struct tep_record *record); +-unsigned int tracecmd_record_ts_delta(struct tracecmd_input *handle, +- struct tep_record *record); +- +-struct tracecmd_proc_addr_map * +-tracecmd_search_task_map(struct tracecmd_input *handle, +- int pid, unsigned long long addr); +-#ifndef SWIG +-/* hack for function graph work around */ +-extern __thread struct tracecmd_input *tracecmd_curr_thread_handle; +-#endif +- +- +-/* --- Creating and Writing the trace.dat file --- */ +- +-struct tracecmd_event_list { +- struct tracecmd_event_list *next; +- const char *glob; +-}; +- +-struct tracecmd_option; +-struct tracecmd_msg_handle; +- +-struct tracecmd_output *tracecmd_create_file_latency(const char *output_file, int cpus); +-struct tracecmd_output *tracecmd_create_file(const char *output_file, +- int cpus, char * const *cpu_data_files); +-struct tracecmd_output * +-tracecmd_create_file_glob(const char *output_file, +- int cpus, char * const *cpu_data_files, +- struct tracecmd_event_list *event_globs); +-struct tracecmd_output * +-tracecmd_create_init_file_glob(const char *output_file, +- struct tracecmd_event_list *list); +-struct tracecmd_output *tracecmd_create_init_fd(int fd); +-struct tracecmd_output * +-tracecmd_create_init_fd_glob(int fd, struct tracecmd_event_list *list); +-struct tracecmd_output * +-tracecmd_create_init_fd_msg(struct tracecmd_msg_handle *msg_handle, +- struct tracecmd_event_list *list); +-struct tracecmd_output *tracecmd_create_init_file(const char *output_file); +-struct tracecmd_output *tracecmd_create_init_file_override(const char *output_file, +- const char *tracing_dir, +- const char *kallsyms); +-struct tracecmd_option *tracecmd_add_option(struct tracecmd_output *handle, +- unsigned short id, int size, +- const void *data); +-struct tracecmd_option * +-tracecmd_add_option_v(struct tracecmd_output *handle, +- unsigned short id, const struct iovec *vector, int count); +- +-struct tracecmd_option *tracecmd_add_buffer_option(struct tracecmd_output *handle, +- const char *name, int cpus); +- +-int tracecmd_write_cpus(struct tracecmd_output *handle, int cpus); +-int tracecmd_write_options(struct tracecmd_output *handle); +-int tracecmd_append_options(struct tracecmd_output *handle); +-int tracecmd_update_option(struct tracecmd_output *handle, +- struct tracecmd_option *option, int size, +- const void *data); +-void tracecmd_output_close(struct tracecmd_output *handle); +-void tracecmd_output_free(struct tracecmd_output *handle); +-struct tracecmd_output *tracecmd_copy(struct tracecmd_input *ihandle, +- const char *file); +- +-int tracecmd_write_cpu_data(struct tracecmd_output *handle, +- int cpus, char * const *cpu_data_files); +-int tracecmd_append_cpu_data(struct tracecmd_output *handle, +- int cpus, char * const *cpu_data_files); +-int tracecmd_append_buffer_cpu_data(struct tracecmd_output *handle, +- struct tracecmd_option *option, +- int cpus, char * const *cpu_data_files); +- +-struct tracecmd_output *tracecmd_get_output_handle_fd(int fd); +- +-/* --- Reading the Fly Recorder Trace --- */ +- +-enum { +- TRACECMD_RECORD_NOSPLICE = (1 << 0), /* Use read instead of splice */ +- TRACECMD_RECORD_SNAPSHOT = (1 << 1), /* Extract from snapshot */ +- TRACECMD_RECORD_BLOCK = (1 << 2), /* Block on splice write */ +- TRACECMD_RECORD_NOBRASS = (1 << 3), /* Splice directly without a brass pipe */ +-}; +- +-void tracecmd_free_recorder(struct tracecmd_recorder *recorder); +-struct tracecmd_recorder *tracecmd_create_recorder(const char *file, int cpu, unsigned flags); +-struct tracecmd_recorder *tracecmd_create_recorder_fd(int fd, int cpu, unsigned flags); +-struct tracecmd_recorder *tracecmd_create_recorder_virt(const char *file, int cpu, unsigned flags, int trace_fd); +-struct tracecmd_recorder *tracecmd_create_recorder_maxkb(const char *file, int cpu, unsigned flags, int maxkb); +-struct tracecmd_recorder *tracecmd_create_buffer_recorder_fd(int fd, int cpu, unsigned flags, const char *buffer); +-struct tracecmd_recorder *tracecmd_create_buffer_recorder(const char *file, int cpu, unsigned flags, const char *buffer); +-struct tracecmd_recorder *tracecmd_create_buffer_recorder_maxkb(const char *file, int cpu, unsigned flags, const char *buffer, int maxkb); +- +-int tracecmd_start_recording(struct tracecmd_recorder *recorder, unsigned long sleep); +-void tracecmd_stop_recording(struct tracecmd_recorder *recorder); +-long tracecmd_flush_recording(struct tracecmd_recorder *recorder); +- +-enum tracecmd_msg_flags { +- TRACECMD_MSG_FL_USE_TCP = 1 << 0, +-}; +- +-/* for both client and server */ +-struct tracecmd_msg_handle { +- int fd; +- short cpu_count; +- short version; /* Current protocol version */ +- unsigned long flags; +- bool done; +-}; +- +-struct tracecmd_msg_handle * +- tracecmd_msg_handle_alloc(int fd, unsigned long flags); +- +-/* Closes the socket and frees the handle */ +-void tracecmd_msg_handle_close(struct tracecmd_msg_handle *msg_handle); +- +-/* for clients */ +-int tracecmd_msg_send_init_data(struct tracecmd_msg_handle *msg_handle, +- unsigned int **client_ports); +-int tracecmd_msg_data_send(struct tracecmd_msg_handle *msg_handle, +- const char *buf, int size); +-int tracecmd_msg_finish_sending_data(struct tracecmd_msg_handle *msg_handle); +-int tracecmd_msg_send_close_msg(struct tracecmd_msg_handle *msg_handle); +-int tracecmd_msg_send_close_resp_msg(struct tracecmd_msg_handle *msg_handle); +-int tracecmd_msg_wait_close(struct tracecmd_msg_handle *msg_handle); +-int tracecmd_msg_wait_close_resp(struct tracecmd_msg_handle *msg_handle); +- +-/* for server */ +-int tracecmd_msg_initial_setting(struct tracecmd_msg_handle *msg_handle); +-int tracecmd_msg_send_port_array(struct tracecmd_msg_handle *msg_handle, +- unsigned *ports); +-int tracecmd_msg_read_data(struct tracecmd_msg_handle *msg_handle, int ofd); +-int tracecmd_msg_collect_data(struct tracecmd_msg_handle *msg_handle, int ofd); +-bool tracecmd_msg_done(struct tracecmd_msg_handle *msg_handle); +-void tracecmd_msg_set_done(struct tracecmd_msg_handle *msg_handle); +- +-int tracecmd_msg_send_trace_req(struct tracecmd_msg_handle *msg_handle, +- int argc, char **argv, bool use_fifos, +- unsigned long long trace_id, +- char *tsync_protos, +- int tsync_protos_size); +-int tracecmd_msg_recv_trace_req(struct tracecmd_msg_handle *msg_handle, +- int *argc, char ***argv, bool *use_fifos, +- unsigned long long *trace_id, +- char **tsync_protos, +- unsigned int *tsync_protos_size); +- +-int tracecmd_msg_send_trace_resp(struct tracecmd_msg_handle *msg_handle, +- int nr_cpus, int page_size, +- unsigned int *ports, bool use_fifos, +- unsigned long long trace_id, +- unsigned int tsync_proto, +- unsigned int tsync_port); +-int tracecmd_msg_recv_trace_resp(struct tracecmd_msg_handle *msg_handle, +- int *nr_cpus, int *page_size, +- unsigned int **ports, bool *use_fifos, +- unsigned long long *trace_id, +- unsigned int *tsync_proto, +- unsigned int *tsync_port); +- +-int tracecmd_msg_send_time_sync(struct tracecmd_msg_handle *msg_handle, +- unsigned int sync_protocol, +- unsigned int sync_msg_id, +- unsigned int payload_size, char *payload); +-int tracecmd_msg_recv_time_sync(struct tracecmd_msg_handle *msg_handle, +- unsigned int *sync_protocol, +- unsigned int *sync_msg_id, +- unsigned int *payload_size, char **payload); +- +-/* --- Timestamp synchronization --- */ +- +-enum{ +- TRACECMD_TIME_SYNC_PROTO_NONE = 0, +-}; +-enum{ +- TRACECMD_TIME_SYNC_CMD_PROBE = 1, +- TRACECMD_TIME_SYNC_CMD_STOP = 2, +-}; +- +-#define TRACECMD_TIME_SYNC_PROTO_PTP_WEIGHT 10 +- +-struct tracecmd_time_sync { +- unsigned int sync_proto; +- int loop_interval; +- pthread_mutex_t lock; +- pthread_cond_t cond; +- char *clock_str; +- struct tracecmd_msg_handle *msg_handle; +- void *context; +-}; +- +-void tracecmd_tsync_init(void); +-int tracecmd_tsync_proto_getall(char **proto_mask, int *words); +-unsigned int tracecmd_tsync_proto_select(char *proto_mask, int words); +-bool tsync_proto_is_supported(unsigned int proto_id); +-void tracecmd_tsync_with_host(struct tracecmd_time_sync *tsync); +-void tracecmd_tsync_with_guest(struct tracecmd_time_sync *tsync); +-int tracecmd_tsync_get_offsets(struct tracecmd_time_sync *tsync, +- int *count, +- long long **ts, long long **offsets); +-void tracecmd_tsync_free(struct tracecmd_time_sync *tsync); +- +-/* --- Plugin handling --- */ +-extern struct tep_plugin_option trace_ftrace_options[]; +- +-char **trace_util_find_plugin_files(const char *suffix); +-void trace_util_free_plugin_files(char **files); +- +-/* Used for trace-cmd list */ +-void tracecmd_ftrace_load_options(void); +- +-/* event hooks */ +- +-struct hook_list { +- struct hook_list *next; +- struct buffer_instance *instance; +- const char *hook; +- char *str; +- char *start_system; +- char *start_event; +- char *start_match; +- char *end_system; +- char *end_event; +- char *end_match; +- char *pid; +- int migrate; +- int global; +- int stack; +-}; +- +-struct hook_list *tracecmd_create_event_hook(const char *arg); +-void tracecmd_free_hooks(struct hook_list *hooks); +- +-void tracecmd_plog(const char *fmt, ...); +-void tracecmd_plog_error(const char *fmt, ...); +-int tracecmd_set_logfile(char *logfile); +- +-/* --- System --- */ +-unsigned long long tracecmd_generate_traceid(void); +-int tracecmd_count_cpus(void); +- +-/* --- Hack! --- */ +-int tracecmd_blk_hack(struct tracecmd_input *handle); +- +-/* --- Stack tracer functions --- */ +-int tracecmd_stack_tracer_status(int *status); +- +-/* --- Debugging --- */ +-struct kbuffer *tracecmd_record_kbuf(struct tracecmd_input *handle, +- struct tep_record *record); +-void *tracecmd_record_page(struct tracecmd_input *handle, +- struct tep_record *record); +-void *tracecmd_record_offset(struct tracecmd_input *handle, +- struct tep_record *record); ++unsigned long long tracecmd_get_traceid(struct tracecmd_input *handle); ++int tracecmd_get_guest_cpumap(struct tracecmd_input *handle, ++ unsigned long long trace_id, ++ const char **name, ++ int *vcpu_count, const int **cpu_pid); ++int tracecmd_buffer_instances(struct tracecmd_input *handle); ++const char *tracecmd_buffer_instance_name(struct tracecmd_input *handle, int indx); ++struct tracecmd_input *tracecmd_buffer_instance_handle(struct tracecmd_input *handle, int indx); + + #endif /* _TRACE_CMD_H */ +diff --git a/include/trace-cmd/trace-filter-hash.h b/include/trace-cmd/trace-filter-hash.h +deleted file mode 100644 +index 4111c41..0000000 +--- a/include/trace-cmd/trace-filter-hash.h ++++ /dev/null +@@ -1,64 +0,0 @@ +-/* SPDX-License-Identifier: LGPL-2.1 */ +-/* +- * Copyright (C) 2009, 2010 Red Hat Inc, Steven Rostedt +- * Copyright (C) 2018 VMware Inc, Steven Rostedt +- * +- */ +-#ifndef _TRACE_FILTER_HASH_H +-#define _TRACE_FILTER_HASH_H +- +-#include +- +-struct tracecmd_filter_id_item { +- struct tracecmd_filter_id_item *next; +- int id; +-}; +- +-struct tracecmd_filter_id { +- struct tracecmd_filter_id_item **hash; +- int count; +-}; +- +-/** +- * tracecmd_quick_hash - A quick (non secured) hash alogirthm +- * @val: The value to perform the hash on +- * @bits: The size in bits you need to return +- * +- * This is a quick hashing function adapted from Donald E. Knuth's 32 +- * bit multiplicative hash. See The Art of Computer Programming (TAOCP). +- * Multiplication by the Prime number, closest to the golden ratio of +- * 2^32. +- * +- * @bits is used to max the result for use cases that require +- * a power of 2 return value that is less than 32 bits. Any value +- * of @bits greater than 31 (or zero), will simply return the full hash on @val. +- */ +-static inline uint32_t tracecmd_quick_hash(uint32_t val, unsigned int bits) +-{ +- val *= UINT32_C(2654435761); +- +- if (!bits || bits > 31) +- return val; +- +- return val & ((1 << bits) - 1); +-} +- +-struct tracecmd_filter_id_item * +- tracecmd_filter_id_find(struct tracecmd_filter_id *hash, int id); +-void tracecmd_filter_id_add(struct tracecmd_filter_id *hash, int id); +-void tracecmd_filter_id_remove(struct tracecmd_filter_id *hash, int id); +-void tracecmd_filter_id_clear(struct tracecmd_filter_id *hash); +-struct tracecmd_filter_id *tracecmd_filter_id_hash_alloc(void); +-void tracecmd_filter_id_hash_free(struct tracecmd_filter_id *hash); +-struct tracecmd_filter_id * +- tracecmd_filter_id_hash_copy(struct tracecmd_filter_id *hash); +-int *tracecmd_filter_ids(struct tracecmd_filter_id *hash); +-int tracecmd_filter_id_compare(struct tracecmd_filter_id *hash1, +- struct tracecmd_filter_id *hash2); +- +-static inline int tracecmd_filter_task_count(struct tracecmd_filter_id *hash) +-{ +- return hash->count; +-} +- +-#endif /* _TRACE_FILTER_HASH_H */ +diff --git a/include/trace-cmd/trace-hash.h b/include/trace-cmd/trace-hash.h +deleted file mode 100644 +index aa92cdf..0000000 +--- a/include/trace-cmd/trace-hash.h ++++ /dev/null +@@ -1,55 +0,0 @@ +-/* SPDX-License-Identifier: GPL-2.0 */ +-/* +- * Copyright (C) 2014 Red Hat Inc, Steven Rostedt +- * +- */ +-#ifndef _TRACE_HASH_H +-#define _TRACE_HASH_H +- +-struct trace_hash_item { +- struct trace_hash_item *next; +- struct trace_hash_item *prev; +- unsigned long long key; +-}; +- +-struct trace_hash { +- struct trace_hash_item **buckets; +- int nr_buckets; +- int power; +-}; +- +-int trace_hash_init(struct trace_hash *hash, int buckets); +-void trace_hash_free(struct trace_hash *hash); +-int trace_hash_add(struct trace_hash *hash, struct trace_hash_item *item); +-int trace_hash_empty(struct trace_hash *hash); +- +-static inline void trace_hash_del(struct trace_hash_item *item) +-{ +- struct trace_hash_item *prev = item->prev; +- +- prev->next = item->next; +- if (item->next) +- item->next->prev = prev; +-} +- +-#define trace_hash_for_each_bucket(bucket, hash) \ +- for (bucket = (hash)->buckets; \ +- (bucket) < (hash)->buckets + (hash)->nr_buckets; (bucket)++) +- +-#define trace_hash_for_each_item(item, bucket) \ +- for ((item = *(bucket)); item; item = (item)->next) +- +-#define trace_hash_for_each_item_safe(item, n, bucket) \ +- for ((item = *(bucket)), n = item ? item->next : NULL; item; \ +- item = n, n = item ? (item)->next : NULL) +- +-#define trace_hash_while_item(item, bucket) \ +- while ((item = *(bucket))) +- +-typedef int (*trace_hash_func)(struct trace_hash_item *item, void *data); +- +-struct trace_hash_item * +-trace_hash_find(struct trace_hash *hash, unsigned long long key, +- trace_hash_func match, void *data); +- +-#endif /* _TRACE_HASH_H */ +diff --git a/include/trace-cmd/trace-msg.h b/include/trace-cmd/trace-msg.h +deleted file mode 100644 +index aab8a69..0000000 +--- a/include/trace-cmd/trace-msg.h ++++ /dev/null +@@ -1,15 +0,0 @@ +-#ifndef _TRACE_MSG_H_ +-#define _TRACE_MSG_H_ +- +-#include +- +-#define UDP_MAX_PACKET (65536 - 20) +-#define V3_MAGIC "766679\0" +-#define V3_CPU "-1V3" +- +-#define V1_PROTOCOL 1 +-#define V3_PROTOCOL 3 +- +-extern unsigned int page_size; +- +-#endif /* _TRACE_MSG_H_ */ +diff --git a/lib/trace-cmd/include/private/trace-cmd-private.h b/lib/trace-cmd/include/private/trace-cmd-private.h +new file mode 100644 +index 0000000..458760e +--- /dev/null ++++ b/lib/trace-cmd/include/private/trace-cmd-private.h +@@ -0,0 +1,480 @@ ++/* SPDX-License-Identifier: LGPL-2.1 */ ++/* ++ * Copyright (C) 2008, 2009, 2010 Red Hat Inc, Steven Rostedt ++ * ++ */ ++#ifndef _TRACE_CMD_PRIVATE_H ++#define _TRACE_CMD_PRIVATE_H ++ ++#include "traceevent/event-parse.h" ++#include "trace-cmd/trace-cmd.h" ++ ++#define TRACECMD_MAGIC { 23, 8, 68 } ++ ++#define ARRAY_SIZE(_a) (sizeof(_a) / sizeof((_a)[0])) ++#define __weak __attribute__((weak)) ++#define __noreturn __attribute__((noreturn)) ++ ++#define TRACECMD_ERR_MSK ((unsigned long)(-1) & ~((1UL << 14) - 1)) ++#define TRACECMD_ISERR(ptr) ((unsigned long)(ptr) > TRACECMD_ERR_MSK) ++#define TRACECMD_ERROR(ret) ((void *)((unsigned long)(ret) | TRACECMD_ERR_MSK)) ++#define TRACECMD_PTR2ERR(ptr) ((unisgned long)(ptr) & ~TRACECMD_ERR_MSK) ++ ++void tracecmd_parse_cmdlines(struct tep_handle *pevent, char *file, int size); ++void tracecmd_parse_proc_kallsyms(struct tep_handle *pevent, char *file, unsigned int size); ++void tracecmd_parse_ftrace_printk(struct tep_handle *pevent, char *file, unsigned int size); ++struct tep_plugin_list *trace_load_plugins(struct tep_handle *tep); ++ ++int *tracecmd_add_id(int *list, int id, int len); ++ ++enum { ++ RINGBUF_TYPE_PADDING = 29, ++ RINGBUF_TYPE_TIME_EXTEND = 30, ++ RINGBUF_TYPE_TIME_STAMP = 31, ++}; ++ ++void tracecmd_record_ref(struct tep_record *record); ++ ++void tracecmd_set_debug(bool set_debug); ++bool tracecmd_get_debug(void); ++ ++struct tracecmd_output; ++struct tracecmd_recorder; ++struct hook_list; ++ ++/* --- tracecmd plugins --- */ ++ ++extern int tracecmd_disable_sys_plugins; ++extern int tracecmd_disable_plugins; ++ ++enum tracecmd_context { ++ TRACECMD_INPUT, ++ TRACECMD_OUTPUT, ++}; ++ ++enum tracecmd_plugin_flag { ++ TRACECMD_DISABLE_SYS_PLUGINS = 1, ++ TRACECMD_DISABLE_PLUGINS = 1 << 1, ++}; ++ ++struct trace_plugin_context; ++ ++struct trace_plugin_context * ++tracecmd_plugin_context_create(enum tracecmd_context context, void *data); ++ ++void tracecmd_plugin_set_flag(struct trace_plugin_context *context, ++ enum tracecmd_plugin_flag flag); ++ ++#define TRACECMD_PLUGIN_LOADER tracecmd_plugin_loader ++#define TRACECMD_PLUGIN_UNLOADER tracecmd_plugin_unloader ++#define TRACECMD_PLUGIN_ALIAS tracecmd_plugin_alias ++#define _MAKE_STR(x) #x ++#define MAKE_STR(x) _MAKE_STR(x) ++#define TRACECMD_PLUGIN_LOADER_NAME MAKE_STR(TRACECMD_PLUGIN_LOADER) ++#define TRACECMD_PLUGIN_UNLOADER_NAME MAKE_STR(TRACECMD_PLUGIN_UNLOADER) ++#define TRACECMD_PLUGIN_ALIAS_NAME MAKE_STR(TRACECMD_PLUGIN_ALIAS) ++ ++typedef int (*tracecmd_plugin_load_func)(struct trace_plugin_context *trace); ++typedef int (*tracecmd_plugin_unload_func)(struct trace_plugin_context *trace); ++ ++struct tracecmd_input * ++tracecmd_plugin_context_input(struct trace_plugin_context *trace_context); ++struct tracecmd_output * ++tracecmd_plugin_context_output(struct trace_plugin_context *trace_context); ++ ++void tracecmd_set_quiet(struct tracecmd_output *handle, bool set_quiet); ++bool tracecmd_get_quiet(struct tracecmd_output *handle); ++ ++static inline int tracecmd_host_bigendian(void) ++{ ++ unsigned char str[] = { 0x1, 0x2, 0x3, 0x4 }; ++ unsigned int *ptr; ++ ++ ptr = (unsigned int *)str; ++ return *ptr == 0x01020304; ++} ++ ++/* --- Opening and Reading the trace.dat file --- */ ++ ++enum { ++ TRACECMD_OPTION_DONE, ++ TRACECMD_OPTION_DATE, ++ TRACECMD_OPTION_CPUSTAT, ++ TRACECMD_OPTION_BUFFER, ++ TRACECMD_OPTION_TRACECLOCK, ++ TRACECMD_OPTION_UNAME, ++ TRACECMD_OPTION_HOOK, ++ TRACECMD_OPTION_OFFSET, ++ TRACECMD_OPTION_CPUCOUNT, ++ TRACECMD_OPTION_VERSION, ++ TRACECMD_OPTION_PROCMAPS, ++ TRACECMD_OPTION_TRACEID, ++ TRACECMD_OPTION_TIME_SHIFT, ++ TRACECMD_OPTION_GUEST, ++}; ++ ++enum { ++ TRACECMD_FL_IGNORE_DATE = (1 << 0), ++ TRACECMD_FL_BUFFER_INSTANCE = (1 << 1), ++ TRACECMD_FL_LATENCY = (1 << 2), ++ TRACECMD_FL_IN_USECS = (1 << 3), ++ TRACECMD_FL_FLYRECORD = (1 << 4), ++}; ++ ++struct tracecmd_ftrace { ++ struct tracecmd_input *handle; ++ struct tep_event *fgraph_ret_event; ++ int fgraph_ret_id; ++ int long_size; ++}; ++ ++struct tracecmd_proc_addr_map { ++ unsigned long long start; ++ unsigned long long end; ++ char *lib_name; ++}; ++ ++typedef void (*tracecmd_show_data_func)(struct tracecmd_input *handle, ++ struct tep_record *record); ++typedef void (*tracecmd_handle_init_func)(struct tracecmd_input *handle, ++ struct hook_list *hook, int global); ++ ++struct tracecmd_input *tracecmd_alloc(const char *file); ++struct tracecmd_input *tracecmd_alloc_fd(int fd); ++struct tracecmd_input *tracecmd_open(const char *file); ++struct tracecmd_input *tracecmd_open_fd(int fd); ++void tracecmd_unpair_peer(struct tracecmd_input *handle); ++void tracecmd_ref(struct tracecmd_input *handle); ++int tracecmd_read_headers(struct tracecmd_input *handle); ++int tracecmd_get_parsing_failures(struct tracecmd_input *handle); ++int tracecmd_long_size(struct tracecmd_input *handle); ++int tracecmd_page_size(struct tracecmd_input *handle); ++int tracecmd_cpus(struct tracecmd_input *handle); ++int tracecmd_copy_headers(struct tracecmd_input *handle, int fd); ++void tracecmd_set_flag(struct tracecmd_input *handle, int flag); ++void tracecmd_clear_flag(struct tracecmd_input *handle, int flag); ++unsigned long tracecmd_get_flags(struct tracecmd_input *handle); ++unsigned long long tracecmd_get_tsync_peer(struct tracecmd_input *handle); ++int tracecmd_enable_tsync(struct tracecmd_input *handle, bool enable); ++ ++void tracecmd_parse_trace_clock(struct tracecmd_input *handle, char *file, int size); ++ ++int tracecmd_make_pipe(struct tracecmd_input *handle, int cpu, int fd, int cpus); ++ ++int tracecmd_is_buffer_instance(struct tracecmd_input *handle); ++ ++void tracecmd_set_ts_offset(struct tracecmd_input *handle, long long offset); ++void tracecmd_set_ts2secs(struct tracecmd_input *handle, unsigned long long hz); ++ ++void tracecmd_print_events(struct tracecmd_input *handle, const char *regex); ++ ++struct hook_list *tracecmd_hooks(struct tracecmd_input *handle); ++ ++void tracecmd_print_stats(struct tracecmd_input *handle); ++void tracecmd_print_uname(struct tracecmd_input *handle); ++void tracecmd_print_version(struct tracecmd_input *handle); ++ ++struct tep_record * ++tracecmd_peek_data(struct tracecmd_input *handle, int cpu); ++ ++static inline struct tep_record * ++tracecmd_peek_data_ref(struct tracecmd_input *handle, int cpu) ++{ ++ struct tep_record *rec = tracecmd_peek_data(handle, cpu); ++ if (rec) ++ rec->ref_count++; ++ return rec; ++} ++ ++struct tep_record * ++tracecmd_read_prev(struct tracecmd_input *handle, struct tep_record *record); ++ ++struct tep_record * ++tracecmd_read_next_data(struct tracecmd_input *handle, int *rec_cpu); ++ ++struct tep_record * ++tracecmd_peek_next_data(struct tracecmd_input *handle, int *rec_cpu); ++ ++struct tep_record * ++tracecmd_translate_data(struct tracecmd_input *handle, ++ void *ptr, int size); ++struct tep_record * ++tracecmd_read_cpu_last(struct tracecmd_input *handle, int cpu); ++int tracecmd_refresh_record(struct tracecmd_input *handle, ++ struct tep_record *record); ++ ++int tracecmd_set_cpu_to_timestamp(struct tracecmd_input *handle, ++ int cpu, unsigned long long ts); ++void ++tracecmd_set_all_cpus_to_timestamp(struct tracecmd_input *handle, ++ unsigned long long time); ++ ++int tracecmd_set_cursor(struct tracecmd_input *handle, ++ int cpu, unsigned long long offset); ++unsigned long long ++tracecmd_get_cursor(struct tracecmd_input *handle, int cpu); ++ ++int tracecmd_ftrace_overrides(struct tracecmd_input *handle, struct tracecmd_ftrace *finfo); ++bool tracecmd_get_use_trace_clock(struct tracecmd_input *handle); ++tracecmd_show_data_func ++tracecmd_get_show_data_func(struct tracecmd_input *handle); ++void tracecmd_set_show_data_func(struct tracecmd_input *handle, ++ tracecmd_show_data_func func); ++ ++int tracecmd_record_at_buffer_start(struct tracecmd_input *handle, struct tep_record *record); ++unsigned long long tracecmd_page_ts(struct tracecmd_input *handle, ++ struct tep_record *record); ++unsigned int tracecmd_record_ts_delta(struct tracecmd_input *handle, ++ struct tep_record *record); ++ ++struct tracecmd_proc_addr_map * ++tracecmd_search_task_map(struct tracecmd_input *handle, ++ int pid, unsigned long long addr); ++#ifndef SWIG ++/* hack for function graph work around */ ++extern __thread struct tracecmd_input *tracecmd_curr_thread_handle; ++#endif ++ ++ ++/* --- Creating and Writing the trace.dat file --- */ ++ ++struct tracecmd_event_list { ++ struct tracecmd_event_list *next; ++ const char *glob; ++}; ++ ++struct tracecmd_option; ++struct tracecmd_msg_handle; ++ ++struct tracecmd_output *tracecmd_create_file_latency(const char *output_file, int cpus); ++struct tracecmd_output *tracecmd_create_file(const char *output_file, ++ int cpus, char * const *cpu_data_files); ++struct tracecmd_output * ++tracecmd_create_file_glob(const char *output_file, ++ int cpus, char * const *cpu_data_files, ++ struct tracecmd_event_list *event_globs); ++struct tracecmd_output * ++tracecmd_create_init_file_glob(const char *output_file, ++ struct tracecmd_event_list *list); ++struct tracecmd_output *tracecmd_create_init_fd(int fd); ++struct tracecmd_output * ++tracecmd_create_init_fd_glob(int fd, struct tracecmd_event_list *list); ++struct tracecmd_output * ++tracecmd_create_init_fd_msg(struct tracecmd_msg_handle *msg_handle, ++ struct tracecmd_event_list *list); ++struct tracecmd_output *tracecmd_create_init_file(const char *output_file); ++struct tracecmd_output *tracecmd_create_init_file_override(const char *output_file, ++ const char *tracing_dir, ++ const char *kallsyms); ++struct tracecmd_option *tracecmd_add_option(struct tracecmd_output *handle, ++ unsigned short id, int size, ++ const void *data); ++struct tracecmd_option * ++tracecmd_add_option_v(struct tracecmd_output *handle, ++ unsigned short id, const struct iovec *vector, int count); ++ ++struct tracecmd_option *tracecmd_add_buffer_option(struct tracecmd_output *handle, ++ const char *name, int cpus); ++ ++int tracecmd_write_cpus(struct tracecmd_output *handle, int cpus); ++int tracecmd_write_options(struct tracecmd_output *handle); ++int tracecmd_append_options(struct tracecmd_output *handle); ++int tracecmd_update_option(struct tracecmd_output *handle, ++ struct tracecmd_option *option, int size, ++ const void *data); ++void tracecmd_output_close(struct tracecmd_output *handle); ++void tracecmd_output_free(struct tracecmd_output *handle); ++struct tracecmd_output *tracecmd_copy(struct tracecmd_input *ihandle, ++ const char *file); ++ ++int tracecmd_write_cpu_data(struct tracecmd_output *handle, ++ int cpus, char * const *cpu_data_files); ++int tracecmd_append_cpu_data(struct tracecmd_output *handle, ++ int cpus, char * const *cpu_data_files); ++int tracecmd_append_buffer_cpu_data(struct tracecmd_output *handle, ++ struct tracecmd_option *option, ++ int cpus, char * const *cpu_data_files); ++ ++struct tracecmd_output *tracecmd_get_output_handle_fd(int fd); ++ ++/* --- Reading the Fly Recorder Trace --- */ ++ ++enum { ++ TRACECMD_RECORD_NOSPLICE = (1 << 0), /* Use read instead of splice */ ++ TRACECMD_RECORD_SNAPSHOT = (1 << 1), /* Extract from snapshot */ ++ TRACECMD_RECORD_BLOCK = (1 << 2), /* Block on splice write */ ++ TRACECMD_RECORD_NOBRASS = (1 << 3), /* Splice directly without a brass pipe */ ++}; ++ ++void tracecmd_free_recorder(struct tracecmd_recorder *recorder); ++struct tracecmd_recorder *tracecmd_create_recorder(const char *file, int cpu, unsigned flags); ++struct tracecmd_recorder *tracecmd_create_recorder_fd(int fd, int cpu, unsigned flags); ++struct tracecmd_recorder *tracecmd_create_recorder_virt(const char *file, int cpu, unsigned flags, int trace_fd); ++struct tracecmd_recorder *tracecmd_create_recorder_maxkb(const char *file, int cpu, unsigned flags, int maxkb); ++struct tracecmd_recorder *tracecmd_create_buffer_recorder_fd(int fd, int cpu, unsigned flags, const char *buffer); ++struct tracecmd_recorder *tracecmd_create_buffer_recorder(const char *file, int cpu, unsigned flags, const char *buffer); ++struct tracecmd_recorder *tracecmd_create_buffer_recorder_maxkb(const char *file, int cpu, unsigned flags, const char *buffer, int maxkb); ++ ++int tracecmd_start_recording(struct tracecmd_recorder *recorder, unsigned long sleep); ++void tracecmd_stop_recording(struct tracecmd_recorder *recorder); ++long tracecmd_flush_recording(struct tracecmd_recorder *recorder); ++ ++enum tracecmd_msg_flags { ++ TRACECMD_MSG_FL_USE_TCP = 1 << 0, ++}; ++ ++/* for both client and server */ ++struct tracecmd_msg_handle { ++ int fd; ++ short cpu_count; ++ short version; /* Current protocol version */ ++ unsigned long flags; ++ bool done; ++}; ++ ++struct tracecmd_msg_handle * ++tracecmd_msg_handle_alloc(int fd, unsigned long flags); ++ ++/* Closes the socket and frees the handle */ ++void tracecmd_msg_handle_close(struct tracecmd_msg_handle *msg_handle); ++ ++/* for clients */ ++int tracecmd_msg_send_init_data(struct tracecmd_msg_handle *msg_handle, ++ unsigned int **client_ports); ++int tracecmd_msg_data_send(struct tracecmd_msg_handle *msg_handle, ++ const char *buf, int size); ++int tracecmd_msg_finish_sending_data(struct tracecmd_msg_handle *msg_handle); ++int tracecmd_msg_send_close_msg(struct tracecmd_msg_handle *msg_handle); ++int tracecmd_msg_send_close_resp_msg(struct tracecmd_msg_handle *msg_handle); ++int tracecmd_msg_wait_close(struct tracecmd_msg_handle *msg_handle); ++int tracecmd_msg_wait_close_resp(struct tracecmd_msg_handle *msg_handle); ++ ++/* for server */ ++int tracecmd_msg_initial_setting(struct tracecmd_msg_handle *msg_handle); ++int tracecmd_msg_send_port_array(struct tracecmd_msg_handle *msg_handle, ++ unsigned *ports); ++int tracecmd_msg_read_data(struct tracecmd_msg_handle *msg_handle, int ofd); ++int tracecmd_msg_collect_data(struct tracecmd_msg_handle *msg_handle, int ofd); ++bool tracecmd_msg_done(struct tracecmd_msg_handle *msg_handle); ++void tracecmd_msg_set_done(struct tracecmd_msg_handle *msg_handle); ++ ++int tracecmd_msg_send_trace_req(struct tracecmd_msg_handle *msg_handle, ++ int argc, char **argv, bool use_fifos, ++ unsigned long long trace_id, ++ char *tsync_protos, ++ int tsync_protos_size); ++int tracecmd_msg_recv_trace_req(struct tracecmd_msg_handle *msg_handle, ++ int *argc, char ***argv, bool *use_fifos, ++ unsigned long long *trace_id, ++ char **tsync_protos, ++ unsigned int *tsync_protos_size); ++ ++int tracecmd_msg_send_trace_resp(struct tracecmd_msg_handle *msg_handle, ++ int nr_cpus, int page_size, ++ unsigned int *ports, bool use_fifos, ++ unsigned long long trace_id, ++ unsigned int tsync_proto, ++ unsigned int tsync_port); ++int tracecmd_msg_recv_trace_resp(struct tracecmd_msg_handle *msg_handle, ++ int *nr_cpus, int *page_size, ++ unsigned int **ports, bool *use_fifos, ++ unsigned long long *trace_id, ++ unsigned int *tsync_proto, ++ unsigned int *tsync_port); ++ ++int tracecmd_msg_send_time_sync(struct tracecmd_msg_handle *msg_handle, ++ unsigned int sync_protocol, ++ unsigned int sync_msg_id, ++ unsigned int payload_size, char *payload); ++int tracecmd_msg_recv_time_sync(struct tracecmd_msg_handle *msg_handle, ++ unsigned int *sync_protocol, ++ unsigned int *sync_msg_id, ++ unsigned int *payload_size, char **payload); ++ ++/* --- Timestamp synchronization --- */ ++ ++enum{ ++ TRACECMD_TIME_SYNC_PROTO_NONE = 0, ++}; ++enum{ ++ TRACECMD_TIME_SYNC_CMD_PROBE = 1, ++ TRACECMD_TIME_SYNC_CMD_STOP = 2, ++}; ++ ++#define TRACECMD_TIME_SYNC_PROTO_PTP_WEIGHT 10 ++ ++struct tracecmd_time_sync { ++ unsigned int sync_proto; ++ int loop_interval; ++ pthread_mutex_t lock; ++ pthread_cond_t cond; ++ char *clock_str; ++ struct tracecmd_msg_handle *msg_handle; ++ void *context; ++}; ++ ++void tracecmd_tsync_init(void); ++int tracecmd_tsync_proto_getall(char **proto_mask, int *words); ++unsigned int tracecmd_tsync_proto_select(char *proto_mask, int words); ++bool tsync_proto_is_supported(unsigned int proto_id); ++void tracecmd_tsync_with_host(struct tracecmd_time_sync *tsync); ++void tracecmd_tsync_with_guest(struct tracecmd_time_sync *tsync); ++int tracecmd_tsync_get_offsets(struct tracecmd_time_sync *tsync, ++ int *count, ++ long long **ts, long long **offsets); ++void tracecmd_tsync_free(struct tracecmd_time_sync *tsync); ++ ++/* --- Plugin handling --- */ ++extern struct tep_plugin_option trace_ftrace_options[]; ++ ++char **trace_util_find_plugin_files(const char *suffix); ++void trace_util_free_plugin_files(char **files); ++ ++/* Used for trace-cmd list */ ++void tracecmd_ftrace_load_options(void); ++ ++/* event hooks */ ++ ++struct hook_list { ++ struct hook_list *next; ++ struct buffer_instance *instance; ++ const char *hook; ++ char *str; ++ char *start_system; ++ char *start_event; ++ char *start_match; ++ char *end_system; ++ char *end_event; ++ char *end_match; ++ char *pid; ++ int migrate; ++ int global; ++ int stack; ++}; ++ ++struct hook_list *tracecmd_create_event_hook(const char *arg); ++void tracecmd_free_hooks(struct hook_list *hooks); ++ ++void tracecmd_plog(const char *fmt, ...); ++void tracecmd_plog_error(const char *fmt, ...); ++int tracecmd_set_logfile(char *logfile); ++ ++/* --- System --- */ ++unsigned long long tracecmd_generate_traceid(void); ++int tracecmd_count_cpus(void); ++ ++/* --- Hack! --- */ ++int tracecmd_blk_hack(struct tracecmd_input *handle); ++ ++/* --- Stack tracer functions --- */ ++int tracecmd_stack_tracer_status(int *status); ++ ++/* --- Debugging --- */ ++struct kbuffer *tracecmd_record_kbuf(struct tracecmd_input *handle, ++ struct tep_record *record); ++void *tracecmd_record_page(struct tracecmd_input *handle, ++ struct tep_record *record); ++void *tracecmd_record_offset(struct tracecmd_input *handle, ++ struct tep_record *record); ++ ++#endif /* _TRACE_CMD_PRIVATE_H */ +diff --git a/lib/trace-cmd/include/private/trace-filter-hash.h b/lib/trace-cmd/include/private/trace-filter-hash.h +new file mode 100644 +index 0000000..4111c41 +--- /dev/null ++++ b/lib/trace-cmd/include/private/trace-filter-hash.h +@@ -0,0 +1,64 @@ ++/* SPDX-License-Identifier: LGPL-2.1 */ ++/* ++ * Copyright (C) 2009, 2010 Red Hat Inc, Steven Rostedt ++ * Copyright (C) 2018 VMware Inc, Steven Rostedt ++ * ++ */ ++#ifndef _TRACE_FILTER_HASH_H ++#define _TRACE_FILTER_HASH_H ++ ++#include ++ ++struct tracecmd_filter_id_item { ++ struct tracecmd_filter_id_item *next; ++ int id; ++}; ++ ++struct tracecmd_filter_id { ++ struct tracecmd_filter_id_item **hash; ++ int count; ++}; ++ ++/** ++ * tracecmd_quick_hash - A quick (non secured) hash alogirthm ++ * @val: The value to perform the hash on ++ * @bits: The size in bits you need to return ++ * ++ * This is a quick hashing function adapted from Donald E. Knuth's 32 ++ * bit multiplicative hash. See The Art of Computer Programming (TAOCP). ++ * Multiplication by the Prime number, closest to the golden ratio of ++ * 2^32. ++ * ++ * @bits is used to max the result for use cases that require ++ * a power of 2 return value that is less than 32 bits. Any value ++ * of @bits greater than 31 (or zero), will simply return the full hash on @val. ++ */ ++static inline uint32_t tracecmd_quick_hash(uint32_t val, unsigned int bits) ++{ ++ val *= UINT32_C(2654435761); ++ ++ if (!bits || bits > 31) ++ return val; ++ ++ return val & ((1 << bits) - 1); ++} ++ ++struct tracecmd_filter_id_item * ++ tracecmd_filter_id_find(struct tracecmd_filter_id *hash, int id); ++void tracecmd_filter_id_add(struct tracecmd_filter_id *hash, int id); ++void tracecmd_filter_id_remove(struct tracecmd_filter_id *hash, int id); ++void tracecmd_filter_id_clear(struct tracecmd_filter_id *hash); ++struct tracecmd_filter_id *tracecmd_filter_id_hash_alloc(void); ++void tracecmd_filter_id_hash_free(struct tracecmd_filter_id *hash); ++struct tracecmd_filter_id * ++ tracecmd_filter_id_hash_copy(struct tracecmd_filter_id *hash); ++int *tracecmd_filter_ids(struct tracecmd_filter_id *hash); ++int tracecmd_filter_id_compare(struct tracecmd_filter_id *hash1, ++ struct tracecmd_filter_id *hash2); ++ ++static inline int tracecmd_filter_task_count(struct tracecmd_filter_id *hash) ++{ ++ return hash->count; ++} ++ ++#endif /* _TRACE_FILTER_HASH_H */ +diff --git a/lib/trace-cmd/include/private/trace-hash.h b/lib/trace-cmd/include/private/trace-hash.h +new file mode 100644 +index 0000000..aa92cdf +--- /dev/null ++++ b/lib/trace-cmd/include/private/trace-hash.h +@@ -0,0 +1,55 @@ ++/* SPDX-License-Identifier: GPL-2.0 */ ++/* ++ * Copyright (C) 2014 Red Hat Inc, Steven Rostedt ++ * ++ */ ++#ifndef _TRACE_HASH_H ++#define _TRACE_HASH_H ++ ++struct trace_hash_item { ++ struct trace_hash_item *next; ++ struct trace_hash_item *prev; ++ unsigned long long key; ++}; ++ ++struct trace_hash { ++ struct trace_hash_item **buckets; ++ int nr_buckets; ++ int power; ++}; ++ ++int trace_hash_init(struct trace_hash *hash, int buckets); ++void trace_hash_free(struct trace_hash *hash); ++int trace_hash_add(struct trace_hash *hash, struct trace_hash_item *item); ++int trace_hash_empty(struct trace_hash *hash); ++ ++static inline void trace_hash_del(struct trace_hash_item *item) ++{ ++ struct trace_hash_item *prev = item->prev; ++ ++ prev->next = item->next; ++ if (item->next) ++ item->next->prev = prev; ++} ++ ++#define trace_hash_for_each_bucket(bucket, hash) \ ++ for (bucket = (hash)->buckets; \ ++ (bucket) < (hash)->buckets + (hash)->nr_buckets; (bucket)++) ++ ++#define trace_hash_for_each_item(item, bucket) \ ++ for ((item = *(bucket)); item; item = (item)->next) ++ ++#define trace_hash_for_each_item_safe(item, n, bucket) \ ++ for ((item = *(bucket)), n = item ? item->next : NULL; item; \ ++ item = n, n = item ? (item)->next : NULL) ++ ++#define trace_hash_while_item(item, bucket) \ ++ while ((item = *(bucket))) ++ ++typedef int (*trace_hash_func)(struct trace_hash_item *item, void *data); ++ ++struct trace_hash_item * ++trace_hash_find(struct trace_hash *hash, unsigned long long key, ++ trace_hash_func match, void *data); ++ ++#endif /* _TRACE_HASH_H */ +diff --git a/lib/trace-cmd/include/private/trace-msg.h b/lib/trace-cmd/include/private/trace-msg.h +new file mode 100644 +index 0000000..aab8a69 +--- /dev/null ++++ b/lib/trace-cmd/include/private/trace-msg.h +@@ -0,0 +1,15 @@ ++#ifndef _TRACE_MSG_H_ ++#define _TRACE_MSG_H_ ++ ++#include ++ ++#define UDP_MAX_PACKET (65536 - 20) ++#define V3_MAGIC "766679\0" ++#define V3_CPU "-1V3" ++ ++#define V1_PROTOCOL 1 ++#define V3_PROTOCOL 3 ++ ++extern unsigned int page_size; ++ ++#endif /* _TRACE_MSG_H_ */ +diff --git a/lib/trace-cmd/include/trace-cmd-local.h b/lib/trace-cmd/include/trace-cmd-local.h +index 95dce66..d0a7365 100644 +--- a/lib/trace-cmd/include/trace-cmd-local.h ++++ b/lib/trace-cmd/include/trace-cmd-local.h +@@ -6,6 +6,8 @@ + #ifndef _TRACE_CMD_LOCAL_H + #define _TRACE_CMD_LOCAL_H + ++#include "trace-cmd-private.h" ++ + /* Can be overridden */ + void warning(const char *fmt, ...); + +diff --git a/lib/trace-cmd/trace-ftrace.c b/lib/trace-cmd/trace-ftrace.c +index 20bf71f..df7335f 100644 +--- a/lib/trace-cmd/trace-ftrace.c ++++ b/lib/trace-cmd/trace-ftrace.c +@@ -8,7 +8,7 @@ + #include + #include + +-#include "trace-cmd.h" ++#include "trace-cmd-private.h" + + struct tep_plugin_option trace_ftrace_options[] = { + { +diff --git a/lib/trace-cmd/trace-hooks.c b/lib/trace-cmd/trace-hooks.c +index 8c969a6..2dadf61 100644 +--- a/lib/trace-cmd/trace-hooks.c ++++ b/lib/trace-cmd/trace-hooks.c +@@ -8,7 +8,7 @@ + #include + #include + +-#include "trace-cmd.h" ++#include "trace-cmd-private.h" + #include "event-utils.h" + + struct hook_list *tracecmd_create_event_hook(const char *arg) +diff --git a/lib/trace-cmd/trace-recorder.c b/lib/trace-cmd/trace-recorder.c +index 2a6e2b6..6b647d6 100644 +--- a/lib/trace-cmd/trace-recorder.c ++++ b/lib/trace-cmd/trace-recorder.c +@@ -13,7 +13,7 @@ + #include + + #include "tracefs.h" +-#include "trace-cmd.h" ++#include "trace-cmd-private.h" + #include "event-utils.h" + + /* F_GETPIPE_SZ was introduced in 2.6.35, older systems don't have it */ +diff --git a/lib/trace-cmd/trace-timesync.c b/lib/trace-cmd/trace-timesync.c +index 7a6a7eb..390e9d9 100644 +--- a/lib/trace-cmd/trace-timesync.c ++++ b/lib/trace-cmd/trace-timesync.c +@@ -17,7 +17,7 @@ + #include + #include + +-#include "trace-cmd.h" ++#include "trace-cmd-private.h" + #include "tracefs.h" + #include "event-utils.h" + #include "trace-tsync-local.h" +diff --git a/lib/trace-cmd/trace-util.c b/lib/trace-cmd/trace-util.c +index 0ead96e..6b5d872 100644 +--- a/lib/trace-cmd/trace-util.c ++++ b/lib/trace-cmd/trace-util.c +@@ -21,7 +21,7 @@ + #include + #include + +-#include "trace-cmd.h" ++#include "trace-cmd-private.h" + #include "event-utils.h" + + #define LOCAL_PLUGIN_DIR ".trace-cmd/plugins" +diff --git a/lib/traceevent/plugins/plugin_python_loader.c b/lib/traceevent/plugins/plugin_python_loader.c +index 776bf12..01bdfad 100644 +--- a/lib/traceevent/plugins/plugin_python_loader.c ++++ b/lib/traceevent/plugins/plugin_python_loader.c +@@ -1,6 +1,7 @@ + #include + #include +-#include "trace-cmd.h" ++#include "event-parse.h" ++#include "trace-cmd-private.h" + + #ifndef PYTHON_DIR + #define PYTHON_DIR "." +diff --git a/python/ctracecmd.i b/python/ctracecmd.i +index 01cd0d5..5f7181c 100644 +--- a/python/ctracecmd.i ++++ b/python/ctracecmd.i +@@ -15,6 +15,7 @@ + + %{ + #include "trace-cmd.h" ++#include "event-parse.h" + #include "event-utils.h" + #include + %} +diff --git a/tracecmd/include/trace-local.h b/tracecmd/include/trace-local.h +index 207aa68..28d1b4e 100644 +--- a/tracecmd/include/trace-local.h ++++ b/tracecmd/include/trace-local.h +@@ -9,7 +9,7 @@ + #include + #include /* for DIR */ + +-#include "trace-cmd.h" ++#include "trace-cmd-private.h" + #include "event-utils.h" + + #define TRACE_AGENT_DEFAULT_PORT 823 +-- +2.29.2 + diff --git a/package/trace-cmd/0002-trace-cmd-make-it-build-against-musl-C-library.patch b/package/trace-cmd/0002-trace-cmd-make-it-build-against-musl-C-library.patch new file mode 100644 index 00000000..64021245 --- /dev/null +++ b/package/trace-cmd/0002-trace-cmd-make-it-build-against-musl-C-library.patch @@ -0,0 +1,140 @@ +From 1a000636c1828eecdcec5360a51623ef4ffbff04 Mon Sep 17 00:00:00 2001 +From: Beniamin Sandu +Date: Mon, 30 Nov 2020 14:27:55 +0200 +Subject: [PATCH] trace-cmd: make it build against musl C library + +* add some missing headers and macros +* set pthread affinity using pthread_setaffinity_np after creating the thread +instead of pthread_attr_setaffinity_np (which seems to not be implemented +in musl) + +Tested using https://musl.cc/x86_64-linux-musl-native.tgz + +Link: https://lore.kernel.org/linux-trace-devel/20201130122755.31000-1-beniaminsandu@gmail.com + +Reviewed-by: Tzvetomir Stoyanov (VMware) +Signed-off-by: Beniamin Sandu +[ Fixed a whitespace issue ] +Signed-off-by: Steven Rostedt (VMware) +[Retrieved from: +https://git.kernel.org/pub/scm/utils/trace-cmd/trace-cmd.git/commit/?id=1a000636c1828eecdcec5360a51623ef4ffbff04] +Signed-off-by: Fabrice Fontaine +--- + .../include/private/trace-cmd-private.h | 1 + + lib/trace-cmd/include/trace-cmd-local.h | 1 + + lib/tracefs/include/tracefs-local.h | 12 ++++++++++++ + lib/tracefs/tracefs-events.c | 1 + + tracecmd/include/trace-local.h | 1 + + tracecmd/trace-tsync.c | 16 +++++++++++----- + 6 files changed, 27 insertions(+), 5 deletions(-) + +diff --git a/lib/trace-cmd/include/private/trace-cmd-private.h b/lib/trace-cmd/include/private/trace-cmd-private.h +index 458760e5..a0dac5da 100644 +--- a/lib/trace-cmd/include/private/trace-cmd-private.h ++++ b/lib/trace-cmd/include/private/trace-cmd-private.h +@@ -6,6 +6,7 @@ + #ifndef _TRACE_CMD_PRIVATE_H + #define _TRACE_CMD_PRIVATE_H + ++#include + #include "traceevent/event-parse.h" + #include "trace-cmd/trace-cmd.h" + +diff --git a/lib/trace-cmd/include/trace-cmd-local.h b/lib/trace-cmd/include/trace-cmd-local.h +index d0a7365a..0cd27441 100644 +--- a/lib/trace-cmd/include/trace-cmd-local.h ++++ b/lib/trace-cmd/include/trace-cmd-local.h +@@ -6,6 +6,7 @@ + #ifndef _TRACE_CMD_LOCAL_H + #define _TRACE_CMD_LOCAL_H + ++#include + #include "trace-cmd-private.h" + + /* Can be overridden */ +diff --git a/lib/tracefs/include/tracefs-local.h b/lib/tracefs/include/tracefs-local.h +index 9cc371b4..bdbf89e8 100644 +--- a/lib/tracefs/include/tracefs-local.h ++++ b/lib/tracefs/include/tracefs-local.h +@@ -13,4 +13,16 @@ void warning(const char *fmt, ...); + int str_read_file(const char *file, char **buffer); + char *trace_append_file(const char *dir, const char *name); + ++#ifndef ACCESSPERMS ++#define ACCESSPERMS (S_IRWXU|S_IRWXG|S_IRWXO) /* 0777 */ ++#endif ++ ++#ifndef ALLPERMS ++#define ALLPERMS (S_ISUID|S_ISGID|S_ISVTX|S_IRWXU|S_IRWXG|S_IRWXO) /* 07777 */ ++#endif ++ ++#ifndef DEFFILEMODE ++#define DEFFILEMODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH) /* 0666*/ ++#endif ++ + #endif /* _TRACE_FS_LOCAL_H */ +diff --git a/lib/tracefs/tracefs-events.c b/lib/tracefs/tracefs-events.c +index 80a25ee5..a4e5215f 100644 +--- a/lib/tracefs/tracefs-events.c ++++ b/lib/tracefs/tracefs-events.c +@@ -13,6 +13,7 @@ + #include + #include + #include ++#include + + #include "kbuffer.h" + #include "tracefs.h" +diff --git a/tracecmd/include/trace-local.h b/tracecmd/include/trace-local.h +index 28d1b4e0..85c7e03e 100644 +--- a/tracecmd/include/trace-local.h ++++ b/tracecmd/include/trace-local.h +@@ -8,6 +8,7 @@ + + #include + #include /* for DIR */ ++#include + + #include "trace-cmd-private.h" + #include "event-utils.h" +diff --git a/tracecmd/trace-tsync.c b/tracecmd/trace-tsync.c +index e639788d..8b9083ae 100644 +--- a/tracecmd/trace-tsync.c ++++ b/tracecmd/trace-tsync.c +@@ -104,13 +104,16 @@ int tracecmd_host_tsync(struct buffer_instance *instance, + + pthread_attr_init(&attrib); + pthread_attr_setdetachstate(&attrib, PTHREAD_CREATE_JOINABLE); +- if (!get_first_cpu(&pin_mask, &mask_size)) +- pthread_attr_setaffinity_np(&attrib, mask_size, pin_mask); + + ret = pthread_create(&instance->tsync_thread, &attrib, + tsync_host_thread, &instance->tsync); +- if (!ret) ++ ++ if (!ret) { ++ if (!get_first_cpu(&pin_mask, &mask_size)) ++ pthread_setaffinity_np(instance->tsync_thread, mask_size, pin_mask); + instance->tsync_thread_running = true; ++ } ++ + if (pin_mask) + CPU_FREE(pin_mask); + pthread_attr_destroy(&attrib); +@@ -243,11 +246,14 @@ unsigned int tracecmd_guest_tsync(char *tsync_protos, + pthread_attr_init(&attrib); + tsync->sync_proto = proto; + pthread_attr_setdetachstate(&attrib, PTHREAD_CREATE_JOINABLE); +- if (!get_first_cpu(&pin_mask, &mask_size)) +- pthread_attr_setaffinity_np(&attrib, mask_size, pin_mask); + + ret = pthread_create(thr_id, &attrib, tsync_agent_thread, tsync); + ++ if (!ret) { ++ if (!get_first_cpu(&pin_mask, &mask_size)) ++ pthread_setaffinity_np(*thr_id, mask_size, pin_mask); ++ } ++ + if (pin_mask) + CPU_FREE(pin_mask); + pthread_attr_destroy(&attrib); diff --git a/package/trace-cmd/0003-trace-cmd-Move-add_event_pid-out-of-ifndef-NO_PTRACE.patch b/package/trace-cmd/0003-trace-cmd-Move-add_event_pid-out-of-ifndef-NO_PTRACE.patch new file mode 100644 index 00000000..ca32e69a --- /dev/null +++ b/package/trace-cmd/0003-trace-cmd-Move-add_event_pid-out-of-ifndef-NO_PTRACE.patch @@ -0,0 +1,51 @@ +From 2f55ded528cfd8ef468bdd1f8bb82dcf1cfae04a Mon Sep 17 00:00:00 2001 +From: "Steven Rostedt (VMware)" +Date: Wed, 16 Dec 2020 18:19:43 -0500 +Subject: [PATCH] trace-cmd: Move add_event_pid() out of #ifndef NO_PTRACE + +When NO_PTRACE is defined, add_event_pid() is also not defined, but it is +used outside of NO_PTRACE pre processor block. And this causes a +"add_event_pid" not defined build failure. + +Link: https://lore.kernel.org/linux-trace-devel/20201216232145.010165486@goodmis.org + +Fixes: 0844cff1c ("trace-cmd: Fix "trace-cmd reset" command to restore the default value of set_event_pid") +Signed-off-by: Steven Rostedt (VMware) +[Retrieved from: +https://git.kernel.org/pub/scm/utils/trace-cmd/trace-cmd.git/commit/?id=2f55ded528cfd8ef468bdd1f8bb82dcf1cfae04a] +Signed-off-by: Fabrice Fontaine +--- + tracecmd/trace-record.c | 12 ++++++------ + 1 file changed, 6 insertions(+), 6 deletions(-) + +diff --git a/tracecmd/trace-record.c b/tracecmd/trace-record.c +index f8baed7d..e2d1cedf 100644 +--- a/tracecmd/trace-record.c ++++ b/tracecmd/trace-record.c +@@ -1312,8 +1312,13 @@ static int trace_wait_for_processes(struct buffer_instance *instance) { + free(pidfds); + return ret; + } +-#ifndef NO_PTRACE + ++static void add_event_pid(struct buffer_instance *instance, const char *buf) ++{ ++ tracefs_instance_file_write(instance->tracefs, "set_event_pid", buf); ++} ++ ++#ifndef NO_PTRACE + /** + * append_pid_filter - add a new pid to an existing filter + * @curr_filter: the filter to append to. If NULL, then allocate one +@@ -1369,11 +1374,6 @@ static void update_sched_events(struct buffer_instance *instance, int pid) + static int open_instance_fd(struct buffer_instance *instance, + const char *file, int flags); + +-static void add_event_pid(struct buffer_instance *instance, const char *buf) +-{ +- tracefs_instance_file_write(instance->tracefs, "set_event_pid", buf); +-} +- + static void add_new_filter_child_pid(int pid, int child) + { + struct buffer_instance *instance; diff --git a/package/trace-cmd/Config.in b/package/trace-cmd/Config.in new file mode 100644 index 00000000..574541c5 --- /dev/null +++ b/package/trace-cmd/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_TRACE_CMD + bool "trace-cmd" + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_MMU # fork() + depends on !BR2_STATIC_LIBS # dlopen() + help + Command line reader for ftrace. + + To use this profiling tool, you should enable ftrace in your + kernel configuration. This command collect traces on your + target. You can analyse these traces on the target or on + the host via the gui "kernel shark" + + http://git.kernel.org/cgit/linux/kernel/git/rostedt/trace-cmd.git + +comment "trace-cmd needs a toolchain w/ threads, dynamic library" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/trace-cmd/trace-cmd.hash b/package/trace-cmd/trace-cmd.hash new file mode 100644 index 00000000..0afde670 --- /dev/null +++ b/package/trace-cmd/trace-cmd.hash @@ -0,0 +1,6 @@ +# Locally computed +sha256 8bab29530cd05272dccab48c9780644758e71ed990ce65c701b9095f7beae417 trace-cmd-trace-cmd-v2.9.1-br1.tar.gz +sha256 b1d04b850c1c7471b0f0896f6c6f0fcfc9f07e2dd183a5f5826af269fe9e88fb COPYING +sha256 70f297763149e72306919c924e164f83041d5e512868d4c8c1826c171b3e49f9 COPYING.LIB +sha256 f6b78c087c3ebdf0f3c13415070dd480a3f35d8fc76f3d02180a407c1c812f79 LICENSES/GPL-2.0 +sha256 0b9a4febcdee6de55872501d5c1a8f5d8b0d1650cd4d5351995ceb22e889f8ca LICENSES/LGPL-2.1 diff --git a/package/trace-cmd/trace-cmd.mk b/package/trace-cmd/trace-cmd.mk new file mode 100644 index 00000000..cd3fcb97 --- /dev/null +++ b/package/trace-cmd/trace-cmd.mk @@ -0,0 +1,54 @@ +################################################################################ +# +# trace-cmd +# +################################################################################ + +TRACE_CMD_VERSION = trace-cmd-v2.9.1 +TRACE_CMD_SITE = https://git.kernel.org/pub/scm/utils/trace-cmd/trace-cmd.git +TRACE_CMD_SITE_METHOD = git +TRACE_CMD_LICENSE = GPL-2.0, LGPL-2.1 +TRACE_CMD_LICENSE_FILES = COPYING COPYING.LIB LICENSES/GPL-2.0 LICENSES/LGPL-2.1 + +TRACE_CMD_DEPENDENCIES = host-pkgconf +TRACE_CMD_MAKE_OPTS = prefix=/usr etcdir=/etc + +ifeq ($(BR2_PACKAGE_AUDIT),y) +TRACE_CMD_DEPENDENCIES += audit +endif + +ifeq ($(BR2_PACKAGE_PYTHON),y) +TRACE_CMD_DEPENDENCIES += python host-swig +TRACE_CMD_MAKE_OPTS += PYTHON_VERS=python +else ifeq ($(BR2_PACKAGE_PYTHON3),y) +TRACE_CMD_DEPENDENCIES += python3 host-swig +TRACE_CMD_MAKE_OPTS += PYTHON_VERS=python3 +else +TRACE_CMD_MAKE_OPTS += NO_PYTHON=1 +endif + +# trace-cmd already defines _LARGEFILE64_SOURCE when necessary, +# redefining it on the command line causes build problems. +TRACE_CMD_CFLAGS = $(filter-out -D_LARGEFILE64_SOURCE,$(TARGET_CFLAGS)) + +# trace-cmd use CPPFLAGS to add some extra flags. +# But like for CFLAGS, $(TARGET_CPPFLAGS) contains _LARGEFILE64_SOURCE +# that causes build problems. +TRACE_CMD_CPPFLAGS = $(filter-out -D_LARGEFILE64_SOURCE,$(TARGET_CPPFLAGS)) + +define TRACE_CMD_BUILD_CMDS + $(TARGET_CONFIGURE_OPTS) \ + CFLAGS="$(TRACE_CMD_CFLAGS)" \ + CPPFLAGS="$(TRACE_CMD_CPPFLAGS)" \ + $(MAKE) $(TRACE_CMD_MAKE_OPTS) -C $(@D) +endef + +define TRACE_CMD_INSTALL_TARGET_CMDS + $(TARGET_CONFIGURE_OPTS) \ + CFLAGS="$(TRACE_CMD_CFLAGS)" \ + CPPFLAGS="$(TRACE_CMD_CPPFLAGS)" \ + DESTDIR=$(TARGET_DIR) \ + $(MAKE) $(TRACE_CMD_MAKE_OPTS) -C $(@D) install +endef + +$(eval $(generic-package)) diff --git a/package/traceroute/Config.in b/package/traceroute/Config.in new file mode 100644 index 00000000..42ae5a30 --- /dev/null +++ b/package/traceroute/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_TRACEROUTE + bool "traceroute" + help + A new modern implementation of the traceroute(8) utility for + Linux systems. It tracks the route packets taken from an IP + network on their way to a given host. + + http://traceroute.sourceforge.net/ diff --git a/package/traceroute/traceroute.hash b/package/traceroute/traceroute.hash new file mode 100644 index 00000000..b9525487 --- /dev/null +++ b/package/traceroute/traceroute.hash @@ -0,0 +1,6 @@ +# Locally computed: +sha256 3669d22a34d3f38ed50caba18cd525ba55c5c00d5465f2d20d7472e5d81603b6 traceroute-2.1.0.tar.gz + +# Hash for license files: +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING +sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LIB diff --git a/package/traceroute/traceroute.mk b/package/traceroute/traceroute.mk new file mode 100644 index 00000000..a02982a6 --- /dev/null +++ b/package/traceroute/traceroute.mk @@ -0,0 +1,24 @@ +################################################################################ +# +# traceroute +# +################################################################################ + +TRACEROUTE_VERSION = 2.1.0 +TRACEROUTE_SITE = http://downloads.sourceforge.net/traceroute/traceroute/traceroute-$(TRACEROUTE_VERSION) + +TRACEROUTE_LICENSE = GPL-2.0+, LGPL-2.1+ +TRACEROUTE_LICENSE_FILES = COPYING COPYING.LIB + +define TRACEROUTE_BUILD_CMDS + $(TARGET_MAKE_ENV) VPATH=$(STAGING_DIR)/usr/lib $(MAKE) $(TARGET_CONFIGURE_OPTS) \ + CFLAGS="$(TARGET_CFLAGS) -D_GNU_SOURCE" -C $(@D) +endef + +define TRACEROUTE_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) \ + DESTDIR=$(TARGET_DIR) prefix=/usr install \ + INSTALL=$(INSTALL) -C $(@D) +endef + +$(eval $(generic-package)) diff --git a/package/transmission/0001-fix-utypes.patch b/package/transmission/0001-fix-utypes.patch new file mode 100644 index 00000000..81efa884 --- /dev/null +++ b/package/transmission/0001-fix-utypes.patch @@ -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 +[Fabrice: adapt to 3.00, which always uses stdbool.h] +Signed-off-by: Fabrice Fontaine +[yann.morin.1998@free.fr: + - don't comment-out dropped code, just drop it + - use CR-LF in replacement code, as used by upstream +] +Signed-off-by: Yann E. MORIN + +--- 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,8 @@ + typedef const char * cstr; + typedef char * str; + +-#ifndef __cplusplus +-typedef uint8 bool; +-#endif ++#ifndef __cplusplus ++#include ++#endif + + #endif //__UTYPES_H__ diff --git a/package/transmission/0002-fix-utp-include.patch b/package/transmission/0002-fix-utp-include.patch new file mode 100644 index 00000000..db8b5ab3 --- /dev/null +++ b/package/transmission/0002-fix-utp-include.patch @@ -0,0 +1,46 @@ +Fix compilation when using system libminiupnpc with libutp disabled + +If transmission uses its own copy of libminiupnpc in third-party/ then +the configure script adds that path to CFLAGS: +https://trac.transmissionbt.com/browser/trunk/configure.ac#L455 + +This path is also added if transmission uses its own copy of libutp: +https://trac.transmissionbt.com/browser/trunk/configure.ac#L349 + +But if a system-provided libminiupnpc is used and utp-support is +disabled using --disable-utp the result is a build error, detected by +buildroot autobuilders: +http://autobuild.buildroot.net/results/b79/b79e51140cb0320554a58ce59dcb33f53cd9211a/build-end.log + +net.c:40:24: fatal error: libutp/utp.h: No such file or directory + +Patch proposed by Yann E. MORIN: +http://lists.busybox.net/pipermail/buildroot/2016-July/167896.html + +Patch sent upstream: https://trac.transmissionbt.com/ticket/6163 + +Signed-off-by: Bernd Kuhls + +diff -uNr transmission-2.92.org/configure.ac transmission-2.92/configure.ac +--- transmission-2.92.org/configure.ac 2016-03-06 21:23:45.336198393 +0100 ++++ transmission-2.92/configure.ac 2016-07-31 12:13:40.921660078 +0200 +@@ -358,6 +358,10 @@ + else + AC_MSG_ERROR("Unable to build uTP support -- C++ compiler not found") + fi ++else ++ # For the system libminiupnpc with UTC disabled, ++ # point to our bundled UTP headers ++ LIBUTP_CFLAGS="-I\$(top_srcdir)/third-party/" + fi + AC_SUBST(LIBUTP_CFLAGS) + AC_SUBST(LIBUTP_LIBS) +@@ -457,7 +461,7 @@ + LIBUPNP_LIBS_QT="\$\${TRANSMISSION_TOP}/third-party/miniupnp/libminiupnp.a" + else + AC_DEFINE([SYSTEM_MINIUPNP]) +- LIBUPNP_CFLAGS="" ++ LIBUPNP_CFLAGS="${LIBUTP_CFLAGS}" + LIBUPNP_LIBS="-lminiupnpc" + LIBUPNP_LIBS_QT="-lminiupnpc" + fi diff --git a/package/transmission/Config.in b/package/transmission/Config.in new file mode 100644 index 00000000..dac4d1b3 --- /dev/null +++ b/package/transmission/Config.in @@ -0,0 +1,47 @@ +config BR2_PACKAGE_TRANSMISSION + bool "transmission" + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_ZLIB + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_LIBCURL + select BR2_PACKAGE_LIBEVENT + help + Transmission is a cross-platform BitTorrent client. + + http://www.transmissionbt.com/ + +if BR2_PACKAGE_TRANSMISSION + +config BR2_PACKAGE_TRANSMISSION_UTP + bool "Transmission uTP support" + depends on BR2_INSTALL_LIBSTDCPP + help + Install support for uTorrent Transport Protocol + +comment "uTP needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP + +config BR2_PACKAGE_TRANSMISSION_CLI + bool "transmission-cli" + help + Install transmission command line interface. + +config BR2_PACKAGE_TRANSMISSION_DAEMON + bool "transmission-daemon" + help + Install transmission daemon. + +config BR2_PACKAGE_TRANSMISSION_GTK + bool "transmission-gtk" + depends on BR2_PACKAGE_LIBGTK3 && BR2_SYSTEM_ENABLE_NLS + help + Install transmission GTK-based GUI interface. + +comment "transmission-gtk needs NLS enabled" + depends on BR2_PACKAGE_LIBGTK3 && !BR2_SYSTEM_ENABLE_NLS +endif + +comment "transmission needs a toolchain w/ threads" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/transmission/S92transmission b/package/transmission/S92transmission new file mode 100644 index 00000000..85ff40ec --- /dev/null +++ b/package/transmission/S92transmission @@ -0,0 +1,156 @@ +#!/bin/sh + +# Original Author: Lennart A. Jtte, based on Rob Howell's script +# Modified by Maarten Van Coile & others (on IRC) + +# Changes for buildroot: +# USERNAME points to 'default' in standard installation +# TODO: set logfile with --logfile option + +# Do NOT "set -e" + +# +# ----- CONFIGURATION ----- +# +# For the default location Transmission uses, visit: +# http://trac.transmissionbt.com/wiki/ConfigFiles +# For a guide on how set the preferences, visit: +# http://trac.transmissionbt.com/wiki/EditConfigFiles +# For the available environement variables, visit: +# http://trac.transmissionbt.com/wiki/EnvironmentVariables +# +# The name of the user that should run Transmission. +# It's RECOMENDED to run Transmission in it's own user, +# by default, this is set to 'transmission'. +# For the sake of security you shouldn't set a password +# on this user +USERNAME=transmission + + +# ----- *ADVANCED* CONFIGURATION ----- +# Only change these options if you know what you are doing! +# +# The folder where Transmission stores the config & web files. +# ONLY change this you have it at a non-default location +#TRANSMISSION_HOME="/var/config/transmission-daemon" +#TRANSMISSION_WEB_HOME="/usr/share/transmission/web" +# +# The arguments passed on to transmission-daemon. +# ONLY change this you need to, otherwise use the +# settings file as per above. +#TRANSMISSION_ARGS="" + + +# ----- END OF CONFIGURATION ----- +# +# PATH should only include /usr/* if it runs after the mountnfs.sh script. +PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin +DESC="bittorrent client" +NAME=transmission-daemon +DAEMON=$(which $NAME) +PIDFILE=/var/run/$NAME.pid +SCRIPTNAME=/etc/init.d/$NAME + +# Read configuration variable file if it is present +[ -r /etc/default/$NAME ] && . /etc/default/$NAME + +# Load the VERBOSE setting and other rcS variables +[ -f /etc/default/rcS ] && . /etc/default/rcS + +# +# Function that starts the daemon/service +# + +start() +{ + # Export the configuration/web directory, if set + if [ -n "$TRANSMISSION_HOME" ]; then + export TRANSMISSION_HOME + fi + if [ -n "$TRANSMISSION_WEB_HOME" ]; then + export TRANSMISSION_WEB_HOME + fi + + # Return + # 0 if daemon has been started + # 1 if daemon was already running + # 2 if daemon could not be started + start-stop-daemon --chuid $USERNAME --start --pidfile $PIDFILE --make-pidfile \ + --exec $DAEMON --background --test -- -f $TRANSMISSION_ARGS > /dev/null \ + || return 1 + start-stop-daemon --chuid $USERNAME --start --pidfile $PIDFILE --make-pidfile \ + --exec $DAEMON --background -- -f $TRANSMISSION_ARGS \ + || return 2 +} + +# +# Function that stops the daemon/service +# +stop() +{ + # Return + # 0 if daemon has been stopped + # 1 if daemon was already stopped + # 2 if daemon could not be stopped + # other if a failure occurred + start-stop-daemon --stop --quiet --retry=TERM/10/KILL/5 --pidfile $PIDFILE --exec $DAEMON + RETVAL="$?" + [ "$RETVAL" = 2 ] && return 2 + + # Wait for children to finish too if this is a daemon that forks + # and if the daemon is only ever run from this initscript. + # If the above conditions are not satisfied then add some other code + # that waits for the process to drop all resources that could be + # needed by services started subsequently. A last resort is to + # sleep for some time. + + start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON + [ "$?" = 2 ] && return 2 + + # Many daemons don't delete their pidfiles when they exit. + rm -f $PIDFILE + + return "$RETVAL" +} + +case "$1" in + start) + echo "Starting $DESC" "$NAME..." + start + case "$?" in + 0|1) echo " Starting $DESC $NAME succeeded" ;; + *) echo " Starting $DESC $NAME failed" ;; + esac + ;; + stop) + echo "Stopping $DESC $NAME..." + stop + case "$?" in + 0|1) echo " Stopping $DESC $NAME succeeded" ;; + *) echo " Stopping $DESC $NAME failed" ;; + esac + ;; + restart|force-reload) + # + # If the "reload" option is implemented then remove the + # 'force-reload' alias + # + echo "Restarting $DESC $NAME..." + stop + case "$?" in + 0|1) + start + case "$?" in + 0|1) echo " Restarting $DESC $NAME succeeded" ;; + *) echo " Restarting $DESC $NAME failed: couldn't start $NAME" ;; + esac + ;; + *) + echo " Restarting $DESC $NAME failed: couldn't stop $NAME" ;; + esac + ;; + *) + echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2 + exit 3 + ;; +esac diff --git a/package/transmission/transmission.hash b/package/transmission/transmission.hash new file mode 100644 index 00000000..13cbc969 --- /dev/null +++ b/package/transmission/transmission.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 9144652fe742f7f7dd6657716e378da60b751aaeda8bef8344b3eefc4db255f2 transmission-3.00.tar.xz +sha256 2b16da5bd02790d1e4d332cfd42b9dfd7d1b0ed3a16a75dc7e76b6ed239fdba9 COPYING diff --git a/package/transmission/transmission.mk b/package/transmission/transmission.mk new file mode 100644 index 00000000..1660d2c2 --- /dev/null +++ b/package/transmission/transmission.mk @@ -0,0 +1,83 @@ +################################################################################ +# +# transmission +# +################################################################################ + +TRANSMISSION_VERSION = 3.00 +TRANSMISSION_SITE = https://github.com/transmission/transmission-releases/raw/master +TRANSMISSION_SOURCE = transmission-$(TRANSMISSION_VERSION).tar.xz +TRANSMISSION_DEPENDENCIES = \ + host-pkgconf \ + host-intltool \ + libcurl \ + libevent \ + openssl \ + zlib +TRANSMISSION_AUTORECONF = YES +TRANSMISSION_CONF_OPTS = \ + --without-inotify \ + --enable-lightweight +TRANSMISSION_LICENSE = GPL-2.0 or GPL-3.0 with OpenSSL exception +TRANSMISSION_LICENSE_FILES = COPYING +TRANSMISSION_CPE_ID_VENDOR = transmissionbt + +ifeq ($(BR2_PACKAGE_LIBMINIUPNPC),y) +TRANSMISSION_DEPENDENCIES += libminiupnpc +endif + +ifeq ($(BR2_PACKAGE_LIBNATPMP),y) +TRANSMISSION_DEPENDENCIES += libnatpmp +TRANSMISSION_CONF_OPTS += --enable-external-natpmp +else +TRANSMISSION_CONF_OPTS += --disable-external-natpmp +endif + +ifeq ($(BR2_PACKAGE_TRANSMISSION_UTP),y) +TRANSMISSION_CONF_OPTS += --enable-utp +else +TRANSMISSION_CONF_OPTS += --disable-utp +endif + +ifeq ($(BR2_PACKAGE_TRANSMISSION_CLI),y) +TRANSMISSION_CONF_OPTS += --enable-cli +else +TRANSMISSION_CONF_OPTS += --disable-cli +endif + +ifeq ($(BR2_PACKAGE_TRANSMISSION_DAEMON),y) +TRANSMISSION_CONF_OPTS += --enable-daemon + +ifeq ($(BR2_PACKAGE_SYSTEMD),y) +TRANSMISSION_DEPENDENCIES += systemd +TRANSMISSION_CONF_OPTS += --with-systemd +else +TRANSMISSION_CONF_OPTS += --without-systemd +endif + +define TRANSMISSION_USERS + transmission -1 transmission -1 * /var/lib/transmission - transmission Transmission Daemon +endef + +define TRANSMISSION_INSTALL_INIT_SYSV + $(INSTALL) -m 0755 -D package/transmission/S92transmission \ + $(TARGET_DIR)/etc/init.d/S92transmission +endef + +define TRANSMISSION_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 0644 $(@D)/daemon/transmission-daemon.service \ + $(TARGET_DIR)/usr/lib/systemd/system/transmission-daemon.service +endef + +else +TRANSMISSION_CONF_OPTS += --disable-daemon +endif + +ifeq ($(BR2_PACKAGE_TRANSMISSION_GTK),y) +TRANSMISSION_CONF_OPTS += --with-gtk +TRANSMISSION_DEPENDENCIES += libgtk3 +else +TRANSMISSION_CONF_OPTS += --without-gtk +endif + +$(eval $(autotools-package)) diff --git a/package/tree/Config.in b/package/tree/Config.in new file mode 100644 index 00000000..234995f1 --- /dev/null +++ b/package/tree/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_TREE + bool "tree" + depends on BR2_USE_WCHAR + help + Tree is a recursive directory listing command that produces + a depth indented listing of files, which is colorized ala + dircolors if the LS_COLORS environment variable is set and + output is to tty. + + http://mama.indstate.edu/users/ice/tree/ + +comment "tree needs a toolchain w/ wchar" + depends on !BR2_USE_WCHAR diff --git a/package/tree/tree.hash b/package/tree/tree.hash new file mode 100644 index 00000000..6bffaa5e --- /dev/null +++ b/package/tree/tree.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 715d5d4b434321ce74706d0dd067505bb60c5ea83b5f0b3655dae40aa6f9b7c2 tree-1.8.0.tgz +sha256 204d8eff92f95aac4df6c8122bc1505f468f3a901e5a4cc08940e0ede1938994 LICENSE diff --git a/package/tree/tree.mk b/package/tree/tree.mk new file mode 100644 index 00000000..b6c63c02 --- /dev/null +++ b/package/tree/tree.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# tree +# +################################################################################ + +TREE_VERSION = 1.8.0 +TREE_SOURCE = tree-$(TREE_VERSION).tgz +TREE_SITE = http://mama.indstate.edu/users/ice/tree/src +TREE_LICENSE = GPL-2.0+ +TREE_LICENSE_FILES = LICENSE + +define TREE_BUILD_CMDS + $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) +endef + +define TREE_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/tree $(TARGET_DIR)/usr/bin/tree +endef + +$(eval $(generic-package)) diff --git a/package/tremor/Config.in b/package/tremor/Config.in new file mode 100644 index 00000000..ec7b8f8c --- /dev/null +++ b/package/tremor/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_TREMOR + bool "tremor (fixed point vorbis decoder)" + select BR2_PACKAGE_LIBOGG + help + Tremor is a fixed point implementation of an Ogg Vorbis + decoder. It provides a decoding API similar to libvorbis, + but gives much better performance on systems without a + floating-point unit. + + https://wiki.xiph.org/Tremor diff --git a/package/tremor/tremor.hash b/package/tremor/tremor.hash new file mode 100644 index 00000000..89d8bde8 --- /dev/null +++ b/package/tremor/tremor.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 a387ebb4536ca98034eb91855616b971b0a85575943699b2a6d0be79b4a9f6a9 tremor-7c30a66346199f3f09017a09567c6c8a3a0eedc8-br1.tar.gz +sha256 d2ab5758336489da61c12cc5bb757da5339c4ae9001f9bb0562b4370249af814 COPYING diff --git a/package/tremor/tremor.mk b/package/tremor/tremor.mk new file mode 100644 index 00000000..a865e681 --- /dev/null +++ b/package/tremor/tremor.mk @@ -0,0 +1,32 @@ +################################################################################ +# +# tremor +# +################################################################################ + +TREMOR_VERSION = 7c30a66346199f3f09017a09567c6c8a3a0eedc8 +TREMOR_SITE = https://gitlab.xiph.org/xiph/tremor.git +TREMOR_SITE_METHOD = git +TREMOR_LICENSE = BSD-3-Clause +TREMOR_LICENSE_FILES = COPYING + +TREMOR_AUTORECONF = YES +TREMOR_INSTALL_STAGING = YES +TREMOR_DEPENDENCIES = libogg + +# tremor has ARM assembly code that cannot be compiled in Thumb2 mode, +# so we must force the traditional ARM mode. +# However, some ARM architectures like ARNv7-M only supports Thumb +# instructions, but the tremor build configuration enables ARM assembly +# code unconditionally for all arm triplets by defining _ARM_ASSEM_. +# We are overriding this by undefining this macro for the ARM +# architectures not supporting ARM instructions. +ifeq ($(BR2_arm),y) +ifeq ($(BR2_ARM_CPU_HAS_ARM),y) +TREMOR_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) -marm" +else +TREMOR_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) -U_ARM_ASSEM_" +endif +endif + +$(eval $(autotools-package)) diff --git a/package/triggerhappy/Config.in b/package/triggerhappy/Config.in new file mode 100644 index 00000000..a7864b37 --- /dev/null +++ b/package/triggerhappy/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_TRIGGERHAPPY + bool "triggerhappy" + depends on BR2_USE_MMU # fork() + help + Triggerhappy is a hotkey daemon developed with small and + embedded systems in mind, e.g. linux based routers. It + attaches to the input device files and interprets the event + data received and executes scripts configured in its + configuration. + + https://github.com/wertarbyte/triggerhappy diff --git a/package/triggerhappy/S10triggerhappy b/package/triggerhappy/S10triggerhappy new file mode 100644 index 00000000..48538730 --- /dev/null +++ b/package/triggerhappy/S10triggerhappy @@ -0,0 +1,36 @@ +#!/bin/sh + +NAME=thd +PIDFILE=/var/run/$NAME.pid +DAEMON_ARGS="--daemon --triggers /etc/triggerhappy/triggers.d --socket /var/run/thd.socket --pidfile $PIDFILE --user nobody /dev/input/event*" + +[ -r /etc/default/triggerhappy ] && . /etc/default/triggerhappy + +start() { + printf "Starting $NAME: " + start-stop-daemon --start --quiet --pidfile $PIDFILE --exec /usr/sbin/thd -- $DAEMON_ARGS \ + && echo "OK" || echo "FAIL" +} + +stop() { + printf "Stopping $NAME: " + start-stop-daemon --stop --quiet --pidfile $PIDFILE \ + && echo "OK" || echo "FAIL" +} + +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart) + stop + sleep 1 + start + ;; + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac diff --git a/package/triggerhappy/triggerhappy.hash b/package/triggerhappy/triggerhappy.hash new file mode 100644 index 00000000..ab736cad --- /dev/null +++ b/package/triggerhappy/triggerhappy.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 1b3221963b9adca26eacc5442d8c2422cf2072f8adde1dbd691a69b37a583fb1 triggerhappy-b822888066129350e51ad79f1cf307fa38dae4f7.tar.gz +sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING diff --git a/package/triggerhappy/triggerhappy.mk b/package/triggerhappy/triggerhappy.mk new file mode 100644 index 00000000..f83a5578 --- /dev/null +++ b/package/triggerhappy/triggerhappy.mk @@ -0,0 +1,46 @@ +################################################################################ +# +# triggerhappy +# +################################################################################ + +TRIGGERHAPPY_VERSION = b822888066129350e51ad79f1cf307fa38dae4f7 +TRIGGERHAPPY_SITE = $(call github,wertarbyte,triggerhappy,$(TRIGGERHAPPY_VERSION)) +TRIGGERHAPPY_LICENSE = GPL-3.0+ +TRIGGERHAPPY_LICENSE_FILES = COPYING +TRIGGERHAPPY_DEPENDENCIES = host-pkgconf + +ifeq ($(BR2_PACKAGE_SYSTEMD),y) +TRIGGERHAPPY_DEPENDENCIES += systemd +endif + +define TRIGGERHAPPY_BUILD_CMDS + $(MAKE) $(TARGET_CONFIGURE_OPTS) PKGCONFIG="$(PKG_CONFIG_HOST_BINARY)" \ + -C $(@D) thd th-cmd +endef + +ifeq ($(BR2_PACKAGE_HAS_UDEV),y) +define TRIGGERHAPPY_INSTALL_UDEV_RULE + $(INSTALL) -D -m 0644 $(@D)/udev/triggerhappy-udev.rules \ + $(TARGET_DIR)/lib/udev/rules.d/triggerhappy.rules +endef +endif + +define TRIGGERHAPPY_INSTALL_TARGET_CMDS + $(INSTALL) -d $(TARGET_DIR)/etc/triggerhappy/triggers.d + $(INSTALL) -D -m 0755 $(@D)/thd $(TARGET_DIR)/usr/sbin/thd + $(INSTALL) -D -m 0755 $(@D)/th-cmd $(TARGET_DIR)/usr/sbin/th-cmd + $(TRIGGERHAPPY_INSTALL_UDEV_RULE) +endef + +define TRIGGERHAPPY_INSTALL_INIT_SYSV + $(INSTALL) -m 0755 -D package/triggerhappy/S10triggerhappy \ + $(TARGET_DIR)/etc/init.d/S10triggerhappy +endef + +define TRIGGERHAPPY_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 644 package/triggerhappy/triggerhappy.service \ + $(TARGET_DIR)/usr/lib/systemd/system/triggerhappy.service +endef + +$(eval $(generic-package)) diff --git a/package/triggerhappy/triggerhappy.service b/package/triggerhappy/triggerhappy.service new file mode 100644 index 00000000..8431afe9 --- /dev/null +++ b/package/triggerhappy/triggerhappy.service @@ -0,0 +1,9 @@ +[Unit] +Description=Triggerhappy daemon + +[Service] +ExecStart=/usr/sbin/thd --triggers /etc/triggerhappy/triggers.d --socket /var/run/thd.socket --user nobody --deviceglob /dev/input/event* +Restart=always + +[Install] +WantedBy=multi-user.target diff --git a/package/trinity/0001-Fix-build-with-GCC-10.patch b/package/trinity/0001-Fix-build-with-GCC-10.patch new file mode 100644 index 00000000..5ae3735d --- /dev/null +++ b/package/trinity/0001-Fix-build-with-GCC-10.patch @@ -0,0 +1,38 @@ +From e53e25cc8dd5bdb5f7d9b4247de9e9921eec81d8 Mon Sep 17 00:00:00 2001 +From: Vinson Lee +Date: Thu, 30 Jan 2020 22:09:45 -0800 +Subject: [PATCH] Fix build with GCC 10. + + CC trinity +/usr/bin/ld: debug.o:include/logfile.h:8: multiple definition of `mainlogfile'; child.o:include/logfile.h:8: first defined here +/usr/bin/ld: log-files.o:include/logfile.h:8: multiple definition of `mainlogfile'; child.o:include/logfile.h:8: first defined here +/usr/bin/ld: log.o:include/logfile.h:8: multiple definition of `mainlogfile'; child.o:include/logfile.h:8: first defined here +/usr/bin/ld: main.o:include/logfile.h:8: multiple definition of `mainlogfile'; child.o:include/logfile.h:8: first defined here +/usr/bin/ld: output.o:include/logfile.h:8: multiple definition of `mainlogfile'; child.o:include/logfile.h:8: first defined here +/usr/bin/ld: params.o:include/logfile.h:8: multiple definition of `mainlogfile'; child.o:include/logfile.h:8: first defined here +/usr/bin/ld: shm.o:include/logfile.h:8: multiple definition of `mainlogfile'; child.o:include/logfile.h:8: first defined here +/usr/bin/ld: trinity.o:include/logfile.h:8: multiple definition of `mainlogfile'; child.o:include/logfile.h:8: first defined here + +Fixes: 13856316c259 ("reinstate the log-to-file code for now.") +Signed-off-by: Vinson Lee + +[Retrieved from: +https://github.com/kernelslacker/trinity/commit/e53e25cc8dd5bdb5f7d9b4247de9e9921eec81d8] +Signed-off-by: Fabrice Fontaine +--- + include/logfile.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/include/logfile.h b/include/logfile.h +index 90ea8b23..2305ac15 100644 +--- a/include/logfile.h ++++ b/include/logfile.h +@@ -5,7 +5,7 @@ + FILE *find_logfile_handle(void); + void synclogs(void); + +-FILE *mainlogfile; ++extern FILE *mainlogfile; + void open_main_logfile(void); + void close_logfile(FILE **handle); + diff --git a/package/trinity/Config.in b/package/trinity/Config.in new file mode 100644 index 00000000..31a93057 --- /dev/null +++ b/package/trinity/Config.in @@ -0,0 +1,21 @@ +config BR2_PACKAGE_TRINITY_ARCH_SUPPORTS + bool + default y + depends on BR2_USE_MMU # fork() + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # __sync_val_compare_and_swap_4 + depends on BR2_aarch64 || BR2_arm || BR2_armeb || BR2_i386 || \ + BR2_mips || BR2_mipsel || BR2_powerpc || BR2_powerpc64 || \ + BR2_powerpc64le || BR2_sparc || BR2_x86_64 + +config BR2_PACKAGE_TRINITY + bool "trinity" + depends on BR2_PACKAGE_TRINITY_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 # IPV6_UNICAST_IF + help + A Linux System call fuzz tester + + http://codemonkey.org.uk/projects/trinity/ + +comment "trinity needs a toolchain w/ headers >= 3.4" + depends on BR2_PACKAGE_TRINITY_ARCH_SUPPORTS + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 diff --git a/package/trinity/trinity.hash b/package/trinity/trinity.hash new file mode 100644 index 00000000..f7522514 --- /dev/null +++ b/package/trinity/trinity.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 7e0da953c2cc6fb3907d1f37d35f61836433fb50e97117a72eef113abb783dc6 trinity-1.9.tar.xz +sha256 35e3fc68c89fd7b8f72fd910b521cb3292f859e9181f3c26bd0df84d144bc1d4 COPYING diff --git a/package/trinity/trinity.mk b/package/trinity/trinity.mk new file mode 100644 index 00000000..befb8de8 --- /dev/null +++ b/package/trinity/trinity.mk @@ -0,0 +1,33 @@ +################################################################################ +# +# trinity +# +################################################################################ + +TRINITY_VERSION = 1.9 +TRINITY_SITE = http://codemonkey.org.uk/projects/trinity +TRINITY_SOURCE = trinity-$(TRINITY_VERSION).tar.xz +TRINITY_LICENSE = GPL-2.0 +TRINITY_LICENSE_FILES = COPYING +TRINITY_CPE_ID_VENDOR = trinity_project + +define TRINITY_CONFIGURE_CMDS + (cd $(@D); $(TARGET_CONFIGURE_OPTS) ./configure) +endef + +define TRINITY_BUILD_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) +endef + +define TRINITY_INSTALL_TARGET_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR)/usr install +endef + +# Install helper scripts +define TRINITY_INSTALL_HELPER_SCRIPTS + mkdir -p $(TARGET_DIR)/usr/libexec/trinity + cp -p $(@D)/scripts/* $(TARGET_DIR)/usr/libexec/trinity/ +endef +TRINITY_POST_INSTALL_TARGET_HOOKS += TRINITY_INSTALL_HELPER_SCRIPTS + +$(eval $(generic-package)) diff --git a/package/trousers/0001-Check-if-the-compiler-understands-pie-and-relro-options.patch b/package/trousers/0001-Check-if-the-compiler-understands-pie-and-relro-options.patch new file mode 100644 index 00000000..b1179eb4 --- /dev/null +++ b/package/trousers/0001-Check-if-the-compiler-understands-pie-and-relro-options.patch @@ -0,0 +1,214 @@ +From 9abda1bb380bdbef1affaec381742ced394ca118 Mon Sep 17 00:00:00 2001 +From: Lada Trimasova +Date: Mon, 18 Jan 2016 15:58:19 +0300 +Subject: [PATCH] Check if the compiler understands pie and relro options + +-pie and -fpie enable the building of position-independent +executables, and -Wl,-z,relro turns on read-only relocation support in gcc. +Add checks to ensure that the compiler and linker understand these options. + +Signed-off-by: Lada Trimasova +[Bernd: Rebased for version 0.3.14] +Signed-off-by: Bernd Kuhls +--- + configure.ac | 5 +++ + m4/ax_check_compile_flag.m4 | 72 ++++++++++++++++++++++++++++++++++++ + m4/ax_check_link_flag.m4 | 71 +++++++++++++++++++++++++++++++++++ + src/tcsd/Makefile.am | 4 +- + 4 files changed, 150 insertions(+), 2 deletions(-) + create mode 100644 m4/ax_check_compile_flag.m4 + create mode 100644 m4/ax_check_link_flag.m4 + +diff --git a/configure.in b/configure.in +index add23dc..9603353 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -12,6 +12,7 @@ TSS_VER_MINOR=3 + # compute $target + AC_CANONICAL_TARGET + AM_INIT_AUTOMAKE([foreign subdir-objects 1.6]) ++AC_CONFIG_MACRO_DIR([m4]) + + # Debugging support + AC_ARG_ENABLE([debug], +@@ -383,6 +384,10 @@ elif test x"${prefix}" = x"NONE"; then + localstatedir="/usr/local/var" + fi + ++AX_CHECK_COMPILE_FLAG([-fPIE -DPIE], [PIE_CFLAGS="-fPIE -DPIE"]) ++AX_CHECK_LINK_FLAG([-pie], [PIE_LDFLAGS="$PIE_LDFLAGS -pie"]) ++AX_CHECK_LINK_FLAG([-Wl,-z,relro], [LDFLAGS="$LDFLAGS -Wl,-z,relro"]) ++ + AC_OUTPUT(dist/tcsd.conf \ + dist/fedora/trousers.spec \ + dist/trousers.spec \ +diff --git a/m4/ax_check_compile_flag.m4 b/m4/ax_check_compile_flag.m4 +new file mode 100644 +index 0000000..c3a8d69 +--- /dev/null ++++ b/m4/ax_check_compile_flag.m4 +@@ -0,0 +1,72 @@ ++# =========================================================================== ++# http://www.gnu.org/software/autoconf-archive/ax_check_compile_flag.html ++# =========================================================================== ++# ++# SYNOPSIS ++# ++# AX_CHECK_COMPILE_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS]) ++# ++# DESCRIPTION ++# ++# Check whether the given FLAG works with the current language's compiler ++# or gives an error. (Warnings, however, are ignored) ++# ++# ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on ++# success/failure. ++# ++# If EXTRA-FLAGS is defined, it is added to the current language's default ++# flags (e.g. CFLAGS) when the check is done. The check is thus made with ++# the flags: "CFLAGS EXTRA-FLAGS FLAG". This can for example be used to ++# force the compiler to issue an error when a bad flag is given. ++# ++# NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this ++# macro in sync with AX_CHECK_{PREPROC,LINK}_FLAG. ++# ++# LICENSE ++# ++# Copyright (c) 2008 Guido U. Draheim ++# Copyright (c) 2011 Maarten Bosmans ++# ++# 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 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, see . ++# ++# As a special exception, the respective Autoconf Macro's copyright owner ++# gives unlimited permission to copy, distribute and modify the configure ++# scripts that are the output of Autoconf when processing the Macro. You ++# need not follow the terms of the GNU General Public License when using ++# or distributing such scripts, even though portions of the text of the ++# Macro appear in them. The GNU General Public License (GPL) does govern ++# all other use of the material that constitutes the Autoconf Macro. ++# ++# This special exception to the GPL applies to versions of the Autoconf ++# Macro released by the Autoconf Archive. When you make and distribute a ++# modified version of the Autoconf Macro, you may extend this special ++# exception to the GPL to apply to your modified version as well. ++ ++#serial 2 ++ ++AC_DEFUN([AX_CHECK_COMPILE_FLAG], ++[AC_PREREQ(2.59)dnl for _AC_LANG_PREFIX ++AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_[]_AC_LANG_ABBREV[]flags_$4_$1])dnl ++AC_CACHE_CHECK([whether _AC_LANG compiler accepts $1], CACHEVAR, [ ++ ax_check_save_flags=$[]_AC_LANG_PREFIX[]FLAGS ++ _AC_LANG_PREFIX[]FLAGS="$[]_AC_LANG_PREFIX[]FLAGS $4 $1" ++ AC_COMPILE_IFELSE([AC_LANG_PROGRAM()], ++ [AS_VAR_SET(CACHEVAR,[yes])], ++ [AS_VAR_SET(CACHEVAR,[no])]) ++ _AC_LANG_PREFIX[]FLAGS=$ax_check_save_flags]) ++AS_IF([test x"AS_VAR_GET(CACHEVAR)" = xyes], ++ [m4_default([$2], :)], ++ [m4_default([$3], :)]) ++AS_VAR_POPDEF([CACHEVAR])dnl ++])dnl AX_CHECK_COMPILE_FLAGS +diff --git a/m4/ax_check_link_flag.m4 b/m4/ax_check_link_flag.m4 +new file mode 100644 +index 0000000..e2d0d36 +--- /dev/null ++++ b/m4/ax_check_link_flag.m4 +@@ -0,0 +1,71 @@ ++# =========================================================================== ++# http://www.gnu.org/software/autoconf-archive/ax_check_link_flag.html ++# =========================================================================== ++# ++# SYNOPSIS ++# ++# AX_CHECK_LINK_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS]) ++# ++# DESCRIPTION ++# ++# Check whether the given FLAG works with the linker or gives an error. ++# (Warnings, however, are ignored) ++# ++# ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on ++# success/failure. ++# ++# If EXTRA-FLAGS is defined, it is added to the linker's default flags ++# when the check is done. The check is thus made with the flags: "LDFLAGS ++# EXTRA-FLAGS FLAG". This can for example be used to force the linker to ++# issue an error when a bad flag is given. ++# ++# NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this ++# macro in sync with AX_CHECK_{PREPROC,COMPILE}_FLAG. ++# ++# LICENSE ++# ++# Copyright (c) 2008 Guido U. Draheim ++# Copyright (c) 2011 Maarten Bosmans ++# ++# 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 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, see . ++# ++# As a special exception, the respective Autoconf Macro's copyright owner ++# gives unlimited permission to copy, distribute and modify the configure ++# scripts that are the output of Autoconf when processing the Macro. You ++# need not follow the terms of the GNU General Public License when using ++# or distributing such scripts, even though portions of the text of the ++# Macro appear in them. The GNU General Public License (GPL) does govern ++# all other use of the material that constitutes the Autoconf Macro. ++# ++# This special exception to the GPL applies to versions of the Autoconf ++# Macro released by the Autoconf Archive. When you make and distribute a ++# modified version of the Autoconf Macro, you may extend this special ++# exception to the GPL to apply to your modified version as well. ++ ++#serial 2 ++ ++AC_DEFUN([AX_CHECK_LINK_FLAG], ++[AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_ldflags_$4_$1])dnl ++AC_CACHE_CHECK([whether the linker accepts $1], CACHEVAR, [ ++ ax_check_save_flags=$LDFLAGS ++ LDFLAGS="$LDFLAGS $4 $1" ++ AC_LINK_IFELSE([AC_LANG_PROGRAM()], ++ [AS_VAR_SET(CACHEVAR,[yes])], ++ [AS_VAR_SET(CACHEVAR,[no])]) ++ LDFLAGS=$ax_check_save_flags]) ++AS_IF([test x"AS_VAR_GET(CACHEVAR)" = xyes], ++ [m4_default([$2], :)], ++ [m4_default([$3], :)]) ++AS_VAR_POPDEF([CACHEVAR])dnl ++])dnl AX_CHECK_LINK_FLAGS +diff --git a/src/tcsd/Makefile.am b/src/tcsd/Makefile.am +index 2210734..6640ab2 100644 +--- a/src/tcsd/Makefile.am ++++ b/src/tcsd/Makefile.am +@@ -1,8 +1,8 @@ + sbin_PROGRAMS=tcsd + +-tcsd_CFLAGS=-DAPPID=\"TCSD\" -DVAR_PREFIX=\"@localstatedir@\" -DETC_PREFIX=\"@sysconfdir@\" -I${top_srcdir}/src/include -fPIE -DPIE ++tcsd_CFLAGS=-DAPPID=\"TCSD\" -DVAR_PREFIX=\"@localstatedir@\" -DETC_PREFIX=\"@sysconfdir@\" -I${top_srcdir}/src/include $(PIE_CFLAGS) + tcsd_LDADD=${top_builddir}/src/tcs/libtcs.a ${top_builddir}/src/tddl/libtddl.a -lpthread @CRYPTOLIB@ +-tcsd_LDFLAGS=@TCSD_LDFLAGS@ ++tcsd_LDFLAGS=$(PIE_LDFLAGS) $(RELRO_LDFLAGS) + tcsd_SOURCES=svrside.c tcsd_conf.c tcsd_threads.c platform.c + + if TSS_BUILD_PS diff --git a/package/trousers/0002-Check-that-getpwent_r-is-available-before-using-it.patch b/package/trousers/0002-Check-that-getpwent_r-is-available-before-using-it.patch new file mode 100644 index 00000000..ab2418c7 --- /dev/null +++ b/package/trousers/0002-Check-that-getpwent_r-is-available-before-using-it.patch @@ -0,0 +1,82 @@ +From 9e42c405f30d2b52d019598436ea346ef8586f43 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?No=C3=A9=20Rubinstein?= +Date: Wed, 24 Aug 2016 18:55:25 +0200 +Subject: [PATCH] Check that getpwent_r is available before using it + +This fixes building trousers with musl + +Signed-off-by: Noé Rubinstein +[Bernd: Rebased for version 0.3.14] +Signed-off-by: Bernd Kuhls +--- + configure.ac | 4 ++++ + src/tspi/ps/tspps.c | 10 +++++----- + 2 files changed, 9 insertions(+), 5 deletions(-) + +diff --git a/configure.in b/configure.in +index fd3f5f1..e3d7acf 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -145,6 +145,10 @@ else + AC_MSG_ERROR(["gtk", "openssl" and "none" are the only supported gui options for trousers]) + fi + ++# Look for getpwent_r. If it is not found, getpwent will be used instead, with ++# an additional mutex. ++AC_CHECK_FUNC(getpwent_r, [AC_DEFINE(HAVE_GETPWENT_R)]) ++ + # + # The default port that the TCS daemon listens on + # +diff --git a/src/tspi/ps/tspps.c b/src/tspi/ps/tspps.c +index c6f9c3d..9d00d2a 100644 +--- a/src/tspi/ps/tspps.c ++++ b/src/tspi/ps/tspps.c +@@ -45,7 +45,7 @@ + + static int user_ps_fd = -1; + static MUTEX_DECLARE_INIT(user_ps_lock); +-#if (defined (__FreeBSD__) || defined (__OpenBSD__)) ++#ifndef HAVE_GETPWENT_R + static MUTEX_DECLARE_INIT(user_ps_path); + #endif + static struct flock fl; +@@ -60,7 +60,7 @@ get_user_ps_path(char **file) + TSS_RESULT result; + char *file_name = NULL, *home_dir = NULL; + struct passwd *pwp; +-#if (defined (__linux) || defined (linux) || defined(__GLIBC__)) ++#ifdef HAVE_GETPWENT_R + struct passwd pw; + #endif + struct stat stat_buf; +@@ -72,7 +72,7 @@ get_user_ps_path(char **file) + *file = strdup(file_name); + return (*file) ? TSS_SUCCESS : TSPERR(TSS_E_OUTOFMEMORY); + } +-#if (defined (__FreeBSD__) || defined (__OpenBSD__)) ++#ifndef HAVE_GETPWENT_R + MUTEX_LOCK(user_ps_path); + #endif + +@@ -90,7 +90,7 @@ get_user_ps_path(char **file) + #else + setpwent(); + while (1) { +-#if (defined (__linux) || defined (linux) || defined(__GLIBC__)) ++#ifdef HAVE_GETPWENT_R + rc = getpwent_r(&pw, buf, PASSWD_BUFSIZE, &pwp); + if (rc) { + LogDebugFn("USER PS: Error getting path to home directory: getpwent_r: %s", +@@ -99,7 +99,7 @@ get_user_ps_path(char **file) + return TSPERR(TSS_E_INTERNAL_ERROR); + } + +-#elif (defined (__FreeBSD__) || defined (__OpenBSD__)) ++#else + if ((pwp = getpwent()) == NULL) { + LogDebugFn("USER PS: Error getting path to home directory: getpwent: %s", + strerror(rc)); +-- +2.1.4 + diff --git a/package/trousers/Config.in b/package/trousers/Config.in new file mode 100644 index 00000000..998df983 --- /dev/null +++ b/package/trousers/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_TROUSERS + bool "trousers" + depends on BR2_TOOLCHAIN_HAS_THREADS + # doesn't build properly in static only configurations + depends on !BR2_STATIC_LIBS + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE + help + The open-source TCG Software Stack (TSS). + + This library enables the use of a Trusted Platform Module + that complies with the TPM specification, version 1.2. It + implements the TSS specification, version 1.2. + + http://trousers.sourceforge.net/ + +comment "trousers needs a toolchain w/ threads, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/trousers/trousers.hash b/package/trousers/trousers.hash new file mode 100644 index 00000000..f6c34274 --- /dev/null +++ b/package/trousers/trousers.hash @@ -0,0 +1,6 @@ +# http://sourceforge.net/projects/trousers/files/trousers/0.3.15/ +sha1 75cd40e17c9385299e50ff2099905865442b59f1 trousers-0.3.15.tar.gz +md5 eb1b02e98c7d360749b9076196db3f0f trousers-0.3.15.tar.gz +# Locally computed +sha256 1e5be93e518372acf1d92d2f567d01a46fdb0b730487e544e6fb896c59cac77f trousers-0.3.15.tar.gz +sha256 1ad596d12e7471549663c03e280b5b5d084a2e853fb86e4d766109818f9d7dae LICENSE diff --git a/package/trousers/trousers.mk b/package/trousers/trousers.mk new file mode 100644 index 00000000..b84425de --- /dev/null +++ b/package/trousers/trousers.mk @@ -0,0 +1,36 @@ +################################################################################ +# +# trousers +# +################################################################################ + +TROUSERS_VERSION = 0.3.15 +TROUSERS_SITE = http://downloads.sourceforge.net/project/trousers/trousers/$(TROUSERS_VERSION) +TROUSERS_LICENSE = BSD-3-Clause +TROUSERS_LICENSE_FILES = LICENSE +TROUSERS_CPE_ID_VENDOR = trustedcomputinggroup +TROUSERS_INSTALL_STAGING = YES +# Need autoreconf because of a patch touching configure.in and Makefile.am +TROUSERS_AUTORECONF = YES +TROUSERS_DEPENDENCIES = host-pkgconf openssl + +ifeq ($(BR2_PACKAGE_LIBICONV),y) +TROUSERS_DEPENDENCIES += libiconv +endif + +ifeq ($(BR2_arc770d)$(BR2_arc750d),y) +TROUSERS_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -mno-compact-casesi" +endif + +# The TrouSerS build system attempts to create the tss user and group +# on the host system. Disable the user checking feature as a +# workaround. +TROUSERS_CONF_OPTS += --disable-usercheck + +ifeq ($(BR2_TOOLCHAIN_SUPPORTS_PIE),) +TROUSERS_CONF_ENV += \ + ax_cv_check_cflags___fPIE__DPIE=no \ + ax_cv_check_ldflags___pie=no +endif + +$(eval $(autotools-package)) diff --git a/package/ts4900-fpga/Config.in b/package/ts4900-fpga/Config.in new file mode 100644 index 00000000..7aa94e26 --- /dev/null +++ b/package/ts4900-fpga/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_TS4900_FPGA + bool "ts4900-fpga" + depends on BR2_arm + help + TS-4900's FPGA implements clocks, UART MUX, and GPIOs. One + of these GPIOs is used to enable the wifi module. + + It is loaded by U-Boot during the boot sequence, the default + U-boot script expects to find it in the /boot folder. + + http://wiki.embeddedarm.com/wiki/TS-4900#FPGA_Changelog diff --git a/package/ts4900-fpga/ts4900-fpga.hash b/package/ts4900-fpga/ts4900-fpga.hash new file mode 100644 index 00000000..2147aeb3 --- /dev/null +++ b/package/ts4900-fpga/ts4900-fpga.hash @@ -0,0 +1,5 @@ +# From ftp://ftp.embeddedarm.com/ts-socket-macrocontrollers/ts-4900-linux/fpga/ts4900-fpga-20150930.bin.md5 +md5 bf93c03ef914cf008287c8cd60781cc8 ts4900-fpga-20150930.bin + +# Locally calculated +sha256 242ac6a90bea9a95c937ea8952cdc9b02f543cea24a0359bed66a408a6dd8bf9 ts4900-fpga-20150930.bin diff --git a/package/ts4900-fpga/ts4900-fpga.mk b/package/ts4900-fpga/ts4900-fpga.mk new file mode 100644 index 00000000..7bb62a39 --- /dev/null +++ b/package/ts4900-fpga/ts4900-fpga.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# ts4900-fpga +# +################################################################################ + +TS4900_FPGA_VERSION = 20150930 +TS4900_FPGA_SOURCE = ts4900-fpga-$(TS4900_FPGA_VERSION).bin +TS4900_FPGA_SITE = ftp://ftp.embeddedarm.com/ts-socket-macrocontrollers/ts-4900-linux/fpga +# No license file provided, Yocto recipe from the vendor claims MIT. +# https://github.com/embeddedarm/meta-ts/blob/f31860f1204b64f765a5380d3b93a2cf18234f90/recipes-extras/ts4900-fpga/ts4900-fpga.bb#L6 + +define TS4900_FPGA_EXTRACT_CMDS + cp $(TS4900_FPGA_DL_DIR)/$(TS4900_FPGA_SOURCE) $(@D) +endef + +define TS4900_FPGA_INSTALL_TARGET_CMDS + $(INSTALL) -m 0644 -D $(@D)/$(TS4900_FPGA_SOURCE) $(TARGET_DIR)/boot/ts4900-fpga.bin +endef + +$(eval $(generic-package)) diff --git a/package/tslib/Config.in b/package/tslib/Config.in new file mode 100644 index 00000000..a2e1e7ff --- /dev/null +++ b/package/tslib/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_TSLIB + bool "tslib" + help + Tslib is a filtering layer for touchscreen panel events. + + http://tslib.org diff --git a/package/tslib/tslib.hash b/package/tslib/tslib.hash new file mode 100644 index 00000000..762fbebb --- /dev/null +++ b/package/tslib/tslib.hash @@ -0,0 +1,5 @@ +# https://github.com/libts/tslib/releases/download/1.22/tslib-1.22.tar.xz.sha256 +sha256 aaf0aed410a268d7b51385d07fe4d9d64312038e87c447ec8a24c8db0a15617a tslib-1.22.tar.xz + +# Locally computed +sha256 9b872a8a070b8ad329c4bd380fb1bf0000f564c75023ec8e1e6803f15364b9e9 COPYING diff --git a/package/tslib/tslib.mk b/package/tslib/tslib.mk new file mode 100644 index 00000000..45e29808 --- /dev/null +++ b/package/tslib/tslib.mk @@ -0,0 +1,35 @@ +################################################################################ +# +# tslib +# +################################################################################ + +TSLIB_VERSION = 1.22 +TSLIB_SITE = https://github.com/libts/tslib/releases/download/$(TSLIB_VERSION) +TSLIB_SOURCE = tslib-$(TSLIB_VERSION).tar.xz +TSLIB_LICENSE = GPL-2.0+ (programs), LGPL-2.1+ (libraries) +TSLIB_LICENSE_FILES = COPYING + +TSLIB_INSTALL_STAGING = YES +TSLIB_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) LDFLAGS=-L$(STAGING_DIR)/usr/lib install + +ifeq ($(BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_6),) +TSLIB_CONF_OPTS += --disable-tools +endif + +ifeq ($(BR2_STATIC_LIBS),y) +TSLIB_CONF_OPTS += \ + --enable-input=static \ + --enable-linear=static \ + --enable-median=static \ + --enable-pthres=static \ + --enable-iir=static \ + --enable-dejitter=static \ + --enable-debounce=static \ + --enable-skip=static \ + --enable-lowpass=static \ + --enable-invert=static \ + --enable-evthres=static +endif + +$(eval $(autotools-package)) diff --git a/package/tstools/0001-build-get-along-with-buildroot.patch b/package/tstools/0001-build-get-along-with-buildroot.patch new file mode 100644 index 00000000..1e7a7482 --- /dev/null +++ b/package/tstools/0001-build-get-along-with-buildroot.patch @@ -0,0 +1,40 @@ +From 44f80bce0914d4d9c5e7486c7cdb521ba637b324 Mon Sep 17 00:00:00 2001 +From: Tzu-Jung Lee +Date: Fri, 19 Jul 2013 22:45:18 +0800 +Subject: [PATCH] build: get along with buildroot + +Signed-off-by: Tzu-Jung Lee +--- + Makefile | 12 ++++++------ + 1 file changed, 6 insertions(+), 6 deletions(-) + +diff --git a/Makefile b/Makefile +index 2c3568e..98bb994 100644 +--- a/Makefile ++++ b/Makefile +@@ -34,12 +34,6 @@ SHELL = /bin/sh + .SUFFIXES: + .SUFFIXES: .c .o + +-ifdef CROSS_COMPILE +-CC = $(CROSS_COMPILE)gcc +-else +-CC = gcc +-endif +- + # Use WARN=1 periodically to get too many warnings... + ifdef WARN + WARNING_FLAGS = -Wall -W -Wfloat-equal -Wundef -Wshadow -Wpointer-arith -Wcast-qual -Wconversion -Wmissing-prototypes -Wmissing-declarations -Wunreachable-code -Winline +@@ -452,3 +446,9 @@ test_lists: $(BINDIR)/test_nal_unit_list $(BINDIR)/test_es_unit_list + @echo +++ Testing ES unit lists + $(BINDIR)/test_es_unit_list + @echo +++ Test succeeded ++ ++.PHONY: install ++install: ++ @for i in $(PROGS); do \ ++ cp -f $$i $(DESTDIR)/usr/bin/; \ ++ done +-- +1.8.3.2 + diff --git a/package/tstools/Config.in b/package/tstools/Config.in new file mode 100644 index 00000000..0c55bde9 --- /dev/null +++ b/package/tstools/Config.in @@ -0,0 +1,22 @@ +config BR2_PACKAGE_TSTOOLS + bool "tstools" + depends on BR2_USE_MMU # fork() + depends on !BR2_STATIC_LIBS + help + This is a set of cross-platform command line tools for + working with MPEG data. + + The emphasis is on relatively simple tools which concentrate + on MPEG (H.264 and H.262) data packaged according to H.222 + (i.e., TS or PS), with a particular interest in checking for + conformance. + + Transport Stream (TS) is typically used for distribution of + cable and satellite data. Program Stream (PS) is typically + used to store data on DVDs. + + https://github.com/kynesim/tstools/ + +comment "tstools needs a toolchain w/ dynamic library" + depends on BR2_USE_MMU + depends on BR2_STATIC_LIBS diff --git a/package/tstools/tstools.hash b/package/tstools/tstools.hash new file mode 100644 index 00000000..9b0f1c7c --- /dev/null +++ b/package/tstools/tstools.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 3d2b2375e2874933f9aa59d4f25bb6b334747219eb0d7a076974e61222d59bf6 tstools-08f6be304040e7b84760ac3920bcff4a563b6cd2.tar.gz diff --git a/package/tstools/tstools.mk b/package/tstools/tstools.mk new file mode 100644 index 00000000..99f7ca9b --- /dev/null +++ b/package/tstools/tstools.mk @@ -0,0 +1,25 @@ +################################################################################ +# +# tstools +# +################################################################################ + +# No releases or tags yet. Use the latest commit ID from master branch. +TSTOOLS_VERSION = 08f6be304040e7b84760ac3920bcff4a563b6cd2 +TSTOOLS_SITE = $(call github,kynesim,tstools,$(TSTOOLS_VERSION)) +# tstools upstream doesn't contain any license file so far. See: +# https://github.com/kynesim/tstools/issues/32 +TSTOOLS_LICENSE = MPL-1.1 +TSTOOLS_LICENSE_FILES = + +define TSTOOLS_BUILD_CMDS + $(TARGET_CONFIGURE_OPTS) LD="$(TARGET_CC)" $(TARGET_MAKE_ENV) \ + $(MAKE1) -C $(@D) +endef + +define TSTOOLS_INSTALL_TARGET_CMDS + $(TARGET_CONFIGURE_OPTS) $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ + DESTDIR=$(TARGET_DIR) install +endef + +$(eval $(generic-package)) diff --git a/package/ttyd/Config.in b/package/ttyd/Config.in new file mode 100644 index 00000000..ecc705b1 --- /dev/null +++ b/package/ttyd/Config.in @@ -0,0 +1,21 @@ +config BR2_PACKAGE_TTYD + bool "ttyd" + depends on !BR2_STATIC_LIBS # libuv, libwebsockets + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # libuv + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libuv, json-c + depends on BR2_USE_MMU # libuv + select BR2_PACKAGE_JSON_C + select BR2_PACKAGE_LIBUV + select BR2_PACKAGE_LIBWEBSOCKETS + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_ZLIB + help + ttyd is a simple command-line tool for sharing terminal + over the web. + + https://github.com/tsl0922/ttyd + +comment "ttyd needs a toolchain w/ NPTL, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_SYNC_4 diff --git a/package/ttyd/ttyd.hash b/package/ttyd/ttyd.hash new file mode 100644 index 00000000..c4263d6e --- /dev/null +++ b/package/ttyd/ttyd.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 1116419527edfe73717b71407fb6e06f46098fc8a8e6b0bb778c4c75dc9f64b9 ttyd-1.6.3.tar.gz +sha256 711762f081c180ade3d09d7b0b7537eaf35eca8d1671e47bc66eaa39376edb12 LICENSE diff --git a/package/ttyd/ttyd.mk b/package/ttyd/ttyd.mk new file mode 100644 index 00000000..856270a8 --- /dev/null +++ b/package/ttyd/ttyd.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# ttyd +# +################################################################################ + +TTYD_VERSION = 1.6.3 +TTYD_SITE = $(call github,tsl0922,ttyd,$(TTYD_VERSION)) +TTYD_LICENSE = MIT +TTYD_LICENSE_FILES = LICENSE +TTYD_DEPENDENCIES = json-c libuv libwebsockets openssl zlib + +$(eval $(cmake-package)) diff --git a/package/tunctl/Config.in b/package/tunctl/Config.in new file mode 100644 index 00000000..26eed4c3 --- /dev/null +++ b/package/tunctl/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_TUNCTL + bool "tunctl" + help + Tunctl is a tool for controlling the TUN/TAP driver in Linux. + + https://sourceforge.net/projects/tunctl/ diff --git a/package/tunctl/tunctl.hash b/package/tunctl/tunctl.hash new file mode 100644 index 00000000..59a58cdb --- /dev/null +++ b/package/tunctl/tunctl.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 aa2a6c4cc6bfacb11e0d9f62334a6638a0d435475c61230116f00b6af8b14fff tunctl-1.5.tar.gz +sha256 bcd12b6749dbd86c051cc2ef9e838096741602d4db213cc866b1da6cfeda5f16 tunctl.c diff --git a/package/tunctl/tunctl.mk b/package/tunctl/tunctl.mk new file mode 100644 index 00000000..0d7b88df --- /dev/null +++ b/package/tunctl/tunctl.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# tunctl +# +################################################################################ + +TUNCTL_VERSION = 1.5 +TUNCTL_SITE = http://downloads.sourceforge.net/project/tunctl/tunctl/$(TUNCTL_VERSION) + +TUNCTL_LICENSE = GPL-2.0 +TUNCTL_LICENSE_FILES = tunctl.c + +define TUNCTL_BUILD_CMDS + $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) tunctl +endef + +define TUNCTL_INSTALL_TARGET_CMDS + $(INSTALL) -m 0755 -D $(@D)/tunctl $(TARGET_DIR)/usr/sbin/tunctl +endef + +$(eval $(generic-package)) diff --git a/package/turbolua/Config.in b/package/turbolua/Config.in new file mode 100644 index 00000000..6e792ebb --- /dev/null +++ b/package/turbolua/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_TURBOLUA + bool "turbolua" + depends on BR2_PACKAGE_LUAJIT + help + Turbo.lua is a framework built for LuaJIT 2 to simplify the + task of building fast and scalable network applications. It + uses a event-driven, non-blocking, no thread design to deliver + excellent performance and minimal footprint to high-load + applications while also providing excellent support for + embedded uses. The toolkit can be used for HTTP REST API's, + traditional dynamic web pages through templating, open + connections like WebSockets, or just as high level building + blocks for native speed network applications. + + http://www.turbolua.org + +comment "turbolua needs LuaJIT" + depends on !BR2_PACKAGE_LUAJIT diff --git a/package/turbolua/turbolua.hash b/package/turbolua/turbolua.hash new file mode 100644 index 00000000..b095f5aa --- /dev/null +++ b/package/turbolua/turbolua.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 4dbfbe4919118977c2ca40a4da81054ffe407d09f38bf5420eec5ae1449299d3 turbolua-2.1.3.tar.gz +sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE diff --git a/package/turbolua/turbolua.mk b/package/turbolua/turbolua.mk new file mode 100644 index 00000000..a85256a3 --- /dev/null +++ b/package/turbolua/turbolua.mk @@ -0,0 +1,33 @@ +################################################################################ +# +# turbolua +# +################################################################################ + +TURBOLUA_VERSION = 2.1.3 +TURBOLUA_SITE = $(call github,kernelsauce,turbo,v$(TURBOLUA_VERSION)) +TURBOLUA_DEPENDENCIES = luajit +TURBOLUA_LICENSE = Apache-2.0 +TURBOLUA_LICENSE_FILES = LICENSE + +TURBOLUA_MAKE_OPTS = \ + $(TARGET_CONFIGURE_OPTS) \ + LUAJIT_VERSION="$(LUAJIT_VERSION)" + +ifeq ($(BR2_PACKAGE_OPENSSL),y) +TURBOLUA_MAKE_OPTS += SSL=openssl +TURBOLUA_DEPENDENCIES += openssl +else +TURBOLUA_MAKE_OPTS += SSL=none +endif + +define TURBOLUA_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TURBOLUA_MAKE_OPTS) -C $(@D) all +endef + +define TURBOLUA_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TURBOLUA_MAKE_OPTS) LDCONFIG=true \ + PREFIX="$(TARGET_DIR)/usr" -C $(@D) install +endef + +$(eval $(generic-package)) diff --git a/package/tvheadend/0001-no-check_config.patch b/package/tvheadend/0001-no-check_config.patch new file mode 100644 index 00000000..9261e5ff --- /dev/null +++ b/package/tvheadend/0001-no-check_config.patch @@ -0,0 +1,23 @@ +Makefile: do not use check_config + +test(1) only uses the second to compare two files dates. +test(1) also does a strict comparison wrt. dates. + +But, on very fast systems, the configure and .config.mk +files may be created in the same second, and so would lead +to a false comparison of the files' dates. + +Signed-off-by: "Yann E. MORIN" + +diff -durN tvheadend-c84bc2b72b462ef2dbed305f3fd0bb3fa5046fc3.orig/Makefile tvheadend-c84bc2b72b462ef2dbed305f3fd0bb3fa5046fc3/Makefile +--- tvheadend-c84bc2b72b462ef2dbed305f3fd0bb3fa5046fc3.orig/Makefile 2014-03-09 14:47:43.780025330 +0100 ++++ tvheadend-c84bc2b72b462ef2dbed305f3fd0bb3fa5046fc3/Makefile 2014-03-09 14:48:40.836539093 +0100 +@@ -708,7 +708,7 @@ + $(ROOTDIR)/configure $(CONFIGURE_ARGS) + + # Binary +-${PROG}: .config.mk make_webui $(OBJS) ++${PROG}: make_webui $(OBJS) + $(pCC) -o $@ $(OBJS) $(CFLAGS) $(LDFLAGS) + + # Object diff --git a/package/tvheadend/Config.in b/package/tvheadend/Config.in new file mode 100644 index 00000000..909d955c --- /dev/null +++ b/package/tvheadend/Config.in @@ -0,0 +1,43 @@ +comment "tvheadend needs a toolchain w/ NPTL, headers >= 3.2, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \ + !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2 || BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + +config BR2_PACKAGE_TVHEADEND + bool "tvheadend" + depends on !BR2_STATIC_LIBS # dladdr() + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + select BR2_PACKAGE_DTV_SCAN_TABLES + select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE + select BR2_PACKAGE_OPENSSL + help + + Tvheadend is a TV streaming server for Linux supporting + DVB-S, DVB-S2, DVB-C, DVB-T, ATSC, IPTV, and Analog video + (V4L) as input sources. + + https://www.lonelycoder.com/redmine/projects/tvheadend/ + + Note: + - on first run, tvheadend will start in wizard mode; the + webUI is available on port 9981. + - if you want Avahi support, you'll need to enable: + Avahi, D-Bus, libdaemon + +if BR2_PACKAGE_TVHEADEND + +config BR2_PACKAGE_TVHEADEND_TRANSCODING + bool "transcoding support" + depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS + select BR2_PACKAGE_FFMPEG + select BR2_PACKAGE_FFMPEG_AVRESAMPLE + select BR2_PACKAGE_FFMPEG_GPL # needed for x264 support + select BR2_PACKAGE_FFMPEG_SWSCALE + select BR2_PACKAGE_LIBVPX + select BR2_PACKAGE_X264 + help + Enable transcoding support. + +endif diff --git a/package/tvheadend/S99tvheadend b/package/tvheadend/S99tvheadend new file mode 100644 index 00000000..fc125a23 --- /dev/null +++ b/package/tvheadend/S99tvheadend @@ -0,0 +1,56 @@ +#! /bin/sh +# tvheadend startup script inspired by the Debian one in the package + +# Author: Yann E. MORIN + +PATH=/usr/sbin:/usr/bin:/sbin:/bin +NAME=tvheadend +PIDFILE=/var/run/$NAME.pid + +# Read configuration variable file if it is present +[ -r "/etc/default/${NAME}" ] && . "/etc/default/${NAME}" + +ARGS="-f" +[ -z "${TVH_USER}" ] || ARGS="${ARGS} -u ${TVH_USER}" +[ -z "${TVH_GROUP}" ] || ARGS="${ARGS} -g ${TVH_GROUP}" +[ -z "${TVH_ADAPTERS}" ] || ARGS="${ARGS} -a ${TVH_ADAPTERS}" +[ -z "${TVH_HTTP_PORT}" ] || ARGS="${ARGS} -w ${TVH_HTTP_PORT}" +[ -z "${TVH_HTSP_PORT}" ] || ARGS="${ARGS} -e ${TVH_HTSP_PORT}" +[ "${TVH_DEBUG}" = "1" ] && ARGS="${ARGS} -s" + +# If first run, start in wizard mode +if [ -z "$(ls -1 /home/tvheadend/.hts/tvheadend/accesscontrol/ 2>/dev/null)" ]; then + ARGS="${ARGS} -C" +fi + +case "$1" in + start) + printf "Starting TVHeadend daemon: " + if start-stop-daemon -S -q -p ${PIDFILE} -m --exec /usr/bin/tvheadend -- ${ARGS}; then + printf "OK\n" + else + printf "failed\n" + fi + ;; + stop) + printf "Stopping TVHeadend daemon: " + start-stop-daemon -K -q -p ${PIDFILE} -s TERM + sleep 2 + if start-stop-daemon -K -q -p ${PIDFILE} -t; then + printf "failed, killing: " + start-stop-daemon -K -q -p ${PIDFILE} -s KILL -o + fi + printf "OK\n" + ;; + restart|force-reload) + "${0}" stop + sleep 2 + "${0}" start + ;; + *) + echo "Usage: $0 {start|stop|restart|force-reload}" >&2 + exit 1 + ;; +esac + +: diff --git a/package/tvheadend/etc.default.tvheadend b/package/tvheadend/etc.default.tvheadend new file mode 100644 index 00000000..253f8320 --- /dev/null +++ b/package/tvheadend/etc.default.tvheadend @@ -0,0 +1,6 @@ +TVH_USER=tvheadend +TVH_GROUP=tvheadend +#TVH_ADAPTERS= +#TVH_HTTP_PORT=9981 +#TVH_HTSP_PORT=9982 +#TVH_DEBUG=1 diff --git a/package/tvheadend/tvheadend.hash b/package/tvheadend/tvheadend.hash new file mode 100644 index 00000000..b987a735 --- /dev/null +++ b/package/tvheadend/tvheadend.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 b5e58601da7af383c2c7f27016417a478be0d302a4a8a00ec87fc8bdacc56ef1 tvheadend-febcf9818d7c37fec8a98d424934edcb3243d5e4.tar.gz +sha256 54dc3cbc00bf126bcba43e2af7f3ad1dc00f335985da1409fa943c7b7256d942 LICENSE.md diff --git a/package/tvheadend/tvheadend.mk b/package/tvheadend/tvheadend.mk new file mode 100644 index 00000000..e19763e1 --- /dev/null +++ b/package/tvheadend/tvheadend.mk @@ -0,0 +1,174 @@ +################################################################################ +# +# tvheadend +# +################################################################################ + +TVHEADEND_VERSION = febcf9818d7c37fec8a98d424934edcb3243d5e4 +TVHEADEND_SITE = $(call github,tvheadend,tvheadend,$(TVHEADEND_VERSION)) +TVHEADEND_LICENSE = GPL-3.0+ +TVHEADEND_LICENSE_FILES = LICENSE.md +TVHEADEND_DEPENDENCIES = \ + host-gettext \ + host-pkgconf \ + host-pngquant \ + $(if $(BR2_PACKAGE_PYTHON3),host-python3,host-python) \ + openssl + +ifeq ($(BR2_PACKAGE_AVAHI),y) +TVHEADEND_DEPENDENCIES += avahi +endif + +ifeq ($(BR2_PACKAGE_DBUS),y) +TVHEADEND_DEPENDENCIES += dbus +TVHEADEND_CONF_OPTS += --enable-dbus-1 +else +TVHEADEND_CONF_OPTS += --disable-dbus-1 +endif + +ifeq ($(BR2_PACKAGE_TVHEADEND_TRANSCODING),y) +TVHEADEND_CONF_OPTS += --enable-libav --enable-libx264 +TVHEADEND_DEPENDENCIES += ffmpeg x264 +ifeq ($(BR2_PACKAGE_LIBVA)$(BR2_PACKAGE_XORG7),yy) +TVHEADEND_CONF_OPTS += --enable-vaapi +TVHEADEND_DEPENDENCIES += libva +else +TVHEADEND_CONF_OPTS += --disable-vaapi +endif +ifeq ($(BR2_PACKAGE_OPUS),y) +TVHEADEND_CONF_OPTS += --enable-libopus +TVHEADEND_DEPENDENCIES += opus +else +TVHEADEND_CONF_OPTS += --disable-libopus +endif +ifeq ($(BR2_PACKAGE_RPI_USERLAND),y) +TVHEADEND_CONF_OPTS += --enable-omx +TVHEADEND_DEPENDENCIES += rpi-userland +else +TVHEADEND_CONF_OPTS += --disable-omx +endif +ifeq ($(BR2_PACKAGE_X265),y) +TVHEADEND_CONF_OPTS += --enable-libx265 +TVHEADEND_DEPENDENCIES += x265 +else +TVHEADEND_CONF_OPTS += --disable-libx265 +endif +else +TVHEADEND_CONF_OPTS += \ + --disable-libav \ + --disable-libopus \ + --disable-omx \ + --disable-vaapi \ + --disable-libx264 \ + --disable-libx265 +endif + +ifeq ($(BR2_PACKAGE_LIBDVBCSA),y) +TVHEADEND_DEPENDENCIES += libdvbcsa +TVHEADEND_CONF_OPTS += --enable-tvhcsa +else +TVHEADEND_CONF_OPTS += --disable-tvhcsa +endif + +ifeq ($(BR2_PACKAGE_LIBHDHOMERUN),y) +TVHEADEND_DEPENDENCIES += libhdhomerun +TVHEADEND_CONF_OPTS += --enable-hdhomerun_client +else +TVHEADEND_CONF_OPTS += --disable-hdhomerun_client +endif + +ifeq ($(BR2_PACKAGE_LIBICONV),y) +TVHEADEND_DEPENDENCIES += libiconv +endif + +TVHEADEND_CFLAGS = $(TARGET_CFLAGS) +ifeq ($(BR2_PACKAGE_LIBURIPARSER),y) +TVHEADEND_DEPENDENCIES += liburiparser +TVHEADEND_CFLAGS += $(if $(BR2_USE_WCHAR),,-DURI_NO_UNICODE) +endif + +ifeq ($(BR2_PACKAGE_PCRE),y) +TVHEADEND_DEPENDENCIES += pcre +TVHEADEND_CONF_OPTS += --enable-pcre +else +TVHEADEND_CONF_OPTS += --disable-pcre +endif + +ifeq ($(BR2_TOOLCHAIN_SUPPORTS_PIE),) +TVHEADEND_CONF_OPTS += --disable-pie +endif + +TVHEADEND_DEPENDENCIES += dtv-scan-tables + +# The tvheadend build system expects the transponder data to be present inside +# its source tree. To prevent a download initiated by the build system just +# copy the data files in the right place and add the corresponding stamp file. +define TVHEADEND_INSTALL_DTV_SCAN_TABLES + $(INSTALL) -d $(@D)/data/dvb-scan + cp -r $(TARGET_DIR)/usr/share/dvb/* $(@D)/data/dvb-scan/ + touch $(@D)/data/dvb-scan/.stamp +endef +TVHEADEND_PRE_CONFIGURE_HOOKS += TVHEADEND_INSTALL_DTV_SCAN_TABLES + +define TVHEADEND_CONFIGURE_CMDS + (cd $(@D); \ + $(TARGET_CONFIGURE_OPTS) \ + $(TARGET_CONFIGURE_ARGS) \ + CFLAGS="$(TVHEADEND_CFLAGS)" \ + ./configure \ + --prefix=/usr \ + --arch="$(ARCH)" \ + --cpu="$(GCC_TARGET_CPU)" \ + --nowerror \ + --python="$(HOST_DIR)/bin/python" \ + --enable-dvbscan \ + --enable-bundle \ + --enable-pngquant \ + --disable-ffmpeg_static \ + --disable-hdhomerun_static \ + $(TVHEADEND_CONF_OPTS) \ + ) +endef + +define TVHEADEND_FIX_PNGQUANT_PATH + $(SED) "s%^pngquant_bin =.*%pngquant_bin = '$(HOST_DIR)/bin/pngquant'%" \ + $(@D)/support/mkbundle +endef +TVHEADEND_POST_CONFIGURE_HOOKS += TVHEADEND_FIX_PNGQUANT_PATH + +define TVHEADEND_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) +endef + +define TVHEADEND_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR="$(TARGET_DIR)" install +endef + +# Remove documentation and source files that are not needed because we +# use the bundled web interface version. +define TVHEADEND_CLEAN_SHARE + rm -rf $(TARGET_DIR)/usr/share/tvheadend/docs + rm -rf $(TARGET_DIR)/usr/share/tvheadend/src +endef + +TVHEADEND_POST_INSTALL_TARGET_HOOKS += TVHEADEND_CLEAN_SHARE + +#---------------------------------------------------------------------------- +# To run tvheadend, we need: +# - a startup script, and its config file +# - a non-root user to run as, and a home for it that is not accessible +# to the other users (because there will be crendentials in there) + +define TVHEADEND_INSTALL_INIT_SYSV + $(INSTALL) -D package/tvheadend/etc.default.tvheadend $(TARGET_DIR)/etc/default/tvheadend + $(INSTALL) -D package/tvheadend/S99tvheadend $(TARGET_DIR)/etc/init.d/S99tvheadend +endef + +define TVHEADEND_USERS + tvheadend -1 tvheadend -1 * /home/tvheadend - video TVHeadend daemon +endef +define TVHEADEND_PERMISSIONS + /home/tvheadend r 0700 tvheadend tvheadend - - - - - +endef + +$(eval $(generic-package)) diff --git a/package/twolame/Config.in b/package/twolame/Config.in new file mode 100644 index 00000000..588afa48 --- /dev/null +++ b/package/twolame/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_TWOLAME + bool "twolame" + help + TwoLAME is an optimised MPEG Audio Layer 2 (MP2) encoder + based on tooLAME by Mike Cheng, which in turn is based upon + the ISO dist10 code and portions of LAME. + + http://www.twolame.org/ diff --git a/package/twolame/twolame.hash b/package/twolame/twolame.hash new file mode 100644 index 00000000..74941ae3 --- /dev/null +++ b/package/twolame/twolame.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 cc35424f6019a88c6f52570b63e1baf50f62963a3eac52a03a800bb070d7c87d twolame-0.4.0.tar.gz +sha256 257a842724705950b07da76ce0e22ffa80ec77b3e9dfc6702522ac342409da0f COPYING diff --git a/package/twolame/twolame.mk b/package/twolame/twolame.mk new file mode 100644 index 00000000..b1abf077 --- /dev/null +++ b/package/twolame/twolame.mk @@ -0,0 +1,20 @@ +################################################################################ +# +# twolame +# +################################################################################ + +TWOLAME_VERSION = 0.4.0 +TWOLAME_SITE = http://downloads.sourceforge.net/project/twolame/twolame/$(TWOLAME_VERSION) +TWOLAME_INSTALL_STAGING = YES +TWOLAME_LICENSE = LGPL-2.1+ +TWOLAME_LICENSE_FILES = COPYING + +ifeq ($(BR2_PACKAGE_LIBSNDFILE),y) +TWOLAME_DEPENDENCIES += host-pkgconf libsndfile +TWOLAME_CONF_OPTS += --enable-sndfile +else +TWOLAME_CONF_OPTS += --disable-sndfile +endif + +$(eval $(autotools-package)) diff --git a/package/tz/Config.in b/package/tz/Config.in new file mode 100644 index 00000000..943dc5cc --- /dev/null +++ b/package/tz/Config.in @@ -0,0 +1,4 @@ +config BR2_PACKAGE_TZ + bool + help + Timezone info for uClibc. diff --git a/package/tz/tz.mk b/package/tz/tz.mk new file mode 100644 index 00000000..135726c2 --- /dev/null +++ b/package/tz/tz.mk @@ -0,0 +1,41 @@ +################################################################################ +# +# tz +# +################################################################################ + +TZ_DEPENDENCIES = host-tzdata host-tzdump +TZ_LICENSE = Public domain + +TZ_LOCALTIME = $(call qstrip,$(BR2_TARGET_LOCALTIME)) +ifneq ($(TZ_LOCALTIME),) +define TZ_SET_LOCALTIME + if [ ! -f $(TARGET_DIR)/usr/share/zoneinfo/uclibc/$(TZ_LOCALTIME) ]; then \ + printf "Error: '%s' is not a valid timezone, check your BR2_TARGET_LOCALTIME setting\n" \ + "$(TZ_LOCALTIME)"; \ + exit 1; \ + fi + ln -sf ../usr/share/zoneinfo/uclibc/$(TZ_LOCALTIME) $(TARGET_DIR)/etc/TZ +endef +endif + +define TZ_BUILD_CMDS + (cd $(HOST_DIR)/share/zoneinfo/posix/; \ + for i in $$(find . -type f); do \ + mkdir -p $(@D)/output/$$(dirname $$i); \ + $(TZDUMP) -p . -q $${i#./} | sed '1d' > $(@D)/output/$$i; \ + done \ + ) +endef + +define TZ_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0644 $(HOST_DIR)/share/zoneinfo/zone.tab \ + $(TARGET_DIR)/usr/share/zoneinfo/zone.tab + $(INSTALL) -D -m 0644 $(HOST_DIR)/share/zoneinfo/iso3166.tab \ + $(TARGET_DIR)/usr/share/zoneinfo/iso3166.tab + mkdir -p $(TARGET_DIR)/usr/share/zoneinfo/uclibc + cp -a $(@D)/output/* $(TARGET_DIR)/usr/share/zoneinfo/uclibc + $(TZ_SET_LOCALTIME) +endef + +$(eval $(generic-package)) diff --git a/package/tzdata/Config.in b/package/tzdata/Config.in new file mode 100644 index 00000000..1e6cc0fc --- /dev/null +++ b/package/tzdata/Config.in @@ -0,0 +1,9 @@ +# This package is not meant to be user-visible. +# It gets selected by BR2_TARGET_TZ in system/Config.in + +config BR2_PACKAGE_TZDATA + bool + help + Time zone database + + http://www.iana.org/time-zones/repository/tz-link.html diff --git a/package/tzdata/tzdata.hash b/package/tzdata/tzdata.hash new file mode 100644 index 00000000..f7062748 --- /dev/null +++ b/package/tzdata/tzdata.hash @@ -0,0 +1,4 @@ +# From https://mm.icann.org/pipermail/tz-announce/2021-January/000065.html +sha512 7cdd762ec90ce12a30fa36b1d66d1ea82d9fa21e514e2b9c7fcbe2541514ee0fadf30843ff352c65512fb270857b51d1517b45e1232b89c6f954ba9ff1833bb3 tzdata2021a.tar.gz +# Locally computed: +sha256 0613408568889f5739e5ae252b722a2659c02002839ad970a63dc5e9174b27cf LICENSE diff --git a/package/tzdata/tzdata.mk b/package/tzdata/tzdata.mk new file mode 100644 index 00000000..922e7420 --- /dev/null +++ b/package/tzdata/tzdata.mk @@ -0,0 +1,66 @@ +################################################################################ +# +# tzdata +# +################################################################################ + +TZDATA_VERSION = 2021a +TZDATA_SOURCE = tzdata$(TZDATA_VERSION).tar.gz +TZDATA_SITE = https://www.iana.org/time-zones/repository/releases +TZDATA_STRIP_COMPONENTS = 0 +TZDATA_DEPENDENCIES = host-tzdata +HOST_TZDATA_DEPENDENCIES = host-zic +TZDATA_LICENSE = Public domain +TZDATA_LICENSE_FILES = LICENSE + +# Take care when re-ordering this list since this might break zone +# dependencies +TZDATA_DEFAULT_ZONELIST = \ + africa antarctica asia australasia europe northamerica \ + southamerica etcetera backward factory + +ifeq ($(call qstrip,$(BR2_TARGET_TZ_ZONELIST)),default) +TZDATA_ZONELIST = $(TZDATA_DEFAULT_ZONELIST) +else +TZDATA_ZONELIST = $(call qstrip,$(BR2_TARGET_TZ_ZONELIST)) +endif + +TZDATA_LOCALTIME = $(call qstrip,$(BR2_TARGET_LOCALTIME)) +ifneq ($(TZDATA_LOCALTIME),) +define TZDATA_SET_LOCALTIME + if [ ! -f $(TARGET_DIR)/usr/share/zoneinfo/$(TZDATA_LOCALTIME) ]; then \ + printf "Error: '%s' is not a valid timezone, check your BR2_TARGET_LOCALTIME setting\n" \ + "$(TZDATA_LOCALTIME)"; \ + exit 1; \ + fi + ln -sf ../usr/share/zoneinfo/$(TZDATA_LOCALTIME) $(TARGET_DIR)/etc/localtime + echo "$(TZDATA_LOCALTIME)" >$(TARGET_DIR)/etc/timezone +endef +endif + +define TZDATA_INSTALL_TARGET_CMDS + $(INSTALL) -d -m 0755 $(TARGET_DIR)/usr/share/zoneinfo + cp -a $(HOST_DIR)/share/zoneinfo/* $(TARGET_DIR)/usr/share/zoneinfo + cd $(TARGET_DIR)/usr/share/zoneinfo; \ + for zone in posix/*; do \ + ln -sfn "$${zone}" "$${zone##*/}"; \ + done + $(TZDATA_SET_LOCALTIME) +endef + +define HOST_TZDATA_BUILD_CMDS + (cd $(@D); \ + for zone in $(TZDATA_ZONELIST); do \ + $(ZIC) -b fat -d _output/posix $$zone || exit 1; \ + $(ZIC) -b fat -d _output/right -L leapseconds $$zone || exit 1; \ + done; \ + ) +endef + +define HOST_TZDATA_INSTALL_CMDS + $(INSTALL) -d -m 0755 $(HOST_DIR)/share/zoneinfo + cp -a $(@D)/_output/* $(@D)/*.tab $(HOST_DIR)/share/zoneinfo +endef + +$(eval $(generic-package)) +$(eval $(host-generic-package)) diff --git a/package/tzdump/tzdump.hash b/package/tzdump/tzdump.hash new file mode 100644 index 00000000..b0d58c62 --- /dev/null +++ b/package/tzdump/tzdump.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 e078ba9bd90cb46368beb3cfef2288194e5edefd53ad9565961a97d1c7d6c59f tzdump-e1a52ce12a701b8ea4163d6719713e38c0e53d35.tar.gz diff --git a/package/tzdump/tzdump.mk b/package/tzdump/tzdump.mk new file mode 100644 index 00000000..f6b6a1a7 --- /dev/null +++ b/package/tzdump/tzdump.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# tzdump +# +################################################################################ + +TZDUMP_VERSION = e1a52ce12a701b8ea4163d6719713e38c0e53d35 +TZDUMP_SITE = $(call github,alexandrebelloni,tzdump,$(TZDUMP_VERSION)) +HOST_TZDUMP_DEPENDENCIES = host-zic + +define HOST_TZDUMP_BUILD_CMDS + cd $(@D) && $(HOSTCC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o tzdump tzdump.c +endef + +define HOST_TZDUMP_INSTALL_CMDS + $(INSTALL) -m 0755 -D $(@D)/tzdump $(HOST_DIR)/sbin/tzdump +endef + +$(eval $(host-generic-package)) + +TZDUMP = $(HOST_DIR)/sbin/tzdump diff --git a/package/uacme/Config.in b/package/uacme/Config.in new file mode 100644 index 00000000..d6934361 --- /dev/null +++ b/package/uacme/Config.in @@ -0,0 +1,34 @@ +config BR2_PACKAGE_UACME + bool "uacme" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_OPENSSL if !(BR2_PACKAGE_GNUTLS || BR2_PACKAGE_MBEDTLS) + select BR2_PACKAGE_LIBCURL + help + uacme is a client for the ACMEv2 protocol described in + RFC8555, written in plain C with minimal dependencies + (libcurl and either of GnuTLS, OpenSSL or mbedTLS). The + ACMEv2 protocol allows a Certificate Authority + (https://letsencrypt.org is a popular one) and an applicant + to automate the process of verification and certificate + issuance. + + https://github.com/ndilieto/uacme + +if BR2_PACKAGE_UACME + +config BR2_PACKAGE_UACME_UALPN + bool "enable ualpn" + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_PACKAGE_OPENSSL || BR2_PACKAGE_GNUTLS + select BR2_PACKAGE_LIBEV + help + Build and install ualpn, the transparent proxying tls-alpn-01 + challenge responder. + +comment "ualpn needs a toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS + +comment "ualpn needs either OpenSSL or GnuTLS" + depends on !(BR2_PACKAGE_OPENSSL || BR2_PACKAGE_GNUTLS) + +endif diff --git a/package/uacme/uacme.hash b/package/uacme/uacme.hash new file mode 100644 index 00000000..d0277c73 --- /dev/null +++ b/package/uacme/uacme.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 3f3de5f456907558c4aa0db5654c618becb1b3e057ad217e180c8f72360e7841 uacme-1.4.1.tar.gz +sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING diff --git a/package/uacme/uacme.mk b/package/uacme/uacme.mk new file mode 100644 index 00000000..975a965d --- /dev/null +++ b/package/uacme/uacme.mk @@ -0,0 +1,36 @@ +################################################################################ +# +# uacme +# +################################################################################ + +UACME_VERSION = 1.4.1 +# Released versions are on branch upstream/latest, tagged as +# upstream/X.Y.Z Do not use vX.Y.Z tags from master, as they do not +# include .tarball-version +UACME_SITE = $(call github,ndilieto,uacme,upstream/$(UACME_VERSION)) +UACME_LICENSE = GPL-3.0+ +UACME_LICENSE_FILES = COPYING +UACME_DEPENDENCIES = libcurl + +UACME_CONF_ENV = ac_cv_prog_cc_c99='-std=gnu99' + +ifeq ($(BR2_PACKAGE_GNUTLS),y) +UACME_CONF_OPTS += --with-gnutls +UACME_DEPENDENCIES += gnutls +else ifeq ($(BR2_PACKAGE_OPENSSL),y) +UACME_CONF_OPTS += --with-openssl +UACME_DEPENDENCIES += openssl +else ifeq ($(BR2_PACKAGE_MBEDTLS),y) +UACME_CONF_OPTS += --with-mbedtls +UACME_DEPENDENCIES += mbedtls +endif + +ifeq ($(BR2_PACKAGE_UACME_UALPN),y) +UACME_DEPENDENCIES += libev +UACME_CONF_OPTS += --with-ualpn +else +UACME_CONF_OPTS += --without-ualpn +endif + +$(eval $(autotools-package)) 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 index 00000000..59e5686e --- /dev/null +++ b/package/uboot-tools/0001-drop-configh-from-tools.patch @@ -0,0 +1,49 @@ +From ab8b54cfc9d3fddba297c343a2d8dea9dbe20017 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Tue, 4 Aug 2015 22:13:20 +0200 +Subject: [PATCH] drop configh from tools +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +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 +[Jörg Krause: update for version 2015.07] +Signed-off-by: Jörg Krause +[Romain: update for version 2017.05 + after commit 9d80b49a671c9922931adcd823aab0ed319a42d1] +Signed-off-by: Romain Naour +[Pierre-Jean: update for version 2019.04] +Signed-off-by: Pierre-Jean Texier +--- + tools/env/fw_env_private.h | 11 ----------- + 1 file changed, 11 deletions(-) + +diff --git a/tools/env/fw_env_private.h b/tools/env/fw_env_private.h +index 86be16d..3c62ac4 100644 +--- a/tools/env/fw_env_private.h ++++ b/tools/env/fw_env_private.h +@@ -4,17 +4,6 @@ + * Wolfgang Denk, DENX Software Engineering, wd@denx.de. + */ + +-/* Pull in the current config to define the default environment */ +-#include +- +-#ifndef __ASSEMBLY__ +-#define __ASSEMBLY__ /* get only #defines from config.h */ +-#include +-#undef __ASSEMBLY__ +-#else +-#include +-#endif +- + /* + * To build the utility with the static configuration + * comment out the next line. +-- +2.9.4 + diff --git a/package/uboot-tools/0002-tools-only-in-no-dot-config-targets.patch b/package/uboot-tools/0002-tools-only-in-no-dot-config-targets.patch new file mode 100644 index 00000000..a376afbc --- /dev/null +++ b/package/uboot-tools/0002-tools-only-in-no-dot-config-targets.patch @@ -0,0 +1,42 @@ +From 460646b3c4c1718860915c38586ee8d2fbda38e4 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Sun, 1 Feb 2015 21:53:47 +0100 +Subject: [PATCH] tools only in no dot config targets +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Revert upstream commit c7ad5cbb1ef2c33883f0fa7d0455095004fd306d: + + Makefile: drop "tools-only" from no-dot-config-targets + +This indirectly pulls in a build-dependency on libssl-dev used for FIT +image support, and possibly GPL/OpenSSL licensing incompatibility +issues. + +Based on Debian patch from u-boot-tools: +http://ftp.de.debian.org/debian/pool/main/u/u-boot/u-boot_2014.10+dfsg1-2.1.debian.tar.xz + +Signed-off-by: Jörg Krause +[fabio: adapt it to 2016.09] +Signed-off-by: Fabio Estevam +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 6aa08964ff..fcec83d183 100644 +--- a/Makefile ++++ b/Makefile +@@ -486,7 +486,7 @@ defaultenv_h := include/generated/defaultenv_autogenerated.h + + no-dot-config-targets := clean clobber mrproper distclean \ + help %docs check% coccicheck \ +- ubootversion backup tests check qcheck ++ ubootversion backup tests tools-only check qcheck + + config-targets := 0 + mixed-targets := 0 +-- +2.20.1 + diff --git a/package/uboot-tools/0003-drop-autoconf.h-from-tools.patch b/package/uboot-tools/0003-drop-autoconf.h-from-tools.patch new file mode 100644 index 00000000..09ee40be --- /dev/null +++ b/package/uboot-tools/0003-drop-autoconf.h-from-tools.patch @@ -0,0 +1,36 @@ +From 0552a8ffdfbb9807fcef4498011907caa5de2ace Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Thu, 9 Jan 2020 15:11:32 +0100 +Subject: [PATCH] drop autoconf.h from tools +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +We need to build u-boot tools without a board configuration for the target. + +imximage uses the DCD address from Kconfig to display this information +to the user. The default value for all i.MX platforms is 0x00910000, +except for i.MX7ULP, which has a DCD address of 0x2f010000. + +The default value printed before version 2020.01 was 0x00910000. + +Signed-off-by: Jörg Krause +--- + tools/imximage.c | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/tools/imximage.c b/tools/imximage.c +index d7edd3c52f..f8d21fa06a 100644 +--- a/tools/imximage.c ++++ b/tools/imximage.c +@@ -11,7 +11,6 @@ + #include "imagetool.h" + #include + #include "imximage.h" +-#include + + #define UNDEFINED 0xFFFFFFFF + +-- +2.25.0 + diff --git a/package/uboot-tools/0004-tools-env-fw_env.h-remove-env.h.patch b/package/uboot-tools/0004-tools-env-fw_env.h-remove-env.h.patch new file mode 100644 index 00000000..f5d9c2b2 --- /dev/null +++ b/package/uboot-tools/0004-tools-env-fw_env.h-remove-env.h.patch @@ -0,0 +1,52 @@ +From 664ef61e19d6261d8984493b5f22127ec2ad44fc Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Sun, 10 May 2020 23:15:32 +0200 +Subject: [PATCH] tools/env/fw_env.h: remove env.h + +As reported by Nicolas Carrier on the Buildroot mailing list [1], +there is a new build issue while building a program which interacts with +the u-boot environment. This program uses the headers of the ubootenv +library provided by uboot-tools. + +This is an upstream change from uboot [2] adding "#include " to +fw_env.h. Adding env.h require a board configuration to build. + +But only fw_env.h header is installed in the staging directory by +uboot-tools package, but since it now include env.h the build is broken +because env.h is missing from the staging directory. + +It's seems an upstream bug since env_set() is not used in fw_env tool. + +Adding env.h is an error since it also include compiler.h (and others +uboot internal includes). + +Nicolas removed env.h from fw_env tool and fixed it's build issue. + +This problem is present since uboot v2019.10, so the uboot version +present in Buildroot 2020.02 is affected. + +[1] http://lists.busybox.net/pipermail/buildroot/2020-April/280307.html +[2] https://gitlab.denx.de/u-boot/u-boot/-/commit/9fb625ce05539fe6876a59ce1dcadb76b33c6f6e + +Reported-by: Nicolas Carrier +Signed-off-by: Romain Naour +Upstream: https://gitlab.denx.de/u-boot/u-boot/-/commit/2aca8804d8d5f84d2d661e76e8d232c5c12445b5 +--- + tools/env/fw_env.h | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/tools/env/fw_env.h b/tools/env/fw_env.h +index b60fbfc8f8..78c803c944 100644 +--- a/tools/env/fw_env.h ++++ b/tools/env/fw_env.h +@@ -4,7 +4,6 @@ + * Wolfgang Denk, DENX Software Engineering, wd@denx.de. + */ + +-#include + #include + + /* +-- +2.25.4 + diff --git a/package/uboot-tools/Config.in b/package/uboot-tools/Config.in new file mode 100644 index 00000000..681f87b4 --- /dev/null +++ b/package/uboot-tools/Config.in @@ -0,0 +1,96 @@ +config BR2_PACKAGE_UBOOT_TOOLS + bool "u-boot tools" + help + Companion tools for Das U-Boot bootloader. + + http://www.denx.de/wiki/U-Boot/WebHome + +if BR2_PACKAGE_UBOOT_TOOLS + +config BR2_PACKAGE_UBOOT_TOOLS_FIT_SUPPORT + bool "Flattened Image Tree (FIT) support" + depends on !BR2_STATIC_LIBS + select BR2_PACKAGE_DTC + select BR2_PACKAGE_DTC_PROGRAMS + help + Enables support for Flattened Image Tree (FIT). + + This option allows to boot the new uImage structure, + Flattened Image Tree. FIT is formally a FDT, which can include + images of various types (kernel, FDT blob, ramdisk, etc.) + in a single blob. To boot this new uImage structure, + pass the address of the blob to the "bootm" command. + +comment "u-boot tools FIT support needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS + +if BR2_PACKAGE_UBOOT_TOOLS_FIT_SUPPORT + +config BR2_PACKAGE_UBOOT_TOOLS_FIT_SIGNATURE_SUPPORT + bool "FIT signature verification support" + select BR2_PACKAGE_OPENSSL + help + Enables support for FIT Signature Verification. + + Flat Image Trees (FIT) supports hashing of images so that + these hashes can be checked on loading. This protects + against corruption of the image. However it does not prevent + the substitution of one image for another. + + The signature feature allows the hash to be signed with a + private key such that it can be verified using a public key + later. Provided that the private key is kept secret and the + public key is stored in a non-volatile place, any image can + be verified in this way. + + Enabling this option pulls in a dependency on libssl and + libcrypto, and possibly GPL/OpenSSL licensing + incompatibility issues. + +config BR2_PACKAGE_UBOOT_TOOLS_FIT_CHECK_SIGN + bool "fit_check_sign" + depends on BR2_PACKAGE_UBOOT_TOOLS_FIT_SIGNATURE_SUPPORT + help + Install the fit_check_sign tool on the target system + + The fit_check_sign tool from Das U-Boot bootloader, which + allows FIT image signature validation on target system. + +endif + +config BR2_PACKAGE_UBOOT_TOOLS_MKIMAGE + bool "mkimage" + help + Install the mkimage tool on the target system + + The mkimage tool from Das U-Boot bootloader, which allows + generation of U-Boot images in various formats. + +config BR2_PACKAGE_UBOOT_TOOLS_MKENVIMAGE + bool "mkenvimage" + help + Install the mkenvimage tool on the target system + + The mkenvimage tool from Das U-Boot bootloader, which allows + generation of a valid binary environment image from a text + file describing the key=value pairs of the environment. + +config BR2_PACKAGE_UBOOT_TOOLS_FWPRINTENV + bool "fw_printenv" + default y + help + Install the fw_printenv / fw_setenv tools on the target system + + The fw_printenv and fw_setenv tools from Das U-Boot + bootloader, which allows access to the U-Boot environment + from Linux. + +config BR2_PACKAGE_UBOOT_TOOLS_DUMPIMAGE + bool "dumpimage" + help + Install the dumpimage tool on the target system + + The dumpimage tool from Das U-Boot bootloader, which allows + extraction of data from U-Boot images. + +endif diff --git a/package/uboot-tools/Config.in.host b/package/uboot-tools/Config.in.host new file mode 100644 index 00000000..431cc863 --- /dev/null +++ b/package/uboot-tools/Config.in.host @@ -0,0 +1,111 @@ +config BR2_PACKAGE_HOST_UBOOT_TOOLS + bool "host u-boot tools" + help + Companion tools for Das U-Boot bootloader. + + http://www.denx.de/wiki/U-Boot/WebHome + +if BR2_PACKAGE_HOST_UBOOT_TOOLS + +config BR2_PACKAGE_HOST_UBOOT_TOOLS_FIT_SUPPORT + bool "Flattened Image Tree (FIT) support" + select BR2_PACKAGE_HOST_DTC + help + Enables support for Flattened Image Tree (FIT). + + This option allows to boot the new uImage structure, + Flattened Image Tree. FIT is formally a FDT, which can include + images of various types (kernel, FDT blob, ramdisk, etc.) + in a single blob. To boot this new uImage structure, + pass the address of the blob to the "bootm" command. + +if BR2_PACKAGE_HOST_UBOOT_TOOLS_FIT_SUPPORT + +config BR2_PACKAGE_HOST_UBOOT_TOOLS_FIT_SIGNATURE_SUPPORT + bool "FIT signature verification support" + help + Enables support for FIT Signature Verification. + + Flat Image Trees (FIT) supports hashing of images so that + these hashes can be checked on loading. This protects + against corruption of the image. However it does not prevent + the substitution of one image for another. + + The signature feature allows the hash to be signed with a + private key such that it can be verified using a public key + later. Provided that the private key is kept secret and the + public key is stored in a non-volatile place, any image can + be verified in this way. + +endif # BR2_PACKAGE_HOST_UBOOT_TOOLS_FIT_SUPPORT + +config BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE + bool "Environment image" + help + Generate a valid binary environment image from a text file + describing the key=value pairs of the environment. + + This option can be useful to build enviornment configurations + as part of a Linux / rootfs only defconfig instead of using + post scripts. This supports a hardware use case of a single + bootloader only defconfig but multiple Linux / rootfs + defconfigs with different boot environments. + + The environment image will be called uboot-env.bin. + +if BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE + +config BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE_SOURCE + string "Source files for environment" + default BR2_TARGET_UBOOT_ENVIMAGE_SOURCE if BR2_TARGET_UBOOT_ENVIMAGE_SOURCE != "" # legacy + help + Text files describing the environment. Files should have + lines of the form var=value, one per line. Blank lines and + lines starting with a # are ignored. + + Multiple source files are concatenated in the order listed. + + Leave empty to generate image from compiled-in env if a U-boot + target build is configured (BR2_TARGET_UBOOT) + +config BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE_SIZE + string "Size of environment" + default BR2_TARGET_UBOOT_ENVIMAGE_SIZE if BR2_TARGET_UBOOT_ENVIMAGE_SIZE != "" # legacy + help + Size of envronment, can be prefixed with 0x for hexadecimal + values. + +config BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE_REDUNDANT + bool "Environment has two copies" + help + Some platforms define in their U-Boot configuration that the + U-Boot environment should be duplicated in two locations (for + extra safety). Check your U-Boot configuration for the + CONFIG_ENV_ADDR_REDUND and CONFIG_ENV_SIZE_REDUND settings to + see if this is the case for your platform. + + If it is the case, then you should enable this option to + ensure that the U-Boot environment image generated by + Buildroot is compatible with the "redundant environment" + mechanism of U-Boot. + +endif # BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE + +config BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT + bool "Generate a U-Boot boot script" + help + Generate a U-Boot boot script, given a file listing U-Boot + commands to be executed at boot time. The generated boot + script will be called 'boot.scr'. + +if BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT + +config BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE + string "U-Boot boot script source" + default BR2_TARGET_UBOOT_BOOT_SCRIPT_SOURCE if BR2_TARGET_UBOOT_BOOT_SCRIPT_SOURCE != "" # legacy + help + Source file to generate the U-Boot boot script. + +endif # BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT + +endif # BR2_PACKAGE_HOST_UBOOT_TOOLS diff --git a/package/uboot-tools/uboot-tools.hash b/package/uboot-tools/uboot-tools.hash new file mode 100644 index 00000000..8274246c --- /dev/null +++ b/package/uboot-tools/uboot-tools.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 fe732aaf037d9cc3c0909bad8362af366ae964bbdac6913a34081ff4ad565372 u-boot-2020.04.tar.bz2 +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 Licenses/gpl-2.0.txt diff --git a/package/uboot-tools/uboot-tools.mk b/package/uboot-tools/uboot-tools.mk new file mode 100644 index 00000000..b0fc9276 --- /dev/null +++ b/package/uboot-tools/uboot-tools.mk @@ -0,0 +1,216 @@ +################################################################################ +# +# uboot-tools +# +################################################################################ + +UBOOT_TOOLS_VERSION = 2020.04 +UBOOT_TOOLS_SOURCE = u-boot-$(UBOOT_TOOLS_VERSION).tar.bz2 +UBOOT_TOOLS_SITE = ftp://ftp.denx.de/pub/u-boot +UBOOT_TOOLS_LICENSE = GPL-2.0+ +UBOOT_TOOLS_LICENSE_FILES = Licenses/gpl-2.0.txt +UBOOT_TOOLS_CPE_ID_VENDOR = denx +UBOOT_TOOLS_CPE_ID_PRODUCT = u-boot +UBOOT_TOOLS_INSTALL_STAGING = YES + +# u-boot 2020.01+ needs make 4.0+ +UBOOT_TOOLS_DEPENDENCIES = $(BR2_MAKE_HOST_DEPENDENCY) +HOST_UBOOT_TOOLS_DEPENDENCIES = $(BR2_MAKE_HOST_DEPENDENCY) + +define UBOOT_TOOLS_CONFIGURE_CMDS + mkdir -p $(@D)/include/config + touch $(@D)/include/config/auto.conf +endef + +UBOOT_TOOLS_MAKE_OPTS = CROSS_COMPILE="$(TARGET_CROSS)" \ + CFLAGS="$(TARGET_CFLAGS)" \ + LDFLAGS="$(TARGET_LDFLAGS)" \ + HOSTCFLAGS="$(HOST_CFLAGS)" \ + STRIP=$(TARGET_STRIP) + +ifeq ($(BR2_PACKAGE_UBOOT_TOOLS_FIT_SUPPORT),y) +UBOOT_TOOLS_MAKE_OPTS += CONFIG_FIT=y CONFIG_MKIMAGE_DTC_PATH=dtc +UBOOT_TOOLS_DEPENDENCIES += dtc +endif + +ifeq ($(BR2_PACKAGE_UBOOT_TOOLS_FIT_SIGNATURE_SUPPORT),y) +UBOOT_TOOLS_MAKE_OPTS += CONFIG_FIT_SIGNATURE=y CONFIG_FIT_SIGNATURE_MAX_SIZE=0x10000000 +UBOOT_TOOLS_DEPENDENCIES += openssl host-pkgconf +endif + +ifeq ($(BR2_PACKAGE_UBOOT_TOOLS_FIT_CHECK_SIGN),y) +define UBOOT_TOOLS_INSTALL_FIT_CHECK_SIGN + $(INSTALL) -m 0755 -D $(@D)/tools/fit_check_sign $(TARGET_DIR)/usr/bin/fit_check_sign +endef +endif + +define UBOOT_TOOLS_BUILD_CMDS + $(TARGET_MAKE_ENV) $(BR2_MAKE) -C $(@D) $(UBOOT_TOOLS_MAKE_OPTS) \ + CROSS_BUILD_TOOLS=y tools-only + $(TARGET_MAKE_ENV) $(BR2_MAKE) -C $(@D) $(UBOOT_TOOLS_MAKE_OPTS) \ + envtools no-dot-config-targets=envtools +endef + +ifeq ($(BR2_PACKAGE_UBOOT_TOOLS_MKIMAGE),y) +define UBOOT_TOOLS_INSTALL_MKIMAGE + $(INSTALL) -m 0755 -D $(@D)/tools/mkimage $(TARGET_DIR)/usr/bin/mkimage +endef +endif + +ifeq ($(BR2_PACKAGE_UBOOT_TOOLS_MKENVIMAGE),y) +define UBOOT_TOOLS_INSTALL_MKENVIMAGE + $(INSTALL) -m 0755 -D $(@D)/tools/mkenvimage $(TARGET_DIR)/usr/bin/mkenvimage +endef +endif + +ifeq ($(BR2_PACKAGE_UBOOT_TOOLS_FWPRINTENV),y) +define UBOOT_TOOLS_INSTALL_FWPRINTENV + $(INSTALL) -m 0755 -D $(@D)/tools/env/fw_printenv $(TARGET_DIR)/usr/sbin/fw_printenv + ln -sf fw_printenv $(TARGET_DIR)/usr/sbin/fw_setenv +endef +endif + +ifeq ($(BR2_PACKAGE_UBOOT_TOOLS_DUMPIMAGE),y) +define UBOOT_TOOLS_INSTALL_DUMPIMAGE + $(INSTALL) -m 0755 -D $(@D)/tools/dumpimage $(TARGET_DIR)/usr/sbin/dumpimage +endef +endif + +define UBOOT_TOOLS_INSTALL_STAGING_CMDS + $(INSTALL) -D -m 0755 $(@D)/tools/env/lib.a $(STAGING_DIR)/usr/lib/libubootenv.a + $(INSTALL) -D -m 0644 $(@D)/tools/env/fw_env.h $(STAGING_DIR)/usr/include/fw_env.h +endef + +define UBOOT_TOOLS_INSTALL_TARGET_CMDS + $(UBOOT_TOOLS_INSTALL_MKIMAGE) + $(UBOOT_TOOLS_INSTALL_MKENVIMAGE) + $(UBOOT_TOOLS_INSTALL_FWPRINTENV) + $(UBOOT_TOOLS_INSTALL_DUMPIMAGE) + $(UBOOT_TOOLS_INSTALL_FIT_CHECK_SIGN) +endef + +# host-uboot-tools + +define HOST_UBOOT_TOOLS_CONFIGURE_CMDS + mkdir -p $(@D)/include/config + touch $(@D)/include/config/auto.conf +endef + +HOST_UBOOT_TOOLS_MAKE_OPTS = HOSTCC="$(HOSTCC)" \ + HOSTCFLAGS="$(HOST_CFLAGS)" \ + HOSTLDFLAGS="$(HOST_LDFLAGS)" + +ifeq ($(BR2_PACKAGE_HOST_UBOOT_TOOLS_FIT_SUPPORT),y) +HOST_UBOOT_TOOLS_MAKE_OPTS += CONFIG_FIT=y CONFIG_MKIMAGE_DTC_PATH=dtc +HOST_UBOOT_TOOLS_DEPENDENCIES += host-dtc +endif + +ifeq ($(BR2_PACKAGE_HOST_UBOOT_TOOLS_FIT_SIGNATURE_SUPPORT),y) +HOST_UBOOT_TOOLS_MAKE_OPTS += CONFIG_FIT_SIGNATURE=y CONFIG_FIT_SIGNATURE_MAX_SIZE=0x10000000 +HOST_UBOOT_TOOLS_DEPENDENCIES += host-openssl +endif + +ifeq ($(BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE),y) + +UBOOT_TOOLS_GENERATE_ENV_FILE = $(call qstrip,$(BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE_SOURCE)) + +# If BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE_SOURCE is left empty, we +# will use the default environment provided in the U-Boot build +# directory as boot-env-defaults.txt, which requires having uboot as a +# dependency. +# If BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE_SOURCE is not empty, is +# might be referring to a file within the U-Boot source tree, so we +# also need to have uboot as a dependency. +ifeq ($(BR2_TARGET_UBOOT),y) +HOST_UBOOT_TOOLS_DEPENDENCIES += uboot + +# Handle the case where BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE_SOURCE +# is left empty, use the default U-Boot environment. +ifeq ($(UBOOT_TOOLS_GENERATE_ENV_FILE),) +UBOOT_TOOLS_GENERATE_ENV_FILE = $(@D)/boot-env-defaults.txt +define HOST_UBOOT_TOOLS_GENERATE_ENV_DEFAULTS + CROSS_COMPILE="$(TARGET_CROSS)" \ + $(UBOOT_SRCDIR)/scripts/get_default_envs.sh \ + $(UBOOT_SRCDIR) \ + > $(UBOOT_TOOLS_GENERATE_ENV_FILE) +endef +endif # UBOOT_TOOLS_GENERATE_ENV_FILE +endif # BR2_TARGET_UBOOT + +ifeq ($(BR_BUILDING),y) +ifeq ($(call qstrip,$(BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE_SIZE)),) +$(error Please provide U-Boot environment size (BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE_SIZE setting)) +endif +# If U-Boot is not available, ENVIMAGE_SOURCE must be provided by user, +# otherwise it is optional because the default can be taken from U-Boot +ifeq ($(BR2_TARGET_UBOOT),) +ifeq ($(call qstrip,$(BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE_SOURCE)),) +$(error Please provide U-Boot environment file (BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE_SOURCE setting)) +endif +endif #BR2_TARGET_UBOOT +endif #BR_BUILDING + +define HOST_UBOOT_TOOLS_GENERATE_ENVIMAGE + $(HOST_UBOOT_TOOLS_GENERATE_ENV_DEFAULTS) + cat $(UBOOT_TOOLS_GENERATE_ENV_FILE) | \ + $(@D)/tools/mkenvimage -s $(BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE_SIZE) \ + $(if $(BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE_REDUNDANT),-r) \ + $(if $(filter "BIG",$(BR2_ENDIAN)),-b) \ + -o $(@D)/tools/uboot-env.bin \ + - +endef +define HOST_UBOOT_TOOLS_INSTALL_ENVIMAGE + $(INSTALL) -m 0755 -D $(@D)/tools/uboot-env.bin $(BINARIES_DIR)/uboot-env.bin +endef +endif #BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE + +ifeq ($(BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT),y) +ifeq ($(BR_BUILDING),y) +ifeq ($(call qstrip,$(BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE)),) +$(error Please define a source file for U-Boot boot script (BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE setting)) +endif +endif #BR_BUILDING + +define HOST_UBOOT_TOOLS_GENERATE_BOOT_SCRIPT + $(@D)/tools/mkimage -C none -A $(MKIMAGE_ARCH) -T script \ + -d $(call qstrip,$(BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE)) \ + $(@D)/tools/boot.scr +endef +define HOST_UBOOT_TOOLS_INSTALL_BOOT_SCRIPT + $(INSTALL) -m 0755 -D $(@D)/tools/boot.scr $(BINARIES_DIR)/boot.scr +endef +endif #BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT + +define HOST_UBOOT_TOOLS_BUILD_CMDS + $(BR2_MAKE1) -C $(@D) $(HOST_UBOOT_TOOLS_MAKE_OPTS) tools-only + $(HOST_UBOOT_TOOLS_GENERATE_ENVIMAGE) + $(HOST_UBOOT_TOOLS_GENERATE_BOOT_SCRIPT) +endef + +define HOST_UBOOT_TOOLS_INSTALL_CMDS + $(INSTALL) -m 0755 -D $(@D)/tools/mkimage $(HOST_DIR)/bin/mkimage + $(INSTALL) -m 0755 -D $(@D)/tools/mkenvimage $(HOST_DIR)/bin/mkenvimage + $(INSTALL) -m 0755 -D $(@D)/tools/dumpimage $(HOST_DIR)/bin/dumpimage + $(HOST_UBOOT_TOOLS_INSTALL_ENVIMAGE) + $(HOST_UBOOT_TOOLS_INSTALL_BOOT_SCRIPT) +endef + +$(eval $(generic-package)) +$(eval $(host-generic-package)) + +# Convenience variables for other mk files that make use of mkimage + +MKIMAGE = $(HOST_DIR)/bin/mkimage + +# mkimage supports arm blackfin m68k microblaze mips mips64 nios2 powerpc ppc sh sparc sparc64 x86 +# KERNEL_ARCH can be arm64 arc arm blackfin m68k microblaze mips nios2 powerpc sh sparc i386 x86_64 xtensa +# For arm64, arc, xtensa we'll just keep KERNEL_ARCH +# For mips64, we'll just keep mips +# For i386 and x86_64, we need to convert +ifeq ($(KERNEL_ARCH),x86_64) +MKIMAGE_ARCH = x86 +else ifeq ($(KERNEL_ARCH),i386) +MKIMAGE_ARCH = x86 +else +MKIMAGE_ARCH = $(KERNEL_ARCH) +endif diff --git a/package/ubus/0001-Install-server-and-client-examples.patch b/package/ubus/0001-Install-server-and-client-examples.patch new file mode 100644 index 00000000..5c985d8c --- /dev/null +++ b/package/ubus/0001-Install-server-and-client-examples.patch @@ -0,0 +1,28 @@ +From aa4aea68a9d2a38fabb5ae8e5a0d05dfd7bcf907 Mon Sep 17 00:00:00 2001 +From: Rahul Jain +Date: Fri, 24 Mar 2017 18:03:24 +0530 +Subject: [PATCH] Install server and client examples + +Signed-off-by: Sergio Prado +Signed-off-by: Rahul Jain +[Rahul Jain: rebase the patch on latest version] +--- + examples/CMakeLists.txt | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt +index 81f9997..38f153f 100644 +--- a/examples/CMakeLists.txt ++++ b/examples/CMakeLists.txt +@@ -9,4 +9,8 @@ IF (BUILD_EXAMPLES) + + ADD_EXECUTABLE(client client.c count.c) + TARGET_LINK_LIBRARIES(client ubus ${ubox_library}) ++ ++ INSTALL(TARGETS server client ++ RUNTIME DESTINATION sbin ++ ) + ENDIF() +-- +2.6.2 + diff --git a/package/ubus/Config.in b/package/ubus/Config.in new file mode 100644 index 00000000..28bf8e9a --- /dev/null +++ b/package/ubus/Config.in @@ -0,0 +1,31 @@ +comment "ubus needs a toolchain w/ dynamic library" + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on BR2_STATIC_LIBS + +config BR2_PACKAGE_UBUS + bool "ubus" + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # json-c + depends on !BR2_STATIC_LIBS # libubox + select BR2_PACKAGE_LIBUBOX + select BR2_PACKAGE_JSON_C + help + IPC/RPC bus that allows communication between processes. + + It consists of few parts including a daemon (ubusd), a + library (libubus) and a command line interface + (ubus). Although created for the OpenWRT project, it can be + used as a general IPC/RPC mechanism in other projects. + + * Select BR2_PACKAGE_LUA_5_1 if you want to have Lua + support. + + https://wiki.openwrt.org/doc/techref/ubus + +if BR2_PACKAGE_UBUS + +config BR2_PACKAGE_UBUS_EXAMPLES + bool "build and install ubus examples" + help + Build and install client and server ubus examples. + +endif diff --git a/package/ubus/ubus.hash b/package/ubus/ubus.hash new file mode 100644 index 00000000..1fcea368 --- /dev/null +++ b/package/ubus/ubus.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 011566b2be426f572d397b44a7c12baa50a9b949232e5a6075eba613e1c3f7ae ubus-34c6e818e431cc53478a0f7c7c1eca07d194d692-br1.tar.gz +sha256 f53187f011575f6ec6c529136fd4658d67e674227c80b7b72c99b3654454ae7f ubusd_acl.h diff --git a/package/ubus/ubus.mk b/package/ubus/ubus.mk new file mode 100644 index 00000000..5fb57ead --- /dev/null +++ b/package/ubus/ubus.mk @@ -0,0 +1,40 @@ +################################################################################ +# +# ubus +# +################################################################################ + +UBUS_VERSION = 34c6e818e431cc53478a0f7c7c1eca07d194d692 +UBUS_SITE = git://git.openwrt.org/project/ubus.git + +UBUS_LICENSE = LGPL-2.1 +UBUS_LICENSE_FILES = ubusd_acl.h + +UBUS_INSTALL_STAGING = YES + +UBUS_DEPENDENCIES = json-c libubox + +# package only compiles with Lua 5.1 +ifeq ($(BR2_PACKAGE_LUA_5_1),y) +UBUS_DEPENDENCIES += lua +UBUS_CONF_OPTS += -DBUILD_LUA=ON \ + -DLUA_CFLAGS=-I$(STAGING_DIR)/usr/include \ + -DLUAPATH=/usr/lib/lua/$(LUAINTERPRETER_ABIVER) +else +UBUS_CONF_OPTS += -DBUILD_LUA=OFF +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD),y) +UBUS_DEPENDENCIES += systemd +UBUS_CONF_OPTS += -DENABLE_SYSTEMD=ON +else +UBUS_CONF_OPTS += -DENABLE_SYSTEMD=OFF +endif + +ifeq ($(BR2_PACKAGE_UBUS_EXAMPLES),y) +UBUS_CONF_OPTS += -DBUILD_EXAMPLES=ON +else +UBUS_CONF_OPTS += -DBUILD_EXAMPLES=OFF +endif + +$(eval $(cmake-package)) diff --git a/package/uccp420wlan/Config.in b/package/uccp420wlan/Config.in new file mode 100644 index 00000000..ef6a9db8 --- /dev/null +++ b/package/uccp420wlan/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_UCCP420WLAN + bool "uccp420wlan" + depends on BR2_LINUX_KERNEL + help + SoftMAC (mac80211) based WiFi driver for Imagination's + Explorer RPU uccp420. This supports Dual Band WiFi with + 2.4GHz - 2x2 b/g/n 40MHz, 5GHz - 2x2 a/n/11ac 80MHz modes + + Used in creator ci40 board. + + This module needs a Linux kernel >= v4.2. + + https://github.com/CreatorDev/uccp420wlan + +comment "uccp420wlan needs a Linux kernel >= 4.2 to be built" + depends on !BR2_LINUX_KERNEL diff --git a/package/uccp420wlan/uccp420wlan.hash b/package/uccp420wlan/uccp420wlan.hash new file mode 100644 index 00000000..905fa429 --- /dev/null +++ b/package/uccp420wlan/uccp420wlan.hash @@ -0,0 +1,4 @@ +# locally computed hash +sha256 1d4de62fc842dbab739708cf0d9ebce270fcdf63c1c13ac676cbc253acdaa3bb uccp420wlan-6.9.1.tar.gz +sha256 af8067302947c01fd9eee72befa54c7e3ef8a48fecde7fd71277f2290b2bf0f7 COPYING +sha256 9ac431585fddfe624b08cf7464876a5e96061047ff26a9e926da3d89d21a2a73 firmware/LICENSE.imagination diff --git a/package/uccp420wlan/uccp420wlan.mk b/package/uccp420wlan/uccp420wlan.mk new file mode 100644 index 00000000..7256b927 --- /dev/null +++ b/package/uccp420wlan/uccp420wlan.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# uccp420wlan +# +################################################################################ + +UCCP420WLAN_VERSION = 6.9.1 +UCCP420WLAN_SITE = $(call github,CreatorDev,uccp420wlan,v$(UCCP420WLAN_VERSION)) +UCCP420WLAN_LICENSE = GPL-2.0 (kernel module), proprietary (firmware blob) +UCCP420WLAN_LICENSE_FILES = COPYING firmware/LICENSE.imagination + +define UCCP420WLAN_INSTALL_TARGET_CMDS + mkdir -p $(TARGET_DIR)/lib/firmware/img/uccp420wlan + cp $(@D)/firmware/*.ldr $(TARGET_DIR)/lib/firmware/img/uccp420wlan +endef + +$(eval $(kernel-module)) +$(eval $(generic-package)) diff --git a/package/ucl/ucl.hash b/package/ucl/ucl.hash new file mode 100644 index 00000000..0252f692 --- /dev/null +++ b/package/ucl/ucl.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 b865299ffd45d73412293369c9754b07637680e5c826915f097577cd27350348 ucl-1.03.tar.gz +sha256 70439f6e2b47057a408d2390ed6663b9875f5a08066a06a060a357ef1df89a8c COPYING diff --git a/package/ucl/ucl.mk b/package/ucl/ucl.mk new file mode 100644 index 00000000..aac068ef --- /dev/null +++ b/package/ucl/ucl.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# ucl +# +################################################################################ + +UCL_VERSION = 1.03 +UCL_SITE = http://www.oberhumer.com/opensource/ucl/download +UCL_LICENSE = GPL-2.0+ +UCL_LICENSE_FILES = COPYING + +# Fix ACC conformance test failure for host gcc 6.x +HOST_UCL_CONF_ENV += CPPFLAGS="$(HOST_CPPFLAGS) -std=iso9899:1990" + +$(eval $(host-autotools-package)) diff --git a/package/uclibc-ng-test/Config.in b/package/uclibc-ng-test/Config.in new file mode 100644 index 00000000..0f093d1d --- /dev/null +++ b/package/uclibc-ng-test/Config.in @@ -0,0 +1,22 @@ +config BR2_PACKAGE_UCLIBC_NG_TEST + bool "uclibc-ng-test" + help + Enabling this option will compile and install the uClibc-ng + test suite. This is useful if you want to check if the + uClibc-ng library is working for your architecture and/or + help developing uClibc-ng. + + The test suite will be installed into + /usr/lib/uclibc-ng-test directory. To run the test suite + enter the /usr/lib/uclibc-ng-test/test directory and type + "sh uclibcng-testrunner.sh". + + See the /usr/lib/uclibc-ng-test/test/README for additional + information. + + This is not needed at all for normal builds, so you can + safely say no if you do not plan to dig into your C library. + + The tests can also be used for GNU libc or musl. + + http://www.uclibc-ng.org diff --git a/package/uclibc-ng-test/uclibc-ng-test.hash b/package/uclibc-ng-test/uclibc-ng-test.hash new file mode 100644 index 00000000..37660b04 --- /dev/null +++ b/package/uclibc-ng-test/uclibc-ng-test.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 f731307c0547ce4bbd3f5025972f64e9b22208a147e34e5745000b54d4d3aa98 uclibc-ng-test-0844445e7358eb10e716155b55b0fb23e88d644a-br1.tar.gz +sha256 6095e9ffa777dd22839f7801aa845b31c9ed07f3d6bf8a26dc5d2dec8ccc0ef3 COPYING.LIB diff --git a/package/uclibc-ng-test/uclibc-ng-test.mk b/package/uclibc-ng-test/uclibc-ng-test.mk new file mode 100644 index 00000000..ea5f2242 --- /dev/null +++ b/package/uclibc-ng-test/uclibc-ng-test.mk @@ -0,0 +1,63 @@ +################################################################################ +# +# uclibc-ng-test +# +################################################################################ + +UCLIBC_NG_TEST_VERSION = 0844445e7358eb10e716155b55b0fb23e88d644a +UCLIBC_NG_TEST_SITE = git://uclibc-ng.org/git/uclibc-ng-test +UCLIBC_NG_TEST_LICENSE = LGPL-2.1+ +UCLIBC_NG_TEST_LICENSE_FILES = COPYING.LIB + +# the math tests are recently synced from glibc and need more adaption before +# regular testing is possible +UCLIBC_NG_TEST_MAKE_ENV += NO_MATH=1 + +# obsolete encrypt and setkey functions are not available since glibc 2.28 +ifeq ($(BR2_TOOLCHAIN_USES_GLIBC),y) +UCLIBC_NG_TEST_MAKE_ENV += NO_CRYPT=1 +endif + +# locale tests are not compatible with musl, yet +ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y) +UCLIBC_NG_TEST_MAKE_ENV += NO_LOCALE=1 +endif +ifeq ($(BR2_USE_WCHAR),) +UCLIBC_NG_TEST_MAKE_ENV += NO_WCHAR=1 +endif +ifeq ($(BR2_ENABLE_LOCALE),) +UCLIBC_NG_TEST_MAKE_ENV += NO_LOCALE=1 +endif +ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),) +UCLIBC_NG_TEST_MAKE_ENV += NO_TLS=1 NO_THREADS=1 +endif +ifeq ($(BR2_TOOLCHAIN_HAS_THREADS_NPTL),) +UCLIBC_NG_TEST_MAKE_ENV += NO_TLS=1 NO_NPTL=1 +endif +# most NPTL/TLS tests use dlopen +ifeq ($(BR2_STATIC_LIBS),y) +UCLIBC_NG_TEST_MAKE_ENV += NO_TLS=1 NO_NPTL=1 NO_DL=1 +endif +# no TLS macros available +ifeq ($(BR2_nds32)$(BR2_s390x),y) +UCLIBC_NG_TEST_MAKE_ENV += NO_TLS=1 +endif + +# to execute tests in a deterministic order, call test_gen separately +define UCLIBC_NG_TEST_BUILD_CMDS + $(TARGET_MAKE_ENV) $(UCLIBC_NG_TEST_MAKE_ENV) $(MAKE) -C $(@D) \ + CC="$(TARGET_CC)" \ + UCLIBC_EXTRA_CFLAGS="$(TARGET_CFLAGS)" \ + UCLIBC_EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \ + test_compile + $(TARGET_MAKE_ENV) $(UCLIBC_NG_TEST_MAKE_ENV) $(MAKE1) -C $(@D) \ + CC="$(TARGET_CC)" \ + UCLIBC_EXTRA_CFLAGS="$(TARGET_CFLAGS)" \ + test_gen +endef + +define UCLIBC_NG_TEST_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR="$(TARGET_DIR)" install +endef + +$(eval $(generic-package)) diff --git a/package/uclibc/0001-powerpc-fix-PIE-PIC-builds-with-newer-gcc-binutils-w.patch b/package/uclibc/0001-powerpc-fix-PIE-PIC-builds-with-newer-gcc-binutils-w.patch new file mode 100644 index 00000000..040699df --- /dev/null +++ b/package/uclibc/0001-powerpc-fix-PIE-PIC-builds-with-newer-gcc-binutils-w.patch @@ -0,0 +1,91 @@ +From 6c95eccff5eb43c8c3ad865d3b1316b7952cc58e Mon Sep 17 00:00:00 2001 +From: Yann Sionneau +Date: Fri, 28 May 2021 08:59:58 +0200 +Subject: [PATCH] powerpc: fix PIE/PIC builds with newer gcc/binutils which use + secureplt by default + +This patch fixes segfault of all user space processes (including init, which caused a panic) on recent buildroot powerpc32 builds. + +The issue has been reported by Romain Naour in this thread: https://mailman.uclibc-ng.org/pipermail/devel/2021-May/002068.html + +Recent buildroot toolchain enables secure PLT in powerpc gcc. +The latter will then supply -msecure-plt to gas invocations by default. +Recent buildroot also enables PIE by default. + +For the secure PLT to work in PIC, the r30 register needs to point to the GOT. +Old "bss plt" was just a one-instruction-wide PLT slot, pointed-to by a R_PPC_JMP_SLOT relocation, which was written on-the-fly to contain a branch instruction to the correct address. It therefore had to stay writable+executable, which you generally want to avoid for security reasons. +New secure PLT only contains read-only code which loads the branch address from the writable GOT. + +Note: secure PLT without PIC does not need r30 to be set. Because offset between plt stub code and got is known at link-time. In this case the PLT entry looks like: +1009b3e0 <__uClibc_main@plt>: +1009b3e0: 3d 60 10 0e lis r11,4110 +1009b3e4: 81 6b 03 74 lwz r11,884(r11) +1009b3e8: 7d 69 03 a6 mtctr r11 +1009b3ec: 4e 80 04 20 bctr + +Whereas secure PLT with PIC - offset between plt and got is unknown at link-time - looks like this: +000af800 <00000000.plt_pic32.__uClibc_main>: + af800: 81 7e 03 80 lwz r11,896(r30) + af804: 7d 69 03 a6 mtctr r11 + af808: 4e 80 04 20 bctr + af80c: 60 00 00 00 nop + +Upstream status: Pending: +https://mailman.uclibc-ng.org/pipermail/devel/2021-May/002091.html + +Signed-off-by: Yann Sionneau +Signed-off-by: Romain Naour +--- + Rules.mak | 3 ++- + ldso/ldso/powerpc/dl-startup.h | 3 +++ + libc/sysdeps/linux/powerpc/crt1.S | 4 ++++ + 3 files changed, 9 insertions(+), 1 deletion(-) + +diff --git a/Rules.mak b/Rules.mak +index 10f88b3de..60ac59b85 100644 +--- a/Rules.mak ++++ b/Rules.mak +@@ -477,9 +477,10 @@ ifeq ($(TARGET_ARCH),powerpc) + PICFLAG:=-fpic + PIEFLAG_NAME:=-fpie + PPC_HAS_REL16:=$(shell printf "\t.text\n\taddis 11,30,_GLOBAL_OFFSET_TABLE_-.@ha\n" | $(CC) -c -x assembler -o /dev/null - 2> /dev/null && echo -n y || echo -n n) ++ PPC_HAS_SECUREPLT:=$(shell $(CC) --verbose 2>&1 | grep -- --enable-secureplt > /dev/null && echo -n y || echo -n n) ++ CPU_CFLAGS-$(PPC_HAS_SECUREPLT) += -DPPC_HAS_SECUREPLT + CPU_CFLAGS-$(PPC_HAS_REL16)+= -DHAVE_ASM_PPC_REL16 + CPU_CFLAGS-$(CONFIG_E500) += "-D__NO_MATH_INLINES" +- + endif + + ifeq ($(TARGET_ARCH),bfin) +diff --git a/ldso/ldso/powerpc/dl-startup.h b/ldso/ldso/powerpc/dl-startup.h +index 8b2a517e2..7749395eb 100644 +--- a/ldso/ldso/powerpc/dl-startup.h ++++ b/ldso/ldso/powerpc/dl-startup.h +@@ -25,6 +25,9 @@ __asm__( + #else + " bl _GLOBAL_OFFSET_TABLE_-4@local\n" /* Put our GOT pointer in r31, */ + " mflr 31\n" ++#endif ++#ifdef PPC_HAS_SECUREPLT ++ " mr 30,31\n" + #endif + " addi 1,1,16\n" /* Restore SP */ + " lwz 7,_dl_skip_args@got(31)\n" /* load EA of _dl_skip_args */ +diff --git a/libc/sysdeps/linux/powerpc/crt1.S b/libc/sysdeps/linux/powerpc/crt1.S +index 27bfc5a5a..3f5d056c0 100644 +--- a/libc/sysdeps/linux/powerpc/crt1.S ++++ b/libc/sysdeps/linux/powerpc/crt1.S +@@ -56,6 +56,10 @@ _start: + # else + bl _GLOBAL_OFFSET_TABLE_-4@local + mflr r31 ++# endif ++ /* in PIC/PIE, plt stubs need r30 to point to the GOT if using secure-plt */ ++# ifdef PPC_HAS_SECUREPLT ++ mr 30,31 + # endif + #endif + /* Set up the small data pointer in r13. */ +-- +2.31.1 + diff --git a/package/uclibc/Config.in b/package/uclibc/Config.in new file mode 100644 index 00000000..e59fef3c --- /dev/null +++ b/package/uclibc/Config.in @@ -0,0 +1,154 @@ +if BR2_TOOLCHAIN_BUILDROOT_UCLIBC + +comment "uClibc Options" + +config BR2_PACKAGE_UCLIBC + bool + default y + select BR2_PACKAGE_LINUX_HEADERS + +config BR2_UCLIBC_CONFIG + string "uClibc configuration file to use?" + default "package/uclibc/uClibc-ng.config" + help + Some people may wish to use their own modified uClibc + configuration file and will specify their config file + location with this option. See also docs/README in this + package. If unsure, use the default. + +config BR2_UCLIBC_CONFIG_FRAGMENT_FILES + string "Additional uClibc configuration fragment files" + help + A space-separated list of configuration fragment files, that + will be merged to the main uClibc configuration file. + +config BR2_TOOLCHAIN_BUILDROOT_WCHAR + bool "Enable WCHAR support" + select BR2_USE_WCHAR + help + Enable this option if you want your toolchain to support + wide characters (i.e characters longer than 8 bits, needed + for locale support). + +config BR2_TOOLCHAIN_BUILDROOT_LOCALE + bool "Enable toolchain locale/i18n support" + select BR2_TOOLCHAIN_BUILDROOT_WCHAR + select BR2_ENABLE_LOCALE + select BR2_NEEDS_HOST_UTF8_LOCALE + help + Enable this option if you want your toolchain to support + localization and internationalization. + +choice + prompt "Thread library implementation" + help + Use this option to select the thread library implementation + that should be used in your toolchain. + +config BR2_PTHREADS_NATIVE + bool "Native POSIX Threading (NPTL)" + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + +config BR2_PTHREADS + bool "linuxthreads" + depends on BR2_m68k || BR2_microblaze || BR2_or1k || BR2_arm || BR2_armeb || BR2_xtensa + select BR2_TOOLCHAIN_HAS_THREADS + +config BR2_PTHREADS_NONE + bool "none" + +endchoice + +config BR2_PTHREAD_DEBUG + bool "Thread library debugging" + depends on BR2_PTHREADS || BR2_PTHREADS_NATIVE + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + help + Build the thread library with debugging enabled. + +config BR2_TOOLCHAIN_BUILDROOT_USE_SSP + bool "Enable stack protection support" + depends on BR2_PACKAGE_HOST_BINUTILS_SUPPORTS_CFI + select BR2_TOOLCHAIN_HAS_SSP + help + Enable stack smashing protection support using GCCs + -fstack-protector-all option in uClibc. + + See + http://www.linuxfromscratch.org/hints/downloads/files/ssp.txt + for details. + +config BR2_UCLIBC_INSTALL_UTILS + bool "Compile and install uClibc utilities" + default y + help + Enabling this option will compile and install the getconf, + ldconfig and ldd uClibc utilities for the target. + + You can save ~32 KiB in target space by disabling them since + they're normally not needed. + +# Mapping from the Buildroot architecture configuration options to the +# uClibc architecture names. +config BR2_UCLIBC_TARGET_ARCH + string + default "arc" if BR2_arcle || BR2_arceb + default "arm" if BR2_arm || BR2_armeb + default "m68k" if BR2_m68k + default "microblaze" if BR2_microblaze + default "mips" if BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el + default "or1k" if BR2_or1k + default "powerpc" if BR2_powerpc + default "sh" if BR2_sh + default "sparc" if BR2_sparc + default "xtensa" if BR2_xtensa + default "i386" if BR2_i386 + default "x86_64" if BR2_x86_64 + default "riscv64" if BR2_RISCV_64 + +config BR2_UCLIBC_MIPS_ABI + string + default "O32" if BR2_MIPS_OABI32 + default "N32" if BR2_MIPS_NABI32 + default "N64" if BR2_MIPS_NABI64 + depends on BR2_UCLIBC_TARGET_ARCH = "mips" + +config BR2_UCLIBC_MIPS_NAN + string + default "LEGACY" if BR2_MIPS_NAN_LEGACY + default "2008" if BR2_MIPS_NAN_2008 + depends on BR2_UCLIBC_TARGET_ARCH = "mips" + +config BR2_UCLIBC_SH_TYPE + string + default "SH2A" if BR2_sh2a + default "SH4" if BR2_sh4 || BR2_sh4eb + depends on BR2_UCLIBC_TARGET_ARCH = "sh" + +config BR2_UCLIBC_SPARC_TYPE + string + default "V7" if BR2_sparc_v7 || BR2_sparc_sparchfleon || BR2_sparc_sparcsfleon + default "V8" if BR2_sparc_v8 || BR2_sparc_sparchfleonv8 || BR2_sparc_sparcsfleonv8 + depends on BR2_UCLIBC_TARGET_ARCH = "sparc" + +config BR2_UCLIBC_POWERPC_TYPE + string + default "CLASSIC" if !BR2_powerpc_8540 && !BR2_powerpc_8548 + default "E500" if BR2_powerpc_8540 || BR2_powerpc_8548 + depends on BR2_UCLIBC_TARGET_ARCH = "powerpc" + +config BR2_UCLIBC_X86_TYPE + string + default "486" if BR2_x86_i486 + default "586" if BR2_x86_i586 + default "586MMX" if BR2_x86_pentium_mmx + default "686" if BR2_x86_i686 || BR2_x86_pentiumpro + default "PENTIUMII" if BR2_x86_pentium2 + default "PENTIUMIII" if BR2_x86_pentium3 + default "PENTIUM4" if BR2_x86_pentium4 || BR2_x86_pentium_m || \ + BR2_x86_nocona || BR2_x86_core2 || BR2_x86_corei7 + depends on BR2_UCLIBC_TARGET_ARCH = "i386" + +endif # BR2_TOOLCHAIN_BUILDROOT_UCLIBC diff --git a/package/uclibc/uClibc-ng.config b/package/uclibc/uClibc-ng.config new file mode 100644 index 00000000..5beb2bd9 --- /dev/null +++ b/package/uclibc/uClibc-ng.config @@ -0,0 +1,42 @@ +DO_C99_MATH=y +DO_XSI_MATH=y +KERNEL_HEADERS="/usr/src/linux/include" +# LDSO_CACHE_SUPPORT is not set +# UCLIBC_STATIC_LDCONFIG is not set +LDSO_RUNPATH=y +LDSO_RUNPATH_OF_EXECUTABLE=y +UCLIBC_HAS_UTMPX=y +UCLIBC_HAS_UTMP=y +UCLIBC_SUSV2_LEGACY=y +UCLIBC_SUSV3_LEGACY=y +UCLIBC_HAS_CONTEXT_FUNCS=y +UCLIBC_SUSV4_LEGACY=y +UCLIBC_HAS_PROGRAM_INVOCATION_NAME=y +UCLIBC_HAS_GETPT=y +UCLIBC_HAS_LIBUTIL=y +UCLIBC_HAS_OBSOLETE_BSD_SIGNAL=y +UCLIBC_HAS_SHA256_CRYPT_IMPL=y +UCLIBC_HAS_SHA512_CRYPT_IMPL=y +UCLIBC_USE_NETLINK=y +UCLIBC_SUPPORT_AI_ADDRCONFIG=y +UCLIBC_HAS_RESOLVER_SUPPORT=y +UCLIBC_HAS_LIBRESOLV_STUB=y +UCLIBC_HAS_LIBNSL_STUB=y +UCLIBC_HAS_CTYPE_CHECKED=y +UCLIBC_HAS_LIBINTL=y +UCLIBC_HAS_HEXADECIMAL_FLOATS=y +UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y +UCLIBC_HAS_STDIO_GETC_MACRO=y +UCLIBC_HAS_STDIO_PUTC_MACRO=y +UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y +UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y +UCLIBC_HAS_PRINTF_M_SPEC=y +UCLIBC_HAS_WORDEXP=y +UCLIBC_HAS_NFTW=y +UCLIBC_HAS_FTW=y +UCLIBC_HAS_GNU_GLOB=y +RUNTIME_PREFIX="/" +DEVEL_PREFIX="/usr/" +UCLIBC_HAS_SSP=y +UCLIBC_BUILD_NOW=y +# DOSTRIP is not set diff --git a/package/uclibc/uclibc.hash b/package/uclibc/uclibc.hash new file mode 100644 index 00000000..2935785f --- /dev/null +++ b/package/uclibc/uclibc.hash @@ -0,0 +1,4 @@ +# From https://downloads.uclibc-ng.org/releases/1.0.38/uClibc-ng-1.0.38.tar.xz.sha256 +sha256 b1a3328330d2c94a2bec8c1436a8f15673f3a9b5895e155efc2e91d4e1882570 uClibc-ng-1.0.38.tar.xz +# Locally calculated +sha256 6095e9ffa777dd22839f7801aa845b31c9ed07f3d6bf8a26dc5d2dec8ccc0ef3 COPYING.LIB diff --git a/package/uclibc/uclibc.mk b/package/uclibc/uclibc.mk new file mode 100644 index 00000000..d2216410 --- /dev/null +++ b/package/uclibc/uclibc.mk @@ -0,0 +1,465 @@ +################################################################################ +# +# uclibc +# +################################################################################ + +UCLIBC_VERSION = 1.0.38 +UCLIBC_SOURCE = uClibc-ng-$(UCLIBC_VERSION).tar.xz +UCLIBC_SITE = https://downloads.uclibc-ng.org/releases/$(UCLIBC_VERSION) +UCLIBC_LICENSE = LGPL-2.1+ +UCLIBC_LICENSE_FILES = COPYING.LIB +UCLIBC_INSTALL_STAGING = YES +UCLIBC_CPE_ID_VENDOR = uclibc-ng_project +UCLIBC_CPE_ID_PRODUCT = uclibc-ng + +define UCLIBC_HELP_CMDS + @echo ' uclibc-menuconfig - Run uClibc menuconfig' +endef + +# uclibc is part of the toolchain so disable the toolchain dependency +UCLIBC_ADD_TOOLCHAIN_DEPENDENCY = NO + +# Before uClibc is configured, we must have the first stage +# cross-compiler and the kernel headers +UCLIBC_DEPENDENCIES = host-gcc-initial linux-headers + +# specifying UCLIBC_CONFIG_FILE on the command-line overrides the .config +# setting. +ifndef UCLIBC_CONFIG_FILE +UCLIBC_CONFIG_FILE = $(call qstrip,$(BR2_UCLIBC_CONFIG)) +endif + +UCLIBC_KCONFIG_EDITORS = menuconfig nconfig +UCLIBC_KCONFIG_FILE = $(UCLIBC_CONFIG_FILE) +UCLIBC_KCONFIG_FRAGMENT_FILES = $(call qstrip,$(BR2_UCLIBC_CONFIG_FRAGMENT_FILES)) + +# UCLIBC_MAKE_FLAGS set HOSTCC to the default HOSTCC, which may be +# wrapped with ccache. However, host-ccache may not already be built +# and installed when we apply the configuration, so we override that +# to use the non-ccached host compiler. +UCLIBC_KCONFIG_OPTS = \ + $(UCLIBC_MAKE_FLAGS) \ + HOSTCC="$(HOSTCC_NOCCACHE)" \ + PREFIX=$(STAGING_DIR) \ + DEVEL_PREFIX=/usr/ \ + RUNTIME_PREFIX=$(STAGING_DIR)/ + +UCLIBC_TARGET_ARCH = $(call qstrip,$(BR2_UCLIBC_TARGET_ARCH)) + +UCLIBC_GENERATE_LOCALES = $(call qstrip,$(BR2_GENERATE_LOCALE)) + +ifeq ($(UCLIBC_GENERATE_LOCALES),) +# We need at least one locale +UCLIBC_LOCALES = en_US +else +# Strip out the encoding part of locale names, if any +UCLIBC_LOCALES = \ + $(foreach locale,$(UCLIBC_GENERATE_LOCALES),\ + $(firstword $(subst .,$(space),$(locale)))) +endif + +# noMMU binary formats +ifeq ($(BR2_BINFMT_FLAT_ONE),y) +define UCLIBC_BINFMT_CONFIG + $(call KCONFIG_ENABLE_OPT,UCLIBC_FORMAT_FLAT) + $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FLAT_SEP_DATA) + $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_SHARED_FLAT) + $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FDPIC_ELF) +endef +endif +ifeq ($(BR2_BINFMT_FLAT_SHARED),y) +define UCLIBC_BINFMT_CONFIG + $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FLAT) + $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FLAT_SEP_DATA) + $(call KCONFIG_ENABLE_OPT,UCLIBC_FORMAT_SHARED_FLAT) + $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FDPIC_ELF) +endef +endif + +# +# ARC definitions +# + +ifeq ($(UCLIBC_TARGET_ARCH),arc) +UCLIBC_ARC_PAGE_SIZE = CONFIG_ARC_PAGE_SIZE_$(call qstrip,$(BR2_ARC_PAGE_SIZE)) +define UCLIBC_ARC_PAGE_SIZE_CONFIG + $(SED) '/CONFIG_ARC_PAGE_SIZE_*/d' $(@D)/.config + $(call KCONFIG_ENABLE_OPT,$(UCLIBC_ARC_PAGE_SIZE)) +endef + +ifeq ($(BR2_ARC_ATOMIC_EXT),) +define UCLIBC_ARC_ATOMICS_CONFIG + $(call KCONFIG_DISABLE_OPT,CONFIG_ARC_HAS_ATOMICS) +endef +endif + +endif # arc + +# +# ARM definitions +# + +ifeq ($(UCLIBC_TARGET_ARCH),arm) +define UCLIBC_ARM_ABI_CONFIG + $(SED) '/CONFIG_ARM_.ABI/d' $(@D)/.config + $(call KCONFIG_ENABLE_OPT,CONFIG_ARM_EABI) +endef + +ifeq ($(BR2_BINFMT_FLAT),y) +define UCLIBC_ARM_BINFMT_FLAT + $(call KCONFIG_DISABLE_OPT,DOPIC) +endef +endif + +# context functions are written with ARM instructions. Therefore, if +# we are using a Thumb2-only platform (i.e, Cortex-M), they must be +# disabled. Thumb1 platforms are not a problem, since they all also +# support the ARM instructions. +ifeq ($(BR2_ARM_INSTRUCTIONS_THUMB2):$(BR2_ARM_CPU_HAS_ARM),y:) +define UCLIBC_ARM_NO_CONTEXT_FUNCS + $(call KCONFIG_DISABLE_OPT,UCLIBC_HAS_CONTEXT_FUNCS) +endef +endif + +endif # arm + +# +# m68k/coldfire definitions +# + +ifeq ($(UCLIBC_TARGET_ARCH),m68k) + +# disable DOPIC for flat without separate data +ifeq ($(BR2_BINFMT_FLAT_ONE),y) +define UCLIBC_M68K_BINFMT_FLAT + $(call KCONFIG_DISABLE_OPT,DOPIC) +endef +endif + +endif # m68k/coldfire + +# +# MIPS definitions +# + +ifeq ($(UCLIBC_TARGET_ARCH),mips) +UCLIBC_MIPS_ABI = CONFIG_MIPS_$(call qstrip,$(BR2_UCLIBC_MIPS_ABI))_ABI +define UCLIBC_MIPS_ABI_CONFIG + $(SED) '/CONFIG_MIPS_[NO].._ABI/d' $(@D)/.config + $(call KCONFIG_ENABLE_OPT,$(UCLIBC_MIPS_ABI)) +endef + +UCLIBC_MIPS_NAN = CONFIG_MIPS_NAN_$(call qstrip,$(BR2_UCLIBC_MIPS_NAN)) +define UCLIBC_MIPS_NAN_CONFIG + $(SED) '/CONFIG_MIPS_NAN_.*/d' $(@D)/.config + $(call KCONFIG_ENABLE_OPT,$(UCLIBC_MIPS_NAN)) +endef +endif # mips + +# +# SH definitions +# + +ifeq ($(UCLIBC_TARGET_ARCH),sh) +UCLIBC_SH_TYPE = CONFIG_$(call qstrip,$(BR2_UCLIBC_SH_TYPE)) +define UCLIBC_SH_TYPE_CONFIG + $(SED) '/CONFIG_SH[234A]*/d' $(@D)/.config + $(call KCONFIG_ENABLE_OPT,$(UCLIBC_SH_TYPE)) +endef +endif # sh + +# +# SPARC definitions +# + +ifeq ($(UCLIBC_TARGET_ARCH),sparc) +UCLIBC_SPARC_TYPE = CONFIG_SPARC_$(call qstrip,$(BR2_UCLIBC_SPARC_TYPE)) +define UCLIBC_SPARC_TYPE_CONFIG + $(SED) 's/^\(CONFIG_[^_]*[_]*SPARC[^=]*\)=.*/# \1 is not set/g' \ + $(@D)/.config + $(call KCONFIG_ENABLE_OPT,$(UCLIBC_SPARC_TYPE)) +endef +endif # sparc + +# +# PowerPC definitions +# + +ifeq ($(UCLIBC_TARGET_ARCH),powerpc) +UCLIBC_POWERPC_TYPE = CONFIG_$(call qstrip,$(BR2_UCLIBC_POWERPC_TYPE)) +define UCLIBC_POWERPC_TYPE_CONFIG + $(call KCONFIG_DISABLE_OPT,CONFIG_GENERIC) + $(call KCONFIG_DISABLE_OPT,CONFIG_E500) + $(call KCONFIG_ENABLE_OPT,$(UCLIBC_POWERPC_TYPE)) +endef +endif # powerpc + +# +# x86 definitions +# +ifeq ($(UCLIBC_TARGET_ARCH),i386) +UCLIBC_X86_TYPE = CONFIG_$(call qstrip,$(BR2_UCLIBC_X86_TYPE)) +define UCLIBC_X86_TYPE_CONFIG + $(call KCONFIG_ENABLE_OPT,$(UCLIBC_X86_TYPE)) +endef +endif + +# +# Debug +# +ifeq ($(BR2_ENABLE_DEBUG),y) +define UCLIBC_DEBUG_CONFIG + $(call KCONFIG_ENABLE_OPT,DODEBUG) +endef +endif + +# +# Endianness +# + +ifeq ($(call qstrip,$(BR2_ENDIAN)),BIG) +define UCLIBC_ENDIAN_CONFIG + $(call KCONFIG_ENABLE_OPT,ARCH_BIG_ENDIAN) + $(call KCONFIG_ENABLE_OPT,ARCH_WANTS_BIG_ENDIAN) + $(call KCONFIG_DISABLE_OPT,ARCH_LITTLE_ENDIAN) + $(call KCONFIG_DISABLE_OPT,ARCH_WANTS_LITTLE_ENDIAN) +endef +else +define UCLIBC_ENDIAN_CONFIG + $(call KCONFIG_ENABLE_OPT,ARCH_LITTLE_ENDIAN) + $(call KCONFIG_ENABLE_OPT,ARCH_WANTS_LITTLE_ENDIAN) + $(call KCONFIG_DISABLE_OPT,ARCH_BIG_ENDIAN) + $(call KCONFIG_DISABLE_OPT,ARCH_WANTS_BIG_ENDIAN) +endef +endif + +# +# MMU +# + +ifeq ($(BR2_USE_MMU),y) +define UCLIBC_MMU_CONFIG + $(call KCONFIG_ENABLE_OPT,ARCH_HAS_MMU) + $(call KCONFIG_ENABLE_OPT,ARCH_USE_MMU) +endef +else +define UCLIBC_MMU_CONFIG + $(call KCONFIG_DISABLE_OPT,ARCH_HAS_MMU) + $(call KCONFIG_DISABLE_OPT,ARCH_USE_MMU) +endef +endif + +# +# IPv6 +# + +UCLIBC_IPV6_CONFIG = $(call KCONFIG_ENABLE_OPT,UCLIBC_HAS_IPV6) + +# +# soft-float +# + +ifeq ($(BR2_SOFT_FLOAT),y) +define UCLIBC_FLOAT_CONFIG + $(call KCONFIG_DISABLE_OPT,UCLIBC_HAS_FPU) + $(call KCONFIG_ENABLE_OPT,UCLIBC_HAS_FLOATS) + $(call KCONFIG_ENABLE_OPT,DO_C99_MATH) +endef +else +define UCLIBC_FLOAT_CONFIG + $(call KCONFIG_ENABLE_OPT,UCLIBC_HAS_FPU) + $(call KCONFIG_ENABLE_OPT,UCLIBC_HAS_FLOATS) +endef +endif + +# +# SSP +# +ifeq ($(BR2_TOOLCHAIN_BUILDROOT_USE_SSP),y) +define UCLIBC_SSP_CONFIG + $(call KCONFIG_ENABLE_OPT,UCLIBC_HAS_SSP) + $(call KCONFIG_ENABLE_OPT,UCLIBC_BUILD_SSP) +endef +else +define UCLIBC_SSP_CONFIG + $(call KCONFIG_DISABLE_OPT,UCLIBC_HAS_SSP) + $(call KCONFIG_DISABLE_OPT,UCLIBC_BUILD_SSP) +endef +endif + +# +# Threads +# +ifeq ($(BR2_PTHREADS_NONE),y) +define UCLIBC_THREAD_CONFIG + $(call KCONFIG_DISABLE_OPT,UCLIBC_HAS_THREADS) + $(call KCONFIG_DISABLE_OPT,UCLIBC_HAS_LINUXTHREADS) + $(call KCONFIG_DISABLE_OPT,UCLIBC_HAS_THREADS_NATIVE) +endef +else ifeq ($(BR2_PTHREADS),y) +define UCLIBC_THREAD_CONFIG + $(call KCONFIG_ENABLE_OPT,UCLIBC_HAS_THREADS) + $(call KCONFIG_ENABLE_OPT,UCLIBC_HAS_LINUXTHREADS) + $(call KCONFIG_DISABLE_OPT,UCLIBC_HAS_THREADS_NATIVE) +endef +else ifeq ($(BR2_PTHREADS_NATIVE),y) +define UCLIBC_THREAD_CONFIG + $(call KCONFIG_ENABLE_OPT,UCLIBC_HAS_THREADS) + $(call KCONFIG_DISABLE_OPT,UCLIBC_HAS_LINUXTHREADS) + $(call KCONFIG_ENABLE_OPT,UCLIBC_HAS_THREADS_NATIVE) +endef +endif + +# +# Thread debug +# + +ifeq ($(BR2_PTHREAD_DEBUG),y) +UCLIBC_THREAD_DEBUG_CONFIG = $(call KCONFIG_ENABLE_OPT,PTHREADS_DEBUG_SUPPORT) +else +UCLIBC_THREAD_DEBUG_CONFIG = $(call KCONFIG_DISABLE_OPT,PTHREADS_DEBUG_SUPPORT) +endif + +# +# Locale +# + +ifeq ($(BR2_TOOLCHAIN_BUILDROOT_LOCALE),y) +define UCLIBC_LOCALE_CONFIG + $(call KCONFIG_ENABLE_OPT,UCLIBC_HAS_LOCALE) + $(call KCONFIG_DISABLE_OPT,UCLIBC_BUILD_ALL_LOCALE) + $(call KCONFIG_ENABLE_OPT,UCLIBC_BUILD_MINIMAL_LOCALE) + $(call KCONFIG_SET_OPT,UCLIBC_BUILD_MINIMAL_LOCALES,"$(UCLIBC_LOCALES)") + $(call KCONFIG_DISABLE_OPT,UCLIBC_PREGENERATED_LOCALE_DATA) + $(call KCONFIG_DISABLE_OPT,DOWNLOAD_PREGENERATED_LOCALE_DATA) + $(call KCONFIG_ENABLE_OPT,UCLIBC_HAS_XLOCALE) + $(call KCONFIG_DISABLE_OPT,UCLIBC_HAS_GLIBC_DIGIT_GROUPING) +endef +else +define UCLIBC_LOCALE_CONFIG + $(call KCONFIG_DISABLE_OPT,UCLIBC_HAS_LOCALE) +endef +endif + +# +# wchar +# + +ifeq ($(BR2_TOOLCHAIN_BUILDROOT_WCHAR),y) +UCLIBC_WCHAR_CONFIG = $(call KCONFIG_ENABLE_OPT,UCLIBC_HAS_WCHAR) +else +UCLIBC_WCHAR_CONFIG = $(call KCONFIG_DISABLE_OPT,UCLIBC_HAS_WCHAR) +endif + +# +# static/shared libs +# + +ifeq ($(BR2_STATIC_LIBS),y) +UCLIBC_SHARED_LIBS_CONFIG = $(call KCONFIG_DISABLE_OPT,HAVE_SHARED) +else +UCLIBC_SHARED_LIBS_CONFIG = $(call KCONFIG_ENABLE_OPT,HAVE_SHARED) +endif + +# +# Commands +# + +UCLIBC_MAKE_FLAGS = \ + ARCH="$(UCLIBC_TARGET_ARCH)" \ + CROSS_COMPILE="$(TARGET_CROSS)" \ + UCLIBC_EXTRA_CFLAGS="$(TARGET_ABI)" \ + HOSTCC="$(HOSTCC)" + +define UCLIBC_KCONFIG_FIXUP_CMDS + $(call KCONFIG_SET_OPT,CROSS_COMPILER_PREFIX,"$(TARGET_CROSS)") + $(call KCONFIG_ENABLE_OPT,TARGET_$(UCLIBC_TARGET_ARCH)) + $(call KCONFIG_SET_OPT,TARGET_ARCH,"$(UCLIBC_TARGET_ARCH)") + $(call KCONFIG_SET_OPT,KERNEL_HEADERS,"$(LINUX_HEADERS_DIR)/usr/include") + $(call KCONFIG_SET_OPT,RUNTIME_PREFIX,"/") + $(call KCONFIG_SET_OPT,DEVEL_PREFIX,"/usr") + $(call KCONFIG_SET_OPT,SHARED_LIB_LOADER_PREFIX,"/lib") + $(UCLIBC_MMU_CONFIG) + $(UCLIBC_BINFMT_CONFIG) + $(UCLIBC_ARC_PAGE_SIZE_CONFIG) + $(UCLIBC_ARC_ATOMICS_CONFIG) + $(UCLIBC_ARM_ABI_CONFIG) + $(UCLIBC_ARM_BINFMT_FLAT) + $(UCLIBC_ARM_NO_CONTEXT_FUNCS) + $(UCLIBC_M68K_BINFMT_FLAT) + $(UCLIBC_MIPS_ABI_CONFIG) + $(UCLIBC_MIPS_NAN_CONFIG) + $(UCLIBC_SH_TYPE_CONFIG) + $(UCLIBC_SPARC_TYPE_CONFIG) + $(UCLIBC_POWERPC_TYPE_CONFIG) + $(UCLIBC_X86_TYPE_CONFIG) + $(UCLIBC_DEBUG_CONFIG) + $(UCLIBC_ENDIAN_CONFIG) + $(UCLIBC_IPV6_CONFIG) + $(UCLIBC_FLOAT_CONFIG) + $(UCLIBC_SSP_CONFIG) + $(UCLIBC_THREAD_CONFIG) + $(UCLIBC_THREAD_DEBUG_CONFIG) + $(UCLIBC_LOCALE_CONFIG) + $(UCLIBC_WCHAR_CONFIG) + $(UCLIBC_SHARED_LIBS_CONFIG) +endef + +define UCLIBC_BUILD_CMDS + $(MAKE) -C $(@D) $(UCLIBC_MAKE_FLAGS) headers + $(MAKE) -C $(@D) $(UCLIBC_MAKE_FLAGS) + $(MAKE) -C $(@D)/utils \ + PREFIX=$(HOST_DIR) \ + HOSTCC="$(HOSTCC)" hostutils +endef + +ifeq ($(BR2_UCLIBC_INSTALL_UTILS),y) +define UCLIBC_INSTALL_UTILS_TARGET + $(MAKE1) -C $(@D) \ + CC="$(TARGET_CC)" CPP="$(TARGET_CPP)" LD="$(TARGET_LD)" \ + ARCH="$(UCLIBC_TARGET_ARCH)" \ + PREFIX=$(TARGET_DIR) \ + utils install_utils +endef +endif + +define UCLIBC_INSTALL_TARGET_CMDS + $(MAKE1) -C $(@D) \ + $(UCLIBC_MAKE_FLAGS) \ + PREFIX=$(TARGET_DIR) \ + DEVEL_PREFIX=/usr/ \ + RUNTIME_PREFIX=/ \ + install_runtime + $(UCLIBC_INSTALL_UTILS_TARGET) +endef + +# STATIC has no ld* tools, only getconf +ifeq ($(BR2_STATIC_LIBS),) +define UCLIBC_INSTALL_UTILS_STAGING + $(INSTALL) -D -m 0755 $(@D)/utils/ldd.host $(HOST_DIR)/bin/ldd + ln -sf ldd $(HOST_DIR)/bin/$(GNU_TARGET_NAME)-ldd + $(INSTALL) -D -m 0755 $(@D)/utils/ldconfig.host $(HOST_DIR)/bin/ldconfig + ln -sf ldconfig $(HOST_DIR)/bin/$(GNU_TARGET_NAME)-ldconfig +endef +endif + +define UCLIBC_INSTALL_STAGING_CMDS + $(MAKE1) -C $(@D) \ + $(UCLIBC_MAKE_FLAGS) \ + PREFIX=$(STAGING_DIR) \ + DEVEL_PREFIX=/usr/ \ + RUNTIME_PREFIX=/ \ + install_runtime install_dev + $(UCLIBC_INSTALL_UTILS_STAGING) +endef + +# Checks to give errors that the user can understand +# Must be before we call to kconfig-package +ifeq ($(BR2_PACKAGE_UCLIBC)$(BR_BUILDING),yy) +ifeq ($(call qstrip,$(BR2_UCLIBC_CONFIG)),) +$(error No uClibc configuration file specified, check your BR2_UCLIBC_CONFIG setting) +endif +endif + +$(eval $(kconfig-package)) diff --git a/package/udev-gentoo-scripts/Config.in b/package/udev-gentoo-scripts/Config.in new file mode 100644 index 00000000..9d694435 --- /dev/null +++ b/package/udev-gentoo-scripts/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_UDEV_GENTOO_SCRIPTS + bool + depends on BR2_PACKAGE_EUDEV + depends on BR2_INIT_OPENRC + help + Init scripts for eudev. diff --git a/package/udev-gentoo-scripts/udev-gentoo-scripts.hash b/package/udev-gentoo-scripts/udev-gentoo-scripts.hash new file mode 100644 index 00000000..60563baa --- /dev/null +++ b/package/udev-gentoo-scripts/udev-gentoo-scripts.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 b206f72c93cd2e51ed59061931918a9c23c3c1f7e6caffacc9d4f8915a42c30a udev-gentoo-scripts-33.tar.bz2 +sha256 329f95829088b95650b9012ae688f09baa1637985425a7964d33683363f48702 init.d/udev-settle diff --git a/package/udev-gentoo-scripts/udev-gentoo-scripts.mk b/package/udev-gentoo-scripts/udev-gentoo-scripts.mk new file mode 100644 index 00000000..a0598bca --- /dev/null +++ b/package/udev-gentoo-scripts/udev-gentoo-scripts.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# udev-gentoo-scripts +# +################################################################################ + +UDEV_GENTOO_SCRIPTS_VERSION = 33 +UDEV_GENTOO_SCRIPTS_SOURCE = udev-gentoo-scripts-$(UDEV_GENTOO_SCRIPTS_VERSION).tar.bz2 +UDEV_GENTOO_SCRIPTS_SITE = https://gitweb.gentoo.org/proj/udev-gentoo-scripts.git/snapshot +UDEV_GENTOO_SCRIPTS_LICENSE = GPL-2.0 +UDEV_GENTOO_SCRIPTS_LICENSE_FILES = init.d/udev-settle + +# We don't need to symlink /etc/init.d/udev to /etc/runlevels/sysinit, since +# it's in the udev-settle and udev-trigger "need" lists. +define UDEV_GENTOO_SCRIPTS_INSTALL_INIT_OPENRC + $(MAKE1) -C $(@D) install DESTDIR=$(TARGET_DIR) + $(INSTALL) -d -m 755 $(TARGET_DIR)/etc/runlevels/sysinit + ln -s -f /etc/init.d/udev-settle /etc/init.d/udev-trigger \ + $(TARGET_DIR)/etc/runlevels/sysinit +endef + +$(eval $(generic-package)) diff --git a/package/udev/Config.in b/package/udev/Config.in new file mode 100644 index 00000000..814a6251 --- /dev/null +++ b/package/udev/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_HAS_UDEV + bool + +config BR2_PACKAGE_PROVIDES_UDEV + string + depends on BR2_PACKAGE_HAS_UDEV diff --git a/package/udev/udev.mk b/package/udev/udev.mk new file mode 100644 index 00000000..05b35b21 --- /dev/null +++ b/package/udev/udev.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# udev +# +################################################################################ + +# Required by default rules for input devices +define UDEV_USERS + - - input -1 * - - - Input device group + - - render -1 * - - - DRI rendering nodes + - - kvm -1 * - - - kvm nodes +endef + +$(eval $(virtual-package)) diff --git a/package/udftools/Config.in b/package/udftools/Config.in new file mode 100644 index 00000000..bbccd601 --- /dev/null +++ b/package/udftools/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_UDFTOOLS + bool "udftools" + depends on BR2_USE_WCHAR + select BR2_PACKAGE_READLINE + help + Tools for creating UDF filesystems + Maintained fork of the 2004 Sourcforge package + + https://github.com/pali/udftools + +comment "udftools needs a toolchain w/ wchar" + depends on !BR2_USE_WCHAR diff --git a/package/udftools/udftools.hash b/package/udftools/udftools.hash new file mode 100644 index 00000000..630a3427 --- /dev/null +++ b/package/udftools/udftools.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 d67ce203d71d828619d6d3791ab33eefab4bc506e0ee73355ab6c2f91d52448e udftools-2.2.tar.gz +sha256 dcc100d4161cc0b7177545ab6e47216f84857cda3843847c792a25289852dcaa COPYING diff --git a/package/udftools/udftools.mk b/package/udftools/udftools.mk new file mode 100644 index 00000000..db7c13cc --- /dev/null +++ b/package/udftools/udftools.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# udftools +# +################################################################################ + +UDFTOOLS_VERSION = 2.2 +UDFTOOLS_SITE = https://github.com/pali/udftools/releases/download/$(UDFTOOLS_VERSION) +UDFTOOLS_LICENSE = GPL-2.0+ +UDFTOOLS_LICENSE_FILES = COPYING +UDFTOOLS_DEPENDENCIES = readline host-pkgconf + +$(eval $(autotools-package)) diff --git a/package/udisks/0001-fix-build-with-newer-glibc-versions.patch b/package/udisks/0001-fix-build-with-newer-glibc-versions.patch new file mode 100644 index 00000000..336fc440 --- /dev/null +++ b/package/udisks/0001-fix-build-with-newer-glibc-versions.patch @@ -0,0 +1,29 @@ +Fix build with newer glibc versions + +This patch has been backported from upstream: + +http://cgit.freedesktop.org/udisks/commit/?h=udisks1&id=9829152b12a8924d2e091a00133ed1a3a7ba75c0 + +Signed-off-by: Vicente Olivert Riera + +From 9829152b12a8924d2e091a00133ed1a3a7ba75c0 Mon Sep 17 00:00:00 2001 +From: Alexandre Rostovtsev +Date: Fri, 29 May 2015 21:09:39 -0400 +Subject: fix build with newer glibc versions + +https://bugs.freedesktop.org/show_bug.cgi?id=90778 + +diff --git a/src/helpers/job-drive-detach.c b/src/helpers/job-drive-detach.c +index eeafcab..d122a1f 100644 +--- a/src/helpers/job-drive-detach.c ++++ b/src/helpers/job-drive-detach.c +@@ -18,6 +18,7 @@ + * + */ + ++#include + #include + #include + #include +-- +cgit v0.10.2 diff --git a/package/udisks/0002-Fix-systemd-service-file.patch b/package/udisks/0002-Fix-systemd-service-file.patch new file mode 100644 index 00000000..ea347aef --- /dev/null +++ b/package/udisks/0002-Fix-systemd-service-file.patch @@ -0,0 +1,33 @@ +From bf8b4362cef24a6f747e4329305a4939c8f585d1 Mon Sep 17 00:00:00 2001 +From: David King +Date: Thu, 2 Jul 2015 13:49:22 +0100 +Subject: [PATCH] Fix systemd service file + +udisks-daemon is installed to $(libexecdir), not $(prefix)/lib/udisks. + +https://bugzilla.redhat.com/show_bug.cgi?id=1238664 +https://bugs.freedesktop.org/show_bug.cgi?id=91191 + +[This patch has been backported from upstream: +https://cgit.freedesktop.org/udisks/commit/?h=udisks1&id=bf8b4362cef24a6f747e4329305a4939c8f585d1] +Signed-off-by: Pieterjan Camerlynck +--- + data/Makefile.am | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/data/Makefile.am b/data/Makefile.am +index 411ea0f..08af5f4 100644 +--- a/data/Makefile.am ++++ b/data/Makefile.am +@@ -31,7 +31,7 @@ systemdservicedir = $(systemdsystemunitdir) + systemdservice_DATA = $(systemdservice_in_files:.service.in=.service) + + $(systemdservice_DATA): $(systemdservice_in_files) Makefile +- @sed -e "s|\@libexecdir\@|$(prefix)/lib/udisks|" $< > $@ ++ @sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@ + endif + + udevrulesdir = $(slashlibdir)/udev/rules.d +-- +2.7.4 + diff --git a/package/udisks/0003-Fix-compilation-issue-with-missing-sys-sysmacros.h-i.patch b/package/udisks/0003-Fix-compilation-issue-with-missing-sys-sysmacros.h-i.patch new file mode 100644 index 00000000..71152e5d --- /dev/null +++ b/package/udisks/0003-Fix-compilation-issue-with-missing-sys-sysmacros.h-i.patch @@ -0,0 +1,81 @@ +From d934b0fa5ce24a8fd1987b916e435ba991c2ef64 Mon Sep 17 00:00:00 2001 +From: Vadim Kochan +Date: Mon, 31 Dec 2018 11:00:46 +0200 +Subject: [PATCH] Fix compilation issue due to missing sys/sysmacros.h include + +glibc 2.28+ no longer include from , so + must now be explicitly included to use the major, +minor and makedev macros. + +Signed-off-by: Vadim Kochan +--- + src/daemon.c | 1 + + src/device.c | 1 + + src/mount-monitor.c | 1 + + tools/udisks.c | 1 + + tools/umount-udisks.c | 1 + + 5 files changed, 5 insertions(+) + +diff --git a/src/daemon.c b/src/daemon.c +index fafcf9a..4303a6d 100644 +--- a/src/daemon.c ++++ b/src/daemon.c +@@ -45,6 +45,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/src/device.c b/src/device.c +index 2ae7f38..20920df 100644 +--- a/src/device.c ++++ b/src/device.c +@@ -33,6 +33,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/src/mount-monitor.c b/src/mount-monitor.c +index 573a69c..0cfa167 100644 +--- a/src/mount-monitor.c ++++ b/src/mount-monitor.c +@@ -29,6 +29,7 @@ + #include + #include + #include ++#include + #include + + #include +diff --git a/tools/udisks.c b/tools/udisks.c +index 97e80d7..22a7d87 100644 +--- a/tools/udisks.c ++++ b/tools/udisks.c +@@ -31,6 +31,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/tools/umount-udisks.c b/tools/umount-udisks.c +index 2813fe0..d915660 100644 +--- a/tools/umount-udisks.c ++++ b/tools/umount-udisks.c +@@ -30,6 +30,7 @@ + #include + #include + #include ++#include + #include + #include + #include +-- +2.14.1 + diff --git a/package/udisks/Config.in b/package/udisks/Config.in new file mode 100644 index 00000000..efd3b619 --- /dev/null +++ b/package/udisks/Config.in @@ -0,0 +1,62 @@ +config BR2_PACKAGE_UDISKS + bool "udisks" + depends on BR2_ENABLE_LOCALE # parted + depends on BR2_HOST_GCC_AT_LEAST_4_9 # spidermonkey + depends on BR2_INSTALL_LIBSTDCPP # spidermonkey + depends on BR2_PACKAGE_HAS_UDEV + depends on BR2_PACKAGE_SPIDERMONKEY_ARCH_SUPPORTS # spidermonkey + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # spidermonkey + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # polkit + depends on BR2_USE_MMU # lvm2 + depends on BR2_USE_WCHAR # dbus-glib -> glib2 + depends on !BR2_TOOLCHAIN_USES_UCLIBC # polkit, lvm2 + depends on !BR2_STATIC_LIBS # lvm2, spidermonkey + select BR2_PACKAGE_DBUS + select BR2_PACKAGE_DBUS_GLIB + select BR2_PACKAGE_LIBATASMART + select BR2_PACKAGE_LIBGUDEV + select BR2_PACKAGE_LVM2 + select BR2_PACKAGE_PARTED + select BR2_PACKAGE_POLKIT + select BR2_PACKAGE_SG3_UTILS + help + The udisks project provides + + o A storage daemon that implements well-defined D-Bus + interfaces that can be used to query and manipulate + storage devices. + + o a command-line tool, udisks(1), that can be used to query + and use the daemon + + http://www.freedesktop.org/wiki/Software/udisks + +if BR2_PACKAGE_UDISKS + +config BR2_PACKAGE_UDISKS_LVM2 + bool "lvm2 support" + # The lvm app library can't compile against musl + depends on BR2_TOOLCHAIN_USES_GLIBC + select BR2_PACKAGE_LVM2_APP_LIBRARY + help + Enable LVM2 support + +comment "lvm2 support needs a glibc toolchain" + depends on !BR2_TOOLCHAIN_USES_GLIBC + +endif + +comment "udisks needs udev /dev management" + depends on BR2_USE_MMU + depends on !BR2_PACKAGE_HAS_UDEV + +comment "udisks needs a glibc or musl toolchain with locale, C++, wchar, dynamic library, NPTL, gcc >= 4.9" + depends on BR2_USE_MMU + depends on BR2_PACKAGE_SPIDERMONKEY_ARCH_SUPPORTS + depends on !BR2_ENABLE_LOCALE || BR2_TOOLCHAIN_USES_UCLIBC || \ + !BR2_INSTALL_LIBSTDCPP || \ + BR2_STATIC_LIBS || \ + !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \ + !BR2_HOST_GCC_AT_LEAST_4_9 || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || \ + !BR2_USE_WCHAR diff --git a/package/udisks/udisks.hash b/package/udisks/udisks.hash new file mode 100644 index 00000000..b40161e3 --- /dev/null +++ b/package/udisks/udisks.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 f2ec82eb0ea7e01dc299b5b29b3c18cdf861236ec43dcff66b3552b4b31c6f71 udisks-1.0.5.tar.gz +sha256 7d30f41a79a9b453b4972a6d7e3425ff104b39232891bde8ba659f1adb21f771 COPYING diff --git a/package/udisks/udisks.mk b/package/udisks/udisks.mk new file mode 100644 index 00000000..af25c2b8 --- /dev/null +++ b/package/udisks/udisks.mk @@ -0,0 +1,33 @@ +################################################################################ +# +# udisks +# +################################################################################ + +UDISKS_VERSION = 1.0.5 +UDISKS_SITE = http://hal.freedesktop.org/releases +UDISKS_LICENSE = GPL-2.0+ +UDISKS_LICENSE_FILES = COPYING +UDISKS_CPE_ID_VENDOR = freedesktop +# For 0002-Fix-systemd-service-file.patch +UDISKS_AUTORECONF = YES + +UDISKS_DEPENDENCIES = \ + host-pkgconf \ + dbus \ + dbus-glib \ + libatasmart \ + libgudev \ + lvm2 \ + parted \ + polkit \ + sg3_utils \ + udev + +UDISKS_CONF_OPTS = --disable-remote-access --disable-man-pages + +ifeq ($(BR2_PACKAGE_UDISKS_LVM2),y) +UDISKS_CONF_OPTS += --enable-lvm2 +endif + +$(eval $(autotools-package)) diff --git a/package/udpcast/Config.in b/package/udpcast/Config.in new file mode 100644 index 00000000..ef94b30a --- /dev/null +++ b/package/udpcast/Config.in @@ -0,0 +1,27 @@ +comment "udpcast needs a toolchain w/ threads" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS + +config BR2_PACKAGE_UDPCAST + bool "udpcast" + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_MMU # fork() + help + A multicast protocol implementation which happens to + be very handy for imaging drives over the network. + + http://www.udpcast.linux.lu/ + +if BR2_PACKAGE_UDPCAST + +config BR2_PACKAGE_UDPCAST_SENDER + bool "sender" + help + The udpcast transmitter. + +config BR2_PACKAGE_UDPCAST_RECEIVER + bool "receiver" + help + The udpcast receiver. + +endif diff --git a/package/udpcast/udpcast.hash b/package/udpcast/udpcast.hash new file mode 100644 index 00000000..9cdce0a2 --- /dev/null +++ b/package/udpcast/udpcast.hash @@ -0,0 +1,3 @@ +# locally computed hash +sha256 9c19eebaa6e2f78127f0d59e95d0ce003b687d61e283b5963a1da6b8ac41f21a udpcast-20200328.tar.gz +sha256 422befd3503b1f39a6027017f639874c1f274e37ec60ba3174894646b584ccbc COPYING diff --git a/package/udpcast/udpcast.mk b/package/udpcast/udpcast.mk new file mode 100644 index 00000000..34ebddd2 --- /dev/null +++ b/package/udpcast/udpcast.mk @@ -0,0 +1,31 @@ +################################################################################ +# +# udpcast +# +################################################################################ + +UDPCAST_VERSION = 20200328 +UDPCAST_SITE = http://www.udpcast.linux.lu/download +UDPCAST_DEPENDENCIES = host-m4 +UDPCAST_LICENSE = BSD-2-Clause, GPL-2.0+ +UDPCAST_LICENSE_FILES = COPYING + +define UDPCAST_REMOVE_UDP_SENDER + rm -f $(TARGET_DIR)/usr/sbin/udp-sender + rm -f $(TARGET_DIR)/usr/sbin/udp-sender.1 +endef + +ifneq ($(BR2_PACKAGE_UDPCAST_SENDER),y) +UDPCAST_POST_INSTALL_TARGET_HOOKS += UDPCAST_REMOVE_UDP_SENDER +endif + +define UDPCAST_REMOVE_UDP_RECEIVER + rm -f $(TARGET_DIR)/usr/sbin/udp-receiver + rm -f $(TARGET_DIR)/usr/sbin/udp-receiver.1 +endef + +ifneq ($(BR2_PACKAGE_UDPCAST_RECEIVER),y) +UDPCAST_POST_INSTALL_TARGET_HOOKS += UDPCAST_REMOVE_UDP_RECEIVER +endif + +$(eval $(autotools-package)) diff --git a/package/udpxy/Config.in b/package/udpxy/Config.in new file mode 100644 index 00000000..f442a2f2 --- /dev/null +++ b/package/udpxy/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_UDPXY + bool "udpxy" + depends on BR2_USE_MMU + help + udpxy is a UDP-to-HTTP multicast traffic relay daemon: it + forwards UDP traffic from a given multicast subscription to + the requesting HTTP client. + + http://www.udpxy.com/ diff --git a/package/udpxy/udpxy.hash b/package/udpxy/udpxy.hash new file mode 100644 index 00000000..8455fcdb --- /dev/null +++ b/package/udpxy/udpxy.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 6ce33b1d14a1aeab4bd2566aca112e41943df4d002a7678d9a715108e6b714bd udpxy.1.0.23-9-prod.tar.gz +sha256 60ead3913246c7cd930fe653c0053aba1af2cd9f82b266befdbbd6e0b8ecb750 README diff --git a/package/udpxy/udpxy.mk b/package/udpxy/udpxy.mk new file mode 100644 index 00000000..22467948 --- /dev/null +++ b/package/udpxy/udpxy.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# udpxy +# +################################################################################ + +UDPXY_VERSION = 1.0.23-9-prod +UDPXY_SOURCE = udpxy.$(UDPXY_VERSION).tar.gz +UDPXY_SITE = http://www.udpxy.com/download/1_23 +UDPXY_LICENSE = GPL-3.0+ +UDPXY_LICENSE_FILES = README + +define UDPXY_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) +endef + +define UDPXY_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) DESTDIR=$(TARGET_DIR) PREFIX=/usr \ + -C $(@D) install +endef + +$(eval $(generic-package)) diff --git a/package/uemacs/01-clear-ixon-termios-flag.patch b/package/uemacs/01-clear-ixon-termios-flag.patch new file mode 100644 index 00000000..dde76420 --- /dev/null +++ b/package/uemacs/01-clear-ixon-termios-flag.patch @@ -0,0 +1,29 @@ +[PATCH] clear ixon termios flag on initialization + +Otherwise ctrl-S/Q gets intercepted by the tty layer instead of +handled by uemacs. + +Signed-off-by: Peter Korsgaard +diff --git a/posix.c b/posix.c +index 97edd9f052b1..352c4712b689 100644 +--- a/posix.c ++++ b/posix.c +@@ -53,17 +53,17 @@ void ttopen(void) + /* + * base new settings on old ones - don't change things + * we don't know about + */ + ntermios = otermios; + + /* raw CR/NL etc input handling, but keep ISTRIP if we're on a 7-bit line */ + ntermios.c_iflag &= ~(IGNBRK | BRKINT | IGNPAR | PARMRK +- | INPCK | INLCR | IGNCR | ICRNL); ++ | INPCK | INLCR | IGNCR | ICRNL | IXON); + + /* raw CR/NR etc output handling */ + ntermios.c_oflag &= + ~(OPOST | ONLCR | OLCUC | OCRNL | ONOCR | ONLRET); + + /* No signal handling, no echo etc */ + ntermios.c_lflag &= ~(ISIG | ICANON | XCASE | ECHO | ECHOE | ECHOK + | ECHONL | NOFLSH | TOSTOP | ECHOCTL | diff --git a/package/uemacs/Config.in b/package/uemacs/Config.in new file mode 100644 index 00000000..cfe98059 --- /dev/null +++ b/package/uemacs/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_UEMACS + bool "uemacs" + select BR2_PACKAGE_NCURSES + help + A small emacs. + + https://git.kernel.org/cgit/editors/uemacs/uemacs.git/ diff --git a/package/uemacs/uemacs.hash b/package/uemacs/uemacs.hash new file mode 100644 index 00000000..c8dd620b --- /dev/null +++ b/package/uemacs/uemacs.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 96e30247365bb27bd74c550b637f5b2ffd2978379872a32a840f6667cec5fa2a uemacs-1cdcf9df88144049750116e36fe20c8c39fa2517-br1.tar.gz +sha256 6e2a4cf41ec8d4379c154923349733bc0d3935c6fa72c4337cf1bc137b98b90a README diff --git a/package/uemacs/uemacs.mk b/package/uemacs/uemacs.mk new file mode 100644 index 00000000..96868832 --- /dev/null +++ b/package/uemacs/uemacs.mk @@ -0,0 +1,24 @@ +################################################################################ +# +# uemacs +# +################################################################################ + +UEMACS_VERSION = 1cdcf9df88144049750116e36fe20c8c39fa2517 +UEMACS_SITE = https://git.kernel.org/pub/scm/editors/uemacs/uemacs.git +UEMACS_SITE_METHOD = git +UEMACS_DEPENDENCIES = ncurses +UEMACS_LICENSE = MicroEMACS copyright notice +UEMACS_LICENSE_FILES = README + +define UEMACS_BUILD_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) \ + CC="$(TARGET_CC)" DEFINES="-DAUTOCONF -DPOSIX -DUSG" \ + CFLAGS+="$(TARGET_CFLAGS) " LIBS="$(TARGET_CFLAGS) -lncurses" +endef + +define UEMACS_INSTALL_TARGET_CMDS + $(INSTALL) -m 0755 -D $(@D)/em $(TARGET_DIR)/usr/bin/em +endef + +$(eval $(generic-package)) diff --git a/package/uftp/Config.in b/package/uftp/Config.in new file mode 100644 index 00000000..b88fb03a --- /dev/null +++ b/package/uftp/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_UFTP + bool "uftp" + depends on BR2_USE_MMU # fork() + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_WCHAR + help + Encrypted UDP based FTP with multicast. + + http://uftp-multicast.sourceforge.net/ + +comment "uftp needs a toolchain w/ threads, wchar" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR diff --git a/package/uftp/uftp.hash b/package/uftp/uftp.hash new file mode 100644 index 00000000..aaebcad0 --- /dev/null +++ b/package/uftp/uftp.hash @@ -0,0 +1,3 @@ +# Locally computed sha256 +sha256 562f71ea5a24b615eb491f5744bad01e9c2e58244c1d6252d5ae98d320d308e0 uftp-5.0.tar.gz +sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 LICENSE.txt diff --git a/package/uftp/uftp.mk b/package/uftp/uftp.mk new file mode 100644 index 00000000..1c36cb0c --- /dev/null +++ b/package/uftp/uftp.mk @@ -0,0 +1,28 @@ +################################################################################ +# +# uftp +# +################################################################################ + +UFTP_VERSION = 5.0 +UFTP_SITE = http://sourceforge.net/projects/uftp-multicast/files/source-tar +UFTP_LICENSE = GPL-3.0+ +UFTP_LICENSE_FILES = LICENSE.txt + +ifeq ($(BR2_PACKAGE_OPENSSL),y) +UFTP_DEPENDENCIES += host-pkgconf openssl +UFTP_MAKE_OPTS += CRYPT_LIB="`$(PKG_CONFIG_HOST_BINARY) --libs libcrypto`" +else +UFTP_MAKE_OPTS += NO_ENCRYPTION=1 +endif + +define UFTP_BUILD_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) $(UFTP_MAKE_OPTS) +endef + +define UFTP_INSTALL_TARGET_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) $(UFTP_MAKE_OPTS) \ + DESTDIR=$(TARGET_DIR) install +endef + +$(eval $(generic-package)) diff --git a/package/uhd/0001-host-CMakeLists-add-boost-unit_test_framework-requir.patch b/package/uhd/0001-host-CMakeLists-add-boost-unit_test_framework-requir.patch new file mode 100644 index 00000000..a79b650b --- /dev/null +++ b/package/uhd/0001-host-CMakeLists-add-boost-unit_test_framework-requir.patch @@ -0,0 +1,40 @@ +From 881705ec581ab7cd61c8e4fe134db8854a83ec4e Mon Sep 17 00:00:00 2001 +From: Gwenhael Goavec-Merou +Date: Tue, 28 Apr 2020 16:56:29 +0200 +Subject: [PATCH] host: CMakeLists: add boost unit_test_framework required only + when ENABLE_TESTS=ON + +By default, boost unit_test_framework is always required, but only use +when ENABLE_TESTS=ON. +This PR suppress unit_test_framework to the default list and append +UHD_BOOST_REQUIRED_COMPONENTS when this library is needed + +[backported from https://github.com/EttusResearch/uhd/pull/341] +Signed-off-by: Gwenhael Goavec-Merou +--- + host/CMakeLists.txt | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/host/CMakeLists.txt b/host/CMakeLists.txt +index 8f72ece76..a7731ffbd 100644 +--- a/host/CMakeLists.txt ++++ b/host/CMakeLists.txt +@@ -291,10 +291,14 @@ set(UHD_BOOST_REQUIRED_COMPONENTS + filesystem + program_options + system +- unit_test_framework + serialization + thread + ) ++ ++if(ENABLE_TESTS) ++ list(APPEND UHD_BOOST_REQUIRED_COMPONENTS unit_test_framework) ++endif(ENABLE_TESTS) ++ + include(UHDBoost) + + include_directories(${Boost_INCLUDE_DIRS}) +-- +2.26.2 + diff --git a/package/uhd/0002-host-fix-build-boost-173.patch b/package/uhd/0002-host-fix-build-boost-173.patch new file mode 100644 index 00000000..b685b5f8 --- /dev/null +++ b/package/uhd/0002-host-fix-build-boost-173.patch @@ -0,0 +1,577 @@ +From 13caaf001061db3c01082c4574a5e326c4969ab6 Mon Sep 17 00:00:00 2001 +From: Martin Braun +Date: Thu, 16 Jul 2020 13:07:34 +0200 +Subject: [PATCH] boost: Include bind.hpp where used, add + BOOST_BIND_GLOBAL_PLACEHOLDERS + +Consists of two changes: +- Grepped for files that use boost::bind, but don't include + boost/bind.hpp. Changed all of those to include bind.hpp +- Add BOOST_BIND_GLOBAL_PLACEHOLDERS so that Boost doesn't complain + about using bind placeholders in the global namespace. + +Background: boost/bind.hpp is a convenience header that pulls the Boost +bind placeholders into the global namespace, but that's deprecated +behaviour. For UHD 3.15, we'll keep the deprecated behaviour (modern UHD +no longer uses Boost.Bind), so this fixes build failures with modern +Boost, and related warnings. + +Patch retrieved from +https://github.com/EttusResearch/uhd/commit/13caaf001061db3c01082c4574a5e326c4969ab6 + +Signed-off-by: Martin Braun +Signed-off-by: Gwenhael Goavec-Merou +--- + host/cmake/Modules/UHDBoost.cmake | 3 +++ + host/examples/network_relay.cpp | 1 + + host/examples/rfnoc_rx_to_file.cpp | 1 + + host/examples/test_clock_synch.cpp | 1 + + host/examples/txrx_loopback_to_file.cpp | 1 + + host/lib/rfnoc/dma_fifo_block_ctrl_impl.cpp | 1 + + host/lib/rfnoc/legacy_compat.cpp | 1 + + host/lib/transport/xport_benchmarker.cpp | 1 + + host/lib/usrp/b100/b100_impl.cpp | 1 + + host/lib/usrp/b200/b200_iface.cpp | 1 + + host/lib/usrp/b200/b200_impl.cpp | 1 + + host/lib/usrp/cores/rx_dsp_core_3000.cpp | 1 + + host/lib/usrp/cores/tx_dsp_core_3000.cpp | 1 + + host/lib/usrp/dboard/db_cbx.cpp | 1 + + host/lib/usrp/dboard/db_dbsrx.cpp | 1 + + host/lib/usrp/dboard/db_dbsrx2.cpp | 1 + + host/lib/usrp/dboard/db_sbx_common.cpp | 1 + + host/lib/usrp/dboard/db_sbx_version3.cpp | 1 + + host/lib/usrp/dboard/db_sbx_version4.cpp | 1 + + host/lib/usrp/dboard/db_tvrx.cpp | 1 + + host/lib/usrp/dboard/db_tvrx2.cpp | 1 + + host/lib/usrp/dboard/db_twinrx.cpp | 1 + + host/lib/usrp/dboard/db_ubx.cpp | 1 + + host/lib/usrp/dboard/db_wbx_common.cpp | 1 + + host/lib/usrp/dboard/db_wbx_simple.cpp | 1 + + host/lib/usrp/dboard/db_wbx_version2.cpp | 1 + + host/lib/usrp/dboard/db_wbx_version3.cpp | 1 + + host/lib/usrp/dboard/db_wbx_version4.cpp | 1 + + host/lib/usrp/dboard/db_xcvr2450.cpp | 1 + + host/lib/usrp/dboard/eiscat/eiscat_radio_ctrl_impl.cpp | 1 + + host/lib/usrp/multi_usrp.cpp | 1 + + host/lib/usrp/n230/n230_resource_manager.cpp | 1 + + host/lib/usrp/n230/n230_uart.cpp | 1 + + host/lib/usrp/usrp1/soft_time_ctrl.cpp | 1 + + host/lib/usrp/usrp1/usrp1_impl.cpp | 1 + + host/lib/usrp/x300/x300_radio_ctrl_impl.cpp | 1 + + host/lib/usrp_clock/octoclock/octoclock_impl.cpp | 1 + + host/lib/utils/ihex.cpp | 1 + + host/lib/utils/tasks.cpp | 1 + + host/utils/uhd_cal_rx_iq_balance.cpp | 1 + + host/utils/uhd_cal_tx_dc_offset.cpp | 1 + + host/utils/uhd_cal_tx_iq_balance.cpp | 1 + + 42 files changed, 44 insertions(+) + +diff --git a/host/cmake/Modules/UHDBoost.cmake b/host/cmake/Modules/UHDBoost.cmake +index 5ebb4acef..e3ee42b50 100644 +--- a/host/cmake/Modules/UHDBoost.cmake ++++ b/host/cmake/Modules/UHDBoost.cmake +@@ -259,6 +259,9 @@ else() + # disable Boost's use of std::experimental::string_view + # works for Boost 1.67.0 and newer & doesn't hurt older + add_definitions(-DBOOST_ASIO_DISABLE_STD_EXPERIMENTAL_STRING_VIEW) ++ # UHD 3.15 still uses global placeholders (_1, _2, ...) from Boost which ++ # need to be enabled explicitly for some Boost versions ++ add_definitions(-DBOOST_BIND_GLOBAL_PLACEHOLDERS) + + # Boost 1.70.0's find cmake scripts don't always set the expected + # return variables. Replicate the commit that fixes that issue here: +diff --git a/host/examples/network_relay.cpp b/host/examples/network_relay.cpp +index bf2ac9255..9a9f56eb5 100644 +--- a/host/examples/network_relay.cpp ++++ b/host/examples/network_relay.cpp +@@ -8,6 +8,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/host/examples/rfnoc_rx_to_file.cpp b/host/examples/rfnoc_rx_to_file.cpp +index 5bb9985ae..cbd35cbe8 100644 +--- a/host/examples/rfnoc_rx_to_file.cpp ++++ b/host/examples/rfnoc_rx_to_file.cpp +@@ -23,6 +23,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/host/examples/test_clock_synch.cpp b/host/examples/test_clock_synch.cpp +index 8556063d7..ec071f7c7 100644 +--- a/host/examples/test_clock_synch.cpp ++++ b/host/examples/test_clock_synch.cpp +@@ -12,6 +12,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/host/examples/txrx_loopback_to_file.cpp b/host/examples/txrx_loopback_to_file.cpp +index 271d249f6..a2f0427c9 100644 +--- a/host/examples/txrx_loopback_to_file.cpp ++++ b/host/examples/txrx_loopback_to_file.cpp +@@ -13,6 +13,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/host/lib/rfnoc/dma_fifo_block_ctrl_impl.cpp b/host/lib/rfnoc/dma_fifo_block_ctrl_impl.cpp +index a80e2ef53..b78635002 100644 +--- a/host/lib/rfnoc/dma_fifo_block_ctrl_impl.cpp ++++ b/host/lib/rfnoc/dma_fifo_block_ctrl_impl.cpp +@@ -11,6 +11,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/host/lib/rfnoc/legacy_compat.cpp b/host/lib/rfnoc/legacy_compat.cpp +index 91de361df..f93fe871a 100644 +--- a/host/lib/rfnoc/legacy_compat.cpp ++++ b/host/lib/rfnoc/legacy_compat.cpp +@@ -19,6 +19,7 @@ + #include + #include + #include ++#include + #include + #include + +diff --git a/host/lib/transport/xport_benchmarker.cpp b/host/lib/transport/xport_benchmarker.cpp +index 67582ff2c..7abd4c5fd 100644 +--- a/host/lib/transport/xport_benchmarker.cpp ++++ b/host/lib/transport/xport_benchmarker.cpp +@@ -6,6 +6,7 @@ + // + + #include "xport_benchmarker.hpp" ++#include + #include + #include + +diff --git a/host/lib/usrp/b100/b100_impl.cpp b/host/lib/usrp/b100/b100_impl.cpp +index cd4319803..08006ae32 100644 +--- a/host/lib/usrp/b100/b100_impl.cpp ++++ b/host/lib/usrp/b100/b100_impl.cpp +@@ -15,6 +15,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/host/lib/usrp/b200/b200_iface.cpp b/host/lib/usrp/b200/b200_iface.cpp +index 082be071c..cdf88f69b 100644 +--- a/host/lib/usrp/b200/b200_iface.cpp ++++ b/host/lib/usrp/b200/b200_iface.cpp +@@ -12,6 +12,7 @@ + #include + #include + ++#include + #include + #include + #include +diff --git a/host/lib/usrp/b200/b200_impl.cpp b/host/lib/usrp/b200/b200_impl.cpp +index 1be8c263b..c0f8ee1ac 100644 +--- a/host/lib/usrp/b200/b200_impl.cpp ++++ b/host/lib/usrp/b200/b200_impl.cpp +@@ -17,6 +17,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/host/lib/usrp/cores/rx_dsp_core_3000.cpp b/host/lib/usrp/cores/rx_dsp_core_3000.cpp +index 46fce3f69..ff7caf105 100644 +--- a/host/lib/usrp/cores/rx_dsp_core_3000.cpp ++++ b/host/lib/usrp/cores/rx_dsp_core_3000.cpp +@@ -13,6 +13,7 @@ + #include + #include + #include ++#include + #include + #include //thread sleep + #include +diff --git a/host/lib/usrp/cores/tx_dsp_core_3000.cpp b/host/lib/usrp/cores/tx_dsp_core_3000.cpp +index be7593841..b76a74b1c 100644 +--- a/host/lib/usrp/cores/tx_dsp_core_3000.cpp ++++ b/host/lib/usrp/cores/tx_dsp_core_3000.cpp +@@ -12,6 +12,7 @@ + #include + #include + #include ++#include + #include + #include //sleep + #include +diff --git a/host/lib/usrp/dboard/db_cbx.cpp b/host/lib/usrp/dboard/db_cbx.cpp +index dd0640d00..f5c7f2399 100644 +--- a/host/lib/usrp/dboard/db_cbx.cpp ++++ b/host/lib/usrp/dboard/db_cbx.cpp +@@ -7,6 +7,7 @@ + + #include "db_sbx_common.hpp" + #include ++#include + #include + + using namespace uhd; +diff --git a/host/lib/usrp/dboard/db_dbsrx.cpp b/host/lib/usrp/dboard/db_dbsrx.cpp +index 587158470..dc82b60f9 100644 +--- a/host/lib/usrp/dboard/db_dbsrx.cpp ++++ b/host/lib/usrp/dboard/db_dbsrx.cpp +@@ -21,6 +21,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/host/lib/usrp/dboard/db_dbsrx2.cpp b/host/lib/usrp/dboard/db_dbsrx2.cpp +index e2505dfd7..da4da4148 100644 +--- a/host/lib/usrp/dboard/db_dbsrx2.cpp ++++ b/host/lib/usrp/dboard/db_dbsrx2.cpp +@@ -18,6 +18,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/host/lib/usrp/dboard/db_sbx_common.cpp b/host/lib/usrp/dboard/db_sbx_common.cpp +index b6eaedc3d..95aff96b4 100644 +--- a/host/lib/usrp/dboard/db_sbx_common.cpp ++++ b/host/lib/usrp/dboard/db_sbx_common.cpp +@@ -6,6 +6,7 @@ + // + + #include "db_sbx_common.hpp" ++#include + + using namespace uhd; + using namespace uhd::usrp; +diff --git a/host/lib/usrp/dboard/db_sbx_version3.cpp b/host/lib/usrp/dboard/db_sbx_version3.cpp +index 369315b2e..fb829cf34 100644 +--- a/host/lib/usrp/dboard/db_sbx_version3.cpp ++++ b/host/lib/usrp/dboard/db_sbx_version3.cpp +@@ -9,6 +9,7 @@ + #include "db_sbx_common.hpp" + #include + #include ++#include + + using namespace uhd; + using namespace uhd::usrp; +diff --git a/host/lib/usrp/dboard/db_sbx_version4.cpp b/host/lib/usrp/dboard/db_sbx_version4.cpp +index d1c76287b..e1adebf99 100644 +--- a/host/lib/usrp/dboard/db_sbx_version4.cpp ++++ b/host/lib/usrp/dboard/db_sbx_version4.cpp +@@ -9,6 +9,7 @@ + #include "db_sbx_common.hpp" + #include + #include ++#include + + using namespace uhd; + using namespace uhd::usrp; +diff --git a/host/lib/usrp/dboard/db_tvrx.cpp b/host/lib/usrp/dboard/db_tvrx.cpp +index 8bf377c4d..5fbbf5bee 100644 +--- a/host/lib/usrp/dboard/db_tvrx.cpp ++++ b/host/lib/usrp/dboard/db_tvrx.cpp +@@ -28,6 +28,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/host/lib/usrp/dboard/db_tvrx2.cpp b/host/lib/usrp/dboard/db_tvrx2.cpp +index 5dba83551..e1623487d 100644 +--- a/host/lib/usrp/dboard/db_tvrx2.cpp ++++ b/host/lib/usrp/dboard/db_tvrx2.cpp +@@ -55,6 +55,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/host/lib/usrp/dboard/db_twinrx.cpp b/host/lib/usrp/dboard/db_twinrx.cpp +index de1cd3f33..aa9da8adf 100644 +--- a/host/lib/usrp/dboard/db_twinrx.cpp ++++ b/host/lib/usrp/dboard/db_twinrx.cpp +@@ -19,6 +19,7 @@ + #include + #include + #include "dboard_ctor_args.hpp" ++#include + #include + #include + #include +diff --git a/host/lib/usrp/dboard/db_ubx.cpp b/host/lib/usrp/dboard/db_ubx.cpp +index 305a69c52..e78f9db75 100644 +--- a/host/lib/usrp/dboard/db_ubx.cpp ++++ b/host/lib/usrp/dboard/db_ubx.cpp +@@ -20,6 +20,7 @@ + #include + #include + ++#include + #include + #include + #include +diff --git a/host/lib/usrp/dboard/db_wbx_common.cpp b/host/lib/usrp/dboard/db_wbx_common.cpp +index 41f323d19..fd7b2481a 100644 +--- a/host/lib/usrp/dboard/db_wbx_common.cpp ++++ b/host/lib/usrp/dboard/db_wbx_common.cpp +@@ -12,6 +12,7 @@ + #include + #include + #include ++#include + + using namespace uhd; + using namespace uhd::usrp; +diff --git a/host/lib/usrp/dboard/db_wbx_simple.cpp b/host/lib/usrp/dboard/db_wbx_simple.cpp +index 390c5c47a..e3a5667c7 100644 +--- a/host/lib/usrp/dboard/db_wbx_simple.cpp ++++ b/host/lib/usrp/dboard/db_wbx_simple.cpp +@@ -17,6 +17,7 @@ + #include + #include + #include ++#include + + using namespace uhd; + using namespace uhd::usrp; +diff --git a/host/lib/usrp/dboard/db_wbx_version2.cpp b/host/lib/usrp/dboard/db_wbx_version2.cpp +index 775ee4467..f1bf7dacc 100644 +--- a/host/lib/usrp/dboard/db_wbx_version2.cpp ++++ b/host/lib/usrp/dboard/db_wbx_version2.cpp +@@ -16,6 +16,7 @@ + + #include + #include ++#include + #include + #include + #include +diff --git a/host/lib/usrp/dboard/db_wbx_version3.cpp b/host/lib/usrp/dboard/db_wbx_version3.cpp +index 41979f8ef..b755d09a2 100644 +--- a/host/lib/usrp/dboard/db_wbx_version3.cpp ++++ b/host/lib/usrp/dboard/db_wbx_version3.cpp +@@ -15,6 +15,7 @@ + + #include + #include ++#include + #include + #include + #include +diff --git a/host/lib/usrp/dboard/db_wbx_version4.cpp b/host/lib/usrp/dboard/db_wbx_version4.cpp +index 8b3d13b37..f2976d3a7 100644 +--- a/host/lib/usrp/dboard/db_wbx_version4.cpp ++++ b/host/lib/usrp/dboard/db_wbx_version4.cpp +@@ -15,6 +15,7 @@ + + #include + #include ++#include + #include + #include + #include +diff --git a/host/lib/usrp/dboard/db_xcvr2450.cpp b/host/lib/usrp/dboard/db_xcvr2450.cpp +index 9e1c9f2b0..8f95dbb1c 100644 +--- a/host/lib/usrp/dboard/db_xcvr2450.cpp ++++ b/host/lib/usrp/dboard/db_xcvr2450.cpp +@@ -49,6 +49,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/host/lib/usrp/dboard/eiscat/eiscat_radio_ctrl_impl.cpp b/host/lib/usrp/dboard/eiscat/eiscat_radio_ctrl_impl.cpp +index 73851656b..717fa144f 100644 +--- a/host/lib/usrp/dboard/eiscat/eiscat_radio_ctrl_impl.cpp ++++ b/host/lib/usrp/dboard/eiscat/eiscat_radio_ctrl_impl.cpp +@@ -11,6 +11,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/host/lib/usrp/multi_usrp.cpp b/host/lib/usrp/multi_usrp.cpp +index 49ffec698..13cb03cf9 100644 +--- a/host/lib/usrp/multi_usrp.cpp ++++ b/host/lib/usrp/multi_usrp.cpp +@@ -21,6 +21,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/host/lib/usrp/n230/n230_resource_manager.cpp b/host/lib/usrp/n230/n230_resource_manager.cpp +index 22f8ddedb..df3c9fb15 100644 +--- a/host/lib/usrp/n230/n230_resource_manager.cpp ++++ b/host/lib/usrp/n230/n230_resource_manager.cpp +@@ -14,6 +14,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/host/lib/usrp/n230/n230_uart.cpp b/host/lib/usrp/n230/n230_uart.cpp +index 8689335c8..26fafde94 100644 +--- a/host/lib/usrp/n230/n230_uart.cpp ++++ b/host/lib/usrp/n230/n230_uart.cpp +@@ -13,6 +13,7 @@ + #include + #include + #include ++#include + + using namespace uhd; + using namespace uhd::transport; +diff --git a/host/lib/usrp/usrp1/soft_time_ctrl.cpp b/host/lib/usrp/usrp1/soft_time_ctrl.cpp +index 7f39caf8a..9a84ee188 100644 +--- a/host/lib/usrp/usrp1/soft_time_ctrl.cpp ++++ b/host/lib/usrp/usrp1/soft_time_ctrl.cpp +@@ -8,6 +8,7 @@ + #include "soft_time_ctrl.hpp" + #include + #include ++#include + #include + #include + #include +diff --git a/host/lib/usrp/usrp1/usrp1_impl.cpp b/host/lib/usrp/usrp1/usrp1_impl.cpp +index 2134f8182..1e83ce3fc 100644 +--- a/host/lib/usrp/usrp1/usrp1_impl.cpp ++++ b/host/lib/usrp/usrp1/usrp1_impl.cpp +@@ -14,6 +14,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/host/lib/usrp/x300/x300_radio_ctrl_impl.cpp b/host/lib/usrp/x300/x300_radio_ctrl_impl.cpp +index 8d967ae15..de36379ea 100644 +--- a/host/lib/usrp/x300/x300_radio_ctrl_impl.cpp ++++ b/host/lib/usrp/x300/x300_radio_ctrl_impl.cpp +@@ -17,6 +17,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/host/lib/usrp_clock/octoclock/octoclock_impl.cpp b/host/lib/usrp_clock/octoclock/octoclock_impl.cpp +index f3cf3f4ea..4c11788d2 100644 +--- a/host/lib/usrp_clock/octoclock/octoclock_impl.cpp ++++ b/host/lib/usrp_clock/octoclock/octoclock_impl.cpp +@@ -9,6 +9,7 @@ + + #include + #include ++#include + #include + #include + #include +diff --git a/host/lib/utils/ihex.cpp b/host/lib/utils/ihex.cpp +index 6bb0ba9d4..7fb605627 100644 +--- a/host/lib/utils/ihex.cpp ++++ b/host/lib/utils/ihex.cpp +@@ -7,6 +7,7 @@ + + #include + #include ++#include + #include + #include + #include +diff --git a/host/lib/utils/tasks.cpp b/host/lib/utils/tasks.cpp +index 888a5a8f1..e5195fcf1 100644 +--- a/host/lib/utils/tasks.cpp ++++ b/host/lib/utils/tasks.cpp +@@ -10,6 +10,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/host/utils/uhd_cal_rx_iq_balance.cpp b/host/utils/uhd_cal_rx_iq_balance.cpp +index c68c96173..3f5fa1788 100644 +--- a/host/utils/uhd_cal_rx_iq_balance.cpp ++++ b/host/utils/uhd_cal_rx_iq_balance.cpp +@@ -11,6 +11,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/host/utils/uhd_cal_tx_dc_offset.cpp b/host/utils/uhd_cal_tx_dc_offset.cpp +index f47b5e913..2cb65d3f5 100644 +--- a/host/utils/uhd_cal_tx_dc_offset.cpp ++++ b/host/utils/uhd_cal_tx_dc_offset.cpp +@@ -11,6 +11,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/host/utils/uhd_cal_tx_iq_balance.cpp b/host/utils/uhd_cal_tx_iq_balance.cpp +index 2e7229fd3..ace93462e 100644 +--- a/host/utils/uhd_cal_tx_iq_balance.cpp ++++ b/host/utils/uhd_cal_tx_iq_balance.cpp +@@ -8,6 +8,7 @@ + #include "usrp_cal_utils.hpp" + #include + #include ++#include + #include + #include + #include +-- +2.26.2 + diff --git a/package/uhd/0003-add-RISC-V-endian-detection.patch b/package/uhd/0003-add-RISC-V-endian-detection.patch new file mode 100644 index 00000000..fb1168ba --- /dev/null +++ b/package/uhd/0003-add-RISC-V-endian-detection.patch @@ -0,0 +1,113 @@ +From d4717a38d2287c2f583fefb2a0ed273337a92bb6 Mon Sep 17 00:00:00 2001 +From: Gwenhael Goavec-Merou +Date: Mon, 11 Jan 2021 18:18:26 +0100 +Subject: [PATCH] msgpack/predef: add riscV support + +When the target CPU is riscV, msgpack is unable to detect endianness with a list of errors like: + +uhd/host/lib/deps/rpclib/include/rpc/msgpack/pack.hpp:190:2: error: #error msgpack-c supports only big endian and little endian + 190 | #error msgpack-c supports only big endian and little endian + | ^~~~~ + +and with subsequent errors: + +uhd0/host/lib/deps/rpclib/include/rpc/msgpack/pack.hpp:236:46: error: there are no arguments to 'take8_8' that depend on a template parameter, so a declaration of 'take8_8' must be available [-fpermissive] + 236 | char buf[2] = {static_cast(0xccu), take8_8(d)}; + | + +This is due to a missing support for this architecture in msgpack. +This patch adapt commit from https://github.com/boostorg/predef + +[backported from https://github.com/EttusResearch/uhd/pull/400] + +Signed-off-by: Gwenhael Goavec-Merou +--- + .../include/rpc/msgpack/predef/architecture.h | 1 + + .../rpc/msgpack/predef/architecture/riscv.h | 48 +++++++++++++++++++ + .../include/rpc/msgpack/predef/other/endian.h | 3 +- + 3 files changed, 51 insertions(+), 1 deletion(-) + create mode 100644 host/lib/deps/rpclib/include/rpc/msgpack/predef/architecture/riscv.h + +diff --git a/host/lib/deps/rpclib/include/rpc/msgpack/predef/architecture.h b/host/lib/deps/rpclib/include/rpc/msgpack/predef/architecture.h +index 4a0ce2749..1bd998c59 100644 +--- a/host/lib/deps/rpclib/include/rpc/msgpack/predef/architecture.h ++++ b/host/lib/deps/rpclib/include/rpc/msgpack/predef/architecture.h +@@ -18,6 +18,7 @@ http://www.boost.org/LICENSE_1_0.txt) + #include + #include + #include ++#include + #include + #include + #include +diff --git a/host/lib/deps/rpclib/include/rpc/msgpack/predef/architecture/riscv.h b/host/lib/deps/rpclib/include/rpc/msgpack/predef/architecture/riscv.h +new file mode 100644 +index 000000000..8b819d77e +--- /dev/null ++++ b/host/lib/deps/rpclib/include/rpc/msgpack/predef/architecture/riscv.h +@@ -0,0 +1,48 @@ ++/* ++Copyright Andreas Schwab 2019 ++Distributed under the Boost Software License, Version 1.0. ++(See accompanying file LICENSE_1_0.txt or copy at ++http://www.boost.org/LICENSE_1_0.txt) ++*/ ++ ++#ifndef BOOST_PREDEF_ARCHITECTURE_RISCV_H ++#define BOOST_PREDEF_ARCHITECTURE_RISCV_H ++ ++#include ++#include ++ ++/* tag::reference[] ++= `BOOST_ARCH_RISCV` ++ ++http://en.wikipedia.org/wiki/RISC-V[RISC-V] architecture. ++ ++[options="header"] ++|=== ++| {predef_symbol} | {predef_version} ++ ++| `+__riscv+` | {predef_detection} ++|=== ++*/ // end::reference[] ++ ++#define BOOST_ARCH_RISCV BOOST_VERSION_NUMBER_NOT_AVAILABLE ++ ++#if defined(__riscv) ++# undef BOOST_ARCH_RISCV ++# define BOOST_ARCH_RISCV BOOST_VERSION_NUMBER_AVAILABLE ++#endif ++ ++#if BOOST_ARCH_RISCV ++# define BOOST_ARCH_RISCV_AVAILABLE ++#endif ++ ++#if BOOST_ARCH_RISCV ++# undef BOOST_ARCH_WORD_BITS_32 ++# define BOOST_ARCH_WORD_BITS_32 BOOST_VERSION_NUMBER_AVAILABLE ++#endif ++ ++#define BOOST_ARCH_RISCV_NAME "RISC-V" ++ ++#endif ++ ++#include ++BOOST_PREDEF_DECLARE_TEST(BOOST_ARCH_RISCV,BOOST_ARCH_RISCV_NAME) +diff --git a/host/lib/deps/rpclib/include/rpc/msgpack/predef/other/endian.h b/host/lib/deps/rpclib/include/rpc/msgpack/predef/other/endian.h +index 3f367b3d4..a7c1fb4dc 100644 +--- a/host/lib/deps/rpclib/include/rpc/msgpack/predef/other/endian.h ++++ b/host/lib/deps/rpclib/include/rpc/msgpack/predef/other/endian.h +@@ -127,7 +127,8 @@ information and acquired knowledge: + defined(__AARCH64EL__) || \ + defined(_MIPSEL) || \ + defined(__MIPSEL) || \ +- defined(__MIPSEL__) ++ defined(__MIPSEL__) || \ ++ defined(__riscv) + # undef MSGPACK_ENDIAN_LITTLE_BYTE + # define MSGPACK_ENDIAN_LITTLE_BYTE MSGPACK_VERSION_NUMBER_AVAILABLE + # endif +-- +2.26.2 + diff --git a/package/uhd/Config.in b/package/uhd/Config.in new file mode 100644 index 00000000..f61bbf0e --- /dev/null +++ b/package/uhd/Config.in @@ -0,0 +1,160 @@ +comment "uhd needs a toolchain w/ C++, NPTL, wchar, dynamic library" + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \ + !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS + +comment "uhd needs a toolchain not affected by GCC bug 64735" + depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735 + +config BR2_PACKAGE_UHD + bool "uhd" + depends on BR2_INSTALL_LIBSTDCPP + depends on !BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-atomic + depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # boost-thread + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL + depends on BR2_USE_MMU # use fork() + depends on BR2_USE_WCHAR # boost + select BR2_PACKAGE_BOOST + select BR2_PACKAGE_BOOST_ATOMIC + select BR2_PACKAGE_BOOST_CHRONO + select BR2_PACKAGE_BOOST_DATE_TIME + select BR2_PACKAGE_BOOST_FILESYSTEM + select BR2_PACKAGE_BOOST_PROGRAM_OPTIONS + select BR2_PACKAGE_BOOST_REGEX + select BR2_PACKAGE_BOOST_SERIALIZATION + select BR2_PACKAGE_BOOST_SYSTEM + select BR2_PACKAGE_BOOST_THREAD + help + Universal Software Radio Peripheral (USRP) Hardware Driver + + https://kb.etthus.com + +if BR2_PACKAGE_UHD + +config BR2_PACKAGE_UHD_B100 + bool "b100 support" + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb + select BR2_PACKAGE_UHD_USB + help + enable B100 support + +comment "B100 support needs a toolchain w/ gcc >= 4.9" + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + +config BR2_PACKAGE_UHD_B200 + bool "b200 support" + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb + select BR2_PACKAGE_UHD_USB + help + enable B200 support + +comment "B200 support needs a toolchain w/ gcc >= 4.9" + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + +config BR2_PACKAGE_UHD_E300 + bool "E300 support" + select BR2_PACKAGE_UHD_MPMD + help + enable E300 support + +config BR2_PACKAGE_UHD_E320 + bool "E320 support" + select BR2_PACKAGE_UHD_MPMD + help + enable E320 support + +config BR2_PACKAGE_UHD_EXAMPLES + bool "uhd-examples" + help + Examples + +config BR2_PACKAGE_UHD_MPMD + bool "MPMD support" + help + enable MPMD support + +config BR2_PACKAGE_UHD_N230 + bool "N230 support" + help + enable N230 support + +config BR2_PACKAGE_UHD_N300 + bool "N300 support" + select BR2_PACKAGE_UHD_MPMD + help + enable N300 support + +config BR2_PACKAGE_UHD_N320 + bool "N320 support" + select BR2_PACKAGE_UHD_MPMD + help + enable N320 support + +config BR2_PACKAGE_UHD_OCTOCLOCK + bool "OctoClock support" + help + enable OctoClock support + +comment "uhd python API needs python3 and a toolchain w/ glibc or musl" + depends on !BR2_PACKAGE_PYTHON3 + depends on !BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS + depends on !(BR2_TOOLCHAIN_USES_GLIBC && BR2_TOOLCHAIN_USES_MUSL) # python-numpy + +config BR2_PACKAGE_UHD_PYTHON + bool "python API support" + depends on BR2_PACKAGE_PYTHON3 + depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL # python-numpy + select BR2_PACKAGE_PYTHON_NUMPY + select BR2_PACKAGE_PYTHON_REQUESTS + help + enable python API support + +config BR2_PACKAGE_UHD_RFNOC + bool "RFNoC support" + help + enable RFNoC support + +config BR2_PACKAGE_UHD_USB + bool "USB support" + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb + select BR2_PACKAGE_LIBUSB + help + enable UHD USB support + +comment "USB support needs a toolchain w/ gcc >= 4.9" + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + +config BR2_PACKAGE_UHD_USRP1 + bool "USRP1 support" + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb + select BR2_PACKAGE_UHD_USB + help + enable USRP1 support + +comment "USRP1 support needs a toolchain w/ gcc >= 4.9" + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + +config BR2_PACKAGE_UHD_USRP2 + bool "USRP2 support" + help + enable USRP2 support + +comment "uhd utils depends on python API support" + depends on !BR2_PACKAGE_UHD_PYTHON + +config BR2_PACKAGE_UHD_UTILS + bool "uhd-utils" + depends on BR2_PACKAGE_UHD_PYTHON + select BR2_PACKAGE_PYTHON_SIX + help + uhd-utils + +config BR2_PACKAGE_UHD_X300 + bool "X300 support" + help + enable X300 support + +endif diff --git a/package/uhd/uhd.hash b/package/uhd/uhd.hash new file mode 100644 index 00000000..cfd1f3f6 --- /dev/null +++ b/package/uhd/uhd.hash @@ -0,0 +1,4 @@ +# Locally calculated: +sha256 eed4a77d75faafff56be78985950039f8d9d1eb9fcbd58b8862e481dd49825cd uhd-3.15.0.0.tar.gz +sha256 8fc99820c2419d0de6bbbd319ff935d54960b37b716d0b4bb1c75de493f3e1fd LICENSE.md +sha256 70bf7e79c8cd73a81f97ce81745ea0719a617eebe299a61868165daeae71fff2 host/LICENSE diff --git a/package/uhd/uhd.mk b/package/uhd/uhd.mk new file mode 100644 index 00000000..a8001dfd --- /dev/null +++ b/package/uhd/uhd.mk @@ -0,0 +1,153 @@ +################################################################################ +# +# uhd +# +################################################################################ + +UHD_VERSION = 3.15.0.0 +UHD_SITE = $(call github,EttusResearch,uhd,v$(UHD_VERSION)) +UHD_LICENSE = GPL-3.0+ +UHD_LICENSE_FILES = LICENSE.md host/LICENSE + +UHD_SUPPORTS_IN_SOURCE_BUILD = NO +UHD_SUBDIR = host +UHD_INSTALL_STAGING = YES + +UHD_DEPENDENCIES = \ + boost \ + $(if $(BR2_PACKAGE_PYTHON),host-python,host-python3) \ + host-python-mako + +UHD_CONF_OPTS = \ + -DPYTHON_EXECUTABLE=$(HOST_DIR)/bin/python \ + -DRUNTIME_PYTHON_EXECUTABLE=/usr/bin/python \ + -DENABLE_C_API=ON \ + -DENABLE_DOXYGEN=OFF \ + -DENABLE_DPDK=OFF \ + -DENABLE_LIBUHD=ON \ + -DENABLE_MANUAL=OFF \ + -DENABLE_MAN_PAGES=OFF \ + -DENABLE_TESTS=OFF + +# As soon as architecture is ARM, uhd will try to use NEON. +# But not all ARM cores have NEON support. +# When CPU support NEON -mfpu=neon must be added to CXX_FLAGS +ifeq ($(BR2_ARM_CPU_HAS_NEON),y) +UHD_CONF_OPTS += -DCMAKE_CXX_FLAGS="$(TARGET_CXXFLAGS) -mfpu=neon" +UHD_CONF_OPTS += -DNEON_SIMD_ENABLE=ON +else +UHD_CONF_OPTS += -Dhave_mfpu_neon=0 +UHD_CONF_OPTS += -DNEON_SIMD_ENABLE=OFF +endif + +ifeq ($(BR2_PACKAGE_ORC),y) +UHD_DEPENDENCIES += orc +endif + +ifeq ($(BR2_PACKAGE_UHD_B100),y) +UHD_CONF_OPTS += -DENABLE_B100=ON +else +UHD_CONF_OPTS += -DENABLE_B100=OFF +endif + +ifeq ($(BR2_PACKAGE_UHD_B200),y) +UHD_CONF_OPTS += -DENABLE_B200=ON +else +UHD_CONF_OPTS += -DENABLE_B200=OFF +endif + +ifeq ($(BR2_PACKAGE_UHD_E300),y) +UHD_CONF_OPTS += -DENABLE_E300=ON +else +UHD_CONF_OPTS += -DENABLE_E300=OFF +endif + +ifeq ($(BR2_PACKAGE_UHD_E320),y) +UHD_CONF_OPTS += -DENABLE_E320=ON +else +UHD_CONF_OPTS += -DENABLE_E320=OFF +endif + +ifeq ($(BR2_PACKAGE_UHD_EXAMPLES),y) +UHD_CONF_OPTS += -DENABLE_EXAMPLES=ON +else +UHD_CONF_OPTS += -DENABLE_EXAMPLES=OFF +endif + +ifeq ($(BR2_PACKAGE_UHD_MPMD),y) +UHD_CONF_OPTS += -DENABLE_MPMD=ON +else +UHD_CONF_OPTS += -DENABLE_MPMD=OFF +endif + +ifeq ($(BR2_PACKAGE_UHD_N230),y) +UHD_CONF_OPTS += -DENABLE_N230=ON +else +UHD_CONF_OPTS += -DENABLE_N230=OFF +endif + +ifeq ($(BR2_PACKAGE_UHD_N300),y) +UHD_CONF_OPTS += -DENABLE_N300=ON +else +UHD_CONF_OPTS += -DENABLE_N300=OFF +endif + +ifeq ($(BR2_PACKAGE_UHD_N320),y) +UHD_CONF_OPTS += -DENABLE_N320=ON +else +UHD_CONF_OPTS += -DENABLE_N320=OFF +endif + +ifeq ($(BR2_PACKAGE_UHD_OCTOCLOCK),y) +UHD_CONF_OPTS += -DENABLE_OCTOCLOCK=ON +else +UHD_CONF_OPTS += -DENABLE_OCTOCLOCK=OFF +endif + +ifeq ($(BR2_PACKAGE_UHD_RFNOC),y) +UHD_CONF_OPTS += -DENABLE_RFNOC=ON +else +UHD_CONF_OPTS += -DENABLE_RFNOC=OFF +endif + +ifeq ($(BR2_PACKAGE_UHD_PYTHON),y) +UHD_DEPENDENCIES += host-python-numpy host-python3-requests \ + python-numpy python-requests +UHD_CONF_OPTS += -DENABLE_PYTHON_API=ON +else +UHD_CONF_OPTS += -DENABLE_PYTHON_API=OFF +endif + +ifeq ($(BR2_PACKAGE_UHD_USB),y) +UHD_DEPENDENCIES += libusb +UHD_CONF_OPTS += -DENABLE_USB=ON +else +UHD_CONF_OPTS += -DENABLE_USB=OFF +endif + +ifeq ($(BR2_PACKAGE_UHD_USRP1),y) +UHD_CONF_OPTS += -DENABLE_USRP1=ON +else +UHD_CONF_OPTS += -DENABLE_USRP1=OFF +endif + +ifeq ($(BR2_PACKAGE_UHD_USRP2),y) +UHD_CONF_OPTS += -DENABLE_USRP2=ON +else +UHD_CONF_OPTS += -DENABLE_USRP2=OFF +endif + +ifeq ($(BR2_PACKAGE_UHD_UTILS),y) +UHD_DEPENDENCIES += python-six +UHD_CONF_OPTS += -DENABLE_UTILS=ON +else +UHD_CONF_OPTS += -DENABLE_UTILS=OFF +endif + +ifeq ($(BR2_PACKAGE_UHD_X300),y) +UHD_CONF_OPTS += -DENABLE_X300=ON +else +UHD_CONF_OPTS += -DENABLE_X300=OFF +endif + +$(eval $(cmake-package)) diff --git a/package/uhttpd/0001-Remove-Werror.patch b/package/uhttpd/0001-Remove-Werror.patch new file mode 100644 index 00000000..67028cfa --- /dev/null +++ b/package/uhttpd/0001-Remove-Werror.patch @@ -0,0 +1,33 @@ +From ac52380eeca27e1e2e7eb5fb9d39059dbe58b919 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 7 Dec 2016 22:48:27 +0100 +Subject: [PATCH] Remove -Werror + +-Werror might cause build failures with newer versions of gcc or C + libraries, not tested by upstream, for example: + + # warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE" + ^ +cc1: all warnings being treated as errors + +Signed-off-by: Thomas Petazzoni +--- + CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 7ae8ba4..825342f 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -5,7 +5,7 @@ PROJECT(uhttpd C) + INCLUDE (CheckFunctionExists) + + SET(CMAKE_SHARED_LIBRARY_LINK_C_FLAGS "") +-ADD_DEFINITIONS(-D_FILE_OFFSET_BITS=64 -Os -Wall -Werror -Wmissing-declarations --std=gnu99 -g3) ++ADD_DEFINITIONS(-D_FILE_OFFSET_BITS=64 -Os -Wall -Wmissing-declarations --std=gnu99 -g3) + + OPTION(TLS_SUPPORT "TLS support" ON) + OPTION(LUA_SUPPORT "Lua support" ON) +-- +2.7.4 + diff --git a/package/uhttpd/0002-Fix-TCP_FASTOPEN-related-compile-error.patch b/package/uhttpd/0002-Fix-TCP_FASTOPEN-related-compile-error.patch new file mode 100644 index 00000000..fb3ff54a --- /dev/null +++ b/package/uhttpd/0002-Fix-TCP_FASTOPEN-related-compile-error.patch @@ -0,0 +1,30 @@ +From adbab70d3602d77736781be344cfdc5508cb0600 Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Mon, 3 Apr 2017 19:22:30 +0200 +Subject: [PATCH] Fix TCP_FASTOPEN related compile error. + +Signed-off-by: Peter Seiderer +--- + listen.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/listen.c b/listen.c +index 2a54888..4dabe34 100644 +--- a/listen.c ++++ b/listen.c +@@ -96,6 +96,12 @@ static void listener_cb(struct uloop_fd *fd, unsigned int events) + uh_block_listener(l); + } + ++#ifdef linux ++#ifndef TCP_FASTOPEN ++#define TCP_FASTOPEN 23 ++#endif ++#endif ++ + void uh_setup_listeners(void) + { + struct listener *l; +-- +2.11.0 + diff --git a/package/uhttpd/Config.in b/package/uhttpd/Config.in new file mode 100644 index 00000000..8d5d8bee --- /dev/null +++ b/package/uhttpd/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_UHTTPD + bool "uhttpd" + depends on !BR2_STATIC_LIBS # dlopen() + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # json-c + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_LIBUBOX + select BR2_PACKAGE_JSON_C + help + uHTTPd is a tiny single threaded HTTP server with TLS, CGI + and Lua support. It is intended as a drop-in replacement for + the Busybox HTTP daemon. + + https://wiki.openwrt.org/doc/howto/http.uhttpd + +comment "uhttpd needs a toolchain w/ dynamic library" + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on BR2_USE_MMU + depends on BR2_STATIC_LIBS diff --git a/package/uhttpd/uhttpd.hash b/package/uhttpd/uhttpd.hash new file mode 100644 index 00000000..389a0ef6 --- /dev/null +++ b/package/uhttpd/uhttpd.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 5b81ebf9e419c668de4181cce7b9f5fa358cabb2a4a0d1f1a3a24190eeb21f25 uhttpd-a8bf9c00842224edb394e79909053f7628ee6a82-br1.tar.gz +sha256 2a61a8a690e7646a4bfe4261bf77c49f47588db5fc234b3cc66809dcc0cb3985 uhttpd.h diff --git a/package/uhttpd/uhttpd.mk b/package/uhttpd/uhttpd.mk new file mode 100644 index 00000000..cc7649d0 --- /dev/null +++ b/package/uhttpd/uhttpd.mk @@ -0,0 +1,35 @@ +################################################################################ +# +# uhttpd +# +################################################################################ + +UHTTPD_VERSION = a8bf9c00842224edb394e79909053f7628ee6a82 +UHTTPD_SITE = http://git.openwrt.org/project/uhttpd.git +UHTTPD_SITE_METHOD = git +UHTTPD_LICENSE = ISC +UHTTPD_LICENSE_FILES = uhttpd.h +UHTTPD_DEPENDENCIES = libubox json-c + +ifeq ($(BR2_PACKAGE_LUA_5_1),y) +UHTTPD_DEPENDENCIES += lua +UHTTPD_CONF_OPTS += -DLUA_SUPPORT=ON +else +UHTTPD_CONF_OPTS += -DLUA_SUPPORT=OFF +endif + +ifeq ($(BR2_PACKAGE_USTREAM_SSL),y) +UHTTPD_DEPENDENCIES += ustream-ssl +UHTTPD_CONF_OPTS += -DTLS_SUPPORT=ON +else +UHTTPD_CONF_OPTS += -DTLS_SUPPORT=OFF +endif + +ifeq ($(BR2_PACKAGE_UBUS),y) +UHTTPD_DEPENDENCIES += ubus +UHTTPD_CONF_OPTS += -DUBUS_SUPPORT=ON +else +UHTTPD_CONF_OPTS += -DUBUS_SUPPORT=OFF +endif + +$(eval $(cmake-package)) diff --git a/package/uhubctl/Config.in b/package/uhubctl/Config.in new file mode 100644 index 00000000..52b0268a --- /dev/null +++ b/package/uhubctl/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_UHUBCTL + bool "uhubctl" + depends on BR2_TOOLCHAIN_HAS_THREADS # libusb + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb + select BR2_PACKAGE_LIBUSB + help + Control USB power per-port on smart USB hubs. + + https://github.com/mvp/uhubctl + +comment "uhubctl needs a toolchain w/ threads, gcc >= 4.9" + depends on !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 diff --git a/package/uhubctl/uhubctl.hash b/package/uhubctl/uhubctl.hash new file mode 100644 index 00000000..c1370887 --- /dev/null +++ b/package/uhubctl/uhubctl.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 714f733592d3cb6ba8efc84fbc03b1beed2323918ff33aef01cdb956755be7b7 uhubctl-2.3.0.tar.gz +sha256 2d3aa0737e8db9dfd710f9a282b446cb7b15b2b3eecac383f0c45c64d736eea0 LICENSE diff --git a/package/uhubctl/uhubctl.mk b/package/uhubctl/uhubctl.mk new file mode 100644 index 00000000..08efca09 --- /dev/null +++ b/package/uhubctl/uhubctl.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# uhubctl +# +################################################################################ + +UHUBCTL_VERSION = 2.3.0 +UHUBCTL_SITE = $(call github,mvp,uhubctl,v$(UHUBCTL_VERSION)) +UHUBCTL_LICENSE = GPL-2.0 +UHUBCTL_LICENSE_FILES = LICENSE +UHUBCTL_DEPENDENCIES = libusb + +define UHUBCTL_BUILD_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) GIT_VERSION=v$(UHUBCTL_VERSION) -C $(@D) +endef + +define UHUBCTL_INSTALL_TARGET_CMDS + $(TARGET_CONFIGURE_OPTS) DESTDIR=$(TARGET_DIR) \ + $(MAKE) -C $(@D) install +endef + +$(eval $(generic-package)) diff --git a/package/ulogd/0001-ulogd-fix-build-with-musl-libc.patch b/package/ulogd/0001-ulogd-fix-build-with-musl-libc.patch new file mode 100644 index 00000000..af6e1364 --- /dev/null +++ b/package/ulogd/0001-ulogd-fix-build-with-musl-libc.patch @@ -0,0 +1,32 @@ +From 675e762091380590f78ff07a94a25caa459b786b Mon Sep 17 00:00:00 2001 +From: Cameron Norman +Date: Sat, 27 Oct 2018 13:05:45 -0700 +Subject: ulogd: fix build with musl libc + +The attached patch fixes building ulogd2 with musl libc. It is being +used on Void Linux right now. + +Closes: https://bugzilla.netfilter.org/show_bug.cgi?id=1278 +Signed-off-by: Pablo Neira Ayuso +Signed-off-by: Fabrice Fontaine +[Retrrieved from: +https://git.netfilter.org/ulogd2/commit/?id=675e762091380590f78ff07a94a25caa459b786b] +--- + src/ulogd.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/ulogd.c b/src/ulogd.c +index b8bc57c..9cd64e8 100644 +--- a/src/ulogd.c ++++ b/src/ulogd.c +@@ -65,6 +65,7 @@ + #include + #include + #include ++#include + #include + #include + #ifdef DEBUG +-- +cgit v1.2.1 + diff --git a/package/ulogd/Config.in b/package/ulogd/Config.in new file mode 100644 index 00000000..e0e19996 --- /dev/null +++ b/package/ulogd/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_ULOGD + bool "ulogd" + depends on !BR2_STATIC_LIBS + depends on BR2_USE_MMU + select BR2_PACKAGE_LIBMNL + select BR2_PACKAGE_LIBNETFILTER_ACCT + select BR2_PACKAGE_LIBNETFILTER_CONNTRACK + select BR2_PACKAGE_LIBNETFILTER_LOG + select BR2_PACKAGE_LIBNFNETLINK + help + ulogd is a userspace logging daemon for netfilter/iptables + related logging. + + http://www.netfilter.org/projects/ulogd/ + +comment "ulogd needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS + depends on BR2_USE_MMU diff --git a/package/ulogd/ulogd.hash b/package/ulogd/ulogd.hash new file mode 100644 index 00000000..aef69262 --- /dev/null +++ b/package/ulogd/ulogd.hash @@ -0,0 +1,7 @@ +# From ftp://ftp.netfilter.org/pub/ulogd/ulogd-2.0.7.tar.bz2.{md5sum,sha1sum} +md5 2bb2868cf51acbb90c35763c9f995f31 ulogd-2.0.7.tar.bz2 +sha1 f2d90469e2842e2bfbe19c55cf6d56ac107aa4b9 ulogd-2.0.7.tar.bz2 + +# Locally calculated +sha256 990a05494d9c16029ba0a83f3b7294fc05c756546b8d60d1c1572dc25249a92b ulogd-2.0.7.tar.bz2 +sha256 b8a2f73f743dc1a51aff23f1aacbca4b868564db52496fa3c0caba755bfd1eaf COPYING diff --git a/package/ulogd/ulogd.mk b/package/ulogd/ulogd.mk new file mode 100644 index 00000000..1b86c127 --- /dev/null +++ b/package/ulogd/ulogd.mk @@ -0,0 +1,55 @@ +################################################################################ +# +# ulogd +# +################################################################################ + +ULOGD_VERSION = 2.0.7 +ULOGD_SOURCE = ulogd-$(ULOGD_VERSION).tar.bz2 +ULOGD_SITE = http://www.netfilter.org/projects/ulogd/files +ULOGD_CONF_OPTS = --without-dbi +ULOGD_DEPENDENCIES = host-pkgconf \ + libmnl libnetfilter_acct libnetfilter_conntrack libnetfilter_log \ + libnfnetlink +ULOGD_LICENSE = GPL-2.0 +ULOGD_LICENSE_FILES = COPYING + +# DB backends need threads +ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y) +ifeq ($(BR2_PACKAGE_MYSQL),y) +ULOGD_CONF_OPTS += --with-mysql=$(STAGING_DIR)/usr +ULOGD_DEPENDENCIES += mysql +else +ULOGD_CONF_OPTS += --without-mysql +endif +ifeq ($(BR2_PACKAGE_POSTGRESQL),y) +ULOGD_CONF_OPTS += --with-pgsql +ULOGD_DEPENDENCIES += postgresql +else +ULOGD_CONF_OPTS += --without-pgsql +endif +ifeq ($(BR2_PACKAGE_SQLITE),y) +ULOGD_CONF_OPTS += --with-sqlite +ULOGD_DEPENDENCIES += sqlite +else +ULOGD_CONF_OPTS += --without-sqlite +endif +else +ULOGD_CONF_OPTS += --without-mysql --without-pgsql --without-sqlite +endif + +ifeq ($(BR2_PACKAGE_LIBPCAP),y) +ULOGD_CONF_OPTS += --with-pcap +ULOGD_DEPENDENCIES += libpcap +else +ULOGD_CONF_OPTS += --without-pcap +endif + +ifeq ($(BR2_PACKAGE_JANSSON),y) +ULOGD_CONF_OPTS += --with-jansson +ULOGD_DEPENDENCIES += jansson +else +ULOGD_CONF_OPTS += --without-jansson +endif + +$(eval $(autotools-package)) diff --git a/package/umtprd/Config.in b/package/umtprd/Config.in new file mode 100644 index 00000000..24bf1195 --- /dev/null +++ b/package/umtprd/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_UMTPRD + bool "umtprd" + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15 + help + Lightweight USB MTP responder daemon for GNU/Linux + + https://github.com/viveris/uMTP-Responder + +comment "umtprd needs a toolchain w/ threads, headers >= 3.15" + depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15 diff --git a/package/umtprd/umtprd.hash b/package/umtprd/umtprd.hash new file mode 100644 index 00000000..170837d8 --- /dev/null +++ b/package/umtprd/umtprd.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 cce45c7d3df0022fc013c79de21b1f11b1027d090aeb628669f08b0c20d2afdd umtprd-1.3.10.tar.gz +sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 LICENSE diff --git a/package/umtprd/umtprd.mk b/package/umtprd/umtprd.mk new file mode 100644 index 00000000..f1a4e66c --- /dev/null +++ b/package/umtprd/umtprd.mk @@ -0,0 +1,20 @@ +################################################################################ +# +# umtprd +# +################################################################################ + +UMTPRD_VERSION = 1.3.10 +UMTPRD_SITE = https://github.com/viveris/uMTP-Responder/archive +UMTPRD_LICENSE = GPL-3.0+ +UMTPRD_LICENSE_FILES = LICENSE + +define UMTPRD_BUILD_CMDS + $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) +endef + +define UMTPRD_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/umtprd $(TARGET_DIR)/usr/sbin/umtprd +endef + +$(eval $(generic-package)) diff --git a/package/unbound/Config.in b/package/unbound/Config.in new file mode 100644 index 00000000..ae2ebfd9 --- /dev/null +++ b/package/unbound/Config.in @@ -0,0 +1,38 @@ +config BR2_PACKAGE_UNBOUND + bool "unbound" + depends on !BR2_STATIC_LIBS + select BR2_PACKAGE_EXPAT + select BR2_PACKAGE_LIBEVENT + select BR2_PACKAGE_OPENSSL + help + Unbound is a validating, recursive, and caching DNS resolver. + It supports DNSSEC, QNAME minimisation, DNS-over-TLS and + DNSCrypt. + + https://www.unbound.net + +if BR2_PACKAGE_UNBOUND +config BR2_PACKAGE_UNBOUND_DNSCRYPT + bool "enable DNSCrypt" + select BR2_PACKAGE_LIBSODIUM + help + DNSCrypt wraps unmodified DNS queries between a client and + a DNS resolver. Default port used is 443 and like with + normal unencrypted DNS, it uses UDP first and falling back + to TCP if response too large. + + There is also DNS-over-TLS, a TCP only version + of proposed standard for DNS encryption (RFC 7858). + Default port for DNS-over-TLS is 853 and Unbound has + built-in support for it. + + https://tools.ietf.org/html/rfc7858 + + Note: Neither DNSCrypt or DNS-over-TLS encrypt the SNI. + Here is some suggestions how to handle SNI encryption: + + https://tools.ietf.org/html/draft-ietf-tls-sni-encryption-00 +endif + +comment "unbound needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/unbound/S70unbound b/package/unbound/S70unbound new file mode 100644 index 00000000..cb722ce2 --- /dev/null +++ b/package/unbound/S70unbound @@ -0,0 +1,52 @@ +#!/bin/sh + +DAEMON="unbound" +PIDFILE="/var/run/$DAEMON.pid" + +UNBOUND_ARGS="" + +# shellcheck source=/dev/null +[ -r "/etc/default/$DAEMON" ] && . "/etc/default/$DAEMON" + +start() { + printf 'Starting %s: ' "$DAEMON" + start-stop-daemon -S -q -p "$PIDFILE" -x "/usr/sbin/$DAEMON" \ + -- $UNBOUND_ARGS + status=$? + if [ "$status" -eq 0 ]; then + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +stop() { + printf 'Stopping %s: ' "$DAEMON" + start-stop-daemon -K -q -p "$PIDFILE" + status=$? + if [ "$status" -eq 0 ]; then + rm -f "$PIDFILE" + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +restart() { + stop + sleep 1 + start +} + +case "$1" in + start|stop|restart) + "$1";; + reload) + # Restart, since there is no true "reload" feature. + restart;; + *) + echo "Usage: $0 {start|stop|restart|reload}" + exit 1 +esac diff --git a/package/unbound/unbound.hash b/package/unbound/unbound.hash new file mode 100644 index 00000000..ec7e9407 --- /dev/null +++ b/package/unbound/unbound.hash @@ -0,0 +1,5 @@ +# From https://nlnetlabs.nl/downloads/unbound/unbound-1.13.1.tar.gz.sha256 +sha256 8504d97b8fc5bd897345c95d116e0ee0ddf8c8ff99590ab2b4bd13278c9f50b8 unbound-1.13.1.tar.gz + +# Locally calculated +sha256 8eb9a16cbfb8703090bbfa3a2028fd46bb351509a2f90dc1001e51fbe6fd45db LICENSE diff --git a/package/unbound/unbound.mk b/package/unbound/unbound.mk new file mode 100644 index 00000000..140b7d27 --- /dev/null +++ b/package/unbound/unbound.mk @@ -0,0 +1,55 @@ +################################################################################ +# +# unbound +# +################################################################################ + +UNBOUND_VERSION = 1.13.1 +UNBOUND_SITE = https://www.unbound.net/downloads +UNBOUND_DEPENDENCIES = host-pkgconf expat libevent openssl +UNBOUND_LICENSE = BSD-3-Clause +UNBOUND_LICENSE_FILES = LICENSE +UNBOUND_CPE_ID_VENDOR = nlnetlabs +UNBOUND_CONF_OPTS = \ + --disable-rpath \ + --disable-debug \ + --with-conf-file=/etc/unbound/unbound.conf \ + --with-pidfile=/var/run/unbound.pid \ + --with-rootkey-file=/etc/unbound/root.key \ + --enable-tfo-server \ + --with-libexpat=$(STAGING_DIR)/usr \ + --with-ssl=$(STAGING_DIR)/usr + +# uClibc-ng does not have MSG_FASTOPEN +# so TCP Fast Open client mode disabled for it +ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y) +UNBOUND_CONF_OPTS += --disable-tfo-client +else +UNBOUND_CONF_OPTS += --enable-tfo-client +endif + +ifeq ($(BR2_TOOLCHAIN_HAS_THREADS_NPTL),y) +UNBOUND_CONF_OPTS += --with-pthreads +else +UNBOUND_CONF_OPTS += --without-pthreads +endif + +ifeq ($(BR2_GCC_ENABLE_LTO),y) +UNBOUND_CONF_OPTS += --enable-flto +else +UNBOUND_CONF_OPTS += --disable-flto +endif + +ifeq ($(BR2_PACKAGE_UNBOUND_DNSCRYPT),y) +UNBOUND_CONF_OPTS += --enable-dnscrypt +UNBOUND_DEPENDENCIES += libsodium +else +UNBOUND_CONF_OPTS += --disable-dnscrypt +endif + +define UNBOUND_INSTALL_INIT_SYSV + $(INSTALL) -D -m 755 package/unbound/S70unbound \ + $(TARGET_DIR)/etc/init.d/S70unbound +endef + +$(eval $(autotools-package)) diff --git a/package/unclutter-xfixes/Config.in b/package/unclutter-xfixes/Config.in new file mode 100644 index 00000000..852a8cfd --- /dev/null +++ b/package/unclutter-xfixes/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_UNCLUTTER_XFIXES + bool "unclutter-xfixes" + depends on BR2_PACKAGE_XORG7 + select BR2_PACKAGE_LIBEV + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXFIXES + select BR2_PACKAGE_XLIB_LIBXI + help + Remove idle cursor image from screen. + + A rewrite of unclutter using the x11-xfixes extension. + + https://github.com/Airblader/unclutter-xfixes diff --git a/package/unclutter-xfixes/unclutter-xfixes.hash b/package/unclutter-xfixes/unclutter-xfixes.hash new file mode 100644 index 00000000..785825da --- /dev/null +++ b/package/unclutter-xfixes/unclutter-xfixes.hash @@ -0,0 +1,3 @@ +# locally calculated +sha256 35c75ad24be989dd6708db1d9ce9b2a2f814b80638c0633cdb075c6df090ed11 unclutter-xfixes-1.5.tar.gz +sha256 33e94693849b57fdb34987c95fd0076b4aa4b70fcd9a3152313d00b86a3f7bf7 LICENSE diff --git a/package/unclutter-xfixes/unclutter-xfixes.mk b/package/unclutter-xfixes/unclutter-xfixes.mk new file mode 100644 index 00000000..713a84bc --- /dev/null +++ b/package/unclutter-xfixes/unclutter-xfixes.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# unclutter-xfixes +# +################################################################################ + +UNCLUTTER_XFIXES_VERSION = 1.5 +UNCLUTTER_XFIXES_SITE = $(call github,Airblader,unclutter-xfixes,v$(UNCLUTTER_XFIXES_VERSION)) +UNCLUTTER_XFIXES_LICENSE = MIT +UNCLUTTER_XFIXES_LICENSE_FILES = LICENSE +UNCLUTTER_XFIXES_DEPENDENCIES = libev xlib_libX11 xlib_libXfixes xlib_libXi host-pkgconf + +define UNCLUTTER_XFIXES_BUILD_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) \ + $(MAKE) -C $(@D) unclutter CC="$(TARGET_CC)" +endef + +define UNCLUTTER_XFIXES_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/unclutter $(TARGET_DIR)/usr/bin/unclutter +endef + +$(eval $(generic-package)) diff --git a/package/unionfs/Config.in b/package/unionfs/Config.in new file mode 100644 index 00000000..fe03b95f --- /dev/null +++ b/package/unionfs/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_UNIONFS + bool "unionfs (FUSE)" + depends on BR2_TOOLCHAIN_HAS_THREADS # libfuse + depends on BR2_USE_MMU # libfuse + depends on !BR2_STATIC_LIBS # libfuse + select BR2_PACKAGE_LIBFUSE + help + A userspace unionfs implementation. + + https://github.com/rpodgorny/unionfs-fuse + +comment "unionfs needs a toolchain w/ threads, dynamic library" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/unionfs/unionfs.hash b/package/unionfs/unionfs.hash new file mode 100644 index 00000000..7c4a9f4f --- /dev/null +++ b/package/unionfs/unionfs.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 f56a5579d670e18e0667700bc599acbc0b8217ca1f76b2adb3dad7d2953c4049 LICENSE +sha256 c705072a33a18cbc73ffe799331d43410b6deef5d6f2042038f8fd3ab17b6e2e unionfs-2.1.tar.gz diff --git a/package/unionfs/unionfs.mk b/package/unionfs/unionfs.mk new file mode 100644 index 00000000..12cd368f --- /dev/null +++ b/package/unionfs/unionfs.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# unionfs +# +################################################################################ + +UNIONFS_VERSION = 2.1 +UNIONFS_SITE = $(call github,rpodgorny,unionfs-fuse,v$(UNIONFS_VERSION)) +UNIONFS_DEPENDENCIES = libfuse host-pkgconf +UNIONFS_LICENSE = BSD-3-Clause +UNIONFS_LICENSE_FILES = LICENSE + +$(eval $(cmake-package)) diff --git a/package/unixodbc/Config.in b/package/unixodbc/Config.in new file mode 100644 index 00000000..eb0ad9c5 --- /dev/null +++ b/package/unixodbc/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_UNIXODBC + bool "unixodbc" + depends on !BR2_STATIC_LIBS # dlopen() + help + The unixODBC Project goals are to develop and promote + unixODBC to be the definitive standard for ODBC on non MS + Windows platforms. + + http://www.unixodbc.org + +comment "unixodbc needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/unixodbc/unixodbc.hash b/package/unixodbc/unixodbc.hash new file mode 100644 index 00000000..ba094f76 --- /dev/null +++ b/package/unixodbc/unixodbc.hash @@ -0,0 +1,6 @@ +# From ftp://ftp.unixodbc.org/pub/unixODBC/unixODBC-2.3.9.tar.gz.md5 +md5 06f76e034bb41df5233554abe961a16f unixODBC-2.3.9.tar.gz +# Locally computed +sha256 52833eac3d681c8b0c9a5a65f2ebd745b3a964f208fc748f977e44015a31b207 unixODBC-2.3.9.tar.gz +sha256 a6b9aa1e9bfade121164c06fd975e9b913a8e38bf33d25ff967dfa3ed07d12f8 COPYING +sha256 1e594f4c7fd6d099eca4bd1340b39d871ce0298331d8ebd4b68935548ee45cf4 exe/COPYING diff --git a/package/unixodbc/unixodbc.mk b/package/unixodbc/unixodbc.mk new file mode 100644 index 00000000..cdc4e69a --- /dev/null +++ b/package/unixodbc/unixodbc.mk @@ -0,0 +1,50 @@ +################################################################################ +# +# unixodbc +# +################################################################################ + +UNIXODBC_VERSION = 2.3.9 +UNIXODBC_SOURCE = unixODBC-$(UNIXODBC_VERSION).tar.gz +UNIXODBC_SITE = ftp://ftp.unixodbc.org/pub/unixODBC +UNIXODBC_INSTALL_STAGING = YES +UNIXODBC_LICENSE = LGPL-2.1+ (library), GPL-2.0+ (programs) +UNIXODBC_LICENSE_FILES = COPYING exe/COPYING + +UNIXODBC_CONF_OPTS = --enable-drivers --enable-driver-conf + +ifeq ($(BR2_PACKAGE_LIBEDIT),y) +UNIXODBC_CONF_OPTS += --enable-editline +UNIXODBC_DEPENDENCIES += libedit +else +UNIXODBC_CONF_OPTS += --disable-editline +endif + +ifeq ($(BR2_PACKAGE_LIBICONV),y) +UNIXODBC_CONF_OPTS += --enable-iconv +UNIXODBC_DEPENDENCIES += libiconv +else +UNIXODBC_CONF_OPTS += --disable-iconv +endif + +ifeq ($(BR2_PACKAGE_LIBTOOL),y) +UNIXODBC_CONF_OPTS += --without-included-ltdl +UNIXODBC_DEPENDENCIES += libtool +else +UNIXODBC_CONF_OPTS += --with-included-ltdl +endif + +ifeq ($(BR2_PACKAGE_READLINE),y) +UNIXODBC_CONF_OPTS += --enable-readline +UNIXODBC_DEPENDENCIES += readline +else +UNIXODBC_CONF_OPTS += --disable-readline +endif + +ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y) +UNIXODBC_CONF_OPTS += --enable-threads +else +UNIXODBC_CONF_OPTS += --disable-threads +endif + +$(eval $(autotools-package)) diff --git a/package/unrar/Config.in b/package/unrar/Config.in new file mode 100644 index 00000000..29696c35 --- /dev/null +++ b/package/unrar/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_UNRAR + bool "unrar" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_WCHAR + help + RAR file uncompressor. + + http://www.rarlab.com/rar_add.htm + +comment "unrar needs a toolchain w/ C++, wchar, threads" + depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP \ + || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/unrar/unrar.hash b/package/unrar/unrar.hash new file mode 100644 index 00000000..7900c44d --- /dev/null +++ b/package/unrar/unrar.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 3d010d14223e0c7a385ed740e8f046edcbe885e5c22c5ad5733d009596865300 unrarsrc-5.9.4.tar.gz +sha256 6ecc1687808b7d66b24f874755abfed7464d9751ed0001cd4e8e5d9bf397ff8a license.txt diff --git a/package/unrar/unrar.mk b/package/unrar/unrar.mk new file mode 100644 index 00000000..ab8d9228 --- /dev/null +++ b/package/unrar/unrar.mk @@ -0,0 +1,23 @@ +################################################################################ +# +# unrar +# +################################################################################ + +UNRAR_VERSION = 5.9.4 +UNRAR_SOURCE = unrarsrc-$(UNRAR_VERSION).tar.gz +UNRAR_SITE = https://www.rarlab.com/rar +UNRAR_LICENSE = unrar +UNRAR_LICENSE_FILES = license.txt + +define UNRAR_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) CXX="$(TARGET_CXX)" STRIP="/bin/true" \ + CXXFLAGS="$(TARGET_CXXFLAGS) -pthread" \ + LDFLAGS="$(TARGET_LDFLAGS) -pthread" -C $(@D) +endef + +define UNRAR_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR)/usr install +endef + +$(eval $(generic-package)) diff --git a/package/unscd/Config.in b/package/unscd/Config.in new file mode 100644 index 00000000..88f10621 --- /dev/null +++ b/package/unscd/Config.in @@ -0,0 +1,27 @@ +config BR2_PACKAGE_UNSCD + bool "unscd" + depends on !BR2_RISCV_32 + depends on BR2_TOOLCHAIN_USES_GLIBC + help + Micro Name Service Caching Daemon + + A daemon which handles passwd, group and host lookups for + running programs and caches the results for the next query. + You only need this package if you are using slow Name Services + like LDAP, NIS or NIS+. + + This particular NSCD is a complete rewrite of the GNU glibc + nscd which is a single threaded server process which offloads + all NSS lookups to worker children; cache hits are handled by + the parent, and only cache misses start worker children, + making the parent immune to resource leaks, hangs, and crashes + in NSS libraries. + + It should mostly be a drop-in replacement for existing + installs using nscd. + + http://busybox.net/~vda/unscd + +comment "unscd needs a glibc toolchain" + depends on !BR2_RISCV_32 + depends on !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/unscd/S46unscd b/package/unscd/S46unscd new file mode 100644 index 00000000..6a51eec1 --- /dev/null +++ b/package/unscd/S46unscd @@ -0,0 +1,25 @@ +#!/bin/sh + +NAME="nscd" +DAEMON="/usr/sbin/${NAME}" +PID_F="/var/run/nscd/${NAME}.pid" + +case "$1" in +start) + printf "Starting ${NAME}: " + start-stop-daemon -S -p ${PID_F} -x ${DAEMON} + [ $? -eq 0 ] && echo "OK" || echo "FAIL" + ;; +stop) + printf "Stopping ${NAME}: " + start-stop-daemon -K -p ${PID_F} + [ $? -eq 0 ] && echo "OK" || echo "FAIL" + ;; +restart|reload) + $0 stop + $0 start + ;; +*) + echo "Usage: $0 {start|stop|restart|reload}" + exit 1 +esac diff --git a/package/unscd/nscd.conf b/package/unscd/nscd.conf new file mode 100644 index 00000000..3eb08ab6 --- /dev/null +++ b/package/unscd/nscd.conf @@ -0,0 +1,33 @@ +# /etc/nscd.conf +# +# An example Name Service Cache config file. This file is needed by nscd. +# +server-user unscd +debug-level 0 + +enable-cache passwd yes +positive-time-to-live passwd 600 +negative-time-to-live passwd 20 +suggested-size passwd 1001 +check-files passwd yes + +enable-cache group yes +positive-time-to-live group 3600 +negative-time-to-live group 60 +suggested-size group 1001 +check-files group yes + +# hosts caching is broken with gethostby* calls, hence is now disabled +# by default. Specifically, the caching does not obey DNS TTLs, and +# thus could lead to problems if the positive-time-to-live is +# significantly larger than the actual TTL. +# +# You should really use a caching nameserver instead of nscd for this +# sort of request. However, you can easily re-enable this by default. +enable-cache hosts no +positive-time-to-live hosts 3600 +negative-time-to-live hosts 20 +suggested-size hosts 1001 +check-files hosts yes + +# unscd does not support services caching diff --git a/package/unscd/unscd.hash b/package/unscd/unscd.hash new file mode 100644 index 00000000..9ed698fd --- /dev/null +++ b/package/unscd/unscd.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 90e12c71732474cac4d055bf9d104e599178b4e1ecb6d3b8c556eaa11f8f6447 nscd-0.54.c diff --git a/package/unscd/unscd.mk b/package/unscd/unscd.mk new file mode 100644 index 00000000..94b46460 --- /dev/null +++ b/package/unscd/unscd.mk @@ -0,0 +1,36 @@ +################################################################################ +# +# unscd +# +################################################################################ + +UNSCD_VERSION = 0.54 +UNSCD_SOURCE = nscd-$(UNSCD_VERSION).c +UNSCD_SITE = http://busybox.net/~vda/unscd +UNSCD_LICENSE = GPL-2.0 +UNSCD_LICENSE_FILES = $(UNSCD_SOURCE) + +define UNSCD_EXTRACT_CMDS + cp $(UNSCD_DL_DIR)/$($(PKG)_SOURCE) $(@D)/ +endef + +define UNSCD_BUILD_CMDS + cd $(@D); \ + $(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS) -o nscd $(UNSCD_SOURCE) +endef + +define UNSCD_INSTALL_TARGET_CMDS + $(INSTALL) -m 755 -D $(@D)/nscd $(TARGET_DIR)/usr/sbin/nscd + $(INSTALL) -m 600 -D package/unscd/nscd.conf $(TARGET_DIR)/etc/nscd.conf +endef + +define UNSCD_INSTALL_INIT_SYSV + $(INSTALL) -m 755 -D package/unscd/S46unscd \ + $(TARGET_DIR)/etc/init.d/S46unscd +endef + +define UNSCD_USERS + unscd -1 unscd -1 * - - - unscd user +endef + +$(eval $(generic-package)) diff --git a/package/unzip/0001-Add-a-CMakeFile.txt-to-ease-cross-compilation.patch b/package/unzip/0001-Add-a-CMakeFile.txt-to-ease-cross-compilation.patch new file mode 100644 index 00000000..cbc58e48 --- /dev/null +++ b/package/unzip/0001-Add-a-CMakeFile.txt-to-ease-cross-compilation.patch @@ -0,0 +1,53 @@ +From 992a497e9c5c421d3931e02a01e9d7c159f27135 Mon Sep 17 00:00:00 2001 +From: Luca Ceresoli +Date: Thu, 26 Nov 2015 12:49:10 +0100 +Subject: [PATCH] Add a CMakeFile.txt to ease cross-compilation + +Info-ZIP's UnZip 6.0 has a complex, hand-crafted Makefile with a +companion configure script which try to support an extremely wide +range of UNIX-like operating systems. The result is an overly complex +mass of code that does not support cross-compilation in several ways. + +Zip 3.0 has a similar build system, and has as many as 6 patches in +Buildroot to cross-compile [0]. UnZip fails at building even with +these patches adapted and a few more on top of them. + +Instead of tweaking and fixing a huge and complex build system, skip +it entirely and add a pretty simple CMakeLists.txt that cross-compiles +smoothly using CMake. It also preserves all of the Buildroot-provided +build options and flags as the original Makefile does. + +[0] http://git.buildroot.net/buildroot/tree/package/infozip?id=2015.11-rc3 + +Signed-off-by: Luca Ceresoli +--- + CMakeLists.txt | 17 +++++++++++++++++ + 1 file changed, 17 insertions(+) + create mode 100644 CMakeLists.txt + +diff --git a/CMakeLists.txt b/CMakeLists.txt +new file mode 100644 +index 0000000..27951b4 +--- /dev/null ++++ b/CMakeLists.txt +@@ -0,0 +1,17 @@ ++cmake_minimum_required(VERSION 2.8) ++INCLUDE(CheckFunctionExists) ++ ++project(unzip C) ++ ++CHECK_FUNCTION_EXISTS(lchmod HAVE_LCHMOD) ++if(NOT HAVE_LCHMOD) ++add_definitions("-DNO_LCHMOD") ++endif() ++ ++set(UNZIP_SOURCES unzip.c crc32.c crypt.c envargs.c explode.c ++ extract.c fileio.c globals.c inflate.c list.c match.c process.c ++ ttyio.c ubz2err.c unreduce.c unshrink.c zipinfo.c unix/unix.c) ++ ++include_directories(.) ++add_executable(unzip ${UNZIP_SOURCES}) ++install(TARGETS unzip DESTINATION bin) +-- +1.9.1 + diff --git a/package/unzip/Config.in b/package/unzip/Config.in new file mode 100644 index 00000000..da6902e4 --- /dev/null +++ b/package/unzip/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_UNZIP + bool "unzip" + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + help + UnZip is an extraction utility for archives compressed in + .zip format (also called "zipfiles"). Although highly + compatible both with PKWARE's PKZIP and PKUNZIP utilities + for MS-DOS and with Info-ZIP's own Zip program, our primary + objectives have been portability and non-MSDOS + functionality. + + http://www.info-zip.org/UnZip.html diff --git a/package/unzip/unzip.hash b/package/unzip/unzip.hash new file mode 100644 index 00000000..8b3f2755 --- /dev/null +++ b/package/unzip/unzip.hash @@ -0,0 +1,6 @@ +# From https://snapshot.debian.org/archive/debian/20210110T204103Z/pool/main/u/unzip/unzip_6.0-26.dsc +sha256 036d96991646d0449ed0aa952e4fbe21b476ce994abc276e49d30e686708bd37 unzip_6.0.orig.tar.gz +sha256 88cb7c0f1fd13252b662dfd224b64b352f9e75cd86389557fcb23fa6d2638599 unzip_6.0-26.debian.tar.xz + +# Locally computed: +sha256 7469b81d5d29ac4fd670f7c86ba0cb9fa34f137a2d4d5198437d92ddf918984b LICENSE diff --git a/package/unzip/unzip.mk b/package/unzip/unzip.mk new file mode 100644 index 00000000..e8c9366a --- /dev/null +++ b/package/unzip/unzip.mk @@ -0,0 +1,29 @@ +################################################################################ +# +# unzip +# +################################################################################ + +UNZIP_VERSION = 6.0 +UNZIP_SOURCE = unzip_$(UNZIP_VERSION).orig.tar.gz +UNZIP_PATCH = unzip_$(UNZIP_VERSION)-26.debian.tar.xz +UNZIP_SITE = https://snapshot.debian.org/archive/debian/20210110T204103Z/pool/main/u/unzip +UNZIP_LICENSE = Info-ZIP +UNZIP_LICENSE_FILES = LICENSE +UNZIP_CPE_ID_VENDOR = unzip_project + +# unzip_$(UNZIP_VERSION)-26.debian.tar.xz has patches to fix: +UNZIP_IGNORE_CVES = \ + CVE-2014-8139 \ + CVE-2014-8140 \ + CVE-2014-8141 \ + CVE-2014-9636 \ + CVE-2014-9913 \ + CVE-2015-7696 \ + CVE-2015-7697 \ + CVE-2016-9844 \ + CVE-2018-18384 \ + CVE-2018-1000035 \ + CVE-2019-13232 + +$(eval $(cmake-package)) diff --git a/package/upmpdcli/Config.in b/package/upmpdcli/Config.in new file mode 100644 index 00000000..74eb7688 --- /dev/null +++ b/package/upmpdcli/Config.in @@ -0,0 +1,22 @@ +config BR2_PACKAGE_UPMPDCLI + bool "upmpdcli" + depends on BR2_USE_MMU # fork() + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C++11, libupnpp + select BR2_PACKAGE_JSONCPP + select BR2_PACKAGE_LIBMICROHTTPD + select BR2_PACKAGE_LIBMPDCLIENT + select BR2_PACKAGE_LIBUPNPP + help + upmpdcli is a UPnP Media Renderer front-end for MPD, the Music + Player Daemon. It supports UPnP gapless track transitions and + the OpenHome ohMedia services. + + http://www.lesbonscomptes.com/upmpdcli/ + +comment "upmpdcli needs a toolchain w/ C++, NPTL, gcc >= 4.9" + depends on BR2_USE_MMU + depends on !BR2_INSTALL_LIBSTDCPP || \ + !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 diff --git a/package/upmpdcli/S99upmpdcli b/package/upmpdcli/S99upmpdcli new file mode 100644 index 00000000..c1586eb0 --- /dev/null +++ b/package/upmpdcli/S99upmpdcli @@ -0,0 +1,36 @@ +#!/bin/sh + +NAME=upmpdcli +CONFFILE=/etc/$NAME.conf +PIDFILE=/var/run/$NAME.pid +DAEMON_ARGS="-D -c $CONFFILE" + +start() { + printf "Starting $NAME: " + start-stop-daemon --start --quiet --background --exec /usr/bin/upmpdcli \ + -- $DAEMON_ARGS \ + && echo "OK" || echo "FAIL" +} + +stop() { + printf "Stopping $NAME: " + start-stop-daemon --stop --quiet --pidfile $PIDFILE \ + && echo "OK" || echo "FAIL" +} + +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart) + stop + sleep 1 + start + ;; + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac diff --git a/package/upmpdcli/upmpdcli.hash b/package/upmpdcli/upmpdcli.hash new file mode 100644 index 00000000..fe8999d4 --- /dev/null +++ b/package/upmpdcli/upmpdcli.hash @@ -0,0 +1,5 @@ +# From http://www.lesbonscomptes.com/upmpdcli/downloads/upmpdcli-1.5.8.tar.gz.sha256: +sha256 802a2ab795841fbb9bfff5fd7951881022f5414ed893a1db704801b999e658a8 upmpdcli-1.5.8.tar.gz + +# Hash for license file: +sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING diff --git a/package/upmpdcli/upmpdcli.mk b/package/upmpdcli/upmpdcli.mk new file mode 100644 index 00000000..3dc79f8f --- /dev/null +++ b/package/upmpdcli/upmpdcli.mk @@ -0,0 +1,38 @@ +################################################################################ +# +# upmpdcli +# +################################################################################ + +UPMPDCLI_VERSION = 1.5.8 +UPMPDCLI_SITE = http://www.lesbonscomptes.com/upmpdcli/downloads +UPMPDCLI_LICENSE = LGPL-2.1+ +UPMPDCLI_LICENSE_FILES = COPYING +UPMPDCLI_DEPENDENCIES = host-pkgconf libmpdclient libupnpp libmicrohttpd jsoncpp + +# Disable spotify plugin which requires dlfcn.h +ifeq ($(BR2_STATIC_LIBS),y) +UPMPDCLI_CONF_OPTS = --disable-spotify +endif + +# Upmpdcli only runs if user upmpdcli exists +define UPMPDCLI_USERS + upmpdcli -1 upmpdcli -1 * - - audio Upmpdcli MPD UPnP Renderer Front-End +endef + +define UPMPDCLI_INSTALL_INIT_SYSV + $(INSTALL) -D -m 0755 package/upmpdcli/S99upmpdcli $(TARGET_DIR)/etc/init.d/S99upmpdcli +endef + +define UPMPDCLI_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 644 $(@D)/systemd/upmpdcli.service \ + $(TARGET_DIR)/usr/lib/systemd/system/upmpdcli.service +endef + +define UPMPDCLI_INSTALL_CONF_FILE + $(INSTALL) -D -m 0755 $(@D)/src/upmpdcli.conf-dist $(TARGET_DIR)/etc/upmpdcli.conf +endef + +UPMPDCLI_POST_INSTALL_TARGET_HOOKS += UPMPDCLI_INSTALL_CONF_FILE + +$(eval $(autotools-package)) diff --git a/package/upower/Config.in b/package/upower/Config.in new file mode 100644 index 00000000..612a2b74 --- /dev/null +++ b/package/upower/Config.in @@ -0,0 +1,29 @@ +config BR2_PACKAGE_UPOWER + bool "upower" + depends on BR2_PACKAGE_HAS_UDEV + depends on BR2_TOOLCHAIN_HAS_THREADS # libgudev, libusb + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb + depends on BR2_USE_MMU # libgudev + depends on BR2_USE_WCHAR # libgudev + select BR2_PACKAGE_LIBGUDEV + select BR2_PACKAGE_LIBUSB + help + UPower is an abstraction for enumerating power devices, + listening to device events and querying history and + statistics. Any application or service on the system can + access the org.freedesktop.UPower service via the system + message bus. + + Note: upowerd require CONFIG_TIMER_STATS enabled in the + Linux kernel. + + https://upower.freedesktop.org/ + +comment "upower needs udev /dev management" + depends on BR2_USE_MMU + depends on !BR2_PACKAGE_HAS_UDEV + +comment "upower needs a toolchain w/ threads, wchar, gcc >= 4.9" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 diff --git a/package/upower/upower.hash b/package/upower/upower.hash new file mode 100644 index 00000000..e69ad20c --- /dev/null +++ b/package/upower/upower.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 64b5ffbfccd5bdb15d925777979a4dbee1a957f9eaeb158dc76175267eddbdef upower-0.99.11.tar.xz +sha256 c1753877db41d798d63369a825ad9225bbeb5e10a407be5fcd8de96182f1c50d COPYING diff --git a/package/upower/upower.mk b/package/upower/upower.mk new file mode 100644 index 00000000..8989ca9f --- /dev/null +++ b/package/upower/upower.mk @@ -0,0 +1,25 @@ +################################################################################ +# +# upower +# +################################################################################ + +UPOWER_VERSION = 0.99.11 +UPOWER_SOURCE = upower-$(UPOWER_VERSION).tar.xz +UPOWER_SITE = https://upower.freedesktop.org/releases +UPOWER_LICENSE = GPL-2.0+ +UPOWER_LICENSE_FILES = COPYING + +# libupower-glib.so +UPOWER_INSTALL_STAGING = YES + +UPOWER_DEPENDENCIES = \ + $(TARGET_NLS_DEPENDENCIES) \ + host-pkgconf \ + libgudev \ + libusb \ + udev + +UPOWER_CONF_OPTS = --disable-man-pages --disable-tests + +$(eval $(autotools-package)) diff --git a/package/upx/0001-Check-DT_REL-DT_RELA-DT_RELSZ-DT_RELASZ.patch b/package/upx/0001-Check-DT_REL-DT_RELA-DT_RELSZ-DT_RELASZ.patch new file mode 100644 index 00000000..6fae9cac --- /dev/null +++ b/package/upx/0001-Check-DT_REL-DT_RELA-DT_RELSZ-DT_RELASZ.patch @@ -0,0 +1,80 @@ +From 3781df9da23840e596d5e9e8493f22666802fe6c Mon Sep 17 00:00:00 2001 +From: John Reiser +Date: Fri, 11 Dec 2020 13:38:18 -0800 +Subject: [PATCH] Check DT_REL/DT_RELA, DT_RELSZ/DT_RELASZ + +https://github.com/upx/upx/issues/421 + modified: p_lx_elf.cpp + +[Retrieved from: +https://github.com/upx/upx/commit/3781df9da23840e596d5e9e8493f22666802fe6c] +Signed-off-by: Fabrice Fontaine +--- + src/p_lx_elf.cpp | 34 +++++++++++++++++++++++++++++----- + 1 file changed, 29 insertions(+), 5 deletions(-) + +diff --git a/src/p_lx_elf.cpp b/src/p_lx_elf.cpp +index 182db192f..3a4101cf7 100644 +--- a/src/p_lx_elf.cpp ++++ b/src/p_lx_elf.cpp +@@ -2222,8 +2222,20 @@ bool PackLinuxElf32::canPack() + int z_rsz = dt_table[Elf32_Dyn::DT_RELSZ]; + if (z_rel && z_rsz) { + unsigned rel_off = get_te32(&dynseg[-1+ z_rel].d_val); ++ if ((unsigned)file_size <= rel_off) { ++ char msg[70]; snprintf(msg, sizeof(msg), ++ "bad Elf32_Dynamic[DT_REL] %#x\n", ++ rel_off); ++ throwCantPack(msg); ++ } + Elf32_Rel *rp = (Elf32_Rel *)&file_image[rel_off]; + unsigned relsz = get_te32(&dynseg[-1+ z_rsz].d_val); ++ if ((unsigned)file_size <= relsz) { ++ char msg[70]; snprintf(msg, sizeof(msg), ++ "bad Elf32_Dynamic[DT_RELSZ] %#x\n", ++ relsz); ++ throwCantPack(msg); ++ } + Elf32_Rel *last = (Elf32_Rel *)(relsz + (char *)rp); + for (; rp < last; ++rp) { + unsigned r_va = get_te32(&rp->r_offset); +@@ -2562,14 +2574,26 @@ PackLinuxElf64::canPack() + int z_rel = dt_table[Elf64_Dyn::DT_RELA]; + int z_rsz = dt_table[Elf64_Dyn::DT_RELASZ]; + if (z_rel && z_rsz) { +- unsigned rel_off = get_te64(&dynseg[-1+ z_rel].d_val); ++ upx_uint64_t rel_off = get_te64(&dynseg[-1+ z_rel].d_val); ++ if ((u64_t)file_size <= rel_off) { ++ char msg[70]; snprintf(msg, sizeof(msg), ++ "bad Elf64_Dynamic[DT_RELA] %#llx\n", ++ rel_off); ++ throwCantPack(msg); ++ } + Elf64_Rela *rp = (Elf64_Rela *)&file_image[rel_off]; +- unsigned relsz = get_te64(&dynseg[-1+ z_rsz].d_val); ++ upx_uint64_t relsz = get_te64(&dynseg[-1+ z_rsz].d_val); ++ if ((u64_t)file_size <= relsz) { ++ char msg[70]; snprintf(msg, sizeof(msg), ++ "bad Elf64_Dynamic[DT_RELASZ] %#llx\n", ++ relsz); ++ throwCantPack(msg); ++ } + Elf64_Rela *last = (Elf64_Rela *)(relsz + (char *)rp); + for (; rp < last; ++rp) { +- unsigned r_va = get_te64(&rp->r_offset); ++ upx_uint64_t r_va = get_te64(&rp->r_offset); + if (r_va == user_init_ava) { // found the Elf64_Rela +- unsigned r_info = get_te64(&rp->r_info); ++ upx_uint64_t r_info = get_te64(&rp->r_info); + unsigned r_type = ELF64_R_TYPE(r_info); + if (Elf64_Ehdr::EM_AARCH64 == e_machine + && R_AARCH64_RELATIVE == r_type) { +@@ -2581,7 +2605,7 @@ PackLinuxElf64::canPack() + } + else { + char msg[50]; snprintf(msg, sizeof(msg), +- "bad relocation %#x DT_INIT_ARRAY[0]", ++ "bad relocation %#llx DT_INIT_ARRAY[0]", + r_info); + throwCantPack(msg); + } diff --git a/package/upx/upx.hash b/package/upx/upx.hash new file mode 100644 index 00000000..7f3698ca --- /dev/null +++ b/package/upx/upx.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 47774df5c958f2868ef550fb258b97c73272cb1f44fe776b798e393465993714 upx-3.96-src.tar.xz +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/upx/upx.mk b/package/upx/upx.mk new file mode 100644 index 00000000..e693a70d --- /dev/null +++ b/package/upx/upx.mk @@ -0,0 +1,31 @@ +################################################################################ +# +# upx +# +################################################################################ + +UPX_VERSION = 3.96 +UPX_SITE = https://github.com/upx/upx/releases/download/v$(UPX_VERSION) +UPX_SOURCE = upx-$(UPX_VERSION)-src.tar.xz +UPX_LICENSE = GPL-2.0+ +UPX_LICENSE_FILES = COPYING +UPX_CPE_ID_VENDOR = upx_project + +# 0001-Check-DT_REL-DT_RELA-DT_RELSZ-DT_RELASZ.patch +UPX_IGNORE_CVES += CVE-2021-20285 + +HOST_UPX_DEPENDENCIES = host-ucl host-zlib + +# We need to specify all, otherwise the default target only prints a message +# stating to "please choose a target for 'make'"... :-( +define HOST_UPX_BUILD_CMDS + $(HOST_MAKE_ENV) $(HOST_CONFIGURE_OPTS) $(MAKE) \ + UPX_UCLDIR=$(HOST_DIR) CXXFLAGS_WERROR= -C $(@D) all +endef + +# UPX has no install procedure, so install it manually. +define HOST_UPX_INSTALL_CMDS + $(INSTALL) -D -m 0755 $(@D)/src/upx.out $(HOST_DIR)/bin/upx +endef + +$(eval $(host-generic-package)) diff --git a/package/urandom-scripts/Config.in b/package/urandom-scripts/Config.in new file mode 100644 index 00000000..987e442e --- /dev/null +++ b/package/urandom-scripts/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_URANDOM_SCRIPTS + bool "urandom-initscripts" + default y if BR2_PACKAGE_INITSCRIPTS + depends on !BR2_PACKAGE_SYSTEMD + help + Initscript to preserve the random seed between reboots. + + WARNING: this is a poor fit to try and get high-quality + entropy at boot. There are better ways, like haveged, or + rng-tools. diff --git a/package/urandom-scripts/S20urandom b/package/urandom-scripts/S20urandom new file mode 100644 index 00000000..e4fd1257 --- /dev/null +++ b/package/urandom-scripts/S20urandom @@ -0,0 +1,74 @@ +#! /bin/sh +# +# Preserve the random seed between reboots. See urandom(4). +# + +# Quietly do nothing if /dev/urandom does not exist +[ -c /dev/urandom ] || exit 0 + +URANDOM_SEED="/var/lib/random-seed" + +# shellcheck source=/dev/null +[ -r "/etc/default/urandom" ] && . "/etc/default/urandom" + +if pool_bits=$(cat /proc/sys/kernel/random/poolsize 2> /dev/null); then + pool_size=$((pool_bits/8)) +else + pool_size=512 +fi + +check_file_size() { + [ -f "$URANDOM_SEED" ] || return 1 + # Try to read two blocks but exactly one will be read if the file has + # the correct size. + size=$(dd if="$URANDOM_SEED" bs="$pool_size" count=2 2> /dev/null | wc -c) + test "$size" -eq "$pool_size" +} + +init_rng() { + if check_file_size; then + printf 'Initializing random number generator: ' + dd if="$URANDOM_SEED" bs="$pool_size" of=/dev/urandom count=1 2> /dev/null + status=$? + if [ "$status" -eq 0 ]; then + echo "OK" + else + echo "FAIL" + fi + return "$status" + fi +} + +save_random_seed() { + printf 'Saving random seed: ' + if touch "$URANDOM_SEED" 2> /dev/null; then + old_umask=$(umask) + umask 077 + dd if=/dev/urandom of="$URANDOM_SEED" bs="$pool_size" count=1 2> /dev/null + status=$? + umask "$old_umask" + if [ "$status" -eq 0 ]; then + echo "OK" + else + echo "FAIL" + fi + else + status=$? + echo "SKIP (read-only file system detected)" + fi + return "$status" +} + +case "$1" in + start|restart|reload) + # Carry a random seed from start-up to start-up + # Load and then save the whole entropy pool + init_rng && save_random_seed;; + stop) + # Carry a random seed from shut-down to start-up + # Save the whole entropy pool + save_random_seed;; + *) + echo "Usage: $0 {start|stop|restart|reload}" + exit 1 +esac diff --git a/package/urandom-scripts/urandom-scripts.mk b/package/urandom-scripts/urandom-scripts.mk new file mode 100644 index 00000000..2c09728c --- /dev/null +++ b/package/urandom-scripts/urandom-scripts.mk @@ -0,0 +1,12 @@ +################################################################################ +# +# urandom-scripts +# +################################################################################ + +define URANDOM_SCRIPTS_INSTALL_INIT_SYSV + $(INSTALL) -D -m 0755 $(URANDOM_SCRIPTS_PKGDIR)/S20urandom \ + $(TARGET_DIR)/etc/init.d/S20urandom +endef + +$(eval $(generic-package)) diff --git a/package/uredir/Config.in b/package/uredir/Config.in new file mode 100644 index 00000000..99206cfe --- /dev/null +++ b/package/uredir/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_UREDIR + bool "uredir" + select BR2_PACKAGE_LIBUEV + help + A small Linux daemon to redirect UDP connections. It can be + used to forward connections on small and embedded systems that + do not have (or want to use) iptables. + + https://github.com/troglobit/uredir diff --git a/package/uredir/uredir.hash b/package/uredir/uredir.hash new file mode 100644 index 00000000..00c816c2 --- /dev/null +++ b/package/uredir/uredir.hash @@ -0,0 +1,4 @@ +# From https://github.com/troglobit/uredir/releases/download/v3.3/uredir-3.3.tar.gz.md5 +md5 a42ee27e84de2e08e35ee733508bb6ea uredir-3.3.tar.gz +# License files +sha256 e4b8fd3375ce44e5e03be199724a8785510ea5fa58ed92a7a34fd0ccbd35db10 LICENSE diff --git a/package/uredir/uredir.mk b/package/uredir/uredir.mk new file mode 100644 index 00000000..22ffaa74 --- /dev/null +++ b/package/uredir/uredir.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# uredir +# +################################################################################ + +UREDIR_VERSION = 3.3 +UREDIR_SITE = https://github.com/troglobit/uredir/releases/download/v$(UREDIR_VERSION) +UREDIR_LICENSE = ISC +UREDIR_LICENSE_FILES = LICENSE +UREDIR_DEPENDENCIES = host-pkgconf libuev + +$(eval $(autotools-package)) diff --git a/package/urg/0001-select-h.patch b/package/urg/0001-select-h.patch new file mode 100644 index 00000000..1d09bb57 --- /dev/null +++ b/package/urg/0001-select-h.patch @@ -0,0 +1,39 @@ +From 08c7ebec7c58fbc9c1cc0542863b34119c75c91f Mon Sep 17 00:00:00 2001 +From: Samuel Martin +Date: Thu, 15 Sep 2016 06:19:57 +0200 +Subject: [PATCH] Serial driver: add missing header to C and C++ serial driver + +Fixes: + http://autobuild.buildroot.net/results/cd7/cd76699188d2ee99b5f2d32b6a797de0d832a192/ + +Signed-off-by: Samuel Martin +--- + src/c/connection/serial_ctrl_lin.c | 1 + + src/cpp/connection/SerialDevice_lin.cpp | 1 + + 2 files changed, 2 insertions(+) + +Index: b/src/c/connection/serial_ctrl_lin.c +=================================================================== +--- a/src/c/connection/serial_ctrl_lin.c ++++ b/src/c/connection/serial_ctrl_lin.c +@@ -18,6 +18,7 @@ + #include + #include + ++#include + //#include + + enum { +Index: b/src/cpp/connection/SerialDevice_lin.cpp +=================================================================== +--- a/src/cpp/connection/SerialDevice_lin.cpp ++++ b/src/cpp/connection/SerialDevice_lin.cpp +@@ -13,7 +13,7 @@ + #include + #include + #include +- ++#include + + class RawSerialDevice + { diff --git a/package/urg/0002-urg-gcc6-fix-narrowing-conversion.patch b/package/urg/0002-urg-gcc6-fix-narrowing-conversion.patch new file mode 100644 index 00000000..e3db8980 --- /dev/null +++ b/package/urg/0002-urg-gcc6-fix-narrowing-conversion.patch @@ -0,0 +1,99 @@ +urg: fix 'narrowing conversion' with gcc6 + +Fixes: + http://autobuild.buildroot.net/results/d0c/d0cd11163753db69a14c02e941dbda40e5f98bba/ + +Signed-off-by: Samuel Martin + +--- a/src/cpp/urg/ScipHandler.cpp 2016-09-11 16:11:16.083995214 +0200 ++++ b/src/cpp/urg/ScipHandler.cpp 2016-09-11 16:11:24.380832543 +0200 +@@ -120,7 +120,7 @@ struct ScipHandler::pImpl + + // QT ‚Ì”­�s + int return_code = -1; +- char qt_expected_response[] = { 0, -1 }; ++ char qt_expected_response[] = { 0, (char)-1 }; + // return_code ‚ðŽg‚¢‚½‚¢‚½‚ß�AsetLaserOutput() ‚ð—p‚¢‚¸‚É QT ‚ð‘—�M‚·‚é + if (response(return_code, "QT\n", qt_expected_response)) { + laser_state_ = LaserOff; +@@ -139,7 +139,7 @@ struct ScipHandler::pImpl + + } else if (return_code == Scip11Response) { + // SCIP1.1 ƒvƒ�ƒgƒRƒ‹‚Ì�ê�‡‚Ì‚Ý�ASCIP2.0 ‚ð‘—�M‚·‚é +- char scip20_expected_response[] = { 0, -1 }; ++ char scip20_expected_response[] = { 0, (char)-1 }; + if (! response(return_code, "SCIP2.0\n", scip20_expected_response)) { + error_message_ = + "SCIP1.1 protocol is not supported. Please update URG firmware, or reconnect after a few seconds because sensor is booting."; +@@ -150,7 +150,7 @@ struct ScipHandler::pImpl + + } else if (return_code == 0xE) { + // TM ƒ‚�[ƒh‚Ƃ݂Ȃµ�ATM2 ‚ð”­�s‚·‚é +- char tm2_expected_response[] = { 0, -1 }; ++ char tm2_expected_response[] = { 0, (char)-1 }; + if (response(return_code, "TM2\n", tm2_expected_response)) { + laser_state_ = LaserOff; + return changeBothBaudrate(baudrate); +@@ -202,7 +202,7 @@ struct ScipHandler::pImpl + snprintf(send_buffer, 10, "SS%06ld\n", baudrate); + int return_code = -1; + // !!! Šù‚É�Ý’è‘Î�ۂ̃{�[ƒŒ�[ƒg�A‚Ì�ê�‡‚Ì–ß‚è’l‚ð ss_expected... ‚ɒljÁ‚·‚é +- char ss_expected_response[] = { 0, 0x3, 0x4, 0xf, -1 }; ++ char ss_expected_response[] = { 0, 0x3, 0x4, 0xf, (char)-1 }; + if (! response(return_code, send_buffer, ss_expected_response)) { + error_message_ = "Baudrate change fail."; + return false; +@@ -216,7 +216,7 @@ struct ScipHandler::pImpl + { + // PP ‚Ì‘—�M‚ƃf�[ƒ^‚ÌŽó�M + int return_code = -1; +- char pp_expected_response[] = { 0, -1 }; ++ char pp_expected_response[] = { 0, (char)-1 }; + vector lines; + if (! response(return_code, "PP\n", pp_expected_response, &lines)) { + error_message_ = "PP fail."; +@@ -356,7 +356,7 @@ struct ScipHandler::pImpl + + if (on) { + int return_code = -1; +- char expected_response[] = { 0, -1 }; ++ char expected_response[] = { 0, (char)-1 }; + if (! response(return_code, "BM\n", expected_response)) { + error_message_ = "BM fail."; + return false; +@@ -369,7 +369,7 @@ struct ScipHandler::pImpl + if (! mx_capturing_) { + // �Á“”‚·‚邽‚ß‚Ì QT ‚Å‚Í�A‰ž“š‚ð‘҂‚ׂ« + int return_code = -1; +- char qt_expected_response[] = { 0, -1 }; ++ char qt_expected_response[] = { 0, (char)-1 }; + if (! response(return_code, "QT\n", qt_expected_response)) { + return false; + } +@@ -777,7 +777,7 @@ bool ScipHandler::loadParameter(RangeSen + bool ScipHandler::versionLines(vector& lines) + { + int return_code = -1; +- char expected_response[] = { 0, -1 }; ++ char expected_response[] = { 0, (char)-1 }; + if (! pimpl->response(return_code, "VV\n", expected_response, &lines)) { + return false; + } +@@ -792,7 +792,7 @@ bool ScipHandler::setRawTimestampMode(bo + + // TM0 or TM2 ‚Ì‘—�M + int return_code = -1; +- char expected_response[] = { 0, -1 }; ++ char expected_response[] = { 0, (char)-1 }; + if (! pimpl->response(return_code, send_command, expected_response)) { + pimpl->error_message_ = (on) ? "TM0 fail." : "TM2 fail."; + return false; +@@ -809,7 +809,7 @@ bool ScipHandler::rawTimestamp(int* time + { + // TM1 ‚Ì’l‚ð•Ô‚· + int return_code = -1; +- char expected_response[] = { 0, -1 }; ++ char expected_response[] = { 0, (char)-1 }; + vector lines; + if (! pimpl->response(return_code, "TM1\n", expected_response, &lines)) { + pimpl->error_message_ = "TM1 fail."; diff --git a/package/urg/Config.in b/package/urg/Config.in new file mode 100644 index 00000000..c6026242 --- /dev/null +++ b/package/urg/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_URG + bool "urg" + depends on BR2_INSTALL_LIBSTDCPP + help + Library to control Hokuyo's URG series sensors. + + https://sourceforge.net/p/urgnetwork/wiki/Home/ + +comment "urg needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/urg/urg.hash b/package/urg/urg.hash new file mode 100644 index 00000000..f2c5f143 --- /dev/null +++ b/package/urg/urg.hash @@ -0,0 +1,6 @@ +# from http://pkgs.fedoraproject.org/repo/pkgs/urg/urg-0.8.18.zip/ +md5 93f90d2ccc36e784407c5282ef6bd2cb urg-0.8.18.zip +# Locally calculated +sha256 b2cab7e539c90c60fc99a2350a42b5d5390ff952b694b196c3cbb54623cfee7f urg-0.8.18.zip +# License files, locally calculated +sha256 9ccf26cfe845e0eb8bb58053e47366e7ab6b697ae010f7650978d4b71b7d1fc1 COPYING diff --git a/package/urg/urg.mk b/package/urg/urg.mk new file mode 100644 index 00000000..86b7ec2c --- /dev/null +++ b/package/urg/urg.mk @@ -0,0 +1,31 @@ +################################################################################ +# +# urg +# +################################################################################ + +URG_VERSION = 0.8.18 +URG_SITE = http://pkgs.fedoraproject.org/repo/pkgs/urg/urg-0.8.18.zip/md5/93f90d2ccc36e784407c5282ef6bd2cb +URG_SOURCE = urg-$(URG_VERSION).zip +URG_LICENSE = LGPL-3.0 +URG_LICENSE_FILES = COPYING + +URG_INSTALL_STAGING = YES + +ifeq ($(BR2_PACKAGE_SDL)$(BR2_PACKAGE_SDL_NET),yy) +URG_DEPENDENCIES += sdl sdl_net +URG_CONF_OPTS += \ + --with-sdl-prefix=$(STAGING_DIR)/usr \ + --with-sdl-exec-prefix=$(STAGING_DIR)/usr +else +URG_CONF_OPTS = --without-sdl +URG_CONF_ENV += ac_cv_path_SDL_CONFIG="" +endif + +URG_CONFIG_SCRIPTS = c_urg-config urg-config + +define URG_EXTRACT_CMDS + $(UNZIP) -d $(BUILD_DIR) $(URG_DL_DIR)/$(URG_SOURCE) +endef + +$(eval $(autotools-package)) diff --git a/package/usb_modeswitch/Config.in b/package/usb_modeswitch/Config.in new file mode 100644 index 00000000..ecb043a1 --- /dev/null +++ b/package/usb_modeswitch/Config.in @@ -0,0 +1,26 @@ +config BR2_PACKAGE_USB_MODESWITCH + bool "usb_modeswitch" + depends on BR2_TOOLCHAIN_HAS_THREADS # libusb + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb + select BR2_PACKAGE_JIMTCL if !BR2_PACKAGE_TCL || BR2_PACKAGE_TCL_SHLIB_ONLY + select BR2_PACKAGE_LIBUSB + help + Some USB devices such as 3G/4G broadband modems power-up + in mass storage mode to provide access to drivers + for the device's application mode. usb_modeswitch + changes the mode of such devices from the initial power-up + mode to the application mode. + Specific configuration data for each device model is required. + + usb_modeswitch can be used with the usb_modeswitch_data + package and eudev/systemd for automatic mode switching + when devices are connected. + + For more information search the Internet for "Virtual CD-ROM + switching utility". + + http://www.draisberghof.de/usb_modeswitch/ + +comment "usb_modeswitch needs a toolchain w/ threads, gcc >= 4.9" + depends on !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 diff --git a/package/usb_modeswitch/usb_modeswitch.hash b/package/usb_modeswitch/usb_modeswitch.hash new file mode 100644 index 00000000..765a2438 --- /dev/null +++ b/package/usb_modeswitch/usb_modeswitch.hash @@ -0,0 +1,5 @@ +# From https://www.draisberghof.de/usb_modeswitch/usb-modeswitch-versions.xml +md5 69d00d6ed7097b97d972a159d14cfba1 usb-modeswitch-2.6.1.tar.bz2 +# Locally calculated +sha256 5195d9e136e52f658f19e9f93e4f982b1b67bffac197d0a455cd8c2cd245fa34 usb-modeswitch-2.6.1.tar.bz2 +sha256 6195429209313925c0eba6c0da4ee7a6cb4277b99e35c886913f80f91ec20b94 COPYING diff --git a/package/usb_modeswitch/usb_modeswitch.mk b/package/usb_modeswitch/usb_modeswitch.mk new file mode 100644 index 00000000..f2ee004b --- /dev/null +++ b/package/usb_modeswitch/usb_modeswitch.mk @@ -0,0 +1,39 @@ +################################################################################ +# +# usb_modeswitch +# +################################################################################ + +USB_MODESWITCH_VERSION = 2.6.1 +USB_MODESWITCH_SOURCE = usb-modeswitch-$(USB_MODESWITCH_VERSION).tar.bz2 +USB_MODESWITCH_SITE = http://www.draisberghof.de/usb_modeswitch +USB_MODESWITCH_DEPENDENCIES = libusb +USB_MODESWITCH_LICENSE = GPL-2.0+, BSD-2-Clause +USB_MODESWITCH_LICENSE_FILES = COPYING + +ifeq ($(BR2_PACKAGE_TCL)$(BR2_PACKAGE_TCL_SHLIB_ONLY),y) +USB_MODESWITCH_DEPENDENCIES += tcl +USB_MODESWITCH_BUILD_TARGETS = all +USB_MODESWITCH_INSTALL_TARGETS = install-script +else +USB_MODESWITCH_DEPENDENCIES += jimtcl +USB_MODESWITCH_INSTALL_TARGETS = install-common +ifeq ($(BR2_STATIC_LIBS),y) +USB_MODESWITCH_BUILD_TARGETS = all-with-statlink-dispatcher +else +USB_MODESWITCH_BUILD_TARGETS = all-with-dynlink-dispatcher +endif +endif + +define USB_MODESWITCH_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) \ + -C $(@D) $(USB_MODESWITCH_BUILD_TARGETS) +endef + +define USB_MODESWITCH_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) \ + DESTDIR=$(TARGET_DIR) \ + -C $(@D) $(USB_MODESWITCH_INSTALL_TARGETS) +endef + +$(eval $(generic-package)) diff --git a/package/usb_modeswitch_data/Config.in b/package/usb_modeswitch_data/Config.in new file mode 100644 index 00000000..6da7d3bb --- /dev/null +++ b/package/usb_modeswitch_data/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_USB_MODESWITCH_DATA + bool "usb_modeswitch_data" + depends on BR2_TOOLCHAIN_HAS_THREADS # usb_modeswitch -> libusb + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # usb_modeswitch -> libusb + select BR2_PACKAGE_USB_MODESWITCH + help + USB mode switch data + Contains udev rules and events to allow usb_modeswitch to + function automatically + + http://www.draisberghof.de/usb_modeswitch/ + +comment "usb_modeswitch_data needs a toolchain w/ threads, gcc >= 4.9" + depends on !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 diff --git a/package/usb_modeswitch_data/usb_modeswitch_data.hash b/package/usb_modeswitch_data/usb_modeswitch_data.hash new file mode 100644 index 00000000..922913b2 --- /dev/null +++ b/package/usb_modeswitch_data/usb_modeswitch_data.hash @@ -0,0 +1,5 @@ +# From http://www.draisberghof.de/usb_modeswitch/ +md5 e8fce7eb949cbe16c61fb71bade4cc17 usb-modeswitch-data-20191128.tar.bz2 +# Locally calculated +sha256 3f039b60791c21c7cb15c7986cac89650f076dc274798fa242231b910785eaf9 usb-modeswitch-data-20191128.tar.bz2 +sha256 32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670 COPYING diff --git a/package/usb_modeswitch_data/usb_modeswitch_data.mk b/package/usb_modeswitch_data/usb_modeswitch_data.mk new file mode 100644 index 00000000..a3a98ad7 --- /dev/null +++ b/package/usb_modeswitch_data/usb_modeswitch_data.mk @@ -0,0 +1,20 @@ +################################################################################ +# +# usb_modeswitch_data +# +################################################################################ + +USB_MODESWITCH_DATA_VERSION = 20191128 +USB_MODESWITCH_DATA_SOURCE = usb-modeswitch-data-$(USB_MODESWITCH_DATA_VERSION).tar.bz2 +USB_MODESWITCH_DATA_SITE = http://www.draisberghof.de/usb_modeswitch +USB_MODESWITCH_DATA_DEPENDENCIES = usb_modeswitch +USB_MODESWITCH_DATA_LICENSE = GPL-2.0+ +USB_MODESWITCH_DATA_LICENSE_FILES = COPYING + +# Nothing to build, it is a pure data package + +define USB_MODESWITCH_DATA_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install +endef + +$(eval $(generic-package)) diff --git a/package/usbmount/0001-rules-fix.patch b/package/usbmount/0001-rules-fix.patch new file mode 100644 index 00000000..c71b613c --- /dev/null +++ b/package/usbmount/0001-rules-fix.patch @@ -0,0 +1,19 @@ +Signed-off-by: Yegor Yefremov +--- + 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 index 00000000..27928b5d --- /dev/null +++ b/package/usbmount/0002-use-udev-environment-instead-of-blkid.patch @@ -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 +--- 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/Config.in b/package/usbmount/Config.in new file mode 100644 index 00000000..8ce0ce76 --- /dev/null +++ b/package/usbmount/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_USBMOUNT + bool "usbmount" + depends on BR2_PACKAGE_HAS_UDEV + select BR2_PACKAGE_LOCKFILE_PROGS + help + The usbmount package automatically mounts USB mass storage + devices when they are plugged in, and unmounts them when + they are removed. + + https://wiki.debian.org/usbmount + +comment "usbmount requires udev to be enabled" + depends on !BR2_PACKAGE_HAS_UDEV diff --git a/package/usbmount/usbmount.hash b/package/usbmount/usbmount.hash new file mode 100644 index 00000000..64654616 --- /dev/null +++ b/package/usbmount/usbmount.hash @@ -0,0 +1,4 @@ +# From http://snapshot.debian.org/archive/debian/20141023T043132Z/pool/main/u/usbmount/usbmount_0.0.22.dsc +sha256 a2b8581534b6c92f0376d202639dbc28862d3834dac64c35bde752f84975527d usbmount_0.0.22.tar.gz +# Locally computed +sha256 797a416c87923338aa3ed05cce3cfdac6101f0142e72d5ab05c7bd76af5e527b debian/copyright diff --git a/package/usbmount/usbmount.mk b/package/usbmount/usbmount.mk new file mode 100644 index 00000000..538602fd --- /dev/null +++ b/package/usbmount/usbmount.mk @@ -0,0 +1,28 @@ +################################################################################ +# +# usbmount +# +################################################################################ + +USBMOUNT_VERSION = 0.0.22 +USBMOUNT_SOURCE = usbmount_$(USBMOUNT_VERSION).tar.gz +USBMOUNT_SITE = http://snapshot.debian.org/archive/debian/20141023T043132Z/pool/main/u/usbmount +USBMOUNT_DEPENDENCIES = udev lockfile-progs +USBMOUNT_LICENSE = BSD-2-Clause +USBMOUNT_LICENSE_FILES = debian/copyright + +define USBMOUNT_INSTALL_TARGET_CMDS + $(INSTALL) -m 0755 -D $(@D)/usbmount $(TARGET_DIR)/usr/share/usbmount/usbmount + + $(INSTALL) -m 0755 -D $(@D)/00_create_model_symlink \ + $(TARGET_DIR)/etc/usbmount/mount.d/00_create_model_symlink + $(INSTALL) -m 0755 -D $(@D)/00_remove_model_symlink \ + $(TARGET_DIR)/etc/usbmount/umount.d/00_remove_model_symlink + + $(INSTALL) -m 0644 -D $(@D)/usbmount.rules $(TARGET_DIR)/lib/udev/rules.d/usbmount.rules + $(INSTALL) -m 0644 -D $(@D)/usbmount.conf $(TARGET_DIR)/etc/usbmount/usbmount.conf + + mkdir -p $(addprefix $(TARGET_DIR)/media/usb,0 1 2 3 4 5 6 7) +endef + +$(eval $(generic-package)) diff --git a/package/usbredir/Config.in b/package/usbredir/Config.in new file mode 100644 index 00000000..8ce180a8 --- /dev/null +++ b/package/usbredir/Config.in @@ -0,0 +1,32 @@ +comment "usbredir needs a toolchain w/ threads, gcc >= 4.9" + depends on !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + +config BR2_PACKAGE_USBREDIR + bool "usbredir" + depends on BR2_TOOLCHAIN_HAS_THREADS # libusb + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb + select BR2_PACKAGE_LIBUSB + help + usbredir is the name of a network protocol for sending usb + device traffic over a network connection. It is also the + name of the software package offering a parsing library, a + usbredirhost library and several utilities implementing this + protocol. + + Note: only the library is installed, not the utilities. Say + 'y' below if you want the server too. + + http://www.spice-space.org/page/UsbRedir + +if BR2_PACKAGE_USBREDIR + +config BR2_PACKAGE_USBREDIR_SERVER + bool "usbredirserver on target" + help + If you want to serve usbredir requests on your target, say + 'y' here to have the usbredir server on the target. + + Note: the server is not required to use the library. + +endif diff --git a/package/usbredir/usbredir.hash b/package/usbredir/usbredir.hash new file mode 100644 index 00000000..485315d2 --- /dev/null +++ b/package/usbredir/usbredir.hash @@ -0,0 +1,4 @@ +# locally computed hash +sha256 87bc9c5a81c982517a1bec70dc8d22e15ae197847643d58f20c0ced3c38c5e00 usbredir-0.8.0.tar.bz2 +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING +sha256 592987e8510228d546540b84a22444bde98e48d03078d3b2eefcd889bec5ce8c COPYING.LIB diff --git a/package/usbredir/usbredir.mk b/package/usbredir/usbredir.mk new file mode 100644 index 00000000..8848670e --- /dev/null +++ b/package/usbredir/usbredir.mk @@ -0,0 +1,29 @@ +################################################################################ +# +# usbredir +# +################################################################################ + +USBREDIR_VERSION = 0.8.0 +USBREDIR_SOURCE = usbredir-$(USBREDIR_VERSION).tar.bz2 +USBREDIR_SITE = http://spice-space.org/download/usbredir +USBREDIR_LICENSE = LGPL-2.1+ (libraries) +USBREDIR_LICENSE_FILES = COPYING.LIB +USBREDIR_INSTALL_STAGING = YES +USBREDIR_DEPENDENCIES = host-pkgconf libusb + +ifeq ($(BR2_PACKAGE_USBREDIR_SERVER),y) + +USBREDIR_LICENSE += , GPL-2.0+ (program) +USBREDIR_LICENSE_FILES += COPYING + +else # BR2_PACKAGE_USBREDIR_SERVER != y + +define USBREDIR_POST_INSTALL_TARGET_RM_SERVER + rm -f $(TARGET_DIR)/usr/sbin/usbredirserver +endef +USBREDIR_POST_INSTALL_TARGET_HOOKS += USBREDIR_POST_INSTALL_TARGET_RM_SERVER + +endif # BR2_PACKAGE_USBREDIR_SERVER + +$(eval $(autotools-package)) diff --git a/package/usbutils/Config.in b/package/usbutils/Config.in new file mode 100644 index 00000000..a38eb2f2 --- /dev/null +++ b/package/usbutils/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_USBUTILS + bool "usbutils" + depends on BR2_TOOLCHAIN_HAS_THREADS # libusb + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb + depends on BR2_PACKAGE_HAS_UDEV # needs hwdb + select BR2_PACKAGE_LIBUSB + help + USB enumeration utilities + + http://linux-usb.sourceforge.net/ + +comment "usbutils needs udev /dev management and toolchain w/ threads, gcc >= 4.9" + depends on !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_PACKAGE_HAS_UDEV || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 diff --git a/package/usbutils/usbutils.hash b/package/usbutils/usbutils.hash new file mode 100644 index 00000000..96426aee --- /dev/null +++ b/package/usbutils/usbutils.hash @@ -0,0 +1,5 @@ +# From https://www.kernel.org/pub/linux/utils/usb/usbutils/sha256sums.asc +sha256 9e23494fcc78b7a80ee29a07dd179c95ae2f71509c35728dbbabc2d1cca41338 usbutils-013.tar.xz +# Locally calculated +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSES/GPL-2.0.txt +sha256 3972dc9744f6499f0f9b2dbf76696f2ae7ad8af9b23dde66d6af86c9dfb36986 LICENSES/GPL-3.0.txt diff --git a/package/usbutils/usbutils.mk b/package/usbutils/usbutils.mk new file mode 100644 index 00000000..ef5fd120 --- /dev/null +++ b/package/usbutils/usbutils.mk @@ -0,0 +1,25 @@ +################################################################################ +# +# usbutils +# +################################################################################ + +USBUTILS_VERSION = 013 +USBUTILS_SOURCE = usbutils-$(USBUTILS_VERSION).tar.xz +USBUTILS_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/usb/usbutils +USBUTILS_DEPENDENCIES = host-pkgconf libusb udev +USBUTILS_LICENSE = GPL-2.0+ (utils) GPL-2.0 or GPL-3.0 (lsusb.py) +USBUTILS_LICENSE_FILES = LICENSES/GPL-2.0.txt LICENSES/GPL-3.0.txt +# Missing configure script +USBUTILS_AUTORECONF = YES + +# Nice lsusb.py script only if there's python 3.x +ifeq ($(BR2_PACKAGE_PYTHON3),) +define USBUTILS_REMOVE_PYTHON + rm -f $(TARGET_DIR)/usr/bin/lsusb.py +endef + +USBUTILS_POST_INSTALL_TARGET_HOOKS += USBUTILS_REMOVE_PYTHON +endif + +$(eval $(autotools-package)) diff --git a/package/ushare/Config.in b/package/ushare/Config.in new file mode 100644 index 00000000..2dcd7737 --- /dev/null +++ b/package/ushare/Config.in @@ -0,0 +1,17 @@ +config BR2_PACKAGE_USHARE + bool "ushare" + depends on BR2_TOOLCHAIN_HAS_THREADS # libupnp + # ushare has a completely custom configure script that does + # broken things with library ordering, which breaks static + # linking. + depends on !BR2_STATIC_LIBS + select BR2_PACKAGE_LIBUPNP + help + uShare is a UPnP (TM) A/V & DLNA Media Server. + It implements the server component that provides UPnP media + devices with information on available multimedia files. + + http://ushare.geexbox.org/ + +comment "ushare needs a toolchain w/ threads, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/ushare/ushare.hash b/package/ushare/ushare.hash new file mode 100644 index 00000000..013b2479 --- /dev/null +++ b/package/ushare/ushare.hash @@ -0,0 +1,3 @@ +# locally computed hash +sha256 e4563141a171138900540cc979f205cf666e820f709d47a98521bc77f53a99e6 ushare-2.1.tar.gz +sha256 231f7edcc7352d7734a96eef0b8030f77982678c516876fcb81e25b32d68564c COPYING diff --git a/package/ushare/ushare.mk b/package/ushare/ushare.mk new file mode 100644 index 00000000..a4c97116 --- /dev/null +++ b/package/ushare/ushare.mk @@ -0,0 +1,43 @@ +################################################################################ +# +# ushare +# +################################################################################ + +USHARE_VERSION = 2.1 +USHARE_SITE = $(call github,ddugovic,uShare,v$(USHARE_VERSION)) +USHARE_DEPENDENCIES = host-pkgconf libupnp $(TARGET_NLS_DEPENDENCIES) +USHARE_LICENSE = GPL-2.0+ +USHARE_LICENSE_FILES = COPYING +USHARE_LDFLAGS = $(TARGET_NLS_LIBS) + +USHARE_CONF_OPTS = \ + --prefix=/usr \ + --cross-compile \ + --cross-prefix="$(TARGET_CROSS)" \ + --sysconfdir=/etc \ + --disable-strip + +ifeq ($(BR2_SYSTEM_ENABLE_NLS),) +USHARE_CONF_OPTS += --disable-nls +endif + +define USHARE_CONFIGURE_CMDS + (cd $(@D); \ + $(TARGET_CONFIGURE_OPTS) \ + ./configure \ + $(USHARE_CONF_OPTS) \ + ) +endef + +define USHARE_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) LDFLAGS="$(TARGET_LDFLAGS) $(USHARE_LDFLAGS)" -C $(@D) +endef + +define USHARE_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install + rm -f $(TARGET_DIR)/etc/init.d/ushare +endef + +# Even though configure is called it's not autoconf +$(eval $(generic-package)) 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 index 00000000..0694bfba --- /dev/null +++ b/package/ussp-push/0001-fix-build-against-bluez-4.patch @@ -0,0 +1,15 @@ +Fix build against bluez4. + +Signed-off-by: Samuel Martin + +--- 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/0002-fix-build-again-obex-bluez.patch b/package/ussp-push/0002-fix-build-again-obex-bluez.patch new file mode 100644 index 00000000..e98fe6ef --- /dev/null +++ b/package/ussp-push/0002-fix-build-again-obex-bluez.patch @@ -0,0 +1,28 @@ +From 2d732026044d8e6cd16465ee87a73ac9692c021b Mon Sep 17 00:00:00 2001 +From: Samuel Martin +Date: Fri, 3 Nov 2017 09:04:12 +0100 +Subject: [PATCH] fix build again obex/bluez + +[fetch from debian source: http://http.debian.net/debian/pool/main/u/ussp-push/ussp-push_0.11-4.debian.tar.xz] + +Signed-off-by: Samuel Martin +--- + src/obex_main.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/obex_main.c b/src/obex_main.c +index a7126e6..6233d7e 100644 +--- a/src/obex_main.c ++++ b/src/obex_main.c +@@ -197,7 +197,7 @@ obex_t *__obex_connect(int devid, void *addr, int timeout, int *err) + *err = -1; + return NULL; + } +- if (!(handle = OBEX_Init(OBEX_TRANS_CUST, obex_event, 0))) { ++ if (!(handle = OBEX_Init(OBEX_TRANS_CUSTOM, obex_event, 0))) { + BTERROR("OBEX_Init failed: %s\n", strerror(errno)); + obex_free(gt); + *err = -1; +-- +2.15.0 + diff --git a/package/ussp-push/0003-add-OBEX_CharToUnicode.patch b/package/ussp-push/0003-add-OBEX_CharToUnicode.patch new file mode 100644 index 00000000..a660b552 --- /dev/null +++ b/package/ussp-push/0003-add-OBEX_CharToUnicode.patch @@ -0,0 +1,47 @@ +From eafac77d76d2a23c191a56f715d6c4afc0800da8 Mon Sep 17 00:00:00 2001 +From: Samuel Martin +Date: Fri, 3 Nov 2017 09:10:01 +0100 +Subject: [PATCH] add OBEX_CharToUnicode + +[fetch from debian source: http://http.debian.net/debian/pool/main/u/ussp-push/ussp-push_0.11-4.debian.tar.xz] + +Signed-off-by: Samuel Martin +--- + src/obex_main.c | 20 ++++++++++++++++++++ + 1 file changed, 20 insertions(+) + +diff --git a/src/obex_main.c b/src/obex_main.c +index 6233d7e..971cc37 100644 +--- a/src/obex_main.c ++++ b/src/obex_main.c +@@ -84,7 +84,27 @@ void request_done(obex_t * handle, obex_object_t * object, int obex_cmd, int obe + + int bt_debug; + ++static int OBEX_CharToUnicode(uint8_t *uc, const uint8_t *c, int size) ++{ ++ int len, n; ++ ++ if (uc == NULL || c == NULL) ++ return -1; ++ ++ len = n = strlen((char *) c); ++ if (n*2+2 > size) ++ return -1; ++ ++ uc[n*2+1] = 0; ++ uc[n*2] = 0; + ++ while (n--) { ++ uc[n*2+1] = c[n]; ++ uc[n*2] = 0; ++ } ++ ++ return (len * 2) + 2; ++} + + /* + * These two functions are from affix/profiles/obex/obex_io.c +-- +2.15.0 + diff --git a/package/ussp-push/Config.in b/package/ussp-push/Config.in new file mode 100644 index 00000000..276c8dca --- /dev/null +++ b/package/ussp-push/Config.in @@ -0,0 +1,21 @@ +config BR2_PACKAGE_USSP_PUSH + bool "ussp-push" + depends on !BR2_STATIC_LIBS # bluez5_utils + depends on BR2_USE_WCHAR # libglib2 + depends on BR2_TOOLCHAIN_HAS_THREADS # dbus, alsa-lib, libglib2 + depends on BR2_USE_MMU # dbus + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # bluez5_utils + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 # bluez5_utils + select BR2_PACKAGE_OPENOBEX + select BR2_PACKAGE_BLUEZ5_UTILS + help + ussp-push is an OBEX object pusher for Linux, using the BlueZ + BlueTooth stack. + + http://www.xmailserver.org/ussp-push.html + +comment "ussp-push needs a toolchain w/ wchar, threads, dynamic library, headers >= 3.4" + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \ + BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 diff --git a/package/ussp-push/ussp-push.hash b/package/ussp-push/ussp-push.hash new file mode 100644 index 00000000..36c79cfa --- /dev/null +++ b/package/ussp-push/ussp-push.hash @@ -0,0 +1,4 @@ +# Locally calculated +sha256 bb2748eaed6164812555b4a1e186c4f2820c5ef9ce30f12d7aac28a452719bbd ussp-push-0.11.tar.gz +# License files, locally calculated +sha256 204d8eff92f95aac4df6c8122bc1505f468f3a901e5a4cc08940e0ede1938994 COPYING diff --git a/package/ussp-push/ussp-push.mk b/package/ussp-push/ussp-push.mk new file mode 100644 index 00000000..c0479270 --- /dev/null +++ b/package/ussp-push/ussp-push.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# ussp-push +# +################################################################################ + +USSP_PUSH_VERSION = 0.11 +USSP_PUSH_SITE = http://www.xmailserver.org +USSP_PUSH_LICENSE = GPL-2.0+ +USSP_PUSH_LICENSE_FILES = COPYING + +USSP_PUSH_DEPENDENCIES = bluez5_utils openobex + +$(eval $(autotools-package)) diff --git a/package/ustream-ssl/Config.in b/package/ustream-ssl/Config.in new file mode 100644 index 00000000..540e4368 --- /dev/null +++ b/package/ustream-ssl/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_USTREAM_SSL + bool "ustream-ssl" + depends on !BR2_STATIC_LIBS #libubox + select BR2_PACKAGE_LIBUBOX + select BR2_PACKAGE_OPENSSL if !BR2_PACKAGE_MBEDTLS + help + ustream SSL wrapper + + https://git.openwrt.org/?p=project/ustream-ssl.git;a=summary + +comment "ustream-ssl needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/ustream-ssl/ustream-ssl.hash b/package/ustream-ssl/ustream-ssl.hash new file mode 100644 index 00000000..60672b38 --- /dev/null +++ b/package/ustream-ssl/ustream-ssl.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 f09474dbe4680b51cc0c6a088807102d64954764ef58c2a1e3231e3a77c4b01f ustream-ssl-23a3f2830341acd1db149175baf7315a33bd0edb-br1.tar.gz +sha256 90dd1590cf400a548438e2575e1ff46d8fb8cebae7d09f544aae7e059e30b6c5 ustream-ssl.h diff --git a/package/ustream-ssl/ustream-ssl.mk b/package/ustream-ssl/ustream-ssl.mk new file mode 100644 index 00000000..7804eb5d --- /dev/null +++ b/package/ustream-ssl/ustream-ssl.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# ustream-ssl +# +################################################################################ + +USTREAM_SSL_VERSION = 23a3f2830341acd1db149175baf7315a33bd0edb +USTREAM_SSL_SITE = git://git.openwrt.org/project/ustream-ssl.git +USTREAM_SSL_LICENSE = ISC +USTREAM_SSL_LICENSE_FILES = ustream-ssl.h +USTREAM_SSL_INSTALL_STAGING = YES +USTREAM_SSL_DEPENDENCIES = libubox + +ifeq ($(BR2_PACKAGE_MBEDTLS),y) +USTREAM_SSL_DEPENDENCIES += mbedtls +USTREAM_SSL_CONF_OPTS += -DMBEDTLS=ON +else +USTREAM_SSL_DEPENDENCIES += openssl +endif + +$(eval $(cmake-package)) diff --git a/package/utf8proc/Config.in b/package/utf8proc/Config.in new file mode 100644 index 00000000..43b50738 --- /dev/null +++ b/package/utf8proc/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_UTF8PROC + bool "utf8proc" + help + A clean C library for processing UTF-8 Unicode data. + + https://juliastrings.github.io/utf8proc diff --git a/package/utf8proc/utf8proc.hash b/package/utf8proc/utf8proc.hash new file mode 100644 index 00000000..2deff4e0 --- /dev/null +++ b/package/utf8proc/utf8proc.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 4c06a9dc4017e8a2438ef80ee371d45868bda2237a98b26554de7a95406b283b utf8proc-2.6.1.tar.gz +sha256 fbc720fcc90fb44396985646f67e4d19be03e0c0539f7138ed9dc6efba49dc49 LICENSE.md diff --git a/package/utf8proc/utf8proc.mk b/package/utf8proc/utf8proc.mk new file mode 100644 index 00000000..bedd38ca --- /dev/null +++ b/package/utf8proc/utf8proc.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# utf8proc +# +################################################################################ + +UTF8PROC_VERSION = 2.6.1 +UTF8PROC_SITE = $(call github,JuliaStrings,utf8proc,v$(UTF8PROC_VERSION)) +UTF8PROC_LICENSE = MIT +UTF8PROC_LICENSE_FILES = LICENSE.md +UTF8PROC_INSTALL_STAGING = YES +UTF8PROC_SUPPORTS_IN_SOURCE_BUILD = NO + +$(eval $(cmake-package)) diff --git a/package/util-linux/Config.in b/package/util-linux/Config.in new file mode 100644 index 00000000..1f33eb55 --- /dev/null +++ b/package/util-linux/Config.in @@ -0,0 +1,443 @@ +menuconfig BR2_PACKAGE_UTIL_LINUX + bool "util-linux" + help + Various useful/essential linux libraries and utilities. + + Things like mkfs, mkswap, swapon, fdisk, mount, dmesg, etc... + + http://www.kernel.org/pub/linux/utils/util-linux/ + +if BR2_PACKAGE_UTIL_LINUX + +config BR2_PACKAGE_UTIL_LINUX_LIBS + bool + +config BR2_PACKAGE_UTIL_LINUX_LIBBLKID + bool "libblkid" + depends on BR2_USE_MMU # fork() + help + Install libblkid. + +config BR2_PACKAGE_UTIL_LINUX_LIBFDISK + bool "libfdisk" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_UTIL_LINUX_LIBBLKID + select BR2_PACKAGE_UTIL_LINUX_LIBUUID + help + Install libfdisk. + +config BR2_PACKAGE_UTIL_LINUX_LIBMOUNT + bool "libmount" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_UTIL_LINUX_LIBBLKID + help + Install libmount. + +config BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS + bool "libsmartcols" + depends on BR2_USE_MMU # fork() + help + Install libsmartcols. + +config BR2_PACKAGE_UTIL_LINUX_LIBUUID + bool "libuuid" + help + Install libuuid. + +config BR2_PACKAGE_UTIL_LINUX_BINARIES + bool "basic set" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_UTIL_LINUX_LIBBLKID + select BR2_PACKAGE_UTIL_LINUX_LIBMOUNT + select BR2_PACKAGE_UTIL_LINUX_LIBFDISK + select BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS + select BR2_PACKAGE_UTIL_LINUX_LIBUUID + help + Install the basic set of util-linux binaries. + + blkdiscard, blkid, blockdev, chcpu, choom, col, colcrt, colrm, + column, ctrlaltdel, dmesg, fdisk, fincore, findfs, findmnt, + flock, fsfreeze, fstrim, getopt, hexdump, ipcmk, isosize, + ldattach, look, lsblk, lscpu, lsipc, lslocks, lsns, mcookie, + mkfs, mkswap, namei, prlimit, readprofile, renice, rev, + rtcwake, script, scriptlive, scriptreplay, setarch, setsid, + sfdisk, swaplabel, swapoff, swapon, uuidgen, uuidparse, + whereis, wipefs + + The setarch utility also installs architecture-specific + symlinks like linux32, linux64, uname26, i386 and x86_64. + +config BR2_PACKAGE_UTIL_LINUX_AGETTY + bool "agetty" + depends on BR2_USE_MMU # fork() + help + Alternative linux getty + +config BR2_PACKAGE_UTIL_LINUX_BFS + bool "bfs" + help + SCO bfs filesystem support + +config BR2_PACKAGE_UTIL_LINUX_CAL + bool "cal" + help + Display a calendar, or some part of it + +config BR2_PACKAGE_UTIL_LINUX_CHFN_CHSH + bool "chfn/chsh" + depends on (BR2_ENABLE_LOCALE && BR2_USE_WCHAR) # linux-pam + depends on !BR2_STATIC_LIBS + depends on BR2_USE_MMU # linux-pam + select BR2_PACKAGE_LINUX_PAM + help + Change login shell, real user name and information + +comment "chfn/chsh needs a toolchain w/ wchar, locale, dynamic library" + depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \ + || BR2_STATIC_LIBS + +config BR2_PACKAGE_UTIL_LINUX_CHMEM + bool "chmem" + help + Sets a particular size or range of memory online or offline + +config BR2_PACKAGE_UTIL_LINUX_CRAMFS + bool "cramfs utilities" + select BR2_PACKAGE_ZLIB + help + Utilities for compressed ROM file system (fsck.cramfs, + mkfs.cramfs) + +config BR2_PACKAGE_UTIL_LINUX_EJECT + bool "eject" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_UTIL_LINUX_LIBBLKID + select BR2_PACKAGE_UTIL_LINUX_LIBMOUNT + select BR2_PACKAGE_UTIL_LINUX_LIBUUID + help + Eject removable media + +config BR2_PACKAGE_UTIL_LINUX_FALLOCATE + bool "fallocate" + help + Preallocate space to a file + +config BR2_PACKAGE_UTIL_LINUX_FDFORMAT + bool "fdformat" + help + Low-level format a floppy disk + +config BR2_PACKAGE_UTIL_LINUX_FSCK + bool "fsck" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_UTIL_LINUX_LIBBLKID + select BR2_PACKAGE_UTIL_LINUX_LIBMOUNT + select BR2_PACKAGE_UTIL_LINUX_LIBUUID + help + Check and repair a linux filesystem + +config BR2_PACKAGE_UTIL_LINUX_HARDLINK + bool "hardlink" + help + Consolidate duplicate files via hardlinks + +config BR2_PACKAGE_UTIL_LINUX_HWCLOCK + bool "hwclock" + help + Query or set the hardware clock (RTC) + +config BR2_PACKAGE_UTIL_LINUX_IPCRM + bool "ipcrm" + help + Remove certain IPC resources + +config BR2_PACKAGE_UTIL_LINUX_IPCS + bool "ipcs" + help + Show information on IPC facilities + +config BR2_PACKAGE_UTIL_LINUX_KILL + bool "kill" + help + Send a signal to a process + +config BR2_PACKAGE_UTIL_LINUX_LAST + bool "last" + help + Show a listing of last logged in users + +config BR2_PACKAGE_UTIL_LINUX_LINE + bool "line" + help + Read one line + +config BR2_PACKAGE_UTIL_LINUX_LOGGER + bool "logger" + help + Enter messages into the system log + +config BR2_PACKAGE_UTIL_LINUX_LOGIN + bool "login" + depends on BR2_ENABLE_LOCALE # linux-pam + depends on BR2_USE_WCHAR # linux-pam + depends on !BR2_STATIC_LIBS # linux-pam + depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam + depends on BR2_USE_MMU # fork(), linux-pam + select BR2_PACKAGE_LINUX_PAM + help + Begin a session on the system + +comment "login needs a uClibc or glibc toolchain w/ wchar, locale, dynamic library" + depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \ + || BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL + +config BR2_PACKAGE_UTIL_LINUX_LOSETUP + bool "losetup" + depends on BR2_USE_MMU # libsmartcols + select BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS + help + Set up and control loop devices + +config BR2_PACKAGE_UTIL_LINUX_LSLOGINS + bool "lslogins" + depends on BR2_USE_MMU # libsmartcols + select BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS + help + Display information about known users in the system + +config BR2_PACKAGE_UTIL_LINUX_LSMEM + bool "lsmem" + depends on BR2_USE_MMU # libsmartcols + select BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS + help + List the ranges of available memory with their online status + +config BR2_PACKAGE_UTIL_LINUX_MESG + bool "mesg" + help + Control write access to your terminal + +config BR2_PACKAGE_UTIL_LINUX_MINIX + bool "minix" + depends on BR2_USE_MMU # fork() + help + Minix filesystem support + +config BR2_PACKAGE_UTIL_LINUX_MORE + bool "more" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_NCURSES + help + File perusal filter for crt viewing + +config BR2_PACKAGE_UTIL_LINUX_MOUNT + bool "mount/umount" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_UTIL_LINUX_LIBBLKID + select BR2_PACKAGE_UTIL_LINUX_LIBMOUNT + select BR2_PACKAGE_UTIL_LINUX_LIBUUID + help + Mount/unmount filesystems + +config BR2_PACKAGE_UTIL_LINUX_MOUNTPOINT + bool "mountpoint" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_UTIL_LINUX_LIBBLKID + select BR2_PACKAGE_UTIL_LINUX_LIBMOUNT + select BR2_PACKAGE_UTIL_LINUX_LIBUUID + help + See if a directory is a mountpoint + +config BR2_PACKAGE_UTIL_LINUX_NEWGRP + bool "newgrp" + help + Log in to a new group + +config BR2_PACKAGE_UTIL_LINUX_NOLOGIN + bool "nologin" + help + Politely refuse a login + +config BR2_PACKAGE_UTIL_LINUX_NSENTER + bool "nsenter" + depends on BR2_USE_MMU # fork() + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 + help + Enter the namespaces of another process + +comment "nsenter needs a toolchain w/ headers >= 3.0" + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 + +config BR2_PACKAGE_UTIL_LINUX_PG + bool "pg" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_NCURSES + help + Browse pagewise through text files + +config BR2_PACKAGE_UTIL_LINUX_PARTX + bool "partition utilities" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_UTIL_LINUX_LIBBLKID + select BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS + select BR2_PACKAGE_UTIL_LINUX_LIBUUID + help + Partition utilities (addpart, delpart, partx) + +config BR2_PACKAGE_UTIL_LINUX_PIVOT_ROOT + bool "pivot_root" + help + Change the root filesystem + +config BR2_PACKAGE_UTIL_LINUX_RAW + bool "raw" + help + Build a linux raw character device + +config BR2_PACKAGE_UTIL_LINUX_RENAME + bool "rename" + help + Rename files + +config BR2_PACKAGE_UTIL_LINUX_RFKILL + bool "rfkill" + depends on BR2_USE_MMU # libsmartcols + select BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS + help + Tool for enabling and disabling wireless devices. This new + implementation is based upon, and backward compatible with, + the original rfkill from Johannes Berg and Marcel Holtmann. + +config BR2_PACKAGE_UTIL_LINUX_RUNUSER + bool "runuser" + depends on (BR2_ENABLE_LOCALE && BR2_USE_WCHAR) # linux-pam + depends on !BR2_STATIC_LIBS + depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam + depends on BR2_USE_MMU # fork(), linux-pam + select BR2_PACKAGE_LINUX_PAM + help + Run a command with substitute user and group ID (does not need + to ask for a password, because it may be executed by the root + user only) + +comment "runuser needs a uClibc or glibc toolchain w/ wchar, locale, dynamic library" + depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \ + || BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL + +config BR2_PACKAGE_UTIL_LINUX_SCHEDUTILS + bool "scheduling utilities" + help + Scheduling utilities (chrt, ionice, taskset) + +config BR2_PACKAGE_UTIL_LINUX_SETPRIV + bool "setpriv" + select BR2_PACKAGE_LIBCAP_NG + help + Run a program with different Linux privilege settings + +config BR2_PACKAGE_UTIL_LINUX_SETTERM + bool "setterm" + select BR2_PACKAGE_NCURSES + help + Set terminal attributes + +config BR2_PACKAGE_UTIL_LINUX_SU + bool "su" + depends on (BR2_ENABLE_LOCALE && BR2_USE_WCHAR) # linux-pam + depends on !BR2_STATIC_LIBS + depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam + depends on BR2_USE_MMU # fork(), linux-pam + select BR2_PACKAGE_LINUX_PAM + help + Run a command with substitute user and group ID + +comment "su needs a uClibc or glibc toolchain w/ wchar, locale, dynamic library" + depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \ + || BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL + +config BR2_PACKAGE_UTIL_LINUX_SULOGIN + bool "sulogin" + depends on BR2_USE_MMU # fork() + help + Single-user login + +config BR2_PACKAGE_UTIL_LINUX_SWITCH_ROOT + bool "switch_root" + depends on BR2_USE_MMU # fork() + help + Switch to another filesystem as the root of the mount tree + +config BR2_PACKAGE_UTIL_LINUX_TUNELP + bool "tunelp" + select BR2_PACKAGE_NCURSES + help + Set various parameters for the lp device + +config BR2_PACKAGE_UTIL_LINUX_UL + bool "ul" + select BR2_PACKAGE_NCURSES + help + Do underlining + +config BR2_PACKAGE_UTIL_LINUX_UNSHARE + bool "unshare" + depends on BR2_USE_MMU # fork() + help + Run program with some namespaces unshared from parent + +config BR2_PACKAGE_UTIL_LINUX_UTMPDUMP + bool "utmpdump" + help + Dump UTMP and WTMP files in raw format + +config BR2_PACKAGE_UTIL_LINUX_UUIDD + bool "uuidd" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_UTIL_LINUX_LIBUUID + help + UUID generation daemon + +config BR2_PACKAGE_UTIL_LINUX_VIPW + bool "vipw" + depends on BR2_USE_MMU # fork() + help + Edit the password, group, shadow-password or shadow-group file + +config BR2_PACKAGE_UTIL_LINUX_WALL + bool "wall" + depends on BR2_USE_MMU # fork() + help + Send a message to everybody's terminal + +config BR2_PACKAGE_UTIL_LINUX_WIPEFS + bool "wipefs" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_UTIL_LINUX_LIBBLKID + select BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS + help + wipefs can erase filesystem, raid or partition-table + signatures (magic strings) from the specified device + to make the signatures invisible for libblkid. wipefs + does not erase the filesystem itself nor any other data + from the device. + +config BR2_PACKAGE_UTIL_LINUX_WDCTL + bool "wdctl" + depends on BR2_USE_MMU # libsmartcols + select BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS + help + Shows hardware watchdog status + +config BR2_PACKAGE_UTIL_LINUX_WRITE + bool "write" + help + Send a message to another user + +config BR2_PACKAGE_UTIL_LINUX_ZRAMCTL + bool "zramctl" + depends on BR2_USE_MMU # libsmartcols + select BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS + help + Set up and control zram devices + +endif diff --git a/package/util-linux/Config.in.host b/package/util-linux/Config.in.host new file mode 100644 index 00000000..f73dc43d --- /dev/null +++ b/package/util-linux/Config.in.host @@ -0,0 +1,8 @@ +config BR2_PACKAGE_HOST_UTIL_LINUX + bool "host util-linux" + help + Various useful/essential linux libraries and utilities. + + Things like mkfs, mkswap, swapon, fdisk, mount, dmesg, etc... + + http://www.kernel.org/pub/linux/utils/util-linux/ diff --git a/package/util-linux/su.pam b/package/util-linux/su.pam new file mode 100644 index 00000000..69b2a40c --- /dev/null +++ b/package/util-linux/su.pam @@ -0,0 +1,15 @@ +auth sufficient pam_rootok.so +auth required pam_wheel.so use_uid +auth required pam_env.so +auth required pam_unix.so nullok + +account required pam_unix.so + +password required pam_unix.so nullok + +session required pam_selinux.so close +session required pam_limits.so +session required pam_env.so +session required pam_unix.so +session optional pam_lastlog.so +session required pam_selinux.so open diff --git a/package/util-linux/util-linux-libs/util-linux-libs.hash b/package/util-linux/util-linux-libs/util-linux-libs.hash new file mode 120000 index 00000000..dc1b2f86 --- /dev/null +++ b/package/util-linux/util-linux-libs/util-linux-libs.hash @@ -0,0 +1 @@ +../util-linux.hash \ No newline at end of file diff --git a/package/util-linux/util-linux-libs/util-linux-libs.mk b/package/util-linux/util-linux-libs/util-linux-libs.mk new file mode 100644 index 00000000..3a3a655e --- /dev/null +++ b/package/util-linux/util-linux-libs/util-linux-libs.mk @@ -0,0 +1,89 @@ +################################################################################ +# +# util-linux-libs +# +################################################################################ + +# Please keep this file as similar as possible to util-linux.mk + +UTIL_LINUX_LIBS_VERSION = $(UTIL_LINUX_VERSION) +UTIL_LINUX_LIBS_SOURCE = $(UTIL_LINUX_SOURCE) +UTIL_LINUX_LIBS_SITE = $(UTIL_LINUX_SITE) +UTIL_LINUX_LIBS_DL_SUBDIR = $(UTIL_LINUX_DL_SUBDIR) + +# README.licensing claims that some files are GPL-2.0 only, but this is not +# true. Some files are GPL-3.0+ but only in tests and optionally in hwclock +# (but we disable that option). rfkill uses an ISC-style license. +UTIL_LINUX_LIBS_LICENSE = LGPL-2.1+ (libblkid, libfdisk, libmount), BSD-3-Clause (libuuid) +UTIL_LINUX_LIBS_LICENSE_FILES = README.licensing \ + Documentation/licenses/COPYING.BSD-3-Clause \ + Documentation/licenses/COPYING.LGPL-2.1-or-later + +UTIL_LINUX_LIBS_INSTALL_STAGING = YES +UTIL_LINUX_LIBS_DEPENDENCIES = \ + host-pkgconf \ + $(TARGET_NLS_DEPENDENCIES) +UTIL_LINUX_LIBS_CONF_OPTS += \ + --disable-rpath \ + --disable-makeinstall-chown + +UTIL_LINUX_LIBS_LINK_LIBS = $(TARGET_NLS_LIBS) + +# Prevent the installation from attempting to move shared libraries from +# ${usrlib_execdir} (/usr/lib) to ${libdir} (/lib), since both paths are +# the same when merged usr is in use. +ifeq ($(BR2_ROOTFS_MERGED_USR),y) +UTIL_LINUX_LIBS_CONF_OPTS += --bindir=/usr/bin --sbindir=/usr/sbin --libdir=/usr/lib +endif + +# systemd depends on util-linux-libs so we disable systemd support +UTIL_LINUX_LIBS_CONF_OPTS += \ + --without-systemd \ + --with-systemdsystemunitdir=no + +# systemd/eudev depend on util-linux-libs so we disable udev support +UTIL_LINUX_LIBS_CONF_OPTS += --without-udev + +# No libs use wchar +UTIL_LINUX_LIBS_CONF_OPTS += --disable-widechar + +# No libs use ncurses +UTIL_LINUX_LIBS_CONF_OPTS += --without-ncursesw --without-ncurses + +# Unfortunately, the util-linux does LIBS="" at the end of its +# configure script. So we have to pass the proper LIBS value when +# calling the configure script to make configure tests pass properly, +# and then pass it again at build time. +UTIL_LINUX_LIBS_CONF_ENV += LIBS="$(UTIL_LINUX_LIBS_LINK_LIBS)" +UTIL_LINUX_LIBS_MAKE_OPTS += LIBS="$(UTIL_LINUX_LIBS_LINK_LIBS)" + +# libmount optionally uses selinux +ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBMOUNT)$(BR2_PACKAGE_LIBSELINUX),yy) +UTIL_LINUX_LIBS_DEPENDENCIES += libselinux +UTIL_LINUX_LIBS_CONF_OPTS += --with-selinux +else +UTIL_LINUX_LIBS_CONF_OPTS += --without-selinux +endif + +# Disable utilities +UTIL_LINUX_LIBS_CONF_OPTS += \ + --disable-all-programs \ + $(if $(BR2_PACKAGE_UTIL_LINUX_LIBBLKID),--enable-libblkid,--disable-libblkid) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_LIBFDISK),--enable-libfdisk,--disable-libfdisk) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_LIBMOUNT),--enable-libmount,--disable-libmount) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS),--enable-libsmartcols,--disable-libsmartcols) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_LIBUUID),--enable-libuuid,--disable-libuuid) + +# libmount python bindings are separate, will be installed by full util-linux +UTIL_LINUX_LIBS_CONF_OPTS += --without-python --disable-pylibmount + +# No libs use readline +UTIL_LINUX_LIBS_CONF_OPTS += --without-readline + +# No libs use audit +UTIL_LINUX_LIBS_CONF_OPTS += --without-audit + +# No libs use libmagic +UTIL_LINUX_LIBS_CONF_OPTS += --without-libmagic + +$(eval $(autotools-package)) diff --git a/package/util-linux/util-linux.hash b/package/util-linux/util-linux.hash new file mode 100644 index 00000000..3f9fe398 --- /dev/null +++ b/package/util-linux/util-linux.hash @@ -0,0 +1,9 @@ +# From https://www.kernel.org/pub/linux/utils/util-linux/v2.36/sha256sums.asc +sha256 f7516ba9d8689343594356f0e5e1a5f0da34adfbc89023437735872bb5024c5f util-linux-2.36.2.tar.xz +# License files, locally calculated +sha256 869660b5269f4f40a8a679da7f403ea3a6e71d46087aab5e14871b09bcb55955 README.licensing +sha256 9b718a9460fed5952466421235bc79eb49d4e9eacc920d7a9dd6285ab8fd6c6d Documentation/licenses/COPYING.BSD-3-Clause +sha256 ba7640f00d93e72e92b94b9d71f25ec53bac2f1682f5c4adcccb0018359f60f8 Documentation/licenses/COPYING.BSD-4-Clause-UC +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 Documentation/licenses/COPYING.GPL-2.0-or-later +sha256 e53348ce276358e9997014071c5294b36a18c4b34f32f00ee57b9acce0aafd63 Documentation/licenses/COPYING.ISC +sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 Documentation/licenses/COPYING.LGPL-2.1-or-later diff --git a/package/util-linux/util-linux.mk b/package/util-linux/util-linux.mk new file mode 100644 index 00000000..4bc7a112 --- /dev/null +++ b/package/util-linux/util-linux.mk @@ -0,0 +1,298 @@ +################################################################################ +# +# util-linux +# +################################################################################ + +# When making changes to this file, please check if +# util-linux-libs/util-linux-libs.mk needs to be updated accordingly as well. + +UTIL_LINUX_VERSION_MAJOR = 2.36 +UTIL_LINUX_VERSION = $(UTIL_LINUX_VERSION_MAJOR).2 +UTIL_LINUX_SOURCE = util-linux-$(UTIL_LINUX_VERSION).tar.xz +UTIL_LINUX_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/util-linux/v$(UTIL_LINUX_VERSION_MAJOR) + +# README.licensing claims that some files are GPL-2.0 only, but this is not +# true. Some files are GPL-3.0+ but only in tests and optionally in hwclock +# (but we disable that option). rfkill uses an ISC-style license. +UTIL_LINUX_LICENSE = GPL-2.0+, BSD-4-Clause, LGPL-2.1+ (libblkid, libfdisk, libmount), BSD-3-Clause (libuuid), ISC (rfkill) +UTIL_LINUX_LICENSE_FILES = README.licensing \ + Documentation/licenses/COPYING.BSD-3-Clause \ + Documentation/licenses/COPYING.BSD-4-Clause-UC \ + Documentation/licenses/COPYING.GPL-2.0-or-later \ + Documentation/licenses/COPYING.ISC \ + Documentation/licenses/COPYING.LGPL-2.1-or-later + +UTIL_LINUX_CPE_ID_VENDOR = kernel +UTIL_LINUX_INSTALL_STAGING = YES +UTIL_LINUX_DEPENDENCIES = \ + host-pkgconf \ + $(if $(BR2_PACKAGE_UTIL_LINUX_LIBS),util-linux-libs) \ + $(TARGET_NLS_DEPENDENCIES) +UTIL_LINUX_CONF_OPTS += \ + --disable-rpath \ + --disable-makeinstall-chown + +UTIL_LINUX_LINK_LIBS = $(TARGET_NLS_LIBS) + +HOST_UTIL_LINUX_DEPENDENCIES = host-pkgconf + +# We also don't want the host-python dependency +HOST_UTIL_LINUX_CONF_OPTS = \ + --without-systemd \ + --with-systemdsystemunitdir=no \ + --without-python + +ifneq ($(BR2_PACKAGE_UTIL_LINUX_BINARIES)$(BR2_PACKAGE_UTIL_LINUX_CRAMFS)$(BR2_PACKAGE_UTIL_LINUX_FSCK)$(BR2_PACKAGE_UTIL_LINUX_LOSETUP),) +UTIL_LINUX_SELINUX_MODULES = fstools +endif + +# Prevent the installation from attempting to move shared libraries from +# ${usrlib_execdir} (/usr/lib) to ${libdir} (/lib), since both paths are +# the same when merged usr is in use. +ifeq ($(BR2_ROOTFS_MERGED_USR),y) +UTIL_LINUX_CONF_OPTS += --bindir=/usr/bin --sbindir=/usr/sbin --libdir=/usr/lib +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD),y) +UTIL_LINUX_CONF_OPTS += --with-systemd --with-systemdsystemunitdir=/usr/lib/systemd/system +UTIL_LINUX_DEPENDENCIES += systemd +else +UTIL_LINUX_CONF_OPTS += --without-systemd --with-systemdsystemunitdir=no +endif + +ifeq ($(BR2_PACKAGE_HAS_UDEV),y) +UTIL_LINUX_CONF_OPTS += --with-udev +UTIL_LINUX_DEPENDENCIES += udev +else +UTIL_LINUX_CONF_OPTS += --without-udev +endif + +ifeq ($(BR2_PACKAGE_NCURSES),y) +UTIL_LINUX_DEPENDENCIES += ncurses +ifeq ($(BR2_PACKAGE_NCURSES_WCHAR),y) +UTIL_LINUX_CONF_OPTS += --with-ncursesw +UTIL_LINUX_CONF_ENV += NCURSESW6_CONFIG=$(STAGING_DIR)/usr/bin/$(NCURSES_CONFIG_SCRIPTS) +else +UTIL_LINUX_CONF_OPTS += --without-ncursesw --with-ncurses --disable-widechar +UTIL_LINUX_CONF_ENV += NCURSES6_CONFIG=$(STAGING_DIR)/usr/bin/$(NCURSES_CONFIG_SCRIPTS) +endif +else +ifeq ($(BR2_USE_WCHAR),y) +UTIL_LINUX_CONF_OPTS += --enable-widechar +else +UTIL_LINUX_CONF_OPTS += --disable-widechar +endif +UTIL_LINUX_CONF_OPTS += --without-ncursesw --without-ncurses +endif + +# Unfortunately, the util-linux does LIBS="" at the end of its +# configure script. So we have to pass the proper LIBS value when +# calling the configure script to make configure tests pass properly, +# and then pass it again at build time. +UTIL_LINUX_CONF_ENV += LIBS="$(UTIL_LINUX_LINK_LIBS)" +UTIL_LINUX_MAKE_OPTS += LIBS="$(UTIL_LINUX_LINK_LIBS)" + +ifeq ($(BR2_PACKAGE_LIBSELINUX),y) +UTIL_LINUX_DEPENDENCIES += libselinux +UTIL_LINUX_CONF_OPTS += --with-selinux +else +UTIL_LINUX_CONF_OPTS += --without-selinux +define UTIL_LINUX_SELINUX_PAMFILES_TWEAK + $(foreach f,su su-l, + $(SED) '/^.*pam_selinux.so.*$$/d' \ + $(TARGET_DIR)/etc/pam.d/$(f) + ) +endef +endif + +# Used by setpriv +UTIL_LINUX_DEPENDENCIES += $(if $(BR2_PACKAGE_LIBCAP_NG),libcap-ng) + +# Used by cramfs utils +UTIL_LINUX_DEPENDENCIES += $(if $(BR2_PACKAGE_ZLIB),zlib) + +# Used by login-utils +UTIL_LINUX_DEPENDENCIES += $(if $(BR2_PACKAGE_LINUX_PAM),linux-pam) + +# Used by hardlink +UTIL_LINUX_DEPENDENCIES += $(if $(BR2_PACKAGE_PCRE2),pcre2) + +# Disable/Enable utilities +UTIL_LINUX_CONF_OPTS += \ + $(if $(BR2_PACKAGE_UTIL_LINUX_BINARIES),--enable-all-programs,--disable-all-programs) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_AGETTY),--enable-agetty,--disable-agetty) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_BFS),--enable-bfs,--disable-bfs) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_CAL),--enable-cal,--disable-cal) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_CHFN_CHSH),--enable-chfn-chsh,--disable-chfn-chsh) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_CHMEM),--enable-chmem,--disable-chmem) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_CRAMFS),--enable-cramfs,--disable-cramfs) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_EJECT),--enable-eject,--disable-eject) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_FALLOCATE),--enable-fallocate,--disable-fallocate) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_FDFORMAT),--enable-fdformat,--disable-fdformat) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_FSCK),--enable-fsck,--disable-fsck) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_HARDLINK),--enable-hardlink,--disable-hardlink) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_HWCLOCK),--enable-hwclock --disable-hwclock-gplv3,--disable-hwclock) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_IPCRM),--enable-ipcrm,--disable-ipcrm) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_IPCS),--enable-ipcs,--disable-ipcs) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_KILL),--enable-kill,--disable-kill) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_LAST),--enable-last,--disable-last) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_LIBBLKID),--enable-libblkid,--disable-libblkid) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_LIBFDISK),--enable-libfdisk,--disable-libfdisk) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_LIBMOUNT),--enable-libmount,--disable-libmount) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS),--enable-libsmartcols,--disable-libsmartcols) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_LIBUUID),--enable-libuuid,--disable-libuuid) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_LINE),--enable-line,--disable-line) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_LOGGER),--enable-logger,--disable-logger) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_LOGIN),--enable-login,--disable-login) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_LOSETUP),--enable-losetup,--disable-losetup) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_LSLOGINS),--enable-lslogins,--disable-lslogins) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_LSMEM),--enable-lsmem,--disable-lsmem) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_MESG),--enable-mesg,--disable-mesg) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_MINIX),--enable-minix,--disable-minix) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_MORE),--enable-more,--disable-more) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_MOUNT),--enable-mount,--disable-mount) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_MOUNTPOINT),--enable-mountpoint,--disable-mountpoint) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_NEWGRP),--enable-newgrp,--disable-newgrp) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_NOLOGIN),--enable-nologin,--disable-nologin) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_NSENTER),--enable-nsenter,--disable-nsenter) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_PARTX),--enable-partx,--disable-partx) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_PG),--enable-pg,--disable-pg) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_PIVOT_ROOT),--enable-pivot_root,--disable-pivot_root) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_RAW),--enable-raw,--disable-raw) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_RENAME),--enable-rename,--disable-rename) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_RFKILL),--enable-rfkill,--disable-rfkill) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_RUNUSER),--enable-runuser,--disable-runuser) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_SCHEDUTILS),--enable-schedutils,--disable-schedutils) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_SETPRIV),--enable-setpriv,--disable-setpriv) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_SETTERM),--enable-setterm,--disable-setterm) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_SU),--enable-su,--disable-su) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_SULOGIN),--enable-sulogin,--disable-sulogin) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_SWITCH_ROOT),--enable-switch_root,--disable-switch_root) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_TUNELP),--enable-tunelp,--disable-tunelp) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_UL),--enable-ul,--disable-ul) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_UNSHARE),--enable-unshare,--disable-unshare) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_UTMPDUMP),--enable-utmpdump,--disable-utmpdump) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_UUIDD),--enable-uuidd,--disable-uuidd) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_VIPW),--enable-vipw,--disable-vipw) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_WALL),--enable-wall,--disable-wall) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_WDCTL),--enable-wdctl,--disable-wdctl) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_WIPEFS),--enable-wipefs,--disable-wipefs) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_WRITE),--enable-write,--disable-write) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_ZRAMCTL),--enable-zramctl,--disable-zramctl) + +# In the host version of util-linux, we only require libuuid and +# libmount (plus libblkid as an indirect dependency of libmount). +# So disable all of the programs, unless BR2_PACKAGE_HOST_UTIL_LINUX is set + +HOST_UTIL_LINUX_CONF_OPTS += \ + --enable-libblkid \ + --enable-libmount \ + --enable-libuuid \ + --without-libmagic \ + --without-ncurses \ + --without-ncursesw \ + --without-tinfo + +ifeq ($(BR2_PACKAGE_HOST_UTIL_LINUX),y) +HOST_UTIL_LINUX_CONF_OPTS += --disable-makeinstall-chown +# disable commands that have ncurses dependency, as well as +# other ones that are useless on the host +HOST_UTIL_LINUX_CONF_OPTS += \ + --disable-agetty \ + --disable-chfn-chsh \ + --disable-chmem \ + --disable-login \ + --disable-lslogins \ + --disable-mesg \ + --disable-more \ + --disable-newgrp \ + --disable-nologin \ + --disable-nsenter \ + --disable-pg \ + --disable-rfkill \ + --disable-runuser \ + --disable-schedutils \ + --disable-setpriv \ + --disable-setterm \ + --disable-su \ + --disable-sulogin \ + --disable-tunelp \ + --disable-ul \ + --disable-unshare \ + --disable-uuidd \ + --disable-vipw \ + --disable-wall \ + --disable-wdctl \ + --disable-write \ + --disable-zramctl +# Used by cramfs utils +HOST_UTIL_LINUX_DEPENDENCIES += host-zlib +else +HOST_UTIL_LINUX_CONF_OPTS += --disable-all-programs +endif + +# Install libmount Python bindings +ifeq ($(BR2_PACKAGE_PYTHON)$(BR2_PACKAGE_PYTHON3),y) +UTIL_LINUX_CONF_OPTS += --with-python +UTIL_LINUX_DEPENDENCIES += $(if $(BR2_PACKAGE_PYTHON),python,python3) +ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBMOUNT),y) +UTIL_LINUX_CONF_OPTS += --enable-pylibmount +else +UTIL_LINUX_CONF_OPTS += --disable-pylibmount +endif +else +UTIL_LINUX_CONF_OPTS += --without-python +endif + +ifeq ($(BR2_PACKAGE_READLINE),y) +UTIL_LINUX_CONF_OPTS += --with-readline +UTIL_LINUX_LINK_LIBS += $(if $(BR2_STATIC_LIBS),-lcurses) +UTIL_LINUX_DEPENDENCIES += readline +else +UTIL_LINUX_CONF_OPTS += --without-readline +endif + +ifeq ($(BR2_PACKAGE_AUDIT),y) +UTIL_LINUX_CONF_OPTS += --with-audit +UTIL_LINUX_DEPENDENCIES += audit +else +UTIL_LINUX_CONF_OPTS += --without-audit +endif + +ifeq ($(BR2_PACKAGE_FILE),y) +UTIL_LINUX_CONF_OPTS += --with-libmagic +UTIL_LINUX_DEPENDENCIES += file +else +UTIL_LINUX_CONF_OPTS += --without-libmagic +endif + +# Install PAM configuration files +ifeq ($(BR2_PACKAGE_UTIL_LINUX_SU)$(BR2_PACKAGE_LINUX_PAM),yy) +define UTIL_LINUX_INSTALL_PAMFILES + $(INSTALL) -D -m 0644 package/util-linux/su.pam \ + $(TARGET_DIR)/etc/pam.d/su + $(INSTALL) -D -m 0644 package/util-linux/su.pam \ + $(TARGET_DIR)/etc/pam.d/su-l + $(UTIL_LINUX_SELINUX_PAMFILES_TWEAK) +endef +UTIL_LINUX_POST_INSTALL_TARGET_HOOKS += UTIL_LINUX_INSTALL_PAMFILES +endif + +# Install agetty->getty symlink to avoid breakage when there's no busybox +ifeq ($(BR2_PACKAGE_UTIL_LINUX_AGETTY),y) +ifeq ($(BR2_PACKAGE_BUSYBOX),) +define UTIL_LINUX_GETTY_SYMLINK + ln -sf agetty $(TARGET_DIR)/sbin/getty +endef +endif +endif + +UTIL_LINUX_POST_INSTALL_TARGET_HOOKS += UTIL_LINUX_GETTY_SYMLINK + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) + +# Must be included after the autotools-package call, to make sure all variables +# are available +include package/util-linux/util-linux-libs/util-linux-libs.mk diff --git a/package/utp_com/Config.in.host b/package/utp_com/Config.in.host new file mode 100644 index 00000000..8f733de8 --- /dev/null +++ b/package/utp_com/Config.in.host @@ -0,0 +1,7 @@ +config BR2_PACKAGE_HOST_UTP_COM + bool "host utp_com" + help + This package is used to send commands to hardware + via Freescale's UTP protocol (similar to MFGTools) + + https://github.com/ixonos/utp_com diff --git a/package/utp_com/utp_com.hash b/package/utp_com/utp_com.hash new file mode 100644 index 00000000..bc25be20 --- /dev/null +++ b/package/utp_com/utp_com.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 8b5ba0058a78de69faf6822bb10b457fff2f9e55dc112ccb81c35214b061c6e6 utp_com-dee512ced1e9367d223d22f10797fbf9aeacfab6.tar.gz +sha256 a45d0bb572ed792ed34627a72621834b3ba92aab6e2cc4e04301dee7a728d753 LICENSE diff --git a/package/utp_com/utp_com.mk b/package/utp_com/utp_com.mk new file mode 100644 index 00000000..5890a70d --- /dev/null +++ b/package/utp_com/utp_com.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# utp_com +# +################################################################################ + +UTP_COM_VERSION = dee512ced1e9367d223d22f10797fbf9aeacfab6 +UTP_COM_SITE = $(call github,freescale,utp_com,$(UTP_COM_VERSION)) +UTP_COM_LICENSE = GPL-2.0+ +UTP_COM_LICENSE_FILES = LICENSE +HOST_UTP_COM_DEPENDENCIES = host-sg3_utils + +define HOST_UTP_COM_BUILD_CMDS + $(HOST_CONFIGURE_OPTS) $(MAKE) -C $(@D) +endef + +define HOST_UTP_COM_INSTALL_CMDS + $(INSTALL) -D -m 755 $(@D)/utp_com $(HOST_DIR)/bin/utp_com +endef + +$(eval $(host-generic-package)) diff --git a/package/uvw/Config.in b/package/uvw/Config.in new file mode 100644 index 00000000..e5cfc541 --- /dev/null +++ b/package/uvw/Config.in @@ -0,0 +1,20 @@ +config BR2_PACKAGE_UVW + bool "uvw" + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # libuv + depends on BR2_USE_MMU # libuv + depends on !BR2_STATIC_LIBS # libuv + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libuv + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_7 # C++17 + select BR2_PACKAGE_LIBUV + help + Header-only, event based, tiny and easy to use + libuv wrapper in modern C++. + + https://github.com/skypjack/uvw + +comment "uvw needs a toolchain w/ NPTL, dynamic library, C++, gcc >= 7" + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS || \ + !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_7 + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_SYNC_4 diff --git a/package/uvw/uvw.hash b/package/uvw/uvw.hash new file mode 100644 index 00000000..ba8c7b89 --- /dev/null +++ b/package/uvw/uvw.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 aa5769f5b9ba50de72ab02a8f8acf298b4aa9ceaef07992418a13a0fa119ce7d uvw-2.8.0_libuv_v1.40.tar.gz +sha256 755b2f245af22830c15b60c54469c0d92fbed42009b0d0074cec4b3959905757 LICENSE diff --git a/package/uvw/uvw.mk b/package/uvw/uvw.mk new file mode 100644 index 00000000..f152d9f1 --- /dev/null +++ b/package/uvw/uvw.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# uvw +# +################################################################################ + +UVW_VERSION = 2.8.0_libuv_v1.40 +UVW_SITE = $(call github,skypjack,uvw,v$(UVW_VERSION)) +UVW_INSTALL_STAGING = YES +UVW_INSTALL_TARGET = NO +UVW_SUPPORTS_IN_SOURCE_BUILD = NO +UVW_DEPENDENCIES = libuv +UVW_LICENSE = MIT +UVW_LICENSE_FILES = LICENSE + +$(eval $(cmake-package)) diff --git a/package/ux500-firmware/Config.in b/package/ux500-firmware/Config.in new file mode 100644 index 00000000..1c182373 --- /dev/null +++ b/package/ux500-firmware/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_UX500_FIRMWARE + bool "ux500-firmware" + help + This package provides various binary firmware files (closed + binary blobs) for the Azurewave AW-NH580 combo module (wifi, + bt, gps). + + https://launchpad.net/~igloocommunity-maintainers/+archive/snowball/+files/ diff --git a/package/ux500-firmware/ux500-firmware.hash b/package/ux500-firmware/ux500-firmware.hash new file mode 100644 index 00000000..b77ed204 --- /dev/null +++ b/package/ux500-firmware/ux500-firmware.hash @@ -0,0 +1,3 @@ +# locally computed hash +sha256 81633274a9157c076e5e09b5addd81fbcef504b829fc801041cea50eea774bcd ux500-firmware_1.1.3-6linaro1.tar.gz +sha256 b5bbc3fb3ff2f8e165b3bf60b25702d8970b3d7fe88b1c883f20615d550a7cb2 license.txt diff --git a/package/ux500-firmware/ux500-firmware.mk b/package/ux500-firmware/ux500-firmware.mk new file mode 100644 index 00000000..428ed342 --- /dev/null +++ b/package/ux500-firmware/ux500-firmware.mk @@ -0,0 +1,23 @@ +################################################################################ +# +# ux500-firmware +# +################################################################################ + +UX500_FIRMWARE_VERSION = 1.1.3-6 +UX500_FIRMWARE_SOURCE = ux500-firmware_$(UX500_FIRMWARE_VERSION)linaro1.tar.gz +UX500_FIRMWARE_SITE = https://launchpad.net/~igloocommunity-maintainers/+archive/snowball/+files +UX500_FIRMWARE_LICENSE = Snowball click-wrap license +UX500_FIRMWARE_LICENSE_FILES = license.txt +UX500_FIRMWARE_REDISTRIBUTE = NO + +# The CG2900 linux driver has to load firmware named CG29XX_* but the firmware +# filenames contained in this package are CG2900_* hence the code below +define UX500_FIRMWARE_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install + for f in $(TARGET_DIR)/lib/firmware/CG2900* ; do \ + mv $$f $${f/CG2900/CG29XX}; \ + done +endef + +$(eval $(generic-package)) diff --git a/package/v4l2grab/Config.in b/package/v4l2grab/Config.in new file mode 100644 index 00000000..ec3a7a8c --- /dev/null +++ b/package/v4l2grab/Config.in @@ -0,0 +1,20 @@ +config BR2_PACKAGE_V4L2GRAB + bool "v4l2grab" + depends on BR2_TOOLCHAIN_HAS_THREADS # libv4l + depends on BR2_USE_MMU # libv4l + depends on !BR2_STATIC_LIBS # libv4l + depends on BR2_INSTALL_LIBSTDCPP # libv4l + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 # libv4l + select BR2_PACKAGE_JPEG + select BR2_PACKAGE_LIBV4L + help + Utility for grabbing JPEGs form V4L2 devices. This tool is + similar to v4l2grab available from libv4l contrib directory, + but provides additional features such as JPEG output. + + http://www.twam.info/software/v4l2grab-grabbing-jpegs-from-v4l2-devices + +comment "v4l2grab needs a toolchain w/ threads, dynamic library, C++ and headers >= 3.0" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS \ + || !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 diff --git a/package/v4l2grab/v4l2grab.hash b/package/v4l2grab/v4l2grab.hash new file mode 100644 index 00000000..eba36b5c --- /dev/null +++ b/package/v4l2grab/v4l2grab.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 9a8d0d1ca5ac9fb9f66e00300bb3265d156cf1cb67eb30f6e6637c83b0b507a1 v4l2grab-f8d8844d52387b3db7b8736f5e86156d9374f781.tar.gz +sha256 7fa0d45fe86fda646fada21ecfa7672e951b01c521aecd358f586facd65fb5b3 LICENSE.md diff --git a/package/v4l2grab/v4l2grab.mk b/package/v4l2grab/v4l2grab.mk new file mode 100644 index 00000000..68efe27f --- /dev/null +++ b/package/v4l2grab/v4l2grab.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# v4l2grab +# +################################################################################ + +V4L2GRAB_VERSION = f8d8844d52387b3db7b8736f5e86156d9374f781 +V4L2GRAB_SITE = $(call github,twam,v4l2grab,$(V4L2GRAB_VERSION)) +V4L2GRAB_LICENSE = GPL-2.0+ +V4L2GRAB_LICENSE_FILES = LICENSE.md +# Fetched from github, no pre-generated configure script provided +V4L2GRAB_AUTORECONF = YES +V4L2GRAB_DEPENDENCIES = jpeg libv4l + +$(eval $(autotools-package)) diff --git a/package/v4l2loopback/Config.in b/package/v4l2loopback/Config.in new file mode 100644 index 00000000..d8ca31e5 --- /dev/null +++ b/package/v4l2loopback/Config.in @@ -0,0 +1,30 @@ +config BR2_PACKAGE_V4L2LOOPBACK + bool "v4l2loopback" + depends on BR2_LINUX_KERNEL + help + This module allows you to create "virtual video devices". + Normal (v4l2) applications will read these devices as if + they were ordinary video devices, but the video will not be + read from e.g. a capture card but instead it is generated by + another application. + + https://github.com/umlaeute/v4l2loopback + +if BR2_PACKAGE_V4L2LOOPBACK + +config BR2_PACKAGE_V4L2LOOPBACK_UTILS + bool "utils" + depends on BR2_USE_MMU # bash + select BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # bash + select BR2_PACKAGE_BASH # runtime dependency + select BR2_PACKAGE_SUDO # runtime dependency + help + Install applications to interact with v4l2-loopback devices + ("virtual video devices"). Currently there is only a single + command line utility: v4l2loopback-ctl: tool to set + framerate, format and timeout image. + +endif + +comment "v4l2loopback needs a Linux kernel to be built" + depends on !BR2_LINUX_KERNEL diff --git a/package/v4l2loopback/v4l2loopback.hash b/package/v4l2loopback/v4l2loopback.hash new file mode 100644 index 00000000..f4491e02 --- /dev/null +++ b/package/v4l2loopback/v4l2loopback.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 e152cd6df6a8add172fb74aca3a9188264823efa5a2317fe960d45880b9406ae v4l2loopback-0.12.5.tar.gz +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/v4l2loopback/v4l2loopback.mk b/package/v4l2loopback/v4l2loopback.mk new file mode 100644 index 00000000..7701bc3a --- /dev/null +++ b/package/v4l2loopback/v4l2loopback.mk @@ -0,0 +1,19 @@ +################################################################################ +# +# v4l2loopback +# +################################################################################ + +V4L2LOOPBACK_VERSION = 0.12.5 +V4L2LOOPBACK_SITE = $(call github,umlaeute,v4l2loopback,v$(V4L2LOOPBACK_VERSION)) +V4L2LOOPBACK_LICENSE = GPL-2.0+ +V4L2LOOPBACK_LICENSE_FILES = COPYING + +ifeq ($(BR2_PACKAGE_V4L2LOOPBACK_UTILS),y) +define V4L2LOOPBACK_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/utils/v4l2loopback-ctl $(TARGET_DIR)/usr/bin/v4l2loopback-ctl +endef +endif + +$(eval $(kernel-module)) +$(eval $(generic-package)) 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 index 00000000..a2a06233 --- /dev/null +++ b/package/vala/0001-dont-add-dirty-to-valac-version.patch @@ -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 +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-wrapper b/package/vala/vala-wrapper new file mode 100644 index 00000000..84fc905b --- /dev/null +++ b/package/vala/vala-wrapper @@ -0,0 +1,2 @@ +#!/bin/sh +$0-@VALA_VERSION@ --vapidir=${STAGING_DIR}/usr/share/vala/vapi --girdir=${STAGING_DIR}/usr/share/gir-1.0 "$@" diff --git a/package/vala/vala.hash b/package/vala/vala.hash new file mode 100644 index 00000000..319c7ef2 --- /dev/null +++ b/package/vala/vala.hash @@ -0,0 +1,4 @@ +# From https://download.gnome.org/sources/vala/0.46/vala-0.46.6.sha256sum +sha256 ef31649932872f094971d46453b21c60a41661670f98afa334062425b4aec47a vala-0.46.6.tar.xz +# Locally computed +sha256 5df07007198989c622f5d41de8d703e7bef3d0e79d62e24332ee739a452af62a COPYING diff --git a/package/vala/vala.mk b/package/vala/vala.mk new file mode 100644 index 00000000..93a304f1 --- /dev/null +++ b/package/vala/vala.mk @@ -0,0 +1,37 @@ +################################################################################ +# +# vala +# +################################################################################ + +VALA_VERSION_MAJOR = 0.46 +VALA_VERSION = $(VALA_VERSION_MAJOR).6 +VALA_SITE = http://download.gnome.org/sources/vala/$(VALA_VERSION_MAJOR) +VALA_SOURCE = vala-$(VALA_VERSION).tar.xz +VALA_LICENSE = LGPL-2.1+ +VALA_LICENSE_FILES = COPYING +VALA_CPE_ID_VENDOR = gnome + +HOST_VALA_DEPENDENCIES = host-bison host-flex host-libglib2 +# Yes, the autoconf script understands ':' as "xsltproc is not +# available". +HOST_VALA_CONF_ENV = ac_cv_path_XSLTPROC=: +HOST_VALA_CONF_OPTS += --disable-valadoc + +# We wrap vala, valac and vapigen to point to the proper gir and vapi data dirs +# Otherwise we'll get host directory data which isn't enough +define HOST_VALA_INSTALL_WRAPPER + $(INSTALL) -D -m 0755 package/vala/vala-wrapper \ + $(HOST_DIR)/bin/vala + $(INSTALL) -D -m 0755 package/vala/vala-wrapper \ + $(HOST_DIR)/bin/valac + $(INSTALL) -D -m 0755 package/vala/vala-wrapper \ + $(HOST_DIR)/bin/vapigen + $(SED) 's,@VALA_VERSION@,$(VALA_VERSION_MAJOR),' \ + $(HOST_DIR)/bin/vala \ + $(HOST_DIR)/bin/valac \ + $(HOST_DIR)/bin/vapigen +endef +HOST_VALA_POST_INSTALL_HOOKS += HOST_VALA_INSTALL_WRAPPER + +$(eval $(host-autotools-package)) diff --git a/package/valgrind/0001-workaround-SIGSEGV-on-PPC.patch b/package/valgrind/0001-workaround-SIGSEGV-on-PPC.patch new file mode 100644 index 00000000..8a6003cb --- /dev/null +++ b/package/valgrind/0001-workaround-SIGSEGV-on-PPC.patch @@ -0,0 +1,32 @@ +From ff29b837f21a69c79289c3a87b03f8c23e05616e Mon Sep 17 00:00:00 2001 +From: Pierre Habouzit +Date: Tue, 10 May 2011 23:11:45 +0200 +Subject: [PATCH] workaround SIGSEGV on PPC. +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Pierre Habouzit +Signed-off-by: Jérôme Pouiller +--- + coregrind/m_machine.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/coregrind/m_machine.c b/coregrind/m_machine.c +index 6110c93..298a00e 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_threadstate.h" +-- +2.1.4 + diff --git a/package/valgrind/0002-Define-PTRACE_GETSIGINFO-on-PowerPC-when-not-availab.patch b/package/valgrind/0002-Define-PTRACE_GETSIGINFO-on-PowerPC-when-not-availab.patch new file mode 100644 index 00000000..44adfc41 --- /dev/null +++ b/package/valgrind/0002-Define-PTRACE_GETSIGINFO-on-PowerPC-when-not-availab.patch @@ -0,0 +1,37 @@ +From 7311686d6286972ff97cc18b2416a4cdd7fc5c7e Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sat, 31 Oct 2015 12:15:24 +0100 +Subject: [PATCH] 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 +--- + coregrind/vgdb-invoker-ptrace.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/coregrind/vgdb-invoker-ptrace.c b/coregrind/vgdb-invoker-ptrace.c +index d65f59a..bdefac2 100644 +--- a/coregrind/vgdb-invoker-ptrace.c ++++ b/coregrind/vgdb-invoker-ptrace.c +@@ -72,6 +72,12 @@ + # endif + #endif + ++#if defined(__powerpc__) ++# ifndef PTRACE_GETSIGINFO ++# define PTRACE_GETSIGINFO 0x4202 ++# endif ++#endif ++ + // 32-bit or 64-bit wide, depending on primary architecture. + typedef Addr CORE_ADDR; + typedef Addr PTRACE_XFER_TYPE; +-- +2.1.4 + diff --git a/package/valgrind/Config.in b/package/valgrind/Config.in new file mode 100644 index 00000000..56e4af21 --- /dev/null +++ b/package/valgrind/Config.in @@ -0,0 +1,87 @@ +config BR2_PACKAGE_VALGRIND_ARCH_SUPPORTS + bool + default y if BR2_aarch64 + default y if BR2_ARM_CPU_ARMV7A + default y if BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el + default y if BR2_i386 || BR2_x86_64 + default y if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le + depends on !BR2_MIPS_SOFT_FLOAT + +comment "valgrind needs a toolchain w/ dynamic library" + depends on BR2_PACKAGE_VALGRIND_ARCH_SUPPORTS + depends on BR2_STATIC_LIBS + +config BR2_PACKAGE_VALGRIND + bool "valgrind" + depends on BR2_PACKAGE_VALGRIND_ARCH_SUPPORTS + depends on !BR2_STATIC_LIBS + help + Tool for debugging and profiling Linux programs. + + http://valgrind.org/ + +if BR2_PACKAGE_VALGRIND + +config BR2_PACKAGE_VALGRIND_MEMCHECK + bool "Memcheck: a memory error detector" + default y + help + This option allows to install the Memcheck tool + +config BR2_PACKAGE_VALGRIND_CACHEGRIND + bool "Cachegrind: a cache and branch-prediction profiler" + default y + help + This option allows to install the Cachegrind tool + +config BR2_PACKAGE_VALGRIND_CALLGRIND + bool "Callgrind: a call-graph generating cache and branch prediction profiler" + default y + help + This option allows to install the Callgrind tool + +config BR2_PACKAGE_VALGRIND_HELGRIND + bool "Helgrind: a thread error detector" + default y + help + This option allows to install the Helgrind tool + +config BR2_PACKAGE_VALGRIND_DRD + bool "DRD: a thread error detector" + default y + help + This option allows to install the DRD tool + +config BR2_PACKAGE_VALGRIND_MASSIF + bool "Massif: a heap profiler" + default y + help + This option allows to install the Massif tool + +config BR2_PACKAGE_VALGRIND_DHAT + bool "DHAT: a dynamic heap analysis tool" + default y + help + This option allows to install the DHAT tool + +config BR2_PACKAGE_VALGRIND_SGCHECK + bool "SGCheck: an experimental stack and global array overrun detector" + help + This option allows to install the SGCheck tool + +config BR2_PACKAGE_VALGRIND_BBV + bool "BBV: an experimental basic block vector generation tool" + help + This option allows to install the BBV tool + +config BR2_PACKAGE_VALGRIND_LACKEY + bool "Lackey: an example tool" + help + This option allows to install the Lackey tool + +config BR2_PACKAGE_VALGRIND_NULGRIND + bool "Nulgrind: the minimal Valgrind tool" + help + This option allows to install the Nulgrind tool + +endif diff --git a/package/valgrind/uclibc.supp b/package/valgrind/uclibc.supp new file mode 100644 index 00000000..179d27b7 --- /dev/null +++ b/package/valgrind/uclibc.supp @@ -0,0 +1,212 @@ +{ + + Memcheck:Addr1 + fun:_dl_strdup + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr1 + fun:_dl_malloc + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Cond + fun:_dl_get_ready_to_run + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr1 + fun:_dl_get_ready_to_run + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr2 + fun:_dl_get_ready_to_run + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr4 + fun:_dl_get_ready_to_run + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr1 + fun:_dl_add_elf_hash_table + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr2 + fun:_dl_add_elf_hash_table + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr4 + fun:_dl_add_elf_hash_table + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr1 + fun:_dl_check_if_named_library_is_loaded + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr4 + fun:_dl_check_if_named_library_is_loaded + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr1 + fun:_dl_check_hashed_files + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr4 + fun:_dl_check_hashed_files + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr1 + fun:_dl_load_elf_shared_library + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr2 + fun:_dl_load_elf_shared_library + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr4 + fun:_dl_load_elf_shared_library + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr2 + fun:_dl_load_shared_library + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr1 + fun:_dl_find_hash + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr4 + fun:_dl_find_hash + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr4 + fun:_dl_fixup + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr2 + fun:_dl_fixup + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr4 + fun:_dl_linux_resolve + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr4 + fun:_dl_linux_resolver + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr2 + fun:_dl_parse_lazy_relocation_information + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr2 + obj:/lib/ld-uClibc* + fun:_dl_parse_lazy_relocation_information +} +{ + + Memcheck:Addr4 + fun:_dl_parse_lazy_relocation_information + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr4 + obj:/lib/ld-uClibc* + obj:/lib/ld-uClibc* + fun:_dl_parse_lazy_relocation_information +} +{ + + Memcheck:Addr4 + obj:/lib/ld-uClibc* + fun:_dl_parse_lazy_relocation_information +} +{ + + Memcheck:Addr2 + obj:/lib/ld-uClibc* + fun:_dl_parse_relocation_information +} +{ + + Memcheck:Addr2 + fun:_dl_parse_relocation_information + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr4 + fun:_dl_parse_relocation_information + obj:/lib/ld-uClibc* +} +{ + + Memcheck:Addr4 + obj:/lib/ld-uClibc* + fun:_dl_parse_relocation_information +} +{ + + Memcheck:Addr4 + obj:/lib/ld-uClibc* + obj:/lib/ld-uClibc* + fun:_dl_parse_relocation_information +} +{ + + Memcheck:Addr2 + obj:/lib/ld-uClibc-0.9.27.so + fun:* +} +{ + + Memcheck:Addr4 + obj:/lib/ld-uClibc-0.9.27.so + fun:* +} diff --git a/package/valgrind/valgrind.hash b/package/valgrind/valgrind.hash new file mode 100644 index 00000000..2b24ac44 --- /dev/null +++ b/package/valgrind/valgrind.hash @@ -0,0 +1,6 @@ +# From https://valgrind.org/downloads/current.html +md5 d1b153f1ab17cf1f311705e7a83ef589 valgrind-3.16.1.tar.bz2 + +# License files +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING +sha256 56976e64523fa1e68db4e6f464f5b2cb89d7d08f54b1d012e317b8db286b3faf COPYING.DOCS diff --git a/package/valgrind/valgrind.mk b/package/valgrind/valgrind.mk new file mode 100644 index 00000000..a1b4d97e --- /dev/null +++ b/package/valgrind/valgrind.mk @@ -0,0 +1,160 @@ +################################################################################ +# +# valgrind +# +################################################################################ + +VALGRIND_VERSION = 3.16.1 +VALGRIND_SITE = https://sourceware.org/pub/valgrind +VALGRIND_SOURCE = valgrind-$(VALGRIND_VERSION).tar.bz2 +VALGRIND_LICENSE = GPL-2.0, GFDL-1.2 +VALGRIND_LICENSE_FILES = COPYING COPYING.DOCS +VALGRIND_CPE_ID_VENDOR = valgrind +VALGRIND_CONF_OPTS = \ + --disable-ubsan \ + --without-mpicc +VALGRIND_INSTALL_STAGING = YES + +# Valgrind must be compiled with no stack protection, so forcefully +# pass -fno-stack-protector to override what Buildroot may have in +# TARGET_CFLAGS if BR2_SSP_* support is enabled. +VALGRIND_CFLAGS = \ + $(TARGET_CFLAGS) \ + -fno-stack-protector + +# When Valgrind detects a 32-bit MIPS architecture, it forcibly adds +# -march=mips32 to CFLAGS; when it detects a 64-bit MIPS architecture, +# it forcibly adds -march=mips64. This causes Valgrind to be built +# always for the first ISA revision level (R1), even when the user has +# configured Buildroot for the second ISA revision level (R2). +# +# Override the CFLAGS variable (which Valgrind appends to its CFLAGS) +# and pass the right -march option, so they take precedence over +# Valgrind's wrongfully detected value. +ifeq ($(BR2_mips)$(BR2_mipsel)$(BR2_mips64)$(BR2_mips64el),y) +VALGRIND_CFLAGS += -march="$(GCC_TARGET_ARCH)" +endif + +VALGRIND_CONF_ENV = CFLAGS="$(VALGRIND_CFLAGS)" + +# fix uclibc configure c99 support detection +VALGRIND_CONF_ENV += ac_cv_prog_cc_c99='-std=gnu99' + +# On ARM, Valgrind only supports ARMv7, and uses the arch part of the +# host tuple to determine whether it's being built for ARMv7 or +# not. Therefore, we adjust the host tuple to specify we're on +# ARMv7. The valgrind package is guaranteed, through Config.in, to +# only be selected on ARMv7-A platforms. +ifeq ($(BR2_ARM_CPU_ARMV7A),y) +VALGRIND_CONF_OPTS += \ + --host=$(patsubst arm-%,armv7-%,$(GNU_TARGET_NAME)) +endif + +ifeq ($(BR2_GCC_ENABLE_LTO),y) +VALGRIND_CONF_OPTS += --enable-lto +else +VALGRIND_CONF_OPTS += --disable-lto +endif + +define VALGRIND_INSTALL_UCLIBC_SUPP + $(INSTALL) -D -m 0644 package/valgrind/uclibc.supp $(TARGET_DIR)/usr/lib/valgrind/uclibc.supp +endef + +VALGRIND_POST_INSTALL_TARGET_HOOKS += VALGRIND_INSTALL_UCLIBC_SUPP + +ifeq ($(BR2_PACKAGE_VALGRIND_MEMCHECK),) +define VALGRIND_REMOVE_MEMCHECK + rm -f $(TARGET_DIR)/usr/lib/valgrind/*memcheck* +endef + +VALGRIND_POST_INSTALL_TARGET_HOOKS += VALGRIND_REMOVE_MEMCHECK +endif + +ifeq ($(BR2_PACKAGE_VALGRIND_CACHEGRIND),) +define VALGRIND_REMOVE_CACHEGRIND + rm -f $(TARGET_DIR)/usr/lib/valgrind/*cachegrind* + for i in cg_annotate cg_diff cg_merge; do \ + rm -f $(TARGET_DIR)/usr/bin/$$i ; \ + done +endef + +VALGRIND_POST_INSTALL_TARGET_HOOKS += VALGRIND_REMOVE_CACHEGRIND +endif + +ifeq ($(BR2_PACKAGE_VALGRIND_CALLGRIND),) +define VALGRIND_REMOVE_CALLGRIND + rm -f $(TARGET_DIR)/usr/lib/valgrind/*callgrind* + for i in callgrind_annotate callgrind_control ; do \ + rm -f $(TARGET_DIR)/usr/bin/$$i ; \ + done +endef + +VALGRIND_POST_INSTALL_TARGET_HOOKS += VALGRIND_REMOVE_CALLGRIND +endif + +ifeq ($(BR2_PACKAGE_VALGRIND_HELGRIND),) +define VALGRIND_REMOVE_HELGRIND + rm -f $(TARGET_DIR)/usr/lib/valgrind/*helgrind* +endef + +VALGRIND_POST_INSTALL_TARGET_HOOKS += VALGRIND_REMOVE_HELGRIND +endif + +ifeq ($(BR2_PACKAGE_VALGRIND_DRD),) +define VALGRIND_REMOVE_DRD + rm -f $(TARGET_DIR)/usr/lib/valgrind/*drd* +endef + +VALGRIND_POST_INSTALL_TARGET_HOOKS += VALGRIND_REMOVE_DRD +endif + +ifeq ($(BR2_PACKAGE_VALGRIND_MASSIF),) +define VALGRIND_REMOVE_MASSIF + rm -f $(TARGET_DIR)/usr/lib/valgrind/*massif* + rm -f $(TARGET_DIR)/usr/bin/ms_script +endef + +VALGRIND_POST_INSTALL_TARGET_HOOKS += VALGRIND_REMOVE_MASSIF +endif + +ifeq ($(BR2_PACKAGE_VALGRIND_DHAT),) +define VALGRIND_REMOVE_DHAT + rm -f $(TARGET_DIR)/usr/lib/valgrind/*dhat* +endef + +VALGRIND_POST_INSTALL_TARGET_HOOKS += VALGRIND_REMOVE_DHAT +endif + +ifeq ($(BR2_PACKAGE_VALGRIND_SGCHECK),) +define VALGRIND_REMOVE_SGCHECK + rm -f $(TARGET_DIR)/usr/lib/valgrind/*sgcheck* +endef + +VALGRIND_POST_INSTALL_TARGET_HOOKS += VALGRIND_REMOVE_SGCHECK +endif + +ifeq ($(BR2_PACKAGE_VALGRIND_BBV),) +define VALGRIND_REMOVE_BBV + rm -f $(TARGET_DIR)/usr/lib/valgrind/*bbv* +endef + +VALGRIND_POST_INSTALL_TARGET_HOOKS += VALGRIND_REMOVE_BBV +endif + +ifeq ($(BR2_PACKAGE_VALGRIND_LACKEY),) +define VALGRIND_REMOVE_LACKEY + rm -f $(TARGET_DIR)/usr/lib/valgrind/*lackey* +endef + +VALGRIND_POST_INSTALL_TARGET_HOOKS += VALGRIND_REMOVE_LACKEY +endif + +ifeq ($(BR2_PACKAGE_VALGRIND_NULGRIND),) +define VALGRIND_REMOVE_NULGRIND + rm -f $(TARGET_DIR)/usr/lib/valgrind/*none* +endef + +VALGRIND_POST_INSTALL_TARGET_HOOKS += VALGRIND_REMOVE_NULGRIND +endif + +$(eval $(autotools-package)) diff --git a/package/valijson/Config.in b/package/valijson/Config.in new file mode 100644 index 00000000..10721b37 --- /dev/null +++ b/package/valijson/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_VALIJSON + bool "valijson" + depends on BR2_USE_WCHAR + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_BOOST + select BR2_PACKAGE_BOOST_REGEX + help + Valijson is a header-only JSON Schema Validation library for + C++. Valijson provides a simple validation API that allows + you load JSON Schemas, and validate documents loaded by one + of several supported parser libraries like boost, jsoncpp, + rapidjson and picoJSON. + + https://github.com/tristanpenman/valijson + +comment "valijson needs a toolchain w/ C++, threads, wchar support" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR diff --git a/package/valijson/valijson.hash b/package/valijson/valijson.hash new file mode 100644 index 00000000..e184ccb7 --- /dev/null +++ b/package/valijson/valijson.hash @@ -0,0 +1,3 @@ +# Locally Computed: +sha256 2ac881a36f90810b41b66511502dea1e7886137ad31bcfb4e917d929c5028c35 valijson-0.3.tar.gz +sha256 1a0f99926a2dbec30eba3db820236d9953fbe3048976923ac24980e655fbe991 LICENSE diff --git a/package/valijson/valijson.mk b/package/valijson/valijson.mk new file mode 100644 index 00000000..e425757d --- /dev/null +++ b/package/valijson/valijson.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# valijson +# +################################################################################ + +VALIJSON_VERSION = 0.3 +VALIJSON_SITE = $(call github,tristanpenman,valijson,v$(VALIJSON_VERSION)) +VALIJSON_LICENSE = BSD-2-Clause +VALIJSON_LICENSE_FILES = LICENSE +VALIJSON_CPE_ID_VENDOR = valijson_project +VALIJSON_INSTALL_STAGING = YES +VALIJSON_INSTALL_TARGET = NO +VALIJSON_DEPENDENCIES = boost +VALIJSON_CONF_OPTS = -Dvalijson_INSTALL_HEADERS=TRUE -Dvalijson_BUILD_TESTS=FALSE + +$(eval $(cmake-package)) diff --git a/package/vboot-utils/0001-Add-missing-definition-of-MTD_CHAR_MAJOR.patch b/package/vboot-utils/0001-Add-missing-definition-of-MTD_CHAR_MAJOR.patch new file mode 100644 index 00000000..42410c8d --- /dev/null +++ b/package/vboot-utils/0001-Add-missing-definition-of-MTD_CHAR_MAJOR.patch @@ -0,0 +1,30 @@ +From 1438211660e700b2c9505863aae1cc957236b7c8 Mon Sep 17 00:00:00 2001 +From: Alex Suykov +Date: Thu, 21 Jan 2016 21:59:46 +0100 +Subject: [PATCH] Add missing definition of MTD_CHAR_MAJOR + +This definition missing from for kernels <= 3.13 + +Signed-off-by: Alex Suykov +--- + cgpt/cgpt_wrapper.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/cgpt/cgpt_wrapper.c b/cgpt/cgpt_wrapper.c +index dcfaab9..4d07aad 100644 +--- a/cgpt/cgpt_wrapper.c ++++ b/cgpt/cgpt_wrapper.c +@@ -25,6 +25,10 @@ + #include "cgpt_nor.h" + #include "cryptolib.h" + ++#ifndef MTD_CHAR_MAJOR ++#define MTD_CHAR_MAJOR 90 ++#endif ++ + // Check if cmdline |argv| has "-D". "-D" signifies that GPT structs are stored + // off device, and hence we should not wrap around cgpt. + static bool has_dash_D(int argc, const char *const argv[]) { +-- +2.6.4 + diff --git a/package/vboot-utils/0002-Add-missing-header-include-for-ssize_t.patch b/package/vboot-utils/0002-Add-missing-header-include-for-ssize_t.patch new file mode 100644 index 00000000..4d559eab --- /dev/null +++ b/package/vboot-utils/0002-Add-missing-header-include-for-ssize_t.patch @@ -0,0 +1,27 @@ +From b6bed8d4e9453bc74ba021c8c17e20c3b5964c37 Mon Sep 17 00:00:00 2001 +From: Alex Suykov +Date: Thu, 21 Jan 2016 22:00:34 +0100 +Subject: [PATCH] Add missing header include for ssize_t + +The code uses ssize_t which is usually defined in . + +Signed-off-by: Alex Suykov +--- + host/lib/fmap.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/host/lib/fmap.c b/host/lib/fmap.c +index c95338d..e3db826 100644 +--- a/host/lib/fmap.c ++++ b/host/lib/fmap.c +@@ -6,6 +6,7 @@ + + #include + #include ++#include + + #include "fmap.h" + +-- +2.6.4 + diff --git a/package/vboot-utils/0003-Avoid-RSA-type-redefinition.patch b/package/vboot-utils/0003-Avoid-RSA-type-redefinition.patch new file mode 100644 index 00000000..86374ca8 --- /dev/null +++ b/package/vboot-utils/0003-Avoid-RSA-type-redefinition.patch @@ -0,0 +1,44 @@ +From 593407d2b3ea3b871d55ec399671e48c84b900a7 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Thu, 21 Jan 2016 22:01:37 +0100 +Subject: [PATCH] Avoid RSA type redefinition + +The host_key.h headers does: + + typedef struct rsa_st RSA; + +But this type definition is already done by the OpenSSL headers. + +While such a type redefinition is legal with recent gcc versions, it +doesn't build with older gcc versions such as gcc 4.4. + +To work around this problem, we instead use a forward declaration of +"struct rsa_st", and change the only place where the RSA type was used +by "struct rsa_st". + +Signed-off-by: Thomas Petazzoni +--- + host/lib/include/host_key.h | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/host/lib/include/host_key.h b/host/lib/include/host_key.h +index 9f98ccc..c2d01a5 100644 +--- a/host/lib/include/host_key.h ++++ b/host/lib/include/host_key.h +@@ -12,11 +12,11 @@ + #include "vboot_struct.h" + + +-typedef struct rsa_st RSA; ++struct rsa_st; + + /* Private key data */ + typedef struct VbPrivateKey { +- RSA* rsa_private_key; /* Private key data */ ++ struct rsa_rt* rsa_private_key; /* Private key data */ + uint64_t algorithm; /* Algorithm to use when signing */ + } VbPrivateKey; + +-- +2.6.4 + diff --git a/package/vboot-utils/0004-Disable-static-futility.patch b/package/vboot-utils/0004-Disable-static-futility.patch new file mode 100644 index 00000000..649d3162 --- /dev/null +++ b/package/vboot-utils/0004-Disable-static-futility.patch @@ -0,0 +1,30 @@ +The package attempts to build a statically-linked host binary, futility_s, +which is not used anywhere in buildroot but may be causing build failures +if the build host lacks static libc. + +Signed-off-by: Alex Suykov + +--- a/Makefile ++++ b/Makefile +@@ -1079,7 +1079,7 @@ + # new Firmware Utility + + .PHONY: futil +-futil: ${FUTIL_STATIC_BIN} ${FUTIL_BIN} ++futil: ${FUTIL_BIN} + + ${FUTIL_STATIC_BIN}: ${FUTIL_STATIC_OBJS} ${UTILLIB} + @${PRINTF} " LD $(subst ${BUILD}/,,$@)\n" +@@ -1091,10 +1091,10 @@ + ${Q}${LD} -o $@ ${CFLAGS} ${LDFLAGS} $^ ${LDLIBS} + + .PHONY: futil_install +-futil_install: ${FUTIL_BIN} ${FUTIL_STATIC_BIN} ++futil_install: ${FUTIL_BIN} + @${PRINTF} " INSTALL futility\n" + ${Q}mkdir -p ${UB_DIR} +- ${Q}${INSTALL} -t ${UB_DIR} ${FUTIL_BIN} ${FUTIL_STATIC_BIN} ++ ${Q}${INSTALL} -t ${UB_DIR} ${FUTIL_BIN} + ${Q}for prog in ${FUTIL_SYMLINKS}; do \ + ln -sf futility "${UB_DIR}/$$prog"; done + diff --git a/package/vboot-utils/0005-include-sys-sysmacros.h-for-major.patch b/package/vboot-utils/0005-include-sys-sysmacros.h-for-major.patch new file mode 100644 index 00000000..5d76428e --- /dev/null +++ b/package/vboot-utils/0005-include-sys-sysmacros.h-for-major.patch @@ -0,0 +1,51 @@ +From 435fbcee218b37a87368e2b22fa33366875d458c Mon Sep 17 00:00:00 2001 +From: Mike Frysinger +Date: Tue, 19 Apr 2016 13:58:49 -0400 +Subject: [PATCH] include sys/sysmacros.h for major() + +The major() func is defined in the sys/sysmacros.h header, so include it +explicitly for the prototype. Upstream C libs are moving away from having +sys/types.h include it all the time implicitly. + +BUG=None +TEST=precq passes +BRANCH=None + +Change-Id: I56b84138f08ded2376193403f9c9db22c5f24f71 +Reviewed-on: https://chromium-review.googlesource.com/339680 +Commit-Ready: Mike Frysinger +Tested-by: Mike Frysinger +Reviewed-by: Bill Richardson +Signed-off-by: Giulio Benetti +--- + cgpt/cgpt_wrapper.c | 1 + + futility/dump_kernel_config_lib.c | 1 + + 2 files changed, 2 insertions(+) + +diff --git a/cgpt/cgpt_wrapper.c b/cgpt/cgpt_wrapper.c +index dcfaab9c..1716cdde 100644 +--- a/cgpt/cgpt_wrapper.c ++++ b/cgpt/cgpt_wrapper.c +@@ -18,6 +18,7 @@ + #include + #include + #include ++#include + #include + #include + +diff --git a/futility/dump_kernel_config_lib.c b/futility/dump_kernel_config_lib.c +index 4fe990c3..abf37ae1 100644 +--- a/futility/dump_kernel_config_lib.c ++++ b/futility/dump_kernel_config_lib.c +@@ -10,6 +10,7 @@ + #include + #include + #include ++#include + #include + #include + +-- +2.17.1 + diff --git a/package/vboot-utils/0006-Update-for-openssl-1.1.patch b/package/vboot-utils/0006-Update-for-openssl-1.1.patch new file mode 100644 index 00000000..77e71e58 --- /dev/null +++ b/package/vboot-utils/0006-Update-for-openssl-1.1.patch @@ -0,0 +1,268 @@ +From 2e730b2259c701f16d473dbfb7e58e86a6e71b01 Mon Sep 17 00:00:00 2001 +From: Daniel Kurtz +Date: Fri, 18 Jan 2019 13:04:59 +0200 +Subject: [PATCH] Update for openssl 1.1 + +OpenSSL 1.1 has made significant non-backwards compatible changes to its +API as outlined in: +https://wiki.openssl.org/index.php/OpenSSL_1.1.0_Changes + +BRANCH=none +BUG=chromium:738114 +TEST=cros_workon --host start vboot_reference +TEST=w/ openssl-1.0.2k: sudo emerge vboot_reference +TEST=w/ openssl-1.1.0e: sudo emerge vboot_reference + => both build ok + $ futility version + => command runs without error +TEST=cros_workon --board=soraka start vboot_reference coreboot +TEST=w/ openssl-1.0.2k: emerge-soraka vboot_reference coreboot +TEST=w/ openssl-1.1.0e: emerge-soraka vboot_reference coreboot + => All build ok + +Change-Id: I37cfc8cbb04a092eab7b0b3224f475b82609447c +Reviewed-on: https://chromium-review.googlesource.com/557739 +Commit-Ready: Daniel Kurtz +Tested-by: Daniel Kurtz +Reviewed-by: Randall Spangler +Reviewed-by: Mike Frysinger + +(cherry-picked from bce7904376beee2912932433a4634c1c25afe2f5) +Signed-off-by: Vadim Kochan +--- + futility/cmd_create.c | 5 ++++- + futility/vb2_helper.c | 7 +++++-- + host/include/openssl_compat.h | 26 ++++++++++++++++++++++++++ + host/lib/util_misc.c | 7 +++++-- + host/lib21/host_key.c | 8 +++++++- + utility/dumpRSAPublicKey.c | 19 ++++++++++++++----- + 6 files changed, 61 insertions(+), 11 deletions(-) + create mode 100644 host/include/openssl_compat.h + +diff --git a/futility/cmd_create.c b/futility/cmd_create.c +index 143ea9ae..80d3fd90 100644 +--- a/futility/cmd_create.c ++++ b/futility/cmd_create.c +@@ -13,6 +13,7 @@ + #include "2common.h" + #include "2id.h" + #include "2rsa.h" ++#include "openssl_compat.h" + #include "util_misc.h" + #include "vb2_common.h" + #include "vb2_struct.h" +@@ -170,6 +171,7 @@ static int vb2_make_keypair() + enum vb2_signature_algorithm sig_alg; + uint8_t *pubkey_buf = 0; + int has_priv = 0; ++ const BIGNUM *rsa_d; + + FILE *fp; + int ret = 1; +@@ -193,7 +195,8 @@ static int vb2_make_keypair() + goto done; + } + /* Public keys doesn't have the private exponent */ +- has_priv = !!rsa_key->d; ++ RSA_get0_key(rsa_key, NULL, NULL, &rsa_d); ++ has_priv = !!rsa_d; + if (!has_priv) + fprintf(stderr, "%s has a public key only.\n", infile); + +diff --git a/futility/vb2_helper.c b/futility/vb2_helper.c +index 51a78375..c6cc0fdd 100644 +--- a/futility/vb2_helper.c ++++ b/futility/vb2_helper.c +@@ -11,6 +11,7 @@ + #include "2common.h" + #include "2id.h" + #include "2rsa.h" ++#include "openssl_compat.h" + #include "util_misc.h" + #include "vb2_common.h" + #include "vb2_struct.h" +@@ -216,6 +217,7 @@ int ft_show_pem(const char *name, uint8_t *buf, uint32_t len, void *data) + uint8_t *keyb, *digest; + uint32_t keyb_len; + int i, bits; ++ const BIGNUM *rsa_key_n, *rsa_key_d; + + /* We're called only after ft_recognize_pem, so this should work. */ + rsa_key = rsa_from_buffer(buf, len); +@@ -223,10 +225,11 @@ int ft_show_pem(const char *name, uint8_t *buf, uint32_t len, void *data) + DIE; + + /* Use to presence of the private exponent to decide if it's public */ +- printf("%s Key file: %s\n", rsa_key->d ? "Private" : "Public", ++ RSA_get0_key(rsa_key, &rsa_key_n, NULL, &rsa_key_d); ++ printf("%s Key file: %s\n", rsa_key_d ? "Private" : "Public", + name); + +- bits = BN_num_bits(rsa_key->n); ++ bits = BN_num_bits(rsa_key_n); + printf(" Key length: %d\n", bits); + + if (vb_keyb_from_rsa(rsa_key, &keyb, &keyb_len)) { +diff --git a/host/include/openssl_compat.h b/host/include/openssl_compat.h +new file mode 100644 +index 00000000..7771f32a +--- /dev/null ++++ b/host/include/openssl_compat.h +@@ -0,0 +1,26 @@ ++/* Copyright 2017 The Chromium OS Authors. All rights reserved. ++ * Use of this source code is governed by a BSD-style license that can be ++ * found in the LICENSE file. ++ */ ++ ++#ifndef VBOOT_REFERENCE_OPENSSL_COMPAT_H_ ++#define VBOOT_REFERENCE_OPENSSL_COMPAT_H_ ++ ++#include ++ ++#if OPENSSL_VERSION_NUMBER < 0x10100000L ++ ++static inline void RSA_get0_key(const RSA *rsa, const BIGNUM **n, ++ const BIGNUM **e, const BIGNUM **d) ++{ ++ if (n != NULL) ++ *n = rsa->n; ++ if (e != NULL) ++ *e = rsa->e; ++ if (d != NULL) ++ *d = rsa->d; ++} ++ ++#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ ++ ++#endif /* VBOOT_REFERENCE_OPENSSL_COMPAT_H_ */ +diff --git a/host/lib/util_misc.c b/host/lib/util_misc.c +index 03ec683f..f0a1f7ad 100644 +--- a/host/lib/util_misc.c ++++ b/host/lib/util_misc.c +@@ -15,6 +15,7 @@ + + #include "cryptolib.h" + #include "host_common.h" ++#include "openssl_compat.h" + #include "util_misc.h" + #include "vboot_common.h" + +@@ -58,6 +59,7 @@ int vb_keyb_from_rsa(struct rsa_st *rsa_private_key, + BIGNUM *N0inv = NULL, *R = NULL, *RR = NULL; + BIGNUM *RRTemp = NULL, *NnumBits = NULL; + BIGNUM *n = NULL, *rr = NULL; ++ const BIGNUM *rsa_private_key_n; + BN_CTX *bn_ctx = BN_CTX_new(); + uint32_t n0invout; + uint32_t bufsize; +@@ -65,7 +67,7 @@ int vb_keyb_from_rsa(struct rsa_st *rsa_private_key, + int retval = 1; + + /* Size of RSA key in 32-bit words */ +- nwords = BN_num_bits(rsa_private_key->n) / 32; ++ nwords = RSA_size(rsa_private_key) / 4; + + bufsize = (2 + nwords + nwords) * sizeof(uint32_t); + outbuf = malloc(bufsize); +@@ -94,7 +96,8 @@ int vb_keyb_from_rsa(struct rsa_st *rsa_private_key, + NEW_BIGNUM(B); + #undef NEW_BIGNUM + +- BN_copy(N, rsa_private_key->n); ++ RSA_get0_key(rsa_private_key, &rsa_private_key_n, NULL, NULL); ++ BN_copy(N, rsa_private_key_n); + BN_set_word(Big1, 1L); + BN_set_word(Big2, 2L); + BN_set_word(Big32, 32L); +diff --git a/host/lib21/host_key.c b/host/lib21/host_key.c +index f7ea1622..f9419ad3 100644 +--- a/host/lib21/host_key.c ++++ b/host/lib21/host_key.c +@@ -17,6 +17,7 @@ + #include "host_common.h" + #include "host_key2.h" + #include "host_misc.h" ++#include "openssl_compat.h" + + struct vb2_text_vs_enum vb2_text_vs_algorithm[] = { + {"RSA1024 SHA1", VB2_ALG_RSA1024_SHA1}, +@@ -544,7 +545,12 @@ int vb2_public_key_hash(struct vb2_public_key *key, + + enum vb2_signature_algorithm vb2_rsa_sig_alg(struct rsa_st *rsa) + { +- int bits = BN_num_bits(rsa->n); ++ const BIGNUM *e, *n; ++ int exp, bits; ++ ++ RSA_get0_key(rsa, &n, &e, NULL); ++ exp = BN_get_word(e); ++ bits = BN_num_bits(n); + + switch (bits) { + case 1024: +diff --git a/utility/dumpRSAPublicKey.c b/utility/dumpRSAPublicKey.c +index b3b7b96b..a17b159e 100644 +--- a/utility/dumpRSAPublicKey.c ++++ b/utility/dumpRSAPublicKey.c +@@ -14,14 +14,20 @@ + #include + #include + ++#include "openssl_compat.h" ++ + /* Command line tool to extract RSA public keys from X.509 certificates + * and output a pre-processed version of keys for use by RSA verification + * routines. + */ + + int check(RSA* key) { +- int public_exponent = BN_get_word(key->e); +- int modulus = BN_num_bits(key->n); ++ const BIGNUM *n, *e; ++ int public_exponent, modulus; ++ ++ RSA_get0_key(key, &n, &e, NULL); ++ public_exponent = BN_get_word(e); ++ modulus = BN_num_bits(n); + + if (public_exponent != 65537) { + fprintf(stderr, "WARNING: Public exponent should be 65537 (but is %d).\n", +@@ -40,7 +46,8 @@ int check(RSA* key) { + */ + void output(RSA* key) { + int i, nwords; +- BIGNUM *N = key->n; ++ const BIGNUM *key_n; ++ BIGNUM *N = NULL; + BIGNUM *Big1 = NULL, *Big2 = NULL, *Big32 = NULL, *BigMinus1 = NULL; + BIGNUM *B = NULL; + BIGNUM *N0inv= NULL, *R = NULL, *RR = NULL, *RRTemp = NULL, *NnumBits = NULL; +@@ -48,14 +55,15 @@ void output(RSA* key) { + BN_CTX *bn_ctx = BN_CTX_new(); + uint32_t n0invout; + +- N = key->n; + /* Output size of RSA key in 32-bit words */ +- nwords = BN_num_bits(N) / 32; ++ nwords = RSA_size(key) / 4; + if (-1 == write(1, &nwords, sizeof(nwords))) + goto failure; + + + /* Initialize BIGNUMs */ ++ RSA_get0_key(key, &key_n, NULL, NULL); ++ N = BN_dup(key_n); + Big1 = BN_new(); + Big2 = BN_new(); + Big32 = BN_new(); +@@ -120,6 +128,7 @@ void output(RSA* key) { + + failure: + /* Free BIGNUMs. */ ++ BN_free(N); + BN_free(Big1); + BN_free(Big2); + BN_free(Big32); +-- +2.14.1 + diff --git a/package/vboot-utils/0007-Make-vboot_version-extern-in-header.patch b/package/vboot-utils/0007-Make-vboot_version-extern-in-header.patch new file mode 100644 index 00000000..6a3929f3 --- /dev/null +++ b/package/vboot-utils/0007-Make-vboot_version-extern-in-header.patch @@ -0,0 +1,50 @@ +From df4d2000a22db673a788b8e57e8e7c0cc3cee777 Mon Sep 17 00:00:00 2001 +From: Leonard Chan +Date: Thu, 3 Oct 2019 18:53:04 -0700 +Subject: [PATCH] Make vboot_version extern in header + +When enabling `-fno-common` in Fuchsia, we get a bunch of linker errors +when linking futility: + +``` +ld.lld: error: duplicate symbol: vboot_version +>>> defined at futility.h:43 (../../third_party/vboot_reference/futility/futility.h:43) +>>> host_x63-asan_no_detect_leaks/obj/third_party/vboot_reference/futility/futility.cmd_bdb.c.o:(vboot_version) +>>> defined at futility.h:43 (../../third_party/vboot_reference/futility/futility.h:43) +>>> host_x64-asan_no_detect_leaks/obj/third_party/vboot_reference/futility/futility.cmd_create.c.o:(.bss.vboot_version+0x0) +``` + +and think this is because -fno-common places vboot_version for +unitialized global variables in the BSS section of each object file. +Making it extern instead resolves each reference to its definition in +futility/misc.c. + +Change-Id: I591f07abd1f975a8a9d078bb4366e2e0861390b4 +Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/vboot_reference/+/1839207 +Reviewed-by: Julius Werner +Reviewed-by: Joel Kitching +Commit-Queue: Julius Werner +Tested-by: Julius Werner + +Patch taken from upstream: https://chromium.googlesource.com/chromiumos/platform/vboot_reference/+/df4d2000a22db673a788b8e57e8e7c0cc3cee777 +Signed-off-by: Heiko Thiery +--- + futility/futility.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/futility/futility.h b/futility/futility.h +index 3bce1106..5dc426dd 100644 +--- a/futility/futility.h ++++ b/futility/futility.h +@@ -41,7 +41,7 @@ enum vboot_version { + }; + + /* What's our preferred API & data format? */ +-enum vboot_version vboot_version; ++extern enum vboot_version vboot_version; + + /* Here's a structure to define the commands that futility implements. */ + struct futil_cmd_t { +-- +2.20.1 + diff --git a/package/vboot-utils/Config.in.host b/package/vboot-utils/Config.in.host new file mode 100644 index 00000000..aa0caef2 --- /dev/null +++ b/package/vboot-utils/Config.in.host @@ -0,0 +1,7 @@ +config BR2_PACKAGE_HOST_VBOOT_UTILS + bool "host vboot utils" + select BR2_PACKAGE_HOST_UTIL_LINUX + help + Chromium OS verified boot utilities: futility and cgpt. + + https://www.chromium.org/chromium-os/chromiumos-design-docs/verified-boot diff --git a/package/vboot-utils/vboot-utils.hash b/package/vboot-utils/vboot-utils.hash new file mode 100644 index 00000000..efef776c --- /dev/null +++ b/package/vboot-utils/vboot-utils.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 9cdeaa2e4e1190c0cd200e1b07d394e5d24f57cc0efffdce861d5de934035bf7 vboot-utils-bbdd62f9b030db7ad8eef789aaf58a7ff9a25656-br1.tar.gz +sha256 cb9dc8e96aedf9120b6757a60387db10f3c1a8e3fd97bb9d0f11327be5a7ed4d LICENSE diff --git a/package/vboot-utils/vboot-utils.mk b/package/vboot-utils/vboot-utils.mk new file mode 100644 index 00000000..3f63f458 --- /dev/null +++ b/package/vboot-utils/vboot-utils.mk @@ -0,0 +1,43 @@ +################################################################################ +# +# vboot-utils +# +################################################################################ + +VBOOT_UTILS_VERSION = bbdd62f9b030db7ad8eef789aaf58a7ff9a25656 +VBOOT_UTILS_SITE = https://chromium.googlesource.com/chromiumos/platform/vboot_reference +VBOOT_UTILS_SITE_METHOD = git +VBOOT_UTILS_LICENSE = BSD-3-Clause +VBOOT_UTILS_LICENSE_FILES = LICENSE + +HOST_VBOOT_UTILS_DEPENDENCIES = host-openssl host-util-linux host-pkgconf + +# vboot_reference contains code that goes into bootloaders, +# utilities intended for the target system, and a bunch of scripts +# for Chromium OS build system. Most of that does not make sense +# in a buildroot host-package. +# +# We only need futility for signing images, the keys, and cgpt for boot +# media partitioning. +# +# make target for futility is "futil". +# +# The value of ARCH is only relevant for crossystem (a target tool) and +# does not affect futil or cgpt in any way as long as it is one of the +# supported targets. + +define HOST_VBOOT_UTILS_BUILD_CMDS + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) \ + CC="$(HOSTCC)" \ + CFLAGS="$(HOST_CFLAGS) -D_LARGEFILE64_SOURCE -D_GNU_SOURCE" \ + LDFLAGS="$(HOST_LDFLAGS)" \ + ARCH=arm \ + futil cgpt +endef + +define HOST_VBOOT_UTILS_INSTALL_CMDS + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR) \ + futil_install cgpt_install devkeys_install +endef + +$(eval $(host-generic-package)) diff --git a/package/vde2/0001-no-cxx.patch b/package/vde2/0001-no-cxx.patch new file mode 100644 index 00000000..67cefa2b --- /dev/null +++ b/package/vde2/0001-no-cxx.patch @@ -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 +Signed-off-by: "Yann E. MORIN" + +--- +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/0002-fstp-Add-static-to-inline-functions.patch b/package/vde2/0002-fstp-Add-static-to-inline-functions.patch new file mode 100644 index 00000000..0dbe083d --- /dev/null +++ b/package/vde2/0002-fstp-Add-static-to-inline-functions.patch @@ -0,0 +1,44 @@ +From 67bc8443ac7e8144a78d84dee30a5cac3b5c99a4 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Sun, 27 Aug 2017 23:56:05 +0200 +Subject: [PATCH] fstp: Add static to inline functions + +From [1] +"This is needed to avoid a link error where the inline functions appear +missing at link time. +From c99 standard inline function should either be declared static or +have an extern instance in a c file for linking. +This fix is necessary to build with gcc 7; for some reason it was not +trigerred before." + +[1] https://git.buildroot.net/buildroot/commit/?id=21133ada326c87627f7bdee4493d8086587c3cca + +Signed-off-by: Romain Naour +--- + src/vde_switch/fstp.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/vde_switch/fstp.c b/src/vde_switch/fstp.c +index aab7324..b1e7ee8 100644 +--- a/src/vde_switch/fstp.c ++++ b/src/vde_switch/fstp.c +@@ -30,14 +30,14 @@ static int numports; + #ifdef FSTP + #include + /*********************** sending macro used by FSTP & Core ******************/ +-void inline ltonstring(unsigned long l,unsigned char *s) { ++static void inline ltonstring(unsigned long l,unsigned char *s) { + s[3]=l; l>>=8; + s[2]=l; l>>=8; + s[1]=l; l>>=8; + s[0]=l; + } + +-unsigned long inline nstringtol(unsigned char *s) { ++static unsigned long inline nstringtol(unsigned char *s) { + return (s[0]<<24)+(s[1]<<16)+(s[2]<<8)+s[3]; + } + +-- +2.9.5 + diff --git a/package/vde2/Config.in b/package/vde2/Config.in new file mode 100644 index 00000000..f640a4ae --- /dev/null +++ b/package/vde2/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_VDE2 + bool "vde2" + depends on BR2_USE_MMU # fork() + depends on !BR2_STATIC_LIBS # dlopen() + help + VDE is an ethernet compliant virtual network that can be + spawned over a set of physical computers over the Internet. + VDE is part of the virtualsquare project. + + http://vde.sourceforge.net/ + +comment "vde2 needs a toolchain w/ dynamic library" + depends on BR2_USE_MMU + depends on BR2_STATIC_LIBS diff --git a/package/vde2/vde2.hash b/package/vde2/vde2.hash new file mode 100644 index 00000000..a9e1ea22 --- /dev/null +++ b/package/vde2/vde2.hash @@ -0,0 +1,5 @@ +# Locally computed: +sha256 cbea9b7e03097f87a6b5e98b07890d2275848f1fe4b9fcda77b8994148bc9542 vde2-2.3.2.tar.bz2 +sha256 fb295d0c24b8ef4b39017ac68e772e8e6e839612ce10da12b9f48d1e8e512e2e COPYING +sha256 5df07007198989c622f5d41de8d703e7bef3d0e79d62e24332ee739a452af62a COPYING.libvdeplug +sha256 d5ac74315b2d2f9c53f5839e311484f4646a9401b68d02d36f3dab386352e74d COPYING.slirpvde diff --git a/package/vde2/vde2.mk b/package/vde2/vde2.mk new file mode 100644 index 00000000..76d6f352 --- /dev/null +++ b/package/vde2/vde2.mk @@ -0,0 +1,54 @@ +################################################################################ +# +# vde2 +# +################################################################################ + +VDE2_VERSION = 2.3.2 +VDE2_SOURCE = vde2-$(VDE2_VERSION).tar.bz2 +VDE2_SITE = http://downloads.sourceforge.net/project/vde/vde2/$(VDE2_VERSION) +VDE2_LICENSE = GPL-2.0+, LGPL-2.1+, BSD-3-Clause +VDE2_LICENSE_FILES = COPYING COPYING.libvdeplug COPYING.slirpvde +VDE2_CPE_ID_VENDOR = vde_project +VDE2_CPE_ID_PRODUCT = vde +VDE2_INSTALL_STAGING = YES + +# We touch configure.ac, so we need to autoreconf +VDE2_AUTORECONF = YES + +# Reasons for enabling/disabling stuff: +# - tuntap is enabled in the hope we're using a recent-enough toolchain +# that does have if_tun.h (virtually everything these days) +# - kvde_switch is disabled because it requires a patched kernel +# - cryptcab is disabled to not depend on openSSL +# - python is disabled to not depend on Python +# - pcap is disabled to not depend on libpcap +# - profiling is disabled because we do not want to debug/profile +# +# Note: disabled features can be added with corresponding dependencies +# in future commits. +VDE2_CONF_OPTS = \ + --disable-cryptcab \ + --disable-experimental \ + --disable-kernel-switch \ + --disable-pcap \ + --disable-profile \ + --disable-python \ + --enable-tuntap + +# Package does not build in parallel due to improper make rules +VDE2_MAKE = $(MAKE1) + +HOST_VDE2_CONF_OPTS = \ + --disable-cryptcab \ + --disable-experimental \ + --disable-kernel-switch \ + --disable-pcap \ + --disable-profile \ + --disable-python \ + --enable-tuntap + +HOST_VDE2_MAKE = $(MAKE1) + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/vdr-plugin-vnsiserver/Config.in b/package/vdr-plugin-vnsiserver/Config.in new file mode 100644 index 00000000..0a0ab8d3 --- /dev/null +++ b/package/vdr-plugin-vnsiserver/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_VDR_PLUGIN_VNSISERVER + bool "vdr-plugin-vnsiserver" + depends on BR2_PACKAGE_VDR + help + VDR plugin to handle KODI clients. + The vdr-plugin-vnsiserver is able to handle serveral KODI + clients connecting via the VNSI addon. + + https://github.com/FernetMenta/vdr-plugin-vnsiserver diff --git a/package/vdr-plugin-vnsiserver/vdr-plugin-vnsiserver.hash b/package/vdr-plugin-vnsiserver/vdr-plugin-vnsiserver.hash new file mode 100644 index 00000000..21c62fae --- /dev/null +++ b/package/vdr-plugin-vnsiserver/vdr-plugin-vnsiserver.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 d5989461541a91fe4de4ca9c396d4e7b2f4a8663fc9d6155d0830d2b143fce4d vdr-plugin-vnsiserver-1.8.0.tar.gz +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/vdr-plugin-vnsiserver/vdr-plugin-vnsiserver.mk b/package/vdr-plugin-vnsiserver/vdr-plugin-vnsiserver.mk new file mode 100644 index 00000000..9b49736d --- /dev/null +++ b/package/vdr-plugin-vnsiserver/vdr-plugin-vnsiserver.mk @@ -0,0 +1,31 @@ +################################################################################ +# +# vdr-plugin-vnsiserver +# +################################################################################ + +VDR_PLUGIN_VNSISERVER_VERSION = 1.8.0 +VDR_PLUGIN_VNSISERVER_SITE = $(call github,FernetMenta,vdr-plugin-vnsiserver,v$(VDR_PLUGIN_VNSISERVER_VERSION)) +VDR_PLUGIN_VNSISERVER_LICENSE = GPL-2.0+ +VDR_PLUGIN_VNSISERVER_LICENSE_FILES = COPYING +VDR_PLUGIN_VNSISERVER_DEPENDENCIES = vdr + +VDR_PLUGIN_VNSISERVER_CXXFLAGS = CXXFLAGS="$(TARGET_CXXFLAGS) -std=c++11 -fPIC" + +VDR_PLUGIN_VNSISERVER_INSTALL_TARGETS = install-lib +ifeq ($(BR2_SYSTEM_ENABLE_NLS),y) +VDR_PLUGIN_VNSISERVER_INSTALL_TARGETS += install-i18n +endif + +define VDR_PLUGIN_VNSISERVER_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) \ + $(VDR_PLUGIN_VNSISERVER_CXXFLAGS) +endef + +define VDR_PLUGIN_VNSISERVER_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) \ + $(VDR_PLUGIN_VNSISERVER_INSTALL_TARGETS) DESTDIR=$(TARGET_DIR) \ + LIBDIR=/usr/lib/vdr LOCDIR=/usr/share/locale +endef + +$(eval $(generic-package)) diff --git a/package/vdr/Config.in b/package/vdr/Config.in new file mode 100644 index 00000000..df602f26 --- /dev/null +++ b/package/vdr/Config.in @@ -0,0 +1,26 @@ +config BR2_PACKAGE_VDR + bool "vdr" + depends on BR2_INSTALL_LIBSTDCPP + depends on !BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_9 + depends on BR2_TOOLCHAIN_USES_GLIBC # execinfo.h + depends on BR2_USE_MMU # fork() + depends on BR2_USE_WCHAR + select BR2_PACKAGE_FONTCONFIG + select BR2_PACKAGE_FREETYPE + select BR2_PACKAGE_JPEG + select BR2_PACKAGE_LIBCAP + select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE + help + This project describes how to build your own digital + satellite receiver and Video Disk Recorder. + + http://www.tvdr.de + +comment "vdr needs a glibc toolchain w/ C++, dynamic library, NPTL, wchar, headers >= 3.9" + depends on BR2_USE_MMU + depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || \ + !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \ + !BR2_TOOLCHAIN_USES_GLIBC || !BR2_USE_WCHAR || \ + !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_9 diff --git a/package/vdr/vdr.hash b/package/vdr/vdr.hash new file mode 100644 index 00000000..3d0dc443 --- /dev/null +++ b/package/vdr/vdr.hash @@ -0,0 +1,5 @@ +# From https://www.linuxtv.org/pipermail/vdr/2020-December/029578.html +md5 aa91614159ae2db45655d35918e2c24e vdr-2.4.6.tar.bz2 +# Locally computed +sha256 c8993babf2a878a0fba84558de1e35f042c3c66f7c1ec569eea00a3af1014e4b vdr-2.4.6.tar.bz2 +sha256 ddb9db7630752f8fdc6898f7c99a99eaeeac5213627ecb093df9c82f56175dc7 COPYING diff --git a/package/vdr/vdr.mk b/package/vdr/vdr.mk new file mode 100644 index 00000000..eac13bff --- /dev/null +++ b/package/vdr/vdr.mk @@ -0,0 +1,62 @@ +################################################################################ +# +# vdr +# +################################################################################ + +VDR_VERSION = 2.4.6 +VDR_SOURCE = vdr-$(VDR_VERSION).tar.bz2 +VDR_SITE = ftp://ftp.tvdr.de/vdr +VDR_LICENSE = GPL-2.0+ +VDR_LICENSE_FILES = COPYING +VDR_CPE_ID_VENDOR = tvdr +VDR_INSTALL_STAGING = YES +VDR_DEPENDENCIES = \ + host-pkgconf \ + freetype \ + fontconfig \ + jpeg \ + libcap \ + $(TARGET_NLS_DEPENDENCIES) + +VDR_MAKE_FLAGS = \ + NO_KBD=yes \ + PKG_CONFIG=$(PKG_CONFIG_HOST_BINARY) \ + PLUGINLIBDIR=/usr/lib/vdr \ + PREFIX=/usr \ + VIDEODIR=/var/lib/vdr +VDR_LDFLAGS = $(TARGET_NLS_LIBS) + +ifeq ($(BR2_PACKAGE_LIBFRIBIDI),y) +VDR_DEPENDENCIES += libfribidi +VDR_MAKE_FLAGS += BIDI=1 +endif + +ifeq ($(BR2_PACKAGE_LIBICONV),y) +VDR_DEPENDENCIES += libiconv +VDR_LDFLAGS += -liconv +endif + +VDR_MAKE_ENV = \ + LDFLAGS="$(VDR_LDFLAGS)" \ + $(VDR_MAKE_FLAGS) + +define VDR_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) $(VDR_MAKE_ENV) \ + vdr vdr.pc include-dir +endef + +define VDR_INSTALL_STAGING_CMDS + $(MAKE1) $(TARGET_CONFIGURE_OPTS) -C $(@D) $(VDR_MAKE_ENV) \ + DESTDIR=$(STAGING_DIR) \ + install-dirs install-bin install-conf install-includes \ + install-pc +endef + +define VDR_INSTALL_TARGET_CMDS + $(MAKE1) $(TARGET_CONFIGURE_OPTS) -C $(@D) $(VDR_MAKE_ENV) \ + DESTDIR=$(TARGET_DIR) \ + install-dirs install-bin install-conf +endef + +$(eval $(generic-package)) diff --git a/package/vim/Config.in b/package/vim/Config.in new file mode 100644 index 00000000..1469be8d --- /dev/null +++ b/package/vim/Config.in @@ -0,0 +1,26 @@ +config BR2_PACKAGE_VIM + bool "vim" + depends on BR2_USE_MMU # uses fork() + depends on BR2_USE_WCHAR + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + select BR2_PACKAGE_NCURSES + help + VIM Text editor + + http://www.vim.org/ + +if BR2_PACKAGE_VIM + +config BR2_PACKAGE_VIM_RUNTIME + bool "install runtime" + default y + help + Install VIM runtime (syntax highlighing + macros). + This option adds about 11MB of data to /usr/share/ + +endif + +comment "vim needs a toolchain w/ wchar" + depends on !BR2_USE_WCHAR + depends on BR2_USE_MMU + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS diff --git a/package/vim/vim.hash b/package/vim/vim.hash new file mode 100644 index 00000000..eb5928e9 --- /dev/null +++ b/package/vim/vim.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 8a72323817210daf40abe545bdf7637591b9b541a0fb3560baed76e436132dba vim-8.2.0000.tar.gz +sha256 accdbd6761e7dd7e580545fe30f3a5a7707d50073aec4b8afef85c30fc9c031b README.txt diff --git a/package/vim/vim.mk b/package/vim/vim.mk new file mode 100644 index 00000000..36cb5933 --- /dev/null +++ b/package/vim/vim.mk @@ -0,0 +1,93 @@ +################################################################################ +# +# vim +# +################################################################################ + +VIM_VERSION = 8.2.0000 +VIM_SITE = $(call github,vim,vim,v$(VIM_VERSION)) +VIM_DEPENDENCIES = ncurses $(TARGET_NLS_DEPENDENCIES) +VIM_SUBDIR = src +VIM_CONF_ENV = \ + vim_cv_toupper_broken=no \ + vim_cv_terminfo=yes \ + vim_cv_tgetent=zero \ + vim_cv_tty_group=world \ + vim_cv_tty_mode=0620 \ + vim_cv_getcwd_broken=no \ + vim_cv_stat_ignores_slash=yes \ + vim_cv_memmove_handles_overlap=yes \ + ac_cv_sizeof_int=4 \ + ac_cv_small_wchar_t=no +# GUI/X11 headers leak from the host so forcibly disable them +VIM_CONF_OPTS = --with-tlib=ncurses --enable-gui=no --without-x +VIM_LICENSE = Charityware +VIM_LICENSE_FILES = README.txt +VIM_CPE_ID_VENDOR = vim + +ifeq ($(BR2_PACKAGE_ACL),y) +VIM_CONF_OPTS += --enable-acl +VIM_DEPENDENCIES += acl +else +VIM_CONF_OPTS += --disable-acl +endif + +ifeq ($(BR2_PACKAGE_GPM),y) +VIM_CONF_OPTS += --enable-gpm +VIM_DEPENDENCIES += gpm +else +VIM_CONF_OPTS += --disable-gpm +endif + +ifeq ($(BR2_PACKAGE_LIBSELINUX),y) +VIM_CONF_OPTS += --enable-selinux +VIM_DEPENDENCIES += libselinux +else +VIM_CONF_OPTS += --disable-selinux +endif + +define VIM_INSTALL_TARGET_CMDS + cd $(@D)/src; \ + $(TARGET_MAKE_ENV) $(MAKE) DESTDIR=$(TARGET_DIR) installvimbin; \ + $(TARGET_MAKE_ENV) $(MAKE) DESTDIR=$(TARGET_DIR) installtools; \ + $(TARGET_MAKE_ENV) $(MAKE) DESTDIR=$(TARGET_DIR) installlinks +endef + +define VIM_INSTALL_RUNTIME_CMDS + cd $(@D)/src; \ + $(TARGET_MAKE_ENV) $(MAKE) DESTDIR=$(TARGET_DIR) installrtbase; \ + $(TARGET_MAKE_ENV) $(MAKE) DESTDIR=$(TARGET_DIR) installmacros +endef + +define VIM_REMOVE_DOCS + $(RM) -rf $(TARGET_DIR)/usr/share/vim/vim*/doc/ +endef + +# Avoid oopses with vipw/vigr, lack of $EDITOR and 'vi' command expectation +ifeq ($(BR2_ROOTFS_MERGED_USR),y) +define VIM_INSTALL_VI_SYMLINK + ln -sf vim $(TARGET_DIR)/usr/bin/vi +endef +else +define VIM_INSTALL_VI_SYMLINK + ln -sf ../usr/bin/vim $(TARGET_DIR)/bin/vi +endef +endif +VIM_POST_INSTALL_TARGET_HOOKS += VIM_INSTALL_VI_SYMLINK + +ifeq ($(BR2_PACKAGE_VIM_RUNTIME),y) +VIM_POST_INSTALL_TARGET_HOOKS += VIM_INSTALL_RUNTIME_CMDS +VIM_POST_INSTALL_TARGET_HOOKS += VIM_REMOVE_DOCS +endif + +HOST_VIM_DEPENDENCIES = host-ncurses +HOST_VIM_CONF_OPTS = \ + --with-tlib=ncurses \ + --enable-gui=no \ + --without-x \ + --disable-acl \ + --disable-gpm \ + --disable-selinux + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/vlc/0001-Disable-building-of-statically-linked-vlc-binary.patch b/package/vlc/0001-Disable-building-of-statically-linked-vlc-binary.patch new file mode 100644 index 00000000..784ffa35 --- /dev/null +++ b/package/vlc/0001-Disable-building-of-statically-linked-vlc-binary.patch @@ -0,0 +1,40 @@ +From 7c2b3343a30ee53a1cded2ca5e712d8cd7d50f5f Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Tue, 1 May 2018 22:27:21 +0200 +Subject: [PATCH] Disable building of statically linked vlc binary + +Signed-off-by: Bernd Kuhls +--- + Makefile.am | 2 +- + bin/Makefile.am | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index 3ac82623ad..637504a3f5 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -108,7 +108,7 @@ libvlc: libvlccore + 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/bin/Makefile.am b/bin/Makefile.am +index 2877e8b0ea..bef4160e8b 100644 +--- a/bin/Makefile.am ++++ b/bin/Makefile.am +@@ -6,7 +6,7 @@ bin_PROGRAMS = vlc-osx + noinst_PROGRAMS = vlc-osx-static + else + bin_PROGRAMS = vlc +-noinst_PROGRAMS = vlc-static ++noinst_PROGRAMS = + endif + endif + EXTRA_DIST = vlc_win32_rc.rc.in +-- +2.14.4 + diff --git a/package/vlc/0002-automake-add-subdir-objects-option.patch b/package/vlc/0002-automake-add-subdir-objects-option.patch new file mode 100644 index 00000000..d4493bdf --- /dev/null +++ b/package/vlc/0002-automake-add-subdir-objects-option.patch @@ -0,0 +1,32 @@ +From 54e7e0bda02099ae9d1c42abed1932ffa8d354e8 Mon Sep 17 00:00:00 2001 +From: "Arnout Vandecappelle (Essensium/Mind)" +Date: Tue, 1 May 2018 22:28:52 +0200 +Subject: [PATCH] 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) +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 206690b468..dfb4c1c329 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -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]) + + AM_SILENT_RULES([yes]) +-- +2.14.4 + diff --git a/package/vlc/0003-build-use-pkg-config-to-get-tremor-libs.patch b/package/vlc/0003-build-use-pkg-config-to-get-tremor-libs.patch new file mode 100644 index 00000000..652718b0 --- /dev/null +++ b/package/vlc/0003-build-use-pkg-config-to-get-tremor-libs.patch @@ -0,0 +1,50 @@ +From fb257e1e204c30436b3509ea3fa9f7c5fe131dc1 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Tue, 16 Oct 2018 14:25:20 +0200 +Subject: [PATCH] build: use pkg-config to get tremor libs + +Use PKG_ENABLE_MODULES_VLC to enable tremor based on availability of +ogg and vorbisidec + +Signed-off-by: Fabrice Fontaine +--- + configure.ac | 9 +-------- + modules/codec/Makefile.am | 2 +- + 2 files changed, 2 insertions(+), 9 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 0d3222e00f..b506d735f2 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -2710,14 +2710,7 @@ PKG_ENABLE_MODULES_VLC([VORBIS], [], [ogg vorbis >= 1.1 vorbisenc >= 1.1], [Vorb + dnl + dnl Tremor plugin + dnl +-AC_ARG_ENABLE(tremor, +- [ --enable-tremor Tremor decoder support (default disabled)]) +-if test "${enable_tremor}" = "yes" +-then +- AC_CHECK_HEADERS(tremor/ivorbiscodec.h, [ +- VLC_ADD_PLUGIN([tremor]) +- ],[]) +-fi ++PKG_ENABLE_MODULES_VLC([TREMOR], [], [vorbisidec ogg], [Tremor decoder support], [disabled]) + + dnl + dnl Speex plugins +diff --git a/modules/codec/Makefile.am b/modules/codec/Makefile.am +index 075ee2a0e9..637b1d45a6 100644 +--- a/modules/codec/Makefile.am ++++ b/modules/codec/Makefile.am +@@ -318,7 +318,7 @@ codec_LTLIBRARIES += $(LTLIBdaala) + libtremor_plugin_la_SOURCES = codec/vorbis.c + libtremor_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) -DMODULE_NAME_IS_tremor + libtremor_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)' +-libtremor_plugin_la_LIBADD = -lvorbisdec -logg ++libtremor_plugin_la_LIBADD = $(TREMOR_LIBS) + EXTRA_LTLIBRARIES += libtremor_plugin.la + codec_LTLIBRARIES += $(LTLIBtremor) + +-- +2.17.1 + diff --git a/package/vlc/0004-Fix-build-error-using-uClibc-by-adding-sys-types.h.patch b/package/vlc/0004-Fix-build-error-using-uClibc-by-adding-sys-types.h.patch new file mode 100644 index 00000000..a1d71896 --- /dev/null +++ b/package/vlc/0004-Fix-build-error-using-uClibc-by-adding-sys-types.h.patch @@ -0,0 +1,44 @@ +From bbb15b9cbf9353423619f2c40abdf95d861e66ba Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Sat, 2 Apr 2016 16:49:54 +0200 +Subject: [PATCH] Fix build error using uClibc by adding sys/types.h + +Fixes + + CC core.lo +In file included from libvlc_internal.h:35:0, + from core.c:28: +../include/vlc/libvlc_media.h:313:18: error: expected declaration specifiers or '...' before '*' token + typedef ssize_t (*libvlc_media_read_cb)(void *opaque, unsigned char *buf, + ^ +../include/vlc/libvlc_media.h:423:36: error: unknown type name 'libvlc_media_read_cb' + libvlc_media_read_cb read_cb, + ^ +Bug was reported to trac: +https://trac.videolan.org/vlc/ticket/16768 + +This patch was suggested by courmisch in the trac ticket. + +Signed-off-by: Bernd Kuhls +[Patch sent upstream: + https://mailman.videolan.org/pipermail/vlc-devel/2016-April/106952.html] +--- + include/vlc/libvlc_media.h | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/include/vlc/libvlc_media.h b/include/vlc/libvlc_media.h +index 383f366b69..1cbf00c3e3 100644 +--- a/include/vlc/libvlc_media.h ++++ b/include/vlc/libvlc_media.h +@@ -26,6 +26,8 @@ + #ifndef VLC_LIBVLC_MEDIA_H + #define VLC_LIBVLC_MEDIA_H 1 + ++#include /* for ssize_t */ ++ + # ifdef __cplusplus + extern "C" { + # endif +-- +2.14.4 + diff --git a/package/vlc/0005-Don-t-assume-strerror_l-is-available.patch b/package/vlc/0005-Don-t-assume-strerror_l-is-available.patch new file mode 100644 index 00000000..cd839b73 --- /dev/null +++ b/package/vlc/0005-Don-t-assume-strerror_l-is-available.patch @@ -0,0 +1,58 @@ +From 0435cf37308652af1cf244b6429e919fa7ffaa95 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Tue, 1 May 2018 22:31:23 +0200 +Subject: [PATCH] Don't assume strerror_l() is available + +Fix compile error + + CCLD vlc +/home/br/br3/output/build/vlc-2.2.1/src/.libs/libvlccore.so: undefined reference to `strerror_l' + +Code for #else condition was taken from +http://patches.osdyson.org/patch/series/view/vlc/2.2.0~rc2-1+dyson2/dyson.patch + +[Bernd: rebased for vlc-3.0.6 & 3.0.9.2] +Signed-off-by: Bernd Kuhls +--- + configure.ac | 2 +- + src/posix/error.c | 4 ++++ + 2 files changed, 5 insertions(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index dfb4c1c329..bfe43512a2 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -590,7 +590,7 @@ dnl Check for system libs needed + need_libc=false + + dnl Check for usual libc functions +-AC_CHECK_FUNCS([accept4 daemon fcntl flock fstatvfs fork getenv getmntent_r getpwuid_r isatty lstat memalign mkostemp mmap newlocale open_memstream openat pipe2 pread posix_fadvise posix_madvise posix_memalign setlocale stricmp strnicmp strptime uselocale]) ++AC_CHECK_FUNCS([accept4 daemon fcntl flock fstatvfs fork getenv getmntent_r getpwuid_r isatty lstat memalign mkostemp mmap newlocale open_memstream openat pipe2 pread posix_fadvise posix_madvise posix_memalign setlocale strerror_l stricmp strnicmp strptime uselocale]) + AC_REPLACE_FUNCS([aligned_alloc atof atoll dirfd fdopendir ffsll flockfile fsync getdelim getpid lfind lldiv memrchr nrand48 poll recvmsg rewind sendmsg setenv strcasecmp strcasestr strdup strlcpy strndup strnlen strnstr strsep strtof strtok_r strtoll swab tdestroy tfind timegm timespec_get strverscmp pathconf]) + AC_REPLACE_FUNCS([gettimeofday]) + AC_CHECK_FUNC(fdatasync,, +diff --git a/src/posix/error.c b/src/posix/error.c +index db51004601..b4aa6fb3ca 100644 +--- a/src/posix/error.c ++++ b/src/posix/error.c +@@ -31,6 +31,7 @@ + + static const char *vlc_strerror_l(int errnum, const char *lname) + { ++#ifdef HAVE_STRERROR_L + int saved_errno = errno; + locale_t loc = newlocale(LC_MESSAGES_MASK, lname, (locale_t)0); + +@@ -51,6 +52,9 @@ static const char *vlc_strerror_l(int errnum, const char *lname) + const char *buf = strerror_l(errnum, loc); + + freelocale(loc); ++#else ++ const char *buf = strerror(errnum); ++#endif + return buf; + } + +-- +2.14.4 + diff --git a/package/vlc/0006-posix-remove-ancient-run-time-fallback-to-real-time-.patch b/package/vlc/0006-posix-remove-ancient-run-time-fallback-to-real-time-.patch new file mode 100644 index 00000000..4fc639e2 --- /dev/null +++ b/package/vlc/0006-posix-remove-ancient-run-time-fallback-to-real-time-.patch @@ -0,0 +1,187 @@ +From 5d561e1e2dcde3c9fca4d925f12447009d0d4a4c Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?R=C3=A9mi=20Denis-Courmont?= +Date: Wed, 18 Apr 2018 17:23:57 +0300 +Subject: [PATCH] posix: remove ancient run-time fallback to real-time clock +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +posix: remove ancient run-time fallback to real-time clock + +For hysterical raisins, GNU/Linux and possibly some other OSes still +report that monotonic clock must be checked at run-time, although I +doubt that VLC or even current glibc would run on such old kernel. + +Drop that to simplify and avoid the systematic one-time init check. + +Downloaded from upstream commit to fix build error on m68k: + +posix/thread.c:79:5: warning: #warning Monotonic clock not available. Expect timing issues. [-Wcpp] + # warning Monotonic clock not available. Expect timing issues. + ^~~~~~~ +posix/thread.c: In function ‘vlc_clock_setup_once’: +posix/thread.c:88:18: error: lvalue required as left operand of assignment + vlc_clock_id = (val < 0) ? CLOCK_REALTIME : CLOCK_MONOTONIC; + +Signed-off-by: Bernd Kuhls +--- + src/posix/thread.c | 96 +++++++----------------------------------------------- + 1 file changed, 11 insertions(+), 85 deletions(-) + +diff --git a/src/posix/thread.c b/src/posix/thread.c +index dab8b71f97..8878941913 100644 +--- a/src/posix/thread.c ++++ b/src/posix/thread.c +@@ -51,62 +51,16 @@ + # include + #endif + +-#if !defined (_POSIX_TIMERS) +-# define _POSIX_TIMERS (-1) +-#endif +-#if !defined (_POSIX_CLOCK_SELECTION) +-/* Clock selection was defined in 2001 and became mandatory in 2008. */ +-# define _POSIX_CLOCK_SELECTION (-1) +-#endif +-#if !defined (_POSIX_MONOTONIC_CLOCK) +-# define _POSIX_MONOTONIC_CLOCK (-1) +-#endif +- +-#if (_POSIX_TIMERS > 0) + static unsigned vlc_clock_prec; + +-# if (_POSIX_MONOTONIC_CLOCK > 0) && (_POSIX_CLOCK_SELECTION > 0) +-/* Compile-time POSIX monotonic clock support */ +-# define vlc_clock_id (CLOCK_MONOTONIC) +- +-# elif (_POSIX_MONOTONIC_CLOCK == 0) && (_POSIX_CLOCK_SELECTION > 0) +-/* Run-time POSIX monotonic clock support (see clock_setup() below) */ +-static clockid_t vlc_clock_id; +- +-# else +-/* No POSIX monotonic clock support */ +-# define vlc_clock_id (CLOCK_REALTIME) +-# warning Monotonic clock not available. Expect timing issues. +- +-# endif /* _POSIX_MONOTONIC_CLOKC */ +- + static void vlc_clock_setup_once (void) + { +-# if (_POSIX_MONOTONIC_CLOCK == 0) +- long val = sysconf (_SC_MONOTONIC_CLOCK); +- assert (val != 0); +- vlc_clock_id = (val < 0) ? CLOCK_REALTIME : CLOCK_MONOTONIC; +-# endif +- + struct timespec res; +- if (unlikely(clock_getres (vlc_clock_id, &res) != 0 || res.tv_sec != 0)) ++ if (unlikely(clock_getres(CLOCK_MONOTONIC, &res) != 0 || res.tv_sec != 0)) + abort (); + vlc_clock_prec = (res.tv_nsec + 500) / 1000; + } + +-static pthread_once_t vlc_clock_once = PTHREAD_ONCE_INIT; +- +-# define vlc_clock_setup() \ +- pthread_once(&vlc_clock_once, vlc_clock_setup_once) +- +-#else /* _POSIX_TIMERS */ +- +-# include /* gettimeofday() */ +- +-# define vlc_clock_setup() (void)0 +-# warning Monotonic clock not available. Expect timing issues. +-#endif /* _POSIX_TIMERS */ +- + static struct timespec mtime_to_ts (mtime_t date) + { + lldiv_t d = lldiv (date, CLOCK_FREQ); +@@ -233,14 +187,11 @@ void vlc_cond_init (vlc_cond_t *p_condvar) + { + pthread_condattr_t attr; + +- if (unlikely(pthread_condattr_init (&attr))) +- abort (); +-#if (_POSIX_CLOCK_SELECTION > 0) +- vlc_clock_setup (); +- pthread_condattr_setclock (&attr, vlc_clock_id); +-#endif +- if (unlikely(pthread_cond_init (p_condvar, &attr))) ++ if (unlikely(pthread_condattr_init (&attr)) ++ || unlikely(pthread_condattr_setclock(&attr, CLOCK_MONOTONIC)) ++ || unlikely(pthread_cond_init (p_condvar, &attr))) + abort (); ++ + pthread_condattr_destroy (&attr); + } + +@@ -625,44 +576,27 @@ void vlc_control_cancel (int cmd, ...) + + mtime_t mdate (void) + { +-#if (_POSIX_TIMERS > 0) + struct timespec ts; + +- vlc_clock_setup (); +- if (unlikely(clock_gettime (vlc_clock_id, &ts) != 0)) ++ if (unlikely(clock_gettime(CLOCK_MONOTONIC, &ts) != 0)) + abort (); + + return (INT64_C(1000000) * ts.tv_sec) + (ts.tv_nsec / 1000); +- +-#else +- struct timeval tv; +- +- if (unlikely(gettimeofday (&tv, NULL) != 0)) +- abort (); +- return (INT64_C(1000000) * tv.tv_sec) + tv.tv_usec; +- +-#endif + } + + #undef mwait + void mwait (mtime_t deadline) + { +-#if (_POSIX_CLOCK_SELECTION > 0) +- vlc_clock_setup (); ++ static pthread_once_t vlc_clock_once = PTHREAD_ONCE_INIT; ++ + /* If the deadline is already elapsed, or within the clock precision, + * do not even bother the system timer. */ ++ pthread_once(&vlc_clock_once, vlc_clock_setup_once); + deadline -= vlc_clock_prec; + + struct timespec ts = mtime_to_ts (deadline); + +- while (clock_nanosleep (vlc_clock_id, TIMER_ABSTIME, &ts, NULL) == EINTR); +- +-#else +- deadline -= mdate (); +- if (deadline > 0) +- msleep (deadline); +- +-#endif ++ while (clock_nanosleep(CLOCK_MONOTONIC, TIMER_ABSTIME, &ts, NULL) == EINTR); + } + + #undef msleep +@@ -670,15 +604,7 @@ void msleep (mtime_t delay) + { + struct timespec ts = mtime_to_ts (delay); + +-#if (_POSIX_CLOCK_SELECTION > 0) +- vlc_clock_setup (); +- while (clock_nanosleep (vlc_clock_id, 0, &ts, &ts) == EINTR); +- +-#else +- while (nanosleep (&ts, &ts) == -1) +- assert (errno == EINTR); +- +-#endif ++ while (clock_nanosleep(CLOCK_MONOTONIC, 0, &ts, &ts) == EINTR); + } + + unsigned vlc_GetCPUCount(void) +-- +2.14.4 + diff --git a/package/vlc/0007-Add-support-for-freerdp2.patch b/package/vlc/0007-Add-support-for-freerdp2.patch new file mode 100644 index 00000000..75f09554 --- /dev/null +++ b/package/vlc/0007-Add-support-for-freerdp2.patch @@ -0,0 +1,150 @@ +From 3780bbb20bf35aa8f21ac672da3f0c5f408468e9 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Thu, 16 Aug 2018 12:27:40 +0200 +Subject: [PATCH] Add support for freerdp2 + +Downloaded from +https://gitweb.gentoo.org/repo/gentoo.git/tree/media-video/vlc/files/vlc-2.2.8-freerdp-2.patch + +Signed-off-by: Bernd Kuhls +--- + configure.ac | 2 +- + modules/access/rdp.c | 51 ++++++++++++++------------------------------------- + 2 files changed, 15 insertions(+), 38 deletions(-) + +diff --git a/configure.ac b/configure.ac +index bfe43512a2..4808b8becf 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1992,7 +1992,7 @@ PKG_ENABLE_MODULES_VLC([VNC], [vnc], [libvncclient >= 0.9.9], (VNC/rfb client su + + dnl RDP/Remote Desktop access module + dnl +-PKG_ENABLE_MODULES_VLC([FREERDP], [rdp], [freerdp >= 1.0.1], (RDP/Remote Desktop client support) ) ++PKG_ENABLE_MODULES_VLC([FREERDP], [rdp], [freerdp2 >= 1.0.1], (RDP/Remote Desktop client support) ) + + dnl + dnl Real RTSP plugin +diff --git a/modules/access/rdp.c b/modules/access/rdp.c +index 2992090219..49986f5da9 100644 +--- a/modules/access/rdp.c ++++ b/modules/access/rdp.c +@@ -45,18 +45,6 @@ + # include + #endif + +-#if !defined(FREERDP_VERSION_MAJOR) || \ +- (defined(FREERDP_VERSION_MAJOR) && !(FREERDP_VERSION_MAJOR > 1 || (FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR >= 1))) +-# define SoftwareGdi sw_gdi +-# define Fullscreen fullscreen +-# define ServerHostname hostname +-# define Username username +-# define Password password +-# define ServerPort port +-# define EncryptionMethods encryption +-# define ContextSize context_size +-#endif +- + #include + #ifdef HAVE_POLL + # include +@@ -144,6 +132,7 @@ static void desktopResizeHandler( rdpContext *p_context ) + vlcrdp_context_t * p_vlccontext = (vlcrdp_context_t *) p_context; + demux_sys_t *p_sys = p_vlccontext->p_demux->p_sys; + rdpGdi *p_gdi = p_context->gdi; ++ unsigned bytesPerPixel; + + if ( p_sys->es ) + { +@@ -153,17 +142,21 @@ static void desktopResizeHandler( rdpContext *p_context ) + + /* Now init and fill es format */ + vlc_fourcc_t i_chroma; +- switch( p_gdi->bytesPerPixel ) ++ switch( p_gdi->dstFormat ) + { + default: +- case 16: ++ msg_Dbg( p_vlccontext->p_demux, "unhandled dstFormat %x bpp", p_gdi->dstFormat); ++ case PIXEL_FORMAT_BGR16: + i_chroma = VLC_CODEC_RGB16; ++ bytesPerPixel = 16; + break; +- case 24: ++ case PIXEL_FORMAT_BGR24: + i_chroma = VLC_CODEC_RGB24; ++ bytesPerPixel = 24; + break; +- case 32: ++ case PIXEL_FORMAT_BGRA32: + i_chroma = VLC_CODEC_RGB32; ++ bytesPerPixel = 32; + break; + } + es_format_t fmt; +@@ -176,7 +169,7 @@ static void desktopResizeHandler( rdpContext *p_context ) + fmt.video.i_height = p_gdi->height; + fmt.video.i_frame_rate_base = 1000; + fmt.video.i_frame_rate = 1000 * p_sys->f_fps; +- p_sys->i_framebuffersize = p_gdi->width * p_gdi->height * p_gdi->bytesPerPixel; ++ p_sys->i_framebuffersize = p_gdi->width * p_gdi->height * bytesPerPixel; + + if ( p_sys->p_block ) + p_sys->p_block = block_Realloc( p_sys->p_block, 0, p_sys->i_framebuffersize ); +@@ -237,28 +230,19 @@ static bool postConnectHandler( freerdp *p_instance ) + vlcrdp_context_t * p_vlccontext = (vlcrdp_context_t *) p_instance->context; + + msg_Dbg( p_vlccontext->p_demux, "connected to desktop %dx%d (%d bpp)", +-#if defined(FREERDP_VERSION_MAJOR) && (FREERDP_VERSION_MAJOR > 1 || (FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR >= 1)) + p_instance->settings->DesktopWidth, + p_instance->settings->DesktopHeight, + p_instance->settings->ColorDepth +-#else +- p_instance->settings->width, +- p_instance->settings->height, +- p_instance->settings->color_depth +-#endif + ); + + p_instance->update->DesktopResize = desktopResizeHandler; + p_instance->update->BeginPaint = beginPaintHandler; + p_instance->update->EndPaint = endPaintHandler; + +- gdi_init( p_instance, +- CLRBUF_16BPP | +-#if defined(FREERDP_VERSION_MAJOR) && defined(FREERDP_VERSION_MINOR) && \ +- !(FREERDP_VERSION_MAJOR > 1 || (FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR >= 2)) +- CLRBUF_24BPP | +-#endif +- CLRBUF_32BPP, NULL ); ++ if ( p_instance->settings->ColorDepth > 16 ) ++ gdi_init( p_instance, PIXEL_FORMAT_XRGB32); ++ else ++ gdi_init( p_instance, PIXEL_FORMAT_RGB16); + + desktopResizeHandler( p_instance->context ); + return true; +@@ -432,10 +416,6 @@ static int Open( vlc_object_t *p_this ) + if ( p_sys->f_fps <= 0 ) p_sys->f_fps = 1.0; + p_sys->i_frame_interval = 1000000 / p_sys->f_fps; + +-#if FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR < 2 +- freerdp_channels_global_init(); +-#endif +- + p_sys->p_instance = freerdp_new(); + if ( !p_sys->p_instance ) + { +@@ -508,9 +488,6 @@ static void Close( vlc_object_t *p_this ) + + freerdp_disconnect( p_sys->p_instance ); + freerdp_free( p_sys->p_instance ); +-#if FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR < 2 +- freerdp_channels_global_uninit(); +-#endif + + if ( p_sys->p_block ) + block_Release( p_sys->p_block ); +-- +2.14.4 + diff --git a/package/vlc/0008-configure.ac-also-use-AC_PATH_PROG-to-check-for-wayl.patch b/package/vlc/0008-configure.ac-also-use-AC_PATH_PROG-to-check-for-wayl.patch new file mode 100644 index 00000000..2b74fe0d --- /dev/null +++ b/package/vlc/0008-configure.ac-also-use-AC_PATH_PROG-to-check-for-wayl.patch @@ -0,0 +1,50 @@ +From 27635f902831fac898586f1f3dc98369f12582c9 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Sun, 26 Aug 2018 12:51:04 +0200 +Subject: [PATCH] configure.ac: also use AC_PATH_PROG to check for + wayland-scanner + +When cross-compiling the .pc file might point to the wrong +wayland-scanner binary (target rather than host) resulting in a +non-executable and wrong scanner. +Try searching the PATH first, and if that fails fall back into +pkg-config. + +Signed-off-by: Bernd Kuhls +--- + configure.ac | 19 +++++++++++-------- + 1 file changed, 11 insertions(+), 8 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 4808b8becf..a18641ed23 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -3140,14 +3140,17 @@ AS_IF([test "${enable_wayland}" != "no"], [ + AC_MSG_ERROR([$(${PKG_CONFIG} --print-errors 'wayland-protocols >= 1.4')]) + ]) + +- AC_MSG_CHECKING([for the Wayland scanner]) +- PKG_CHECK_EXISTS([wayland-scanner], [ +- WAYLAND_SCANNER="$(${PKG_CONFIG} wayland-scanner --variable wayland_scanner)" +- AC_MSG_RESULT([${WAYLAND_SCANNER}]) +- ], [ +- AC_MSG_RESULT([not found]) +- AC_MSG_ERROR([$(${PKG_CONFIG} --print-errors wayland-scanner)]) +- ]) ++ AC_PATH_PROG([WAYLAND_SCANNER], [wayland-scanner]) ++ if test "x$WAYLAND_SCANNER" = x; then ++ AC_MSG_CHECKING([for the Wayland scanner]) ++ PKG_CHECK_EXISTS([wayland-scanner], [ ++ WAYLAND_SCANNER="$(${PKG_CONFIG} wayland-scanner --variable wayland_scanner)" ++ AC_MSG_RESULT([${WAYLAND_SCANNER}]) ++ ], [ ++ AC_MSG_RESULT([not found]) ++ AC_MSG_ERROR([$(${PKG_CONFIG} --print-errors wayland-scanner)]) ++ ]) ++ fi + + have_wayland="yes" + +-- +2.18.0 + diff --git a/package/vlc/0009-modules-video_filter-opencv_example.cpp-fix-build-wi.patch b/package/vlc/0009-modules-video_filter-opencv_example.cpp-fix-build-wi.patch new file mode 100644 index 00000000..952f9fdf --- /dev/null +++ b/package/vlc/0009-modules-video_filter-opencv_example.cpp-fix-build-wi.patch @@ -0,0 +1,42 @@ +From 57b1e723b73da4c8d42c20d4e28040ec4c0edd85 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Fri, 28 Feb 2020 14:29:47 +0100 +Subject: [PATCH] modules/video_filter/opencv_example.cpp: fix build with + opencv 3.4.9 + +Use cvScalar instead of CV_RGB to avoid the following build failure with +opencv 3.4.9: + +In file included from /home/naourr/work/instance-2/output-1/host/x86_64-buildroot-linux-uclibc/sysroot/usr/include/opencv2/imgproc/imgproc.hpp:48, + from video_filter/opencv_example.cpp:46: +video_filter/opencv_example.cpp: In function 'picture_t* Filter(filter_t*, picture_t*)': +video_filter/opencv_example.cpp:200:46: error: could not convert 'cv::Scalar_((double)0, (double)0, (double)0, (double)0)' from 'cv::Scalar' {aka 'cv::Scalar_'} to 'CvScalar' + cvRectangle( p_img[0], pt1, pt2, CV_RGB(0,0,0), 3, 8, 0 ); + ^~~~~~ + +Indeed, CV_RGB is defined as cv::Scalar instead of cvScalar since +version 3.4.2 and +https://github.com/opencv/opencv/commit/7f9253ea0a9fe2635926379420002dbf0c3fce0f + +Signed-off-by: Fabrice Fontaine +[Upstream status: https://patches.videolan.org/patch/26655] +--- + modules/video_filter/opencv_example.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/modules/video_filter/opencv_example.cpp b/modules/video_filter/opencv_example.cpp +index 1334cd4c36..1a8d574f7a 100644 +--- a/modules/video_filter/opencv_example.cpp ++++ b/modules/video_filter/opencv_example.cpp +@@ -202,7 +202,7 @@ static picture_t *Filter( filter_t *p_filter, picture_t *p_pic ) + pt2.x = (r->x+r->width)*scale; + pt1.y = r->y*scale; + pt2.y = (r->y+r->height)*scale; +- cvRectangle( p_img[0], pt1, pt2, CV_RGB(0,0,0), 3, 8, 0 ); ++ cvRectangle( p_img[0], pt1, pt2, cvScalar(0,0,0,0), 3, 8, 0 ); + + *(CvRect*)(&(p_sys->event_info.p_region[i])) = *r; + p_sys->event_info.p_region[i].i_id = p_sys->i_id++; +-- +2.25.0 + diff --git a/package/vlc/0010-modules-access-live555.cpp-fix-build-with-live555-20.patch b/package/vlc/0010-modules-access-live555.cpp-fix-build-with-live555-20.patch new file mode 100644 index 00000000..5f046648 --- /dev/null +++ b/package/vlc/0010-modules-access-live555.cpp-fix-build-with-live555-20.patch @@ -0,0 +1,36 @@ +From eba390d13ec4089cd6b9d8687ab3f8905b9d3ac8 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sat, 22 May 2021 22:56:04 +0200 +Subject: [PATCH] modules/access/live555.cpp: fix build with live555 >= + 2020.12.11 + +Since live555-2020.12.11, connectionEndpointAddress() member function +use a "struct sockaddr_storage" in preparation for eventual support of +IPv6: http://www.live555.com/liveMedia/public/changelog.txt + +Fixes: + - http://autobuild.buildroot.org/results/83170984f96238756c45bf1f4e542363afafd45f + +Signed-off-by: Fabrice Fontaine +--- + modules/access/live555.cpp | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/modules/access/live555.cpp b/modules/access/live555.cpp +index 9d6e01ae32..32a6c294eb 100644 +--- a/modules/access/live555.cpp ++++ b/modules/access/live555.cpp +@@ -850,7 +850,9 @@ static int SessionsSetup( demux_t *p_demux ) + if( !p_sys->b_multicast ) + { + /* We need different rollover behaviour for multicast */ +- p_sys->b_multicast = IsMulticastAddress( sub->connectionEndpointAddress() ); ++ struct sockaddr_storage tempAddr; ++ sub->getConnectionEndpointAddress( tempAddr ); ++ p_sys->b_multicast = IsMulticastAddress( tempAddr ); + } + + tk = (live_track_t*)malloc( sizeof( live_track_t ) ); +-- +2.30.2 + diff --git a/package/vlc/Config.in b/package/vlc/Config.in new file mode 100644 index 00000000..964b7660 --- /dev/null +++ b/package/vlc/Config.in @@ -0,0 +1,32 @@ +config BR2_PACKAGE_VLC + bool "vlc" + depends on !BR2_RISCV_32 + depends on BR2_USE_MMU # fork() + depends on BR2_INSTALL_LIBSTDCPP + depends on !BR2_STATIC_LIBS + depends on BR2_USE_WCHAR + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C++11 + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 + select BR2_PACKAGE_LIBVORBIS if BR2_PACKAGE_OPUS + select BR2_PACKAGE_VLC_OPENCV3_BACKEND if BR2_PACKAGE_OPENCV3 + select BR2_PACKAGE_ZLIB if BR2_PACKAGE_TAGLIB + help + VLC is a free and open source cross-platform multimedia player + and framework that plays most multimedia files as well as DVD, + Audio CD, VCD, and various streaming protocols. + + http://www.videolan.org/vlc/ + +config BR2_PACKAGE_VLC_OPENCV3_BACKEND + bool + select BR2_PACKAGE_OPENCV3_LIB_IMGPROC + select BR2_PACKAGE_OPENCV3_LIB_OBJDETECT + +comment "vlc needs a toolchain w/ C++, dynamic library, wchar, threads, gcc >= 4.9, headers >= 3.7" + depends on !BR2_RISCV_32 + depends on BR2_USE_MMU + depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS \ + || !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS \ + || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 \ + || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 diff --git a/package/vlc/vlc.hash b/package/vlc/vlc.hash new file mode 100644 index 00000000..468ec7df --- /dev/null +++ b/package/vlc/vlc.hash @@ -0,0 +1,7 @@ +# From https://get.videolan.org/vlc/3.0.16/vlc-3.0.16.tar.xz.sha256 +sha256 ffae35fc64f625c175571d2346bc5f6207be99762517f15423e74f18399410f6 vlc-3.0.16.tar.xz +# From https://get.videolan.org/vlc/3.0.16/vlc-3.0.16.tar.xz.sha1 +sha1 e22ac839a09b5ead8992ae6aa8ea886364283e6a vlc-3.0.16.tar.xz +# Locally computed +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING +sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LIB diff --git a/package/vlc/vlc.mk b/package/vlc/vlc.mk new file mode 100644 index 00000000..06fc650f --- /dev/null +++ b/package/vlc/vlc.mk @@ -0,0 +1,585 @@ +################################################################################ +# +# vlc +# +################################################################################ + +VLC_VERSION = 3.0.16 +VLC_SITE = https://get.videolan.org/vlc/$(VLC_VERSION) +VLC_SOURCE = vlc-$(VLC_VERSION).tar.xz +VLC_LICENSE = GPL-2.0+, LGPL-2.1+ +VLC_LICENSE_FILES = COPYING COPYING.LIB +VLC_CPE_ID_VENDOR = videolan +VLC_CPE_ID_PRODUCT = vlc_media_player +VLC_DEPENDENCIES = host-pkgconf +VLC_AUTORECONF = YES + +# Install vlc libraries in staging. +VLC_INSTALL_STAGING = YES + +# gcc bug internal compiler error: in merge_overlapping_regs, at +# regrename.c:304. This bug is fixed since gcc 6. +ifeq ($(BR2_microblaze)$(BR2_or1k):$(BR2_TOOLCHAIN_GCC_AT_LEAST_6),y:) +VLC_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -O0" +VLC_CONF_OPTS += --disable-optimizations +endif + +# configure check for -fstack-protector-strong is broken +VLC_CONF_ENV += \ + ax_cv_check_cflags___fstack_protector_strong=$(if $(BR2_TOOLCHAIN_HAS_SSP),yes,no) + +# VLC defines two autoconf functions which are also defined by our own pkg.m4 +# from pkgconf. Unfortunately, they are defined in a different way: VLC adds +# --enable- options, but pkg.m4 adds --with- options. To make sure we use +# VLC's definition, rename these two functions. +define VLC_OVERRIDE_PKG_M4 + $(SED) 's/PKG_WITH_MODULES/VLC_PKG_WITH_MODULES/g' \ + -e 's/PKG_HAVE_WITH_MODULES/VLC_PKG_HAVE_WITH_MODULES/g' \ + $(@D)/configure.ac $(@D)/m4/with_pkg.m4 +endef +VLC_POST_PATCH_HOOKS += VLC_OVERRIDE_PKG_M4 + +VLC_CONF_OPTS += \ + --disable-a52 \ + --disable-addonmanagermodules \ + --disable-aom \ + --disable-aribb25 \ + --disable-aribsub \ + --disable-asdcp \ + --disable-bpg \ + --disable-caca \ + --disable-chromaprint \ + --disable-chromecast \ + --disable-crystalhd \ + --disable-dc1394 \ + --disable-dca \ + --disable-decklink \ + --disable-dsm \ + --disable-dv1394 \ + --disable-fluidlite \ + --disable-gme \ + --disable-goom \ + --disable-jack \ + --disable-jpeg \ + --disable-kai \ + --disable-kate \ + --disable-kva \ + --disable-libplacebo \ + --disable-linsys \ + --disable-mfx \ + --disable-microdns \ + --disable-mmal \ + --disable-mtp \ + --disable-notify \ + --disable-projectm \ + --disable-schroedinger \ + --disable-shine \ + --disable-shout \ + --disable-sndio \ + --disable-spatialaudio \ + --disable-srt \ + --disable-telx \ + --disable-tiger \ + --disable-twolame \ + --disable-vdpau \ + --disable-vsxu \ + --disable-wasapi \ + --disable-x262 \ + --disable-zvbi \ + --enable-run-as-root + +# Uses __atomic_fetch_add_4 +ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) +VLC_CONF_ENV += LIBS="-latomic" +endif + +# Building static and shared doesn't work, so force static off. +ifeq ($(BR2_STATIC_LIBS),) +VLC_CONF_OPTS += --disable-static +endif + +ifeq ($(BR2_POWERPC_CPU_HAS_ALTIVEC),y) +VLC_CONF_OPTS += --enable-altivec +else +VLC_CONF_OPTS += --disable-altivec +endif + +ifeq ($(BR2_X86_CPU_HAS_SSE),y) +VLC_CONF_OPTS += --enable-sse +else +VLC_CONF_OPTS += --disable-sse +endif + +ifeq ($(BR2_PACKAGE_ALSA_LIB),y) +VLC_CONF_OPTS += --enable-alsa +VLC_DEPENDENCIES += alsa-lib +else +VLC_CONF_OPTS += --disable-alsa +endif + +# avahi support needs avahi-client, which needs avahi-daemon and dbus +ifeq ($(BR2_PACKAGE_AVAHI)$(BR2_PACKAGE_AVAHI_DAEMON)$(BR2_PACKAGE_DBUS),yyy) +VLC_CONF_OPTS += --enable-avahi +VLC_DEPENDENCIES += avahi +else +VLC_CONF_OPTS += --disable-avahi +endif + +ifeq ($(BR2_PACKAGE_DAV1D),y) +VLC_CONF_OPTS += --enable-dav1d +VLC_DEPENDENCIES += dav1d +else +VLC_CONF_OPTS += --disable-dav1d +endif + +ifeq ($(BR2_PACKAGE_DBUS),y) +VLC_CONF_OPTS += --enable-dbus +VLC_DEPENDENCIES += dbus +else +VLC_CONF_OPTS += --disable-dbus +endif + +ifeq ($(BR2_PACKAGE_FAAD2),y) +VLC_CONF_OPTS += --enable-faad +VLC_DEPENDENCIES += faad2 +else +VLC_CONF_OPTS += --disable-faad +endif + +ifeq ($(BR2_PACKAGE_FFMPEG),y) +VLC_CONF_OPTS += --enable-avcodec +VLC_DEPENDENCIES += ffmpeg +else +VLC_CONF_OPTS += --disable-avcodec +endif + +ifeq ($(BR2_PACKAGE_FFMPEG_POSTPROC),y) +VLC_CONF_OPTS += --enable-postproc +else +VLC_CONF_OPTS += --disable-postproc +endif + +ifeq ($(BR2_PACKAGE_FFMPEG_SWSCALE),y) +VLC_CONF_OPTS += --enable-swscale +else +VLC_CONF_OPTS += --disable-swscale +endif + +ifeq ($(BR2_PACKAGE_FLAC),y) +VLC_CONF_OPTS += --enable-flac +VLC_DEPENDENCIES += flac +else +VLC_CONF_OPTS += --disable-flac +endif + +ifeq ($(BR2_PACKAGE_FLUIDSYNTH),y) +VLC_CONF_OPTS += --enable-fluidsynth +VLC_DEPENDENCIES += fluidsynth +else +VLC_CONF_OPTS += --disable-fluidsynth +endif + +ifeq ($(BR2_PACKAGE_FREERDP),y) +VLC_CONF_OPTS += --enable-freerdp +VLC_DEPENDENCIES += freerdp +else +VLC_CONF_OPTS += --disable-freerdp +endif + +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BASE),y) +VLC_CONF_OPTS += --enable-gst-decode +VLC_DEPENDENCIES += gst1-plugins-base +else +VLC_CONF_OPTS += --disable-gst-decode +endif + +ifeq ($(BR2_PACKAGE_HAS_LIBGL),y) +VLC_DEPENDENCIES += libgl +endif + +ifeq ($(BR2_PACKAGE_HARFBUZZ),y) +VLC_CONF_OPTS += --enable-harfbuzz +VLC_DEPENDENCIES += harfbuzz +else +VLC_CONF_OPTS += --disable-harfbuzz +endif + +ifeq ($(BR2_PACKAGE_HAS_LIBGLES),y) +VLC_CONF_OPTS += --enable-gles2 +VLC_DEPENDENCIES += libgles +else +VLC_CONF_OPTS += --disable-gles2 +endif + +ifeq ($(BR2_PACKAGE_OPENCV3),y) +VLC_CONF_OPTS += --enable-opencv +VLC_DEPENDENCIES += opencv3 +else +VLC_CONF_OPTS += --disable-opencv +endif + +ifeq ($(BR2_PACKAGE_OPUS),y) +VLC_CONF_OPTS += --enable-opus +VLC_DEPENDENCIES += libvorbis opus +else +VLC_CONF_OPTS += --disable-opus +endif + +ifeq ($(BR2_PACKAGE_LIBARCHIVE),y) +VLC_CONF_OPTS += --enable-archive +VLC_DEPENDENCIES += libarchive +else +VLC_CONF_OPTS += --disable-archive +endif + +ifeq ($(BR2_PACKAGE_LIBASS),y) +VLC_CONF_OPTS += --enable-libass +VLC_DEPENDENCIES += libass +else +VLC_CONF_OPTS += --disable-libass +endif + +ifeq ($(BR2_PACKAGE_LIBBLURAY),y) +VLC_CONF_OPTS += --enable-bluray +VLC_DEPENDENCIES += libbluray +else +VLC_CONF_OPTS += --disable-bluray +endif + +ifeq ($(BR2_PACKAGE_LIBCDDB),y) +VLC_CONF_OPTS += --enable-libcddb +VLC_DEPENDENCIES += libcddb +else +VLC_CONF_OPTS += --disable-libcddb +endif + +ifeq ($(BR2_PACKAGE_LIBDVBPSI),y) +VLC_CONF_OPTS += --enable-dvbpsi +VLC_DEPENDENCIES += libdvbpsi +else +VLC_CONF_OPTS += --disable-dvbpsi +endif + +ifeq ($(BR2_PACKAGE_LIBDVDNAV),y) +VLC_CONF_OPTS += --enable-dvdnav +VLC_DEPENDENCIES += libdvdnav +else +VLC_CONF_OPTS += --disable-dvdnav +endif + +ifeq ($(BR2_PACKAGE_LIBDVDREAD),y) +VLC_CONF_OPTS += --enable-dvdread +VLC_DEPENDENCIES += libdvdread +else +VLC_CONF_OPTS += --disable-dvdread +endif + +ifeq ($(BR2_PACKAGE_LIBGCRYPT),y) +VLC_CONF_OPTS += --enable-libgcrypt +VLC_DEPENDENCIES += libgcrypt +VLC_CONF_ENV += \ + GCRYPT_CONFIG="$(STAGING_DIR)/usr/bin/libgcrypt-config" +else +VLC_CONF_OPTS += --disable-libgcrypt +endif + +ifeq ($(BR2_PACKAGE_LIBIDN),y) +VLC_DEPENDENCIES += libidn +endif + +ifeq ($(BR2_PACKAGE_LIBMAD),y) +VLC_CONF_OPTS += --enable-mad +VLC_DEPENDENCIES += libmad +else +VLC_CONF_OPTS += --disable-mad +endif + +ifeq ($(BR2_PACKAGE_LIBMATROSKA),y) +VLC_CONF_OPTS += --enable-matroska +VLC_DEPENDENCIES += libmatroska +else +VLC_CONF_OPTS += --disable-matroska +endif + +ifeq ($(BR2_PACKAGE_LIBMODPLUG),y) +VLC_CONF_OPTS += --enable-mod +VLC_DEPENDENCIES += libmodplug +else +VLC_CONF_OPTS += --disable-mod +endif + +ifeq ($(BR2_PACKAGE_LIBMPEG2),y) +VLC_CONF_OPTS += --enable-libmpeg2 +VLC_DEPENDENCIES += libmpeg2 +else +VLC_CONF_OPTS += --disable-libmpeg2 +endif + +ifeq ($(BR2_PACKAGE_LIBNFS),y) +VLC_CONF_OPTS += --enable-nfs +VLC_DEPENDENCIES += libnfs +else +VLC_CONF_OPTS += --disable-nfs +endif + +ifeq ($(BR2_PACKAGE_LIBPNG),y) +VLC_CONF_OPTS += --enable-png +VLC_DEPENDENCIES += libpng +else +VLC_CONF_OPTS += --disable-png +endif + +ifeq ($(BR2_PACKAGE_LIBRSVG),y) +VLC_CONF_OPTS += --enable-svg --enable-svgdec +VLC_DEPENDENCIES += librsvg +else +VLC_CONF_OPTS += --disable-svg --disable-svgdec +endif + +ifeq ($(BR2_PACKAGE_LIBSAMPLERATE),y) +VLC_CONF_OPTS += --enable-samplerate +VLC_DEPENDENCIES += libsamplerate +else +VLC_CONF_OPTS += --disable-samplerate +endif + +ifeq ($(BR2_PACKAGE_LIBSECRET),y) +VLC_CONF_OPTS += --enable-secret +VLC_DEPENDENCIES += libsecret +else +VLC_CONF_OPTS += --disable-secret +endif + +ifeq ($(BR2_PACKAGE_LIBSOXR),y) +VLC_CONF_OPTS += --enable-soxr +VLC_DEPENDENCIES += libsoxr +else +VLC_CONF_OPTS += --disable-soxr +endif + +ifeq ($(BR2_PACKAGE_LIBSSH2),y) +VLC_CONF_OPTS += --enable-sftp +VLC_DEPENDENCIES += libssh2 +else +VLC_CONF_OPTS += --disable-sftp +endif + +ifeq ($(BR2_PACKAGE_LIBSIDPLAY2),y) +VLC_CONF_OPTS += --enable-sid +VLC_DEPENDENCIES += libsidplay2 +else +VLC_CONF_OPTS += --disable-sid +endif + +ifeq ($(BR2_PACKAGE_LIBTHEORA),y) +VLC_CONF_OPTS += --enable-theora +VLC_DEPENDENCIES += libtheora +else +VLC_CONF_OPTS += --disable-theora +endif + +ifeq ($(BR2_PACKAGE_LIBUPNP),y) +VLC_CONF_OPTS += --enable-upnp +VLC_DEPENDENCIES += libupnp +else +VLC_CONF_OPTS += --disable-upnp +endif + +# libva support depends on ffmpeg +ifeq ($(BR2_PACKAGE_FFMPEG)$(BR2_PACKAGE_LIBVA),yy) +VLC_CONF_OPTS += --enable-libva +VLC_DEPENDENCIES += libva +else +VLC_CONF_OPTS += --disable-libva +endif + +ifeq ($(BR2_PACKAGE_LIBVNCSERVER),y) +VLC_CONF_OPTS += --enable-vnc +VLC_DEPENDENCIES += libvncserver +else +VLC_CONF_OPTS += --disable-vnc +endif + +ifeq ($(BR2_PACKAGE_LIBVORBIS),y) +VLC_CONF_OPTS += --enable-vorbis +VLC_DEPENDENCIES += libvorbis +else +VLC_CONF_OPTS += --disable-vorbis +endif + +ifeq ($(BR2_PACKAGE_LIBV4L),y) +VLC_CONF_OPTS += --enable-v4l2 +VLC_DEPENDENCIES += libv4l +else +VLC_CONF_OPTS += --disable-v4l2 +endif + +ifeq ($(BR2_PACKAGE_LIBVPX),y) +VLC_CONF_OPTS += --enable-vpx +VLC_DEPENDENCIES += libvpx +else +VLC_CONF_OPTS += --disable-vpx +endif + +ifeq ($(BR2_PACKAGE_LIBXCB),y) +VLC_CONF_OPTS += --enable-xcb +VLC_DEPENDENCIES += libxcb +else +VLC_CONF_OPTS += --disable-xcb +endif + +ifeq ($(BR2_PACKAGE_LIBXML2),y) +VLC_CONF_OPTS += --enable-libxml2 +VLC_DEPENDENCIES += libxml2 +else +VLC_CONF_OPTS += --disable-libxml2 +endif + +ifeq ($(BR2_PACKAGE_LIVE555),y) +VLC_CONF_OPTS += --enable-live555 +VLC_DEPENDENCIES += live555 +ifneq ($(BR2_PACKAGE_OPENSSL),y) +VLC_CONF_ENV += CXXFLAGS="$(TARGET_CXXFLAGS) -DNO_OPENSSL" +endif +else +VLC_CONF_OPTS += --disable-live555 +endif + +ifeq ($(BR2_PACKAGE_LUA),y) +VLC_CONF_OPTS += --enable-lua +VLC_DEPENDENCIES += lua host-lua +else +VLC_CONF_OPTS += --disable-lua +endif + +ifeq ($(BR2_PACKAGE_MINIZIP),y) +VLC_DEPENDENCIES += minizip +endif + +ifeq ($(BR2_PACKAGE_MPG123),y) +VLC_CONF_OPTS += --enable-mpg123 +VLC_DEPENDENCIES += mpg123 +else +VLC_CONF_OPTS += --disable-mpg123 +endif + +ifeq ($(BR2_PACKAGE_MUSEPACK),y) +VLC_CONF_OPTS += --enable-mpc +VLC_DEPENDENCIES += musepack +else +VLC_CONF_OPTS += --disable-mpc +endif + +ifeq ($(BR2_PACKAGE_NCURSES_WCHAR),y) +VLC_CONF_OPTS += --enable-ncurses +VLC_DEPENDENCIES += ncurses +else +VLC_CONF_OPTS += --disable-ncurses +endif + +ifeq ($(BR2_PACKAGE_PULSEAUDIO),y) +VLC_CONF_OPTS += --enable-pulse +VLC_DEPENDENCIES += pulseaudio +else +VLC_CONF_OPTS += --disable-pulse +endif + +ifeq ($(BR2_PACKAGE_QT5BASE_WIDGETS)$(BR2_PACKAGE_QT5SVG),yy) +VLC_CONF_OPTS += --enable-qt +VLC_DEPENDENCIES += qt5base qt5svg +ifeq ($(BR2_PACKAGE_XLIB_LIBXEXT)$(BR2_PACKAGE_XLIB_LIBXINERAMA)$(BR2_PACKAGE_XLIB_LIBXPM),yyy) +VLC_CONF_OPTS += --enable-skins2 +VLC_DEPENDENCIES += xlib_libXext xlib_libXinerama xlib_libXpm +else +VLC_CONF_OPTS += --disable-skins2 +endif +else +VLC_CONF_OPTS += --disable-qt --disable-skins2 +endif + +ifeq ($(BR2_PACKAGE_SDL_IMAGE),y) +VLC_CONF_OPTS += --enable-sdl-image +VLC_DEPENDENCIES += sdl_image +else +VLC_CONF_OPTS += --disable-sdl-image +endif + +ifeq ($(BR2_PACKAGE_SAMBA4),y) +VLC_CONF_OPTS += --enable-smbclient +VLC_DEPENDENCIES += samba4 +else +VLC_CONF_OPTS += --disable-smbclient +endif + +ifeq ($(BR2_PACKAGE_SPEEX)$(BR2_PACKAGE_SPEEXDSP),yy) +VLC_CONF_OPTS += --enable-speex +VLC_DEPENDENCIES += speex speexdsp +else +VLC_CONF_OPTS += --disable-speex +endif + +ifeq ($(BR2_PACKAGE_TAGLIB),y) +VLC_CONF_OPTS += --enable-taglib +VLC_DEPENDENCIES += taglib +else +VLC_CONF_OPTS += --disable-taglib +endif + +ifeq ($(BR2_PACKAGE_TREMOR),y) +VLC_CONF_OPTS += --enable-tremor +VLC_DEPENDENCIES += tremor +else +VLC_CONF_OPTS += --disable-tremor +endif + +ifeq ($(BR2_PACKAGE_HAS_UDEV),y) +VLC_CONF_OPTS += --enable-udev +VLC_DEPENDENCIES += udev +else +VLC_CONF_OPTS += --disable-udev +endif + +ifeq ($(BR2_PACKAGE_WAYLAND)$(BR2_PACKAGE_WAYLAND_PROTOCOLS),yy) +VLC_CONF_OPTS += --enable-wayland +VLC_DEPENDENCIES += wayland wayland-protocols +else +VLC_CONF_OPTS += --disable-wayland +endif + +ifeq ($(BR2_PACKAGE_X264),y) +VLC_CONF_OPTS += --enable-x264 +VLC_DEPENDENCIES += x264 +else +VLC_CONF_OPTS += --disable-x264 +endif + +ifeq ($(BR2_PACKAGE_X265),y) +VLC_CONF_OPTS += --enable-x265 +VLC_DEPENDENCIES += x265 +else +VLC_CONF_OPTS += --disable-x265 +endif + +ifeq ($(BR2_PACKAGE_XCB_UTIL_KEYSYMS),y) +VLC_DEPENDENCIES += xcb-util-keysyms +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBX11),y) +VLC_CONF_OPTS += --with-x +VLC_DEPENDENCIES += xlib_libX11 +else +VLC_CONF_OPTS += --without-x +endif + +ifeq ($(BR2_PACKAGE_ZLIB),y) +VLC_DEPENDENCIES += zlib +endif + +ifeq ($(BR2_PACKAGE_GNUTLS),y) +VLC_CONF_OPTS += --enable-gnutls +VLC_DEPENDENCIES += gnutls +else +VLC_CONF_OPTS += --disable-gnutls +endif + +$(eval $(autotools-package)) diff --git a/package/vmtouch/Config.in b/package/vmtouch/Config.in new file mode 100644 index 00000000..daae03aa --- /dev/null +++ b/package/vmtouch/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_VMTOUCH + bool "vmtouch" + depends on BR2_USE_MMU # fork() + help + vmtouch is a tool for learning about and controlling + the file system cache of unix and unix-like systems. It + can discover which files the OS is caching, tell the OS + to cache or evict some files or regions of files, lock + files into memory so the OS won't evict them, and more. + + https://hoytech.com/vmtouch/ diff --git a/package/vmtouch/vmtouch.hash b/package/vmtouch/vmtouch.hash new file mode 100644 index 00000000..451bf568 --- /dev/null +++ b/package/vmtouch/vmtouch.hash @@ -0,0 +1,5 @@ +# Locally computed +sha256 d57b7b3ae1146c4516429ab7d6db6f2122401db814ddd9cdaad10980e9c8428c vmtouch-1.3.1.tar.gz + +# Hash for license files: +sha256 13258709ed29c17394e0a3ba8c8b9360af35b85231db514f11a0ba385cecd08e LICENSE diff --git a/package/vmtouch/vmtouch.mk b/package/vmtouch/vmtouch.mk new file mode 100644 index 00000000..0aa7bfb4 --- /dev/null +++ b/package/vmtouch/vmtouch.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# vmtouch +# +################################################################################ + +VMTOUCH_VERSION = 1.3.1 +VMTOUCH_SITE = $(call github,hoytech,vmtouch,v$(VMTOUCH_VERSION)) +VMTOUCH_LICENSE = BSD-3-Clause +VMTOUCH_LICENSE_FILES = LICENSE + +define VMTOUCH_BUILD_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) +endef + +define VMTOUCH_INSTALL_TARGET_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) install \ + DESTDIR=$(TARGET_DIR) PREFIX=/usr +endef + +$(eval $(generic-package)) diff --git a/package/vnstat/Config.in b/package/vnstat/Config.in new file mode 100644 index 00000000..677ff575 --- /dev/null +++ b/package/vnstat/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_VNSTAT + bool "vnstat" + depends on BR2_USE_MMU # fork() + depends on BR2_USE_WCHAR # mbstowcs() + select BR2_PACKAGE_SQLITE + help + vnStat is a console-based network traffic monitor that keeps a + log of network traffic for the selected interface(s). It uses + the network interface statistics provided by the kernel as + information source. This means that vnStat won't actually be + sniffing any traffic and also ensures light use of system + resources. + + http://humdi.net/vnstat + +comment "vnstat needs a toolchain w/ wchar" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR diff --git a/package/vnstat/vnstat.hash b/package/vnstat/vnstat.hash new file mode 100644 index 00000000..6934c569 --- /dev/null +++ b/package/vnstat/vnstat.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 89276e0a7281943edb554b874078278ad947dc312938a2451e03eb80679f7ff7 vnstat-2.6.tar.gz +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/vnstat/vnstat.mk b/package/vnstat/vnstat.mk new file mode 100644 index 00000000..be1b75a6 --- /dev/null +++ b/package/vnstat/vnstat.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# vnstat +# +################################################################################ + +VNSTAT_VERSION = 2.6 +VNSTAT_SITE = http://humdi.net/vnstat +VNSTAT_LICENSE = GPL-2.0 +VNSTAT_LICENSE_FILES = COPYING +VNSTAT_DEPENDENCIES = host-pkgconf sqlite +VNSTAT_CONF_OPTS = --disable-extra-paths + +ifeq ($(BR2_PACKAGE_GD)$(BR2_PACKAGE_LIBPNG),yy) +VNSTAT_DEPENDENCIES += gd +VNSTAT_CONF_OPTS += --enable-image-output +else +VNSTAT_CONF_OPTS += --disable-image-output +endif + +$(eval $(autotools-package)) diff --git a/package/vo-aacenc/Config.in b/package/vo-aacenc/Config.in new file mode 100644 index 00000000..b5487dc9 --- /dev/null +++ b/package/vo-aacenc/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_VO_AACENC + bool "vo-aacenc" + help + This library contains an encoder implementation of the + Advanced Audio Coding (AAC) audio codec. The library is + based on a codec implementation by VisualOn as part of the + Stagefright framework from the Google Android project. + + http://sourceforge.net/projects/opencore-amr/ diff --git a/package/vo-aacenc/vo-aacenc.hash b/package/vo-aacenc/vo-aacenc.hash new file mode 100644 index 00000000..f0d352f8 --- /dev/null +++ b/package/vo-aacenc/vo-aacenc.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 e51a7477a359f18df7c4f82d195dab4e14e7414cbd48cf79cc195fc446850f36 vo-aacenc-0.1.3.tar.gz +sha256 8b3f1762349248d444ab9acbafe73941254e36e1064954da56bb9ddbd5873ddb COPYING diff --git a/package/vo-aacenc/vo-aacenc.mk b/package/vo-aacenc/vo-aacenc.mk new file mode 100644 index 00000000..ecdd5849 --- /dev/null +++ b/package/vo-aacenc/vo-aacenc.mk @@ -0,0 +1,46 @@ +################################################################################ +# +# vo-aacenc +# +################################################################################ + +VO_AACENC_VERSION = 0.1.3 +VO_AACENC_SITE = http://downloads.sourceforge.net/project/opencore-amr/vo-aacenc +VO_AACENC_LICENSE = Apache-2.0 +VO_AACENC_LICENSE_FILES = COPYING +VO_AACENC_INSTALL_STAGING = YES + +VO_AACENC_CFLAGS = $(TARGET_CFLAGS) + +# arm specific asm optimizations +ifeq ($(BR2_arm),y) + +ifeq ($(BR2_ARM_CPU_HAS_ARM),y) +# vo-aacenc has ARM assembly code that cannot be compiled in Thumb2 +# mode, so we must force the traditional ARM mode. +VO_AACENC_CFLAGS += -marm + +ifeq ($(BR2_ARM_CPU_HAS_NEON),y) +VO_AACENC_CONF_OPTS += --enable-armv7neon +# mfpu=neon needed to assemble neon code +VO_AACENC_CFLAGS += -mfpu=neon +else +VO_AACENC_CONF_OPTS += --disable-armv7neon + +ifeq ($(BR2_ARM_CPU_ARMV4),) +VO_AACENC_CONF_OPTS += --enable-armv5e +else +VO_AACENC_CONF_OPTS += --disable-armv5e +endif + +endif # !neon + +else +VO_AACENC_CONF_OPTS += --disable-armv7neon --disable-armv5e +endif # has-arm +endif # arm + +VO_AACENC_CONF_ENV = \ + CFLAGS="$(VO_AACENC_CFLAGS)" + +$(eval $(autotools-package)) diff --git a/package/vorbis-tools/Config.in b/package/vorbis-tools/Config.in new file mode 100644 index 00000000..6092e01a --- /dev/null +++ b/package/vorbis-tools/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_VORBIS_TOOLS + bool "vorbis-tools" + select BR2_PACKAGE_LIBAO + select BR2_PACKAGE_LIBOGG + select BR2_PACKAGE_LIBVORBIS + select BR2_PACKAGE_LIBCURL + help + Standalone player, encoder and decoder for Ogg format files. + + Works also as a streaming player. + + http://www.vorbis.com/ diff --git a/package/vorbis-tools/vorbis-tools.hash b/package/vorbis-tools/vorbis-tools.hash new file mode 100644 index 00000000..a4f463e4 --- /dev/null +++ b/package/vorbis-tools/vorbis-tools.hash @@ -0,0 +1,4 @@ +# From http://downloads.xiph.org/releases/vorbis/SHA256SUMS +sha256 db7774ec2bf2c939b139452183669be84fda5774d6400fc57fde37f77624f0b0 vorbis-tools-1.4.2.tar.gz +# Locally computed +sha256 32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670 COPYING diff --git a/package/vorbis-tools/vorbis-tools.mk b/package/vorbis-tools/vorbis-tools.mk new file mode 100644 index 00000000..936d2d81 --- /dev/null +++ b/package/vorbis-tools/vorbis-tools.mk @@ -0,0 +1,30 @@ +################################################################################ +# +# vorbis-tools +# +################################################################################ + +VORBIS_TOOLS_VERSION = 1.4.2 +VORBIS_TOOLS_SITE = http://downloads.xiph.org/releases/vorbis +VORBIS_TOOLS_LICENSE = GPL-2.0 +VORBIS_TOOLS_LICENSE_FILES = COPYING +VORBIS_TOOLS_CPE_ID_VENDOR = xiph +VORBIS_TOOLS_DEPENDENCIES = libao libogg libvorbis libcurl +VORBIS_TOOLS_CONF_OPTS = --program-transform-name='' + +# ogg123 calls math functions but forgets to link with libm +VORBIS_TOOLS_CONF_ENV = LIBS=-lm + +ifeq ($(BR2_PACKAGE_FLAC),y) +VORBIS_TOOLS_DEPENDENCIES += flac +endif + +ifeq ($(BR2_PACKAGE_OPUSFILE),y) +VORBIS_TOOLS_DEPENDENCIES += opusfile +endif + +ifeq ($(BR2_PACKAGE_SPEEX),y) +VORBIS_TOOLS_DEPENDENCIES += speex +endif + +$(eval $(autotools-package)) diff --git a/package/vpnc/0001-Makefile-allow-to-override-the-PREFIX-variable.patch b/package/vpnc/0001-Makefile-allow-to-override-the-PREFIX-variable.patch new file mode 100644 index 00000000..49909ada --- /dev/null +++ b/package/vpnc/0001-Makefile-allow-to-override-the-PREFIX-variable.patch @@ -0,0 +1,31 @@ +From 7314d232f8e85879d8f4c311ced44ee5b21fb239 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 10 Feb 2016 23:26:27 +0100 +Subject: [PATCH] Makefile: allow to override the PREFIX variable + +Some people may not want to install in /usr/local, so this commit +makes it possible to override the PREFIX variable from the make +command line. + +Signed-off-by: Thomas Petazzoni +--- + + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 69f5aca..f9a6781 100644 +--- a/Makefile ++++ b/Makefile +@@ -20,7 +20,7 @@ + # $Id$ + + DESTDIR= +-PREFIX=/usr/local ++PREFIX?=/usr/local + ETCDIR=/etc/vpnc + BINDIR=$(PREFIX)/bin + SBINDIR=$(PREFIX)/sbin +-- +2.6.4 + diff --git a/package/vpnc/0002-Makefile-allow-to-override-the-version.patch b/package/vpnc/0002-Makefile-allow-to-override-the-version.patch new file mode 100644 index 00000000..9d0bae3d --- /dev/null +++ b/package/vpnc/0002-Makefile-allow-to-override-the-version.patch @@ -0,0 +1,41 @@ +From 8b035de4867db4fb8da41298224d92bf5b18e86f Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 10 Feb 2016 23:27:30 +0100 +Subject: [PATCH] Makefile: allow to override the version + +The mk-version script makes the assumption that the build process runs +from a SVN checkout or a Git clone of the vpnc source code. However, +this is not always the case, for example when you are building from a +tarball, but inside a larger project that is versioned with Git. + +This is typically the case when building vpnc under a tool like +Buildroot, or potentially other embedded Linux build system: the build +system tool itself is versioned in Git, downloads tarballs of software +components and builds them. + +In order to support such situations, this commit adjusts the Makefile +to allow the VERSION variable to be overriden from the make command +line. + +Signed-off-by: Thomas Petazzoni +--- + + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index f9a6781..e80ef17 100644 +--- a/Makefile ++++ b/Makefile +@@ -57,7 +57,7 @@ OBJS = $(addsuffix .o,$(basename $(SRCS))) + CRYPTO_OBJS = $(addsuffix .o,$(basename $(CRYPTO_SRCS))) + BINOBJS = $(addsuffix .o,$(BINS)) + BINSRCS = $(addsuffix .c,$(BINS)) +-VERSION := $(shell sh mk-version) ++VERSION ?= $(shell sh mk-version) + RELEASE_VERSION := $(shell cat VERSION) + + CC ?= gcc +-- +2.6.4 + diff --git a/package/vpnc/0003-Makefile-allow-passing-custom-CFLAGS-CPPFLAGS.patch b/package/vpnc/0003-Makefile-allow-passing-custom-CFLAGS-CPPFLAGS.patch new file mode 100644 index 00000000..c232206a --- /dev/null +++ b/package/vpnc/0003-Makefile-allow-passing-custom-CFLAGS-CPPFLAGS.patch @@ -0,0 +1,45 @@ +From 014a8e04a0fa775b2ade78e5f7655a1453375884 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 10 Feb 2016 23:31:12 +0100 +Subject: [PATCH] Makefile: allow passing custom CFLAGS/CPPFLAGS + +vpnc's Makefile specifies some CFLAGS and CPPFLAGS value, but it may +be needed to pass additional custom flags on the make command line. To +make this possible, we switch from a plain += operator to the +"override ... +=" operator. + +Signed-off-by: Thomas Petazzoni +--- + + Makefile | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/Makefile b/Makefile +index e80ef17..7ac225a 100644 +--- a/Makefile ++++ b/Makefile +@@ -62,9 +62,9 @@ RELEASE_VERSION := $(shell cat VERSION) + + CC ?= gcc + CFLAGS ?= -O3 -g +-CFLAGS += -W -Wall -Wmissing-declarations -Wwrite-strings +-CFLAGS += $(shell libgcrypt-config --cflags) $(CRYPTO_CFLAGS) +-CPPFLAGS += -DVERSION=\"$(VERSION)\" ++override CFLAGS += -W -Wall -Wmissing-declarations -Wwrite-strings ++override CFLAGS += $(shell libgcrypt-config --cflags) $(CRYPTO_CFLAGS) ++override CPPFLAGS += -DVERSION=\"$(VERSION)\" + LDFLAGS ?= -g + LIBS += $(shell libgcrypt-config --libs) $(CRYPTO_LDADD) + +@@ -73,7 +73,7 @@ LIBS += -lnsl -lresolv -lsocket + endif + ifneq (,$(findstring Apple,$(shell $(CC) --version))) + # enabled in FSF GCC, disabled by default in Apple GCC +-CFLAGS += -fstrict-aliasing -freorder-blocks -fsched-interblock ++override CFLAGS += -fstrict-aliasing -freorder-blocks -fsched-interblock + endif + + all : $(BINS) vpnc.8 +-- +2.6.4 + diff --git a/package/vpnc/0004-Makefile-provide-an-option-to-not-build-manpages.patch b/package/vpnc/0004-Makefile-provide-an-option-to-not-build-manpages.patch new file mode 100644 index 00000000..f767a59b --- /dev/null +++ b/package/vpnc/0004-Makefile-provide-an-option-to-not-build-manpages.patch @@ -0,0 +1,57 @@ +From 3c16d0b7bf809a56affd6e1a4c0998027968b91a Mon Sep 17 00:00:00 2001 +From: Ulf Samuelsson +Date: Mon, 8 Feb 2016 23:03:48 +0100 +Subject: [PATCH] Makefile: provide an option to not build manpages + +The process of generating the vpnc.8 man page consists in running the +vpnc tool itself, and parse its --long-help output. While this is +perfectly fine when building natively, it fails completely when +cross-compiling: the vpnc binary that was built cannot be executed on +the build machine. + +In order to support such situations with minimal changes, this patch +adjusts the Makefile to make it understand a MANS variable. By +default, it's defined to "vpnc.8", which means the manpage continues +to be built as usual. However, if it's overriden to be empty, then no +manpage is built. + +Signed-off-by: Thomas Petazzoni +--- + + Makefile | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 7ac225a..ea2cd41 100644 +--- a/Makefile ++++ b/Makefile +@@ -54,6 +54,7 @@ endif + SRCS = sysdep.c vpnc-debug.c isakmp-pkt.c tunip.c config.c dh.c math_group.c supp.c decrypt-utils.c crypto.c $(CRYPTO_SRCS) + BINS = vpnc cisco-decrypt test-crypto + OBJS = $(addsuffix .o,$(basename $(SRCS))) ++MANS ?= vpnc.8 + CRYPTO_OBJS = $(addsuffix .o,$(basename $(CRYPTO_SRCS))) + BINOBJS = $(addsuffix .o,$(BINS)) + BINSRCS = $(addsuffix .c,$(BINS)) +@@ -76,7 +77,7 @@ ifneq (,$(findstring Apple,$(shell $(CC) --version))) + override CFLAGS += -fstrict-aliasing -freorder-blocks -fsched-interblock + endif + +-all : $(BINS) vpnc.8 ++all : $(BINS) $(MANS) + + vpnc : $(OBJS) vpnc.o + $(CC) $(LDFLAGS) -o $@ $^ $(LIBS) +@@ -136,7 +137,9 @@ install-common: all + install -m600 vpnc.conf $(DESTDIR)$(ETCDIR)/default.conf + install -m755 vpnc-disconnect $(DESTDIR)$(SBINDIR) + install -m755 pcf2vpnc $(DESTDIR)$(BINDIR) ++ifneq ($(MANS),) + install -m644 vpnc.8 $(DESTDIR)$(MANDIR)/man8 ++endif + install -m644 pcf2vpnc.1 $(DESTDIR)$(MANDIR)/man1 + install -m644 cisco-decrypt.1 $(DESTDIR)$(MANDIR)/man1 + install -m644 COPYING $(DESTDIR)$(DOCDIR) +-- +2.6.4 + diff --git a/package/vpnc/0005-Makefile-allow-passing-a-custom-path-to-libgcrypt-co.patch b/package/vpnc/0005-Makefile-allow-passing-a-custom-path-to-libgcrypt-co.patch new file mode 100644 index 00000000..86239079 --- /dev/null +++ b/package/vpnc/0005-Makefile-allow-passing-a-custom-path-to-libgcrypt-co.patch @@ -0,0 +1,40 @@ +From 6180ca780e3a792bd632d8899c2b35991822c93d Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Mon, 8 Feb 2016 23:32:57 +0100 +Subject: [PATCH] Makefile: allow passing a custom path to libgcrypt-config + +The libgcrypt-config program may not be in the PATH, so this patch +adjusts the Makefile so that it understands a LIBGCRYPT_CONFIG +variable. By default, its value is libgcrypt-config so that the +behavior is unchanged. + +Signed-off-by: Thomas Petazzoni +--- + + Makefile | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/Makefile b/Makefile +index ea2cd41..649ddfb 100644 +--- a/Makefile ++++ b/Makefile +@@ -61,13 +61,14 @@ BINSRCS = $(addsuffix .c,$(BINS)) + VERSION ?= $(shell sh mk-version) + RELEASE_VERSION := $(shell cat VERSION) + ++LIBGCRYPT_CONFIG ?= libgcrypt-config + CC ?= gcc + CFLAGS ?= -O3 -g + override CFLAGS += -W -Wall -Wmissing-declarations -Wwrite-strings +-override CFLAGS += $(shell libgcrypt-config --cflags) $(CRYPTO_CFLAGS) ++override CFLAGS += $(shell $(LIBGCRYPT_CONFIG) --cflags) $(CRYPTO_CFLAGS) + override CPPFLAGS += -DVERSION=\"$(VERSION)\" + LDFLAGS ?= -g +-LIBS += $(shell libgcrypt-config --libs) $(CRYPTO_LDADD) ++LIBS += $(shell $(LIBGCRYPT_CONFIG) --libs) $(CRYPTO_LDADD) + + ifeq ($(shell uname -s), SunOS) + LIBS += -lnsl -lresolv -lsocket +-- +2.6.4 + diff --git a/package/vpnc/0006-config.c-Replace-deprecated-SUSv3-functions-with-POS.patch b/package/vpnc/0006-config.c-Replace-deprecated-SUSv3-functions-with-POS.patch new file mode 100644 index 00000000..5efe303b --- /dev/null +++ b/package/vpnc/0006-config.c-Replace-deprecated-SUSv3-functions-with-POS.patch @@ -0,0 +1,36 @@ +From 627a45d88acf236cb36326919e4a2fa975c688bd Mon Sep 17 00:00:00 2001 +From: Bernhard Reutner-Fischer +Date: Mon, 8 Feb 2016 23:05:23 +0100 +Subject: [PATCH] config.c: Replace deprecated SUSv3 functions with POSIX + equivalents + +Replace the deprecated SUSv3 function index() by its POSIX equivalent +strchr(). This is necessary to successfully build vpnc with uClibc, +when SUSv3 compatibility functions are not compiled in. + +Patch originally from Bernhard Reutner-Fischer +. + +Signed-off-by: Thomas Petazzoni +--- + + config.c | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/config.c b/config.c +index 57778e3..11b363b 100644 +--- a/config.c ++++ b/config.c +@@ -657,8 +657,7 @@ static const struct config_names_s { + static char *get_config_filename(const char *name, int add_dot_conf) + { + 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; + } + +-- +2.6.4 + diff --git a/package/vpnc/0007-sysdep.h-don-t-assume-error.h-is-available-on-all-Li.patch b/package/vpnc/0007-sysdep.h-don-t-assume-error.h-is-available-on-all-Li.patch new file mode 100644 index 00000000..41c6191e --- /dev/null +++ b/package/vpnc/0007-sysdep.h-don-t-assume-error.h-is-available-on-all-Li.patch @@ -0,0 +1,52 @@ +From 7f41ef32c8c887ee23ca83da4dfd7a4f27e01186 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 10 Feb 2016 23:09:51 +0100 +Subject: [PATCH] sysdep.h: don't assume is available on all Linux + platforms + +The current logic in sysdep.h assumes that whenever you have __linux__ +or __GLIBC__ defined, then functionality is +available. However, the functionality is a glibc-ism, not +available in more standard-conformant C libraries such as the musl C +library. With musl, __linux__ is defined (but of course not +__GLIBC__). With the current logic, sysdep.h assumes that is +available, which isn't the case. + +This patch therefore changes the logic to only use when +__GLIBC__ is defined. It fixes the following build error: + +In file included from tunip.c:87:0: +sysdep.h:41:19: fatal error: error.h: No such file or directory + #include + +Original patch from +http://git.alpinelinux.org/cgit/aports/tree/testing/vpnc/working.patch. + +Signed-off-by: Thomas Petazzoni +--- + sysdep.h | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/sysdep.h b/sysdep.h +index 137bf6d..fb65b31 100644 +--- a/sysdep.h ++++ b/sysdep.h +@@ -38,11 +38,14 @@ int tun_get_hwaddr(int fd, char *dev, uint8_t *hwaddr); + + /***************************************************************************/ + #if defined(__linux__) || defined(__GLIBC__) ++ ++#ifdef __GLIBC__ + #include ++#define HAVE_ERROR 1 ++#endif + + #define HAVE_VASPRINTF 1 + #define HAVE_ASPRINTF 1 +-#define HAVE_ERROR 1 + #define HAVE_UNSETENV 1 + #define HAVE_SETENV 1 + #endif +-- +2.6.4 + diff --git a/package/vpnc/0008-sysdep.c-don-t-include-linux-if_tun.h-on-Linux.patch b/package/vpnc/0008-sysdep.c-don-t-include-linux-if_tun.h-on-Linux.patch new file mode 100644 index 00000000..a4cfe11b --- /dev/null +++ b/package/vpnc/0008-sysdep.c-don-t-include-linux-if_tun.h-on-Linux.patch @@ -0,0 +1,54 @@ +From 2e2eab070384834036c1458c669070ed17d81dbe Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 10 Feb 2016 23:15:36 +0100 +Subject: [PATCH] sysdep.c: don't include on Linux +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Including in sysdep.c is not necessary since sysdep.h +already includes . And this is actually +potentially harmful since both files redefine the same 'struct +ethhdr', causing the following build failure with the musl C library: + +In file included from sysdep.h:28:0, + from sysdep.c:71: +.../buildroot/output/host/usr/arm-buildroot-linux-musleabihf/sysroot/usr/include/netinet/if_ether.h:96:8: error: redefinition of ‘struct ethhdr’ + struct ethhdr { + ^ +In file included from .../buildroot/output/host/usr/arm-buildroot-linux-musleabihf/sysroot/usr/include/linux/if_tun.h:20:0, + from sysdep.c:62: +.../buildroot/output/host/usr/arm-buildroot-linux-musleabihf/sysroot/usr/include/linux/if_ether.h:138:8: note: originally defined here + struct ethhdr { + ^ + +Original patch from: +http://git.alpinelinux.org/cgit/aports/tree/testing/vpnc/working.patch + +Signed-off-by: Thomas Petazzoni +--- + sysdep.c | 4 +--- + 1 file changed, 1 insertion(+), 3 deletions(-) + +diff --git a/sysdep.c b/sysdep.c +index d8f181d..f83543d 100644 +--- a/sysdep.c ++++ b/sysdep.c +@@ -58,13 +58,11 @@ + + #if defined(__DragonFly__) + #include +-#elif defined(__linux__) +-#include + #elif defined(__APPLE__) + /* no header for tun */ + #elif defined(__CYGWIN__) + #include "tap-win32.h" +-#else ++#elif !defined(__linux__) + #include + #endif + +-- +2.6.4 + diff --git a/package/vpnc/0009-config.c-add-missing-sys-ttydefaults.h-include.patch b/package/vpnc/0009-config.c-add-missing-sys-ttydefaults.h-include.patch new file mode 100644 index 00000000..bce552e5 --- /dev/null +++ b/package/vpnc/0009-config.c-add-missing-sys-ttydefaults.h-include.patch @@ -0,0 +1,36 @@ +From 17277915af703a4767de791916621d8f59aef516 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 10 Feb 2016 23:21:26 +0100 +Subject: [PATCH] config.c: add missing include +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This include is needed to get the definition of CEOT, otherwise the +build fails with: + +config.c: In function ‘vpnc_getline’: +config.c:145:25: error: ‘CEOT’ undeclared (first use in this function) + if (llen == 0 && c == CEOT) + ^ + +Signed-off-by: Thomas Petazzoni +--- + config.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/config.c b/config.c +index 11b363b..f47a534 100644 +--- a/config.c ++++ b/config.c +@@ -31,6 +31,7 @@ + #include + #include + #include ++#include + + #include + +-- +2.6.4 + diff --git a/package/vpnc/Config.in b/package/vpnc/Config.in new file mode 100644 index 00000000..6455b0d8 --- /dev/null +++ b/package/vpnc/Config.in @@ -0,0 +1,21 @@ +config BR2_PACKAGE_VPNC + bool "vpnc" + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt + depends on !BR2_STATIC_LIBS # gnutls + depends on BR2_USE_MMU # fork() + depends on BR2_USE_WCHAR # gnutls + select BR2_PACKAGE_LIBGCRYPT + select BR2_PACKAGE_LIBGPG_ERROR + select BR2_PACKAGE_GNUTLS + help + Client for Cisco VPN concentrator + 3000 Series VPN Concentrator + IOS Routers + PIX/ASA Zecurity Appliances + Juniper/Netscreen + + http://www.unix-ag.uni-kl.de/~massar/vpnc + +comment "vpnc needs a toolchain w/ wchar, dynamic library" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS diff --git a/package/vpnc/vpnc.hash b/package/vpnc/vpnc.hash new file mode 100644 index 00000000..a1b3b3b2 --- /dev/null +++ b/package/vpnc/vpnc.hash @@ -0,0 +1,3 @@ +# locally computed hash +sha256 5929d3b7f72970c8f7850e0daba0d9d05aaaa1281c69f58ac8647be11385ede5 vpnc-0.5.3r550-2jnpr1.tar.gz +sha256 bf3ec1bd1dec31a6ab8980bfd04569f506432f35ee01e88a3910847784bc2de1 COPYING diff --git a/package/vpnc/vpnc.mk b/package/vpnc/vpnc.mk new file mode 100644 index 00000000..8db5e766 --- /dev/null +++ b/package/vpnc/vpnc.mk @@ -0,0 +1,27 @@ +################################################################################ +# +# vpnc +# +################################################################################ + +VPNC_VERSION = 0.5.3r550-2jnpr1 +VPNC_SITE = $(call github,ndpgroup,vpnc,$(VPNC_VERSION)) +VPNC_LICENSE = GPL-2.0+ +VPNC_LICENSE_FILES = COPYING + +VPNC_DEPENDENCIES = libgcrypt libgpg-error gnutls host-pkgconf + +define VPNC_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ + $(TARGET_CONFIGURE_OPTS) \ + LIBGCRYPT_CONFIG=$(STAGING_DIR)/usr/bin/libgcrypt-config \ + VERSION=$(VPNC_VERSION) MANS= +endef + +define VPNC_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install $(TARGET_CONFIGURE_OPTS) \ + VERSION=$(VPNC_VERSION) MANS= \ + DESTDIR="$(TARGET_DIR)" PREFIX=/usr +endef + +$(eval $(generic-package)) diff --git a/package/vsftpd/0001-utmpx-builddef.patch b/package/vsftpd/0001-utmpx-builddef.patch new file mode 100644 index 00000000..07bf13c8 --- /dev/null +++ b/package/vsftpd/0001-utmpx-builddef.patch @@ -0,0 +1,49 @@ +Add build option to disable utmpx update code + +On some embedded systems the libc may have utmpx support, but the +feature would be redundant. So add a build switch to disable utmpx +updating, similar to compiling on systems without utmpx support. + +Signed-off-by: Maarten ter Huurne + +diff -ru vsftpd-3.0.2.orig/builddefs.h vsftpd-3.0.2/builddefs.h +--- vsftpd-3.0.2.orig/builddefs.h 2012-04-05 05:24:56.000000000 +0200 ++++ vsftpd-3.0.2/builddefs.h 2014-09-16 14:23:36.128003245 +0200 +@@ -4,6 +4,7 @@ + #undef VSF_BUILD_TCPWRAPPERS + #define VSF_BUILD_PAM + #undef VSF_BUILD_SSL ++#define VSF_BUILD_UTMPX + + #endif /* VSF_BUILDDEFS_H */ + +diff -ru vsftpd-3.0.2.orig/sysdeputil.c vsftpd-3.0.2/sysdeputil.c +--- vsftpd-3.0.2.orig/sysdeputil.c 2012-09-16 06:18:04.000000000 +0200 ++++ vsftpd-3.0.2/sysdeputil.c 2014-09-16 14:26:42.686887724 +0200 +@@ -1158,7 +1158,7 @@ + + #endif /* !VSF_SYSDEP_NEED_OLD_FD_PASSING */ + +-#ifndef VSF_SYSDEP_HAVE_UTMPX ++#if !defined(VSF_BUILD_UTMPX) || !defined(VSF_SYSDEP_HAVE_UTMPX) + + void + vsf_insert_uwtmp(const struct mystr* p_user_str, +@@ -1173,7 +1173,7 @@ + { + } + +-#else /* !VSF_SYSDEP_HAVE_UTMPX */ ++#else /* !VSF_BUILD_UTMPX || !VSF_SYSDEP_HAVE_UTMPX */ + + /* IMHO, the pam_unix module REALLY should be doing this in its SM component */ + /* Statics */ +@@ -1238,7 +1238,7 @@ + updwtmpx(WTMPX_FILE, &s_utent); + } + +-#endif /* !VSF_SYSDEP_HAVE_UTMPX */ ++#endif /* !VSF_BUILD_UTMPX || !VSF_SYSDEP_HAVE_UTMPX */ + + void + vsf_set_die_if_parent_dies() diff --git a/package/vsftpd/0002-fix-CVE-2015-1419.patch b/package/vsftpd/0002-fix-CVE-2015-1419.patch new file mode 100644 index 00000000..95ad017a --- /dev/null +++ b/package/vsftpd/0002-fix-CVE-2015-1419.patch @@ -0,0 +1,102 @@ +Fix CVE-2015-1419 - config option deny_file is not handled correctly. +From SUSE: https://bugzilla.suse.com/show_bug.cgi?id=915522 + +Signed-off-by: Gustavo Zacarias + +Index: vsftpd-3.0.2/ls.c +=================================================================== +--- vsftpd-3.0.2.orig/ls.c ++++ vsftpd-3.0.2/ls.c +@@ -7,6 +7,7 @@ + * Would you believe, code to handle directory listing. + */ + ++#include + #include "ls.h" + #include "access.h" + #include "defs.h" +@@ -243,11 +244,42 @@ vsf_filename_passes_filter(const struct + struct mystr temp_str = INIT_MYSTR; + struct mystr brace_list_str = INIT_MYSTR; + struct mystr new_filter_str = INIT_MYSTR; ++ struct mystr normalize_filename_str = INIT_MYSTR; ++ const char *normname; ++ const char *path; + int ret = 0; + char last_token = 0; + int must_match_at_current_pos = 1; ++ + str_copy(&filter_remain_str, p_filter_str); +- str_copy(&name_remain_str, p_filename_str); ++ ++ /* normalize filepath */ ++ path = str_strdup(p_filename_str); ++ normname = realpath(path, NULL); ++ if (normname == NULL) ++ goto out; ++ str_alloc_text(&normalize_filename_str, normname); ++ ++ if (!str_isempty (&filter_remain_str) && !str_isempty(&normalize_filename_str)) { ++ if (str_get_char_at(p_filter_str, 0) == '/') { ++ if (str_get_char_at(&normalize_filename_str, 0) != '/') { ++ str_getcwd (&name_remain_str); ++ ++ if (str_getlen(&name_remain_str) > 1) /* cwd != root dir */ ++ str_append_char (&name_remain_str, '/'); ++ ++ str_append_str (&name_remain_str, &normalize_filename_str); ++ } ++ else ++ str_copy (&name_remain_str, &normalize_filename_str); ++ } else { ++ if (str_get_char_at(p_filter_str, 0) != '{') ++ str_basename (&name_remain_str, &normalize_filename_str); ++ else ++ str_copy (&name_remain_str, &normalize_filename_str); ++ } ++ } else ++ str_copy(&name_remain_str, &normalize_filename_str); + + while (!str_isempty(&filter_remain_str) && *iters < VSFTP_MATCHITERS_MAX) + { +@@ -360,6 +392,9 @@ vsf_filename_passes_filter(const struct + ret = 0; + } + out: ++ free(normname); ++ free(path); ++ str_free(&normalize_filename_str); + str_free(&filter_remain_str); + str_free(&name_remain_str); + str_free(&temp_str); +Index: vsftpd-3.0.2/str.c +=================================================================== +--- vsftpd-3.0.2.orig/str.c ++++ vsftpd-3.0.2/str.c +@@ -770,3 +770,14 @@ str_replace_unprintable(struct mystr* p_ + } + } + ++void ++str_basename (struct mystr* d_str, const struct mystr* path) ++{ ++ static struct mystr tmp; ++ ++ str_copy (&tmp, path); ++ str_split_char_reverse(&tmp, d_str, '/'); ++ ++ if (str_isempty(d_str)) ++ str_copy (d_str, path); ++} +Index: vsftpd-3.0.2/str.h +=================================================================== +--- vsftpd-3.0.2.orig/str.h ++++ vsftpd-3.0.2/str.h +@@ -101,6 +101,7 @@ void str_replace_unprintable(struct myst + int str_atoi(const struct mystr* p_str); + filesize_t str_a_to_filesize_t(const struct mystr* p_str); + unsigned int str_octal_to_uint(const struct mystr* p_str); ++void str_basename (struct mystr* d_str, const struct mystr* path); + + /* PURPOSE: Extract a line of text (delimited by \n or EOF) from a string + * buffer, starting at character position 'p_pos'. The extracted line will diff --git a/package/vsftpd/0003-Prevent-hang-in-SIGCHLD-handler.patch b/package/vsftpd/0003-Prevent-hang-in-SIGCHLD-handler.patch new file mode 100644 index 00000000..0732c5f6 --- /dev/null +++ b/package/vsftpd/0003-Prevent-hang-in-SIGCHLD-handler.patch @@ -0,0 +1,87 @@ +From 1e65a0a15f819b8bf1b551bd84f71d0da1f5a00c Mon Sep 17 00:00:00 2001 +From: Martin Sehnoutka +Date: Thu, 17 Nov 2016 13:02:27 +0100 +Subject: [PATCH] Prevent hanging in SIGCHLD handler. + +vsftpd can now handle pam_exec.so in pam.d config without hanging +in SIGCHLD handler. + +[Abdelmalek: +Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1198259 +Fetched from: +https://src.fedoraproject.org/cgit/rpms/vsftpd.git/plain/0026-Prevent-hanging-in-SIGCHLD-handler.patch] +Signed-off-by: Abdelmalek Benelouezzane +--- + sysutil.c | 4 ++-- + sysutil.h | 2 +- + twoprocess.c | 13 +++++++++++-- + 3 files changed, 14 insertions(+), 5 deletions(-) + +diff --git a/sysutil.c b/sysutil.c +index 6d7cb3f..099748f 100644 +--- a/sysutil.c ++++ b/sysutil.c +@@ -608,13 +608,13 @@ vsf_sysutil_exit(int exit_code) + } + + struct vsf_sysutil_wait_retval +-vsf_sysutil_wait(void) ++vsf_sysutil_wait(int hang) + { + struct vsf_sysutil_wait_retval retval; + vsf_sysutil_memclr(&retval, sizeof(retval)); + while (1) + { +- int sys_ret = wait(&retval.exit_status); ++ int sys_ret = waitpid(-1, &retval.exit_status, hang ? 0 : WNOHANG); + if (sys_ret < 0 && errno == EINTR) + { + vsf_sysutil_check_pending_actions(kVSFSysUtilUnknown, 0, 0); +diff --git a/sysutil.h b/sysutil.h +index c145bdf..13153cd 100644 +--- a/sysutil.h ++++ b/sysutil.h +@@ -177,7 +177,7 @@ struct vsf_sysutil_wait_retval + int PRIVATE_HANDS_OFF_syscall_retval; + int PRIVATE_HANDS_OFF_exit_status; + }; +-struct vsf_sysutil_wait_retval vsf_sysutil_wait(void); ++struct vsf_sysutil_wait_retval vsf_sysutil_wait(int hang); + int vsf_sysutil_wait_reap_one(void); + int vsf_sysutil_wait_get_retval( + const struct vsf_sysutil_wait_retval* p_waitret); +diff --git a/twoprocess.c b/twoprocess.c +index 33d84dc..b1891e7 100644 +--- a/twoprocess.c ++++ b/twoprocess.c +@@ -47,8 +47,17 @@ static void + handle_sigchld(void* duff) + { + +- struct vsf_sysutil_wait_retval wait_retval = vsf_sysutil_wait(); ++ struct vsf_sysutil_wait_retval wait_retval = vsf_sysutil_wait(0); + (void) duff; ++ if (!vsf_sysutil_wait_get_exitcode(&wait_retval) && ++ !vsf_sysutil_wait_get_retval(&wait_retval)) ++ /* There was nobody to wait for, possibly caused by underlying library ++ * which created a new process through fork()/vfork() and already picked ++ * it up, e.g. by pam_exec.so or integrity check routines for libraries ++ * when FIPS mode is on (nss freebl), which can lead to calling prelink ++ * if the prelink package is installed. ++ */ ++ return; + /* Child died, so we'll do the same! Report it as an error unless the child + * exited normally with zero exit code + */ +@@ -390,7 +399,7 @@ common_do_login(struct vsf_session* p_sess, const struct mystr* p_user_str, + priv_sock_send_result(p_sess->parent_fd, PRIV_SOCK_RESULT_OK); + if (!p_sess->control_use_ssl) + { +- (void) vsf_sysutil_wait(); ++ (void) vsf_sysutil_wait(1); + } + else + { +-- +2.14.4 + diff --git a/package/vsftpd/Config.in b/package/vsftpd/Config.in new file mode 100644 index 00000000..464d6f27 --- /dev/null +++ b/package/vsftpd/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_VSFTPD + bool "vsftpd" + depends on BR2_USE_MMU # fork() + help + vsftpd is an ftp daemon written with security in mind. + http://vsftpd.beasts.org/ + +if BR2_PACKAGE_VSFTPD + +config BR2_PACKAGE_VSFTPD_UTMPX + bool "log vsftpd access to utmpx" + # musl 1.1.4 has an empty utmpx implementation and no WTMPX_FILE + depends on !BR2_TOOLCHAIN_USES_MUSL + help + Enable logging of vsftpd access to utmpx. + Note that Buildroot does not generate utmpx by default. + +endif diff --git a/package/vsftpd/S70vsftpd b/package/vsftpd/S70vsftpd new file mode 100644 index 00000000..62f9a1b7 --- /dev/null +++ b/package/vsftpd/S70vsftpd @@ -0,0 +1,33 @@ +#! /bin/sh + +set -e + +DESC="vsftpd" +NAME=vsftpd +DAEMON=/usr/sbin/$NAME + +case "$1" in + start) + printf "Starting $DESC: " + start-stop-daemon -S -b -x $DAEMON + echo "OK" + ;; + stop) + printf "Stopping $DESC: " + start-stop-daemon -K -x $DAEMON + echo "OK" + ;; + restart|force-reload) + echo "Restarting $DESC: " + $0 stop + sleep 1 + $0 start + echo "" + ;; + *) + echo "Usage: $0 {start|stop|restart|force-reload}" >&2 + exit 1 + ;; +esac + +exit 0 diff --git a/package/vsftpd/vsftpd.hash b/package/vsftpd/vsftpd.hash new file mode 100644 index 00000000..955cd308 --- /dev/null +++ b/package/vsftpd/vsftpd.hash @@ -0,0 +1,4 @@ +# Locally calculated after checking pgp signature +sha256 9d4d2bf6e6e2884852ba4e69e157a2cecd68c5a7635d66a3a8cf8d898c955ef7 vsftpd-3.0.3.tar.gz +# Locally computed +sha256 c9cf119e2f9dbcf187fb805ba5aded105db26a693803636fb7228c98460ffbf2 COPYING diff --git a/package/vsftpd/vsftpd.mk b/package/vsftpd/vsftpd.mk new file mode 100644 index 00000000..49b9b191 --- /dev/null +++ b/package/vsftpd/vsftpd.mk @@ -0,0 +1,73 @@ +################################################################################ +# +# vsftpd +# +################################################################################ + +VSFTPD_VERSION = 3.0.3 +VSFTPD_SITE = https://security.appspot.com/downloads +VSFTPD_LIBS = -lcrypt +VSFTPD_LICENSE = GPL-2.0 +VSFTPD_LICENSE_FILES = COPYING +VSFTPD_CPE_ID_VENDOR = vsftpd_project + +define VSFTPD_DISABLE_UTMPX + $(SED) 's/.*VSF_BUILD_UTMPX/#undef VSF_BUILD_UTMPX/' $(@D)/builddefs.h +endef + +define VSFTPD_ENABLE_SSL + $(SED) 's/.*VSF_BUILD_SSL/#define VSF_BUILD_SSL/' $(@D)/builddefs.h +endef + +ifeq ($(BR2_PACKAGE_VSFTPD_UTMPX),) +VSFTPD_POST_CONFIGURE_HOOKS += VSFTPD_DISABLE_UTMPX +endif + +ifeq ($(BR2_PACKAGE_OPENSSL),y) +VSFTPD_DEPENDENCIES += openssl host-pkgconf +VSFTPD_LIBS += `$(PKG_CONFIG_HOST_BINARY) --libs libssl libcrypto` +VSFTPD_POST_CONFIGURE_HOOKS += VSFTPD_ENABLE_SSL +endif + +ifeq ($(BR2_PACKAGE_LIBCAP),y) +VSFTPD_DEPENDENCIES += libcap +VSFTPD_LIBS += -lcap +endif + +ifeq ($(BR2_PACKAGE_LINUX_PAM),y) +VSFTPD_DEPENDENCIES += linux-pam +VSFTPD_LIBS += -lpam +endif + +define VSFTPD_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" \ + LDFLAGS="$(TARGET_LDFLAGS)" LIBS="$(VSFTPD_LIBS)" -C $(@D) +endef + +define VSFTPD_USERS + ftp -1 ftp -1 * /home/ftp - - Anonymous FTP User +endef + +define VSFTPD_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 0644 package/vsftpd/vsftpd.service \ + $(TARGET_DIR)/usr/lib/systemd/system/vsftpd.service +endef + +define VSFTPD_INSTALL_INIT_SYSV + $(INSTALL) -D -m 755 package/vsftpd/S70vsftpd $(TARGET_DIR)/etc/init.d/S70vsftpd +endef + +# vsftpd won't work if the jail directory is writable, it has to be +# readable only otherwise you get the following error: +# 500 OOPS: vsftpd: refusing to run with writable root inside chroot() +# That's why we have to adjust the permissions of /home/ftp +define VSFTPD_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 755 $(@D)/vsftpd $(TARGET_DIR)/usr/sbin/vsftpd + test -f $(TARGET_DIR)/etc/vsftpd.conf || \ + $(INSTALL) -D -m 644 $(@D)/vsftpd.conf \ + $(TARGET_DIR)/etc/vsftpd.conf + $(INSTALL) -d -m 700 $(TARGET_DIR)/usr/share/empty + $(INSTALL) -d -m 555 $(TARGET_DIR)/home/ftp +endef + +$(eval $(generic-package)) diff --git a/package/vsftpd/vsftpd.service b/package/vsftpd/vsftpd.service new file mode 100644 index 00000000..eba61add --- /dev/null +++ b/package/vsftpd/vsftpd.service @@ -0,0 +1,12 @@ +[Unit] +Description=vsftpd FTP server +After=network.target + +[Service] +Type=simple +ExecStart=/usr/sbin/vsftpd /etc/vsftpd.conf +ExecReload=/bin/kill -HUP $MAINPID +Restart=always + +[Install] +WantedBy=multi-user.target diff --git a/package/vte/Config.in b/package/vte/Config.in new file mode 100644 index 00000000..96de3d38 --- /dev/null +++ b/package/vte/Config.in @@ -0,0 +1,38 @@ +config BR2_PACKAGE_VTE + bool "vte" + depends on BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS # libgtk3 -> host-libgtk3 -> host-librsvg + depends on BR2_USE_WCHAR + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_MMU + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on BR2_PACKAGE_HAS_LIBEGL_WAYLAND || \ + BR2_PACKAGE_HAS_LIBGL + depends on BR2_PACKAGE_XORG7 + select BR2_PACKAGE_LIBGTK3 + select BR2_PACKAGE_LIBXML2 + select BR2_PACKAGE_PCRE2 + help + VTE is a library (libvte) implementing a terminal emulator + widget for GTK+, and a minimal sample application (vte) + using that. Vte is mainly used in gnome-terminal, but + can also be used to embed a console/terminal in games, + editors, IDEs, etc. + + http://github.com/GNOME/vte + +comment "vte needs a toolchain w/ wchar, threads, C++, gcc >= 4.8" + depends on BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP || \ + !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 + +comment "vte needs an OpenGL or an OpenGL-EGL/wayland backend" + depends on BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on !BR2_PACKAGE_HAS_LIBEGL_WAYLAND && \ + !BR2_PACKAGE_HAS_LIBGL diff --git a/package/vte/vte.hash b/package/vte/vte.hash new file mode 100644 index 00000000..3fbc5aca --- /dev/null +++ b/package/vte/vte.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 a3a9fb182740b392a45cd3f46fa61a985f68bb6b1817b52daec22034c46158c3 vte-0.48.3.tar.xz +sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING diff --git a/package/vte/vte.mk b/package/vte/vte.mk new file mode 100644 index 00000000..6c8d1433 --- /dev/null +++ b/package/vte/vte.mk @@ -0,0 +1,29 @@ +################################################################################ +# +# vte +# +################################################################################ + +VTE_VERSION = 0.48.3 +VTE_SOURCE = vte-$(VTE_VERSION).tar.xz +VTE_SITE = http://ftp.gnome.org/pub/gnome/sources/vte/0.48 +VTE_DEPENDENCIES = host-intltool host-pkgconf libgtk3 libxml2 pcre2 +VTE_LICENSE = LGPL-2.1+ +VTE_LICENSE_FILES = COPYING +VTE_CONF_OPTS += --disable-vala + +ifeq ($(BR2_PACKAGE_GOBJECT_INTROSPECTION),y) +VTE_CONF_OPTS += --enable-introspection +VTE_DEPENDENCIES += gobject-introspection +else +VTE_CONF_OPTS += --disable-introspection +endif + +ifeq ($(BR2_PACKAGE_GNUTLS),y) +VTE_CONF_OPTS += --with-gnutls +VTE_DEPENDENCIES += gnutls +else +VTE_CONF_OPTS += --without-gnutls +endif + +$(eval $(autotools-package)) diff --git a/package/vtun/0001-fix-installation.patch b/package/vtun/0001-fix-installation.patch new file mode 100644 index 00000000..d9659fa8 --- /dev/null +++ b/package/vtun/0001-fix-installation.patch @@ -0,0 +1,44 @@ +Makefile.in: fix installation steps + +Not sure what the reason for that patch is, but originally added by Ulf +Samuelsson , 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 +Signed-off-by: "Yann E. MORIN" +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 index 00000000..765411af --- /dev/null +++ b/package/vtun/0002-fix-ssl-headers-checks.patch @@ -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" + +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-openssl11.patch b/package/vtun/0003-openssl11.patch new file mode 100644 index 00000000..2c6bb812 --- /dev/null +++ b/package/vtun/0003-openssl11.patch @@ -0,0 +1,294 @@ +Fix build with OpenSSL 1.1.x + +Extracted vtun-openssl.patch from +http://dl.fedoraproject.org/pub/fedora/linux/releases/27/Everything/source/tree/Packages/v/vtun-3.0.4-4.fc27.src.rpm + +Signed-off-by: Bernd Kuhls + +diff -NarU5 a/lfd_encrypt.c b/lfd_encrypt.c +--- a/lfd_encrypt.c 2016-10-01 17:27:51.000000000 -0400 ++++ b/lfd_encrypt.c 2017-03-20 08:43:48.013308435 -0400 +@@ -93,15 +93,15 @@ + static int dec_init_first_time; + static unsigned long sequence_num; + static char * pkey; + static char * iv_buf; + +-static EVP_CIPHER_CTX ctx_enc; /* encrypt */ +-static EVP_CIPHER_CTX ctx_dec; /* decrypt */ ++static EVP_CIPHER_CTX *ctx_enc; /* encrypt */ ++static EVP_CIPHER_CTX *ctx_dec; /* decrypt */ + +-static EVP_CIPHER_CTX ctx_enc_ecb; /* sideband ecb encrypt */ +-static EVP_CIPHER_CTX ctx_dec_ecb; /* sideband ecb decrypt */ ++static EVP_CIPHER_CTX *ctx_enc_ecb; /* sideband ecb encrypt */ ++static EVP_CIPHER_CTX *ctx_dec_ecb; /* sideband ecb decrypt */ + + static int send_msg(int len, char *in, char **out); + static int recv_msg(int len, char *in, char **out); + static int send_ib_mesg(int *len, char **in); + static int recv_ib_mesg(int *len, char **in); +@@ -180,37 +180,37 @@ + case VTUN_ENC_AES256CBC: + blocksize = 16; + keysize = 32; + sb_init = 1; + cipher_type = EVP_aes_256_ecb(); +- pctx_enc = &ctx_enc_ecb; +- pctx_dec = &ctx_dec_ecb; ++ pctx_enc = ctx_enc_ecb; ++ pctx_dec = ctx_dec_ecb; + break; + + case VTUN_ENC_AES256ECB: + blocksize = 16; + keysize = 32; +- pctx_enc = &ctx_enc; +- pctx_dec = &ctx_dec; ++ pctx_enc = ctx_enc; ++ pctx_dec = ctx_dec; + cipher_type = EVP_aes_256_ecb(); + strcpy(cipher_name,"AES-256-ECB"); + break; + case VTUN_ENC_AES128OFB: + case VTUN_ENC_AES128CFB: + case VTUN_ENC_AES128CBC: + blocksize = 16; + keysize = 16; + sb_init=1; + cipher_type = EVP_aes_128_ecb(); +- pctx_enc = &ctx_enc_ecb; +- pctx_dec = &ctx_dec_ecb; ++ pctx_enc = ctx_enc_ecb; ++ pctx_dec = ctx_dec_ecb; + break; + case VTUN_ENC_AES128ECB: + blocksize = 16; + keysize = 16; +- pctx_enc = &ctx_enc; +- pctx_dec = &ctx_dec; ++ pctx_enc = ctx_enc; ++ pctx_dec = ctx_dec; + cipher_type = EVP_aes_128_ecb(); + strcpy(cipher_name,"AES-128-ECB"); + break; + + case VTUN_ENC_BF256OFB: +@@ -219,20 +219,20 @@ + blocksize = 8; + keysize = 32; + var_key = 1; + sb_init = 1; + cipher_type = EVP_bf_ecb(); +- pctx_enc = &ctx_enc_ecb; +- pctx_dec = &ctx_dec_ecb; ++ pctx_enc = ctx_enc_ecb; ++ pctx_dec = ctx_dec_ecb; + break; + + case VTUN_ENC_BF256ECB: + blocksize = 8; + keysize = 32; + var_key = 1; +- pctx_enc = &ctx_enc; +- pctx_dec = &ctx_dec; ++ pctx_enc = ctx_enc; ++ pctx_dec = ctx_dec; + cipher_type = EVP_bf_ecb(); + strcpy(cipher_name,"Blowfish-256-ECB"); + break; + + case VTUN_ENC_BF128OFB: +@@ -241,26 +241,28 @@ + blocksize = 8; + keysize = 16; + var_key = 1; + sb_init = 1; + cipher_type = EVP_bf_ecb(); +- pctx_enc = &ctx_enc_ecb; +- pctx_dec = &ctx_dec_ecb; ++ pctx_enc = ctx_enc_ecb; ++ pctx_dec = ctx_dec_ecb; + break; + case VTUN_ENC_BF128ECB: /* blowfish 128 ecb is the default */ + default: + blocksize = 8; + keysize = 16; + var_key = 1; +- pctx_enc = &ctx_enc; +- pctx_dec = &ctx_dec; ++ pctx_enc = ctx_enc; ++ pctx_dec = ctx_dec; + cipher_type = EVP_bf_ecb(); + strcpy(cipher_name,"Blowfish-128-ECB"); + break; + } /* switch(host->cipher) */ + + if (prep_key(&pkey, keysize, host) != 0) return -1; ++ pctx_enc = EVP_CIPHER_CTX_new(); ++ pctx_dec = EVP_CIPHER_CTX_new(); + EVP_CIPHER_CTX_init(pctx_enc); + EVP_CIPHER_CTX_init(pctx_dec); + EVP_EncryptInit_ex(pctx_enc, cipher_type, NULL, NULL, NULL); + EVP_DecryptInit_ex(pctx_dec, cipher_type, NULL, NULL, NULL); + if (var_key) +@@ -292,14 +294,14 @@ + free_key(pkey); pkey = NULL; + + lfd_free(enc_buf); enc_buf = NULL; + lfd_free(dec_buf); dec_buf = NULL; + +- EVP_CIPHER_CTX_cleanup(&ctx_enc); +- EVP_CIPHER_CTX_cleanup(&ctx_dec); +- EVP_CIPHER_CTX_cleanup(&ctx_enc_ecb); +- EVP_CIPHER_CTX_cleanup(&ctx_dec_ecb); ++ EVP_CIPHER_CTX_free(ctx_enc); ++ EVP_CIPHER_CTX_free(ctx_dec); ++ EVP_CIPHER_CTX_free(ctx_enc_ecb); ++ EVP_CIPHER_CTX_free(ctx_dec_ecb); + + return 0; + } + + static int encrypt_buf(int len, char *in, char **out) +@@ -321,11 +323,11 @@ + + memset(in_ptr+len, pad, pad); + outlen=len+pad; + if (pad == blocksize) + RAND_bytes(in_ptr+len, blocksize-1); +- EVP_EncryptUpdate(&ctx_enc, out_ptr, &outlen, in_ptr, len+pad); ++ EVP_EncryptUpdate(ctx_enc, out_ptr, &outlen, in_ptr, len+pad); + *out = enc_buf; + + sequence_num++; + + return outlen+msg_len; +@@ -341,11 +343,11 @@ + in = *out; + in_ptr = in; + + outlen=len; + if (!len) return 0; +- EVP_DecryptUpdate(&ctx_dec, out_ptr, &outlen, in_ptr, len); ++ EVP_DecryptUpdate(ctx_dec, out_ptr, &outlen, in_ptr, len); + recv_ib_mesg(&outlen, &out_ptr); + if (!outlen) return 0; + tmp_ptr = out_ptr + outlen; tmp_ptr--; + pad = *tmp_ptr; + if (pad < 1 || pad > blocksize) { +@@ -429,17 +431,18 @@ + /* if we're here, something weird's going on */ + return -1; + break; + } /* switch(cipher) */ + +- EVP_CIPHER_CTX_init(&ctx_enc); +- EVP_EncryptInit_ex(&ctx_enc, cipher_type, NULL, NULL, NULL); ++ ctx_enc = EVP_CIPHER_CTX_new(); ++ EVP_CIPHER_CTX_init(ctx_enc); ++ EVP_EncryptInit_ex(ctx_enc, cipher_type, NULL, NULL, NULL); + if (var_key) +- EVP_CIPHER_CTX_set_key_length(&ctx_enc, keysize); +- EVP_EncryptInit_ex(&ctx_enc, NULL, NULL, pkey, NULL); +- EVP_EncryptInit_ex(&ctx_enc, NULL, NULL, NULL, iv); +- EVP_CIPHER_CTX_set_padding(&ctx_enc, 0); ++ EVP_CIPHER_CTX_set_key_length(ctx_enc, keysize); ++ EVP_EncryptInit_ex(ctx_enc, NULL, NULL, pkey, NULL); ++ EVP_EncryptInit_ex(ctx_enc, NULL, NULL, NULL, iv); ++ EVP_CIPHER_CTX_set_padding(ctx_enc, 0); + if (enc_init_first_time) + { + sprintf(tmpstr,"%s encryption initialized", cipher_name); + vtun_syslog(LOG_INFO, tmpstr); + enc_init_first_time = 0; +@@ -519,17 +522,18 @@ + /* if we're here, something weird's going on */ + return -1; + break; + } /* switch(cipher) */ + +- EVP_CIPHER_CTX_init(&ctx_dec); +- EVP_DecryptInit_ex(&ctx_dec, cipher_type, NULL, NULL, NULL); ++ ctx_dec = EVP_CIPHER_CTX_new(); ++ EVP_CIPHER_CTX_init(ctx_dec); ++ EVP_DecryptInit_ex(ctx_dec, cipher_type, NULL, NULL, NULL); + if (var_key) +- EVP_CIPHER_CTX_set_key_length(&ctx_dec, keysize); +- EVP_DecryptInit_ex(&ctx_dec, NULL, NULL, pkey, NULL); +- EVP_DecryptInit_ex(&ctx_dec, NULL, NULL, NULL, iv); +- EVP_CIPHER_CTX_set_padding(&ctx_dec, 0); ++ EVP_CIPHER_CTX_set_key_length(ctx_dec, keysize); ++ EVP_DecryptInit_ex(ctx_dec, NULL, NULL, pkey, NULL); ++ EVP_DecryptInit_ex(ctx_dec, NULL, NULL, NULL, iv); ++ EVP_CIPHER_CTX_set_padding(ctx_dec, 0); + if (dec_init_first_time) + { + sprintf(tmpstr,"%s decryption initialized", cipher_name); + vtun_syslog(LOG_INFO, tmpstr); + dec_init_first_time = 0; +@@ -557,11 +561,11 @@ + memset(iv,0,blocksize); free(iv); iv = NULL; + RAND_bytes(in_ptr, in - in_ptr); + + in_ptr = in - blocksize*2; + outlen = blocksize*2; +- EVP_EncryptUpdate(&ctx_enc_ecb, in_ptr, ++ EVP_EncryptUpdate(ctx_enc_ecb, in_ptr, + &outlen, in_ptr, blocksize*2); + *out = in_ptr; + len = outlen; + cipher_enc_state = CIPHER_SEQUENCE; + break; +@@ -584,11 +588,11 @@ + { + case CIPHER_INIT: + in_ptr = in; + iv = malloc(blocksize); + outlen = blocksize*2; +- EVP_DecryptUpdate(&ctx_dec_ecb, in_ptr, &outlen, in_ptr, blocksize*2); ++ EVP_DecryptUpdate(ctx_dec_ecb, in_ptr, &outlen, in_ptr, blocksize*2); + + if ( !strncmp(in_ptr, "ivec", 4) ) + { + memcpy(iv, in_ptr+4, blocksize); + cipher_dec_init(iv); +@@ -627,11 +631,11 @@ + "Max. gibberish threshold reached"); + #endif + if (cipher_enc_state != CIPHER_INIT) + { + cipher_enc_state = CIPHER_INIT; +- EVP_CIPHER_CTX_cleanup(&ctx_enc); ++ EVP_CIPHER_CTX_free(ctx_enc); + #ifdef LFD_ENCRYPT_DEBUG + vtun_syslog(LOG_INFO, + "Forcing local encryptor re-init"); + #endif + } +@@ -708,11 +712,11 @@ + *len -= blocksize; + + if (cipher_enc_state != CIPHER_INIT) + { + cipher_enc_state = CIPHER_INIT; +- EVP_CIPHER_CTX_cleanup(&ctx_enc); ++ EVP_CIPHER_CTX_free(ctx_enc); + } + #ifdef LFD_ENCRYPT_DEBUG + vtun_syslog(LOG_INFO, "Remote requests encryptor re-init"); + #endif + } +@@ -722,11 +726,11 @@ + + if (cipher_dec_state != CIPHER_INIT && + cipher_enc_state != CIPHER_REQ_INIT && + cipher_enc_state != CIPHER_INIT) + { +- EVP_CIPHER_CTX_cleanup (&ctx_dec); ++ EVP_CIPHER_CTX_free (ctx_dec); + cipher_dec_state = CIPHER_INIT; + cipher_enc_state = CIPHER_REQ_INIT; + } + #ifdef LFD_ENCRYPT_DEBUG + vtun_syslog(LOG_INFO, "Local decryptor out of sync"); diff --git a/package/vtun/Config.in b/package/vtun/Config.in new file mode 100644 index 00000000..d63e7c76 --- /dev/null +++ b/package/vtun/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_VTUN + bool "vtun" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_LZO + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_ZLIB + help + Tool for easily creating Virtual Tunnels over TCP/IP networks + with traffic shaping, compression, and encryption. + + It supports IP, PPP, SLIP, Ethernet and other tunnel types. + + http://vtun.sourceforge.net/ diff --git a/package/vtun/vtun.hash b/package/vtun/vtun.hash new file mode 100644 index 00000000..363c9809 --- /dev/null +++ b/package/vtun/vtun.hash @@ -0,0 +1,6 @@ +# From https://sourceforge.net/projects/vtun/files/vtun/3.0.4/ +md5 f952c5895ae8f40235aaad9a8f41a4bd vtun-3.0.4.tar.gz +sha1 2335c21b56fadf9ce851dd7f342fb0ed4f522c47 vtun-3.0.4.tar.gz +# Locally computed: +sha256 abf8df6b15e3febeaaeae2ce24ead7105eb1537ad4ec0d830c83cbb684fd98b9 vtun-3.0.4.tar.gz +sha256 5692a9a69dc5abc1aa9cbc54899d114b65c4cefbd9d7fcecc304316a2f26ced3 README.OpenSSL diff --git a/package/vtun/vtun.mk b/package/vtun/vtun.mk new file mode 100644 index 00000000..35b0dded --- /dev/null +++ b/package/vtun/vtun.mk @@ -0,0 +1,26 @@ +################################################################################ +# +# vtun +# +################################################################################ + +VTUN_VERSION = 3.0.4 +VTUN_SITE = http://downloads.sourceforge.net/project/vtun/vtun/$(VTUN_VERSION) +VTUN_LICENSE = GPL-2.0+ with OpenSSL exception +VTUN_LICENSE_FILES = README.OpenSSL +VTUN_DEPENDENCIES = host-bison host-flex host-pkgconf zlib lzo openssl +VTUN_AUTORECONF = YES + +VTUN_CONF_OPTS = \ + --with-ssl-headers=$(STAGING_DIR)/usr/include/openssl \ + --with-lzo-headers=$(STAGING_DIR)/usr/include/lzo \ + --with-lzo-lib=$(STAGING_DIR)/usr/lib + +# Assumes old-style gcc inline symbol visibility rules +VTUN_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) -std=gnu89" + +# configure.in forgets to link to dependent libraries of openssl breaking static +# linking +VTUN_CONF_ENV += LIBS=`$(PKG_CONFIG_HOST_BINARY) --libs openssl` + +$(eval $(autotools-package)) diff --git a/package/vuejs/Config.in b/package/vuejs/Config.in new file mode 100644 index 00000000..6456d288 --- /dev/null +++ b/package/vuejs/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_VUEJS + bool "vuejs" + help + VueJS web application framework. + + http://vuejs.org diff --git a/package/vuejs/vuejs.hash b/package/vuejs/vuejs.hash new file mode 100644 index 00000000..db4a5bbe --- /dev/null +++ b/package/vuejs/vuejs.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 a69f04bf138af09a956150675151edb9354aeec8bd627c21cbcfa646248214fa vue-3.0.5.tgz diff --git a/package/vuejs/vuejs.mk b/package/vuejs/vuejs.mk new file mode 100644 index 00000000..43b45e00 --- /dev/null +++ b/package/vuejs/vuejs.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# vuejs +# +################################################################################ + +VUEJS_VERSION = 3.0.5 +VUEJS_SOURCE = vue-$(VUEJS_VERSION).tgz +VUEJS_SITE = https://registry.npmjs.org/vue/- +VUEJS_LICENSE = MIT + +# Install .min.js as .js +define VUEJS_INSTALL_TARGET_CMDS + $(INSTALL) -m 644 -D $(@D)/dist/vue.global.prod.js \ + $(TARGET_DIR)/var/www/vue.js +endef + +$(eval $(generic-package)) diff --git a/package/w_scan/0001-musl.patch b/package/w_scan/0001-musl.patch new file mode 100644 index 00000000..46d67677 --- /dev/null +++ b/package/w_scan/0001-musl.patch @@ -0,0 +1,26 @@ +Fix musl build + +Signed-off-by: Bernd Kuhls + +diff -uNr w_scan-20141122.org/descriptors.h w_scan-20141122/descriptors.h +--- w_scan-20141122.org/descriptors.h 2014-11-22 09:49:26.000000000 +0100 ++++ w_scan-20141122/descriptors.h 2016-01-24 14:05:21.000000000 +0100 +@@ -28,6 +28,7 @@ + #ifndef __DESCRIPTORS_H__ + #define __DESCRIPTORS_H__ + ++#include + #include "extended_frontend.h" + + /****************************************************************************** +diff -uNr w_scan-20141122.org/version.h w_scan-20141122/version.h +--- w_scan-20141122.org/version.h 2014-11-22 11:59:56.000000000 +0100 ++++ w_scan-20141122/version.h 2016-01-24 14:06:33.000000000 +0100 +@@ -1,6 +1,6 @@ + /* AUTOMATICALLY GENERATED - DO NOT EDIT MANUALLY */ + #ifndef W_SCAN_VERSION_H + #define W_SCAN_VERSION_H +-uint version=20170107; ++unsigned int version=20170107; + #endif + diff --git a/package/w_scan/0002-si_types-h-fix-build-with-gcc-10.patch b/package/w_scan/0002-si_types-h-fix-build-with-gcc-10.patch new file mode 100644 index 00000000..50d24881 --- /dev/null +++ b/package/w_scan/0002-si_types-h-fix-build-with-gcc-10.patch @@ -0,0 +1,37 @@ +si_types.h: fix build with gcc 10 + +Drop service_t, p_service_t, transponder_t and p_transponder_t to avoid +the following build failure with gcc 10 (which defaults to -fno-common): + +/home/giuliobenetti/autobuild/run/instance-3/output-1/host/bin/arm-buildroot-linux-gnueabihf-gcc -Wall -Wextra -Wno-comment -Wswitch-default -Wno-unused-parameter -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -lrt -o w_scan atsc_psip_section.o countries.o descriptors.o diseqc.o dump-dvbscan.o dump-vdr.o dump-xine.o dump-mplayer.o dump-vlc-m3u.o dvbscan.o lnb.o parse-dvbscan.o satellites.o scan.o section.o tools.o emulate.o dump-xml.o iconv_codes.o char-coding.o +/home/giuliobenetti/autobuild/run/instance-3/output-1/host/lib/gcc/arm-buildroot-linux-gnueabihf/10.2.0/../../../../arm-buildroot-linux-gnueabihf/bin/ld: descriptors.o:(.bss+0x404): multiple definition of `p_transponder_t'; countries.o:(.bss+0x0): first defined here +/home/giuliobenetti/autobuild/run/instance-3/output-1/host/lib/gcc/arm-buildroot-linux-gnueabihf/10.2.0/../../../../arm-buildroot-linux-gnueabihf/bin/ld: descriptors.o:(.bss+0x408): multiple definition of `transponder_t'; countries.o:(.bss+0x4): first defined here +/home/giuliobenetti/autobuild/run/instance-3/output-1/host/lib/gcc/arm-buildroot-linux-gnueabihf/10.2.0/../../../../arm-buildroot-linux-gnueabihf/bin/ld: descriptors.o:(.bss+0x480): multiple definition of `p_service_t'; countries.o:(.bss+0x7c): first defined here +/home/giuliobenetti/autobuild/run/instance-3/output-1/host/lib/gcc/arm-buildroot-linux-gnueabihf/10.2.0/../../../../arm-buildroot-linux-gnueabihf/bin/ld: descriptors.o:(.bss+0x484): multiple definition of `service_t'; countries.o:(.bss+0x80): first defined here + +Fixes: + - http://autobuild.buildroot.org/results/5640442cb4ba06bcbcf31540a64f5665862d39f7 + +Signed-off-by: Fabrice Fontaine + +diff -Nura w_scan-20170107.orig/si_types.h w_scan-20170107/si_types.h +--- w_scan-20170107.orig/si_types.h 2020-09-20 11:09:56.776963441 +0200 ++++ w_scan-20170107/si_types.h 2020-09-20 11:13:13.149232478 +0200 +@@ -114,7 +114,7 @@ + uint32_t logical_channel_number; + uint8_t running; + void * priv; +-} service_t, * p_service_t; ++}; + + /******************************************************************************* + /* transponder type. +@@ -201,7 +201,7 @@ + /*----------------------------*/ + char * network_name; + network_change_t network_change; +-} __attribute__((packed)) transponder_t, * p_transponder_t; ++} __attribute__((packed)); + + /******************************************************************************* + /* satellite channel routing type. diff --git a/package/w_scan/Config.in b/package/w_scan/Config.in new file mode 100644 index 00000000..d5471200 --- /dev/null +++ b/package/w_scan/Config.in @@ -0,0 +1,14 @@ +comment "w_scan needs a toolchain w/ headers >= 3.7" + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 + +config BR2_PACKAGE_W_SCAN + bool "w_scan" + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 + select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE + help + w_scan is a small command line utility used to perform + frequency scans for DVB and ATSC transmissions. It is + capable of creating channels.conf files (in different output + formats !) as well as initial tuning data for scan. + + https://www.gen2vdr.de/wirbel/w_scan/index2.html diff --git a/package/w_scan/w_scan.hash b/package/w_scan/w_scan.hash new file mode 100644 index 00000000..fcb0e611 --- /dev/null +++ b/package/w_scan/w_scan.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 38e0f38a7bf06cff6d6ea01652ad4ee60da2cb0e937360468f936da785b46ffe w_scan-20170107.tar.bz2 +sha256 ddb9db7630752f8fdc6898f7c99a99eaeeac5213627ecb093df9c82f56175dc7 COPYING diff --git a/package/w_scan/w_scan.mk b/package/w_scan/w_scan.mk new file mode 100644 index 00000000..c63f20cc --- /dev/null +++ b/package/w_scan/w_scan.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# w_scan +# +################################################################################ + +W_SCAN_VERSION = 20170107 +W_SCAN_SOURCE = w_scan-$(W_SCAN_VERSION).tar.bz2 +W_SCAN_SITE = http://wirbel.htpc-forum.de/w_scan +W_SCAN_LICENSE = GPL-2.0+ +W_SCAN_LICENSE_FILES = COPYING + +ifeq ($(BR2_PACKAGE_LIBICONV),y) +W_SCAN_DEPENDENCIES += libiconv +W_SCAN_CONF_ENV += LIBS=-liconv +endif + +$(eval $(autotools-package)) diff --git a/package/waf/waf.hash b/package/waf/waf.hash new file mode 100644 index 00000000..e9d387e7 --- /dev/null +++ b/package/waf/waf.hash @@ -0,0 +1,7 @@ +# Locally computed +sha1 494ada411468129ed229f946ecec3048400e320b waf-2.0.22 +sha256 0a09ad26a2cfc69fa26ab871cb558165b60374b5a653ff556a0c6aca63a00df1 waf-2.0.22 + +# The waf script also contains its license, but is renamed `waf` in the extract +# step, so this is a synonym for the above, to check WAF_LICENSE +sha256 0a09ad26a2cfc69fa26ab871cb558165b60374b5a653ff556a0c6aca63a00df1 waf diff --git a/package/waf/waf.mk b/package/waf/waf.mk new file mode 100644 index 00000000..5cc0dc37 --- /dev/null +++ b/package/waf/waf.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# waf +# +################################################################################ + +WAF_VERSION = 2.0.22 +WAF_SOURCE = waf-$(WAF_VERSION) +WAF_SITE = https://waf.io +WAF_LICENSE = BSD-3-Clause +WAF_LICENSE_FILES = waf + +define HOST_WAF_EXTRACT_CMDS + $(INSTALL) -D -m 0755 $(HOST_WAF_DL_DIR)/waf-$(WAF_VERSION) $(@D)/waf +endef + +define HOST_WAF_INSTALL_CMDS + $(INSTALL) -D -m 0755 $(@D)/waf $(HOST_DIR)/bin/waf +endef + +$(eval $(host-generic-package)) diff --git a/package/waffle/0001-cmake-forward-cflags-from-.pc-files-to-waffle-cflags.patch b/package/waffle/0001-cmake-forward-cflags-from-.pc-files-to-waffle-cflags.patch new file mode 100644 index 00000000..126aa933 --- /dev/null +++ b/package/waffle/0001-cmake-forward-cflags-from-.pc-files-to-waffle-cflags.patch @@ -0,0 +1,40 @@ +From 8b0ae49c8bea78df73c3ecae0059d54a95c561fa Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Sun, 24 Dec 2017 00:11:45 +0100 +Subject: [PATCH] cmake: forward cflags from *.pc files to waffle cflags + +When building mesa egl without x11 and gles2 the headers need a +EGL_NO_X11 define to avoid including X11 headers. + +This define EGL_NO_X11 is lost while building waffle +since CFLAGS defined by pc files are not used. + +EGL_NO_X11 is defined in CFLAGS from egl.pc. + +Signed-off-by: Romain Naour +--- + src/waffle/CMakeLists.txt | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/src/waffle/CMakeLists.txt b/src/waffle/CMakeLists.txt +index d76e029..2ff72c8 100644 +--- a/src/waffle/CMakeLists.txt ++++ b/src/waffle/CMakeLists.txt +@@ -5,6 +5,14 @@ + add_definitions( + -DWAFFLE_API_VERSION=${waffle_api_version} + -DWAFFLE_API_EXPERIMENTAL ++ ${egl_CFLAGS} ++ ${gbm_CFLAGS} ++ ${gl_CFLAGS} ++ ${GLEXT_CFLAGS} ++ ${libudev_CFLAGS} ++ ${wayland-client_CFLAGS} ++ ${wayland-egl_CFLAGS} ++ ${x11-xcb_CFLAGS} + ) + + include_directories( +-- +2.14.3 + diff --git a/package/waffle/Config.in b/package/waffle/Config.in new file mode 100644 index 00000000..ad622e95 --- /dev/null +++ b/package/waffle/Config.in @@ -0,0 +1,47 @@ +config BR2_PACKAGE_WAFFLE_SUPPORTS_GLX + bool + default y if BR2_PACKAGE_HAS_LIBGL && BR2_PACKAGE_XORG7 + +config BR2_PACKAGE_WAFFLE_SUPPORTS_WAYLAND + bool + default y if BR2_PACKAGE_WAYLAND && BR2_PACKAGE_HAS_LIBEGL_WAYLAND + +config BR2_PACKAGE_WAFFLE_SUPPORTS_X11_EGL + bool + default y if BR2_PACKAGE_HAS_LIBEGL && BR2_PACKAGE_XORG7 + +config BR2_PACKAGE_WAFFLE_SUPPORTS_GBM + bool + # mesa3d is for now the only GBM provider, and it is enabled + # together with its EGL support + default y if BR2_PACKAGE_HAS_LIBEGL && BR2_PACKAGE_MESA3D_OPENGL_EGL && BR2_PACKAGE_HAS_UDEV + +config BR2_PACKAGE_WAFFLE + bool "waffle" + depends on BR2_PACKAGE_WAFFLE_SUPPORTS_GLX || \ + BR2_PACKAGE_WAFFLE_SUPPORTS_WAYLAND || \ + BR2_PACKAGE_WAFFLE_SUPPORTS_X11_EGL || \ + BR2_PACKAGE_WAFFLE_SUPPORTS_GBM + select BR2_PACKAGE_XLIB_LIBX11 if BR2_PACKAGE_WAFFLE_SUPPORTS_GLX || BR2_PACKAGE_WAFFLE_SUPPORTS_X11_EGL + select BR2_PACKAGE_LIBXCB if BR2_PACKAGE_WAFFLE_SUPPORTS_GLX || BR2_PACKAGE_WAFFLE_SUPPORTS_X11_EGL + help + Waffle is a cross-platform library that allows one to defer + selection of an OpenGL API and of window system until + runtime. For example, on Linux, Waffle enables an application + to select X11/EGL with an OpenGL 3.3 core profile, Wayland + with OpenGL ES2, and other window system / API combinations. + + Waffle's immediate goal is to enable Piglit [1] to test + multiple OpenGL flavors in a cross-platform way, and to allow + each Piglit test to choose its OpenGL API and window system + at runtime. A future goal is to enable the ability to record + (with another tool such APITrace [2]) an application's OpenGL + calls on one operating system or window system, and then + replay that trace on a different system. + + For more information, visit to Waffle's website. + + [1] http://piglit.freedesktop.org + [2] http://github.com/apitrace/apitrace#readme + + http://www.waffle-gl.org diff --git a/package/waffle/waffle.hash b/package/waffle/waffle.hash new file mode 100644 index 00000000..84821312 --- /dev/null +++ b/package/waffle/waffle.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 234e65bdd2dd8f7d3bc8e9ad1a7cc80fce78a1deed3a04fe7f1d2c2edac0cd8a waffle-v1.6.1.tar.bz2 +sha256 630844d1911c8a1b7b888a1de9097c4860b7e381362fd5aa64141d58ab7ecc9b LICENSE.txt diff --git a/package/waffle/waffle.mk b/package/waffle/waffle.mk new file mode 100644 index 00000000..3340dc1c --- /dev/null +++ b/package/waffle/waffle.mk @@ -0,0 +1,61 @@ +################################################################################ +# +# waffle +# +################################################################################ + +WAFFLE_VERSION = 1.6.1 +WAFFLE_SOURCE = waffle-v$(WAFFLE_VERSION).tar.bz2 +WAFFLE_SITE = https://gitlab.freedesktop.org/mesa/waffle/-/archive/v$(WAFFLE_VERSION) +WAFFLE_INSTALL_STAGING = YES +WAFFLE_LICENSE = BSD-2-Clause +WAFFLE_LICENSE_FILES = LICENSE.txt + +WAFFLE_DEPENDENCIES = host-pkgconf + +WAFFLE_CONF_OPTS = -Dwaffle_build_tests=OFF \ + -Dwaffle_build_examples=OFF \ + -Dwaffle_build_manpages=OFF \ + -Dwaffle_build_htmldocs=OFF \ + -Dwaffle_has_nacl=OFF + +ifeq ($(BR2_PACKAGE_WAFFLE_SUPPORTS_WAYLAND),y) +WAFFLE_DEPENDENCIES += libegl wayland +WAFFLE_CONF_OPTS += -Dwaffle_has_wayland=ON +else +WAFFLE_CONF_OPTS += -Dwaffle_has_wayland=OFF +endif + +ifeq ($(BR2_PACKAGE_WAFFLE_SUPPORTS_X11_EGL),y) +WAFFLE_DEPENDENCIES += libegl libxcb xlib_libX11 +WAFFLE_CONF_OPTS += -Dwaffle_has_x11_egl=ON +else +WAFFLE_CONF_OPTS += -Dwaffle_has_x11_egl=OFF +endif + +ifeq ($(BR2_PACKAGE_WAFFLE_SUPPORTS_GLX),y) +WAFFLE_DEPENDENCIES += libgl libxcb xlib_libX11 +WAFFLE_CONF_OPTS += -Dwaffle_has_glx=ON +else +WAFFLE_CONF_OPTS += -Dwaffle_has_glx=OFF +endif + +ifeq ($(BR2_PACKAGE_WAFFLE_SUPPORTS_GBM),y) +WAFFLE_DEPENDENCIES += libegl udev +WAFFLE_CONF_OPTS += -Dwaffle_has_gbm=ON +else +WAFFLE_CONF_OPTS += -Dwaffle_has_gbm=OFF +endif + +ifeq ($(BR2_PACKAGE_BASH_COMPLETION),y) +WAFFLE_DEPENDENCIES += bash-completion +endif + +ifeq ($(BR2_PACKAGE_MESA3D)$(BR2_PACKAGE_MESA3D_OPENGL_EGL),yy) +WAFFLE_DEPENDENCIES += mesa3d +WAFFLE_CONF_OPTS += -Dwaffle_has_surfaceless_egl=ON +else +WAFFLE_CONF_OPTS += -Dwaffle_has_surfaceless_egl=OFF +endif + +$(eval $(cmake-package)) diff --git a/package/wampcc/0001-Add-RISC-V-endian-detection.patch b/package/wampcc/0001-Add-RISC-V-endian-detection.patch new file mode 100644 index 00000000..d23b44ee --- /dev/null +++ b/package/wampcc/0001-Add-RISC-V-endian-detection.patch @@ -0,0 +1,46 @@ +From e94589ed36c4a311355efc46ba3f76523c546057 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 7 Aug 2019 16:17:16 +0200 +Subject: [PATCH] Add RISC-V endian detection + +3rdparty/msgpack-c/include/msgpack/predef/other/endian.h (which comes +from Boost) two ways of detecting the endianess: + + (1) It includes if BOOST_LIB_C_GNU is defined, and then + use __BYTE_ORDER to decide the endianness. + + (2) Otherwise, if (1) was not possible for some reason, it uses + architecture defines to decide the endianness. + +(1) works perfectly fine with glibc toolchains, because +BOOST_LIB_C_GNU is defined, but it doesn't work with musl. Due to +this, is not included, __BYTE_ORDER is not defined, and +method (1) does not work, causing build failures on musl toolchains +that don't have explicit handling by architecture name (method 2). + +So this commit fixes RISC-V musl build by adding support for the +__riscv architecture define, to determine that the endianness is +little endian. + +Signed-off-by: Thomas Petazzoni +--- + 3rdparty/msgpack-c/include/msgpack/predef/other/endian.h | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/3rdparty/msgpack-c/include/msgpack/predef/other/endian.h b/3rdparty/msgpack-c/include/msgpack/predef/other/endian.h +index 3c609fa..63a5722 100644 +--- a/3rdparty/msgpack-c/include/msgpack/predef/other/endian.h ++++ b/3rdparty/msgpack-c/include/msgpack/predef/other/endian.h +@@ -127,7 +127,8 @@ information and acquired knowledge: + defined(__AARCH64EL__) || \ + defined(_MIPSEL) || \ + defined(__MIPSEL) || \ +- defined(__MIPSEL__) ++ defined(__MIPSEL__) || \ ++ defined(__riscv) + # undef MSGPACK_ENDIAN_LITTLE_BYTE + # define MSGPACK_ENDIAN_LITTLE_BYTE MSGPACK_VERSION_NUMBER_AVAILABLE + # endif +-- +2.21.0 + diff --git a/package/wampcc/0002-include-wampcc-platform.h-fix-build-with-musl-1.2.0.patch b/package/wampcc/0002-include-wampcc-platform.h-fix-build-with-musl-1.2.0.patch new file mode 100644 index 00000000..c7b8c786 --- /dev/null +++ b/package/wampcc/0002-include-wampcc-platform.h-fix-build-with-musl-1.2.0.patch @@ -0,0 +1,38 @@ +From 9c2559434b752df3dc8460ee242d321670a40847 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Mon, 1 Jun 2020 11:41:54 +0200 +Subject: [PATCH] include/wampcc/platform.h: fix build with musl 1.2.0 + +Fix the following build failure on musl 1.2.0 due to time_t being on 64 +bits: + +/home/naourr/work/instance-0/output-1/build/wampcc-1.6/libs/wampcc/utils.cc: In function 'std::__cxx11::string wampcc::local_timestamp()': +/home/naourr/work/instance-0/output-1/build/wampcc-1.6/libs/wampcc/utils.cc:205:15: error: cannot convert 'wampcc::time_val::type_type*' {aka 'long int*'} to 'const time_t*' {aka 'const long long int*'} + localtime_r(&now.sec, &parts); + ^~~~~~~~ + +Fixes: + - http://autobuild.buildroot.org/results/da996e189220499b85efbdb541a891ac18db38c6 + +Signed-off-by: Fabrice Fontaine +[Upstream status: https://github.com/darrenjs/wampcc/pull/62] +--- + include/wampcc/platform.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/include/wampcc/platform.h b/include/wampcc/platform.h +index 24d0868..aebf950 100644 +--- a/include/wampcc/platform.h ++++ b/include/wampcc/platform.h +@@ -27,7 +27,7 @@ namespace wampcc + struct time_val + { + #ifndef _WIN32 +- typedef long type_type; ++ typedef time_t type_type; + #else + typedef __time64_t type_type; + #endif +-- +2.26.2 + diff --git a/package/wampcc/0003-Broken-build-on-Windows.patch b/package/wampcc/0003-Broken-build-on-Windows.patch new file mode 100644 index 00000000..3c528cd8 --- /dev/null +++ b/package/wampcc/0003-Broken-build-on-Windows.patch @@ -0,0 +1,27 @@ +From eaa70a289288db1e8d90a2a9bcde435a8975fe74 Mon Sep 17 00:00:00 2001 +From: Sergey Lukashevich +Date: Fri, 26 Jul 2019 21:58:34 +0300 +Subject: [PATCH] Broken build on Windows: "http_parser.h(66,18): error C2039: + 'runtime_error': is not a member of 'std'" + +Add missing include. + +[Retrieved from: +https://github.com/darrenjs/wampcc/commit/eaa70a289288db1e8d90a2a9bcde435a8975fe74] +Signed-off-by: Fabrice Fontaine +--- + include/wampcc/http_parser.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/include/wampcc/http_parser.h b/include/wampcc/http_parser.h +index a9405dd..4c20417 100644 +--- a/include/wampcc/http_parser.h ++++ b/include/wampcc/http_parser.h +@@ -11,6 +11,7 @@ + #include + #include + #include ++#include + + // types brought in from nodejs http-parser project + struct http_parser; diff --git a/package/wampcc/Config.in b/package/wampcc/Config.in new file mode 100644 index 00000000..92abc9cb --- /dev/null +++ b/package/wampcc/Config.in @@ -0,0 +1,30 @@ +config BR2_PACKAGE_WAMPCC + bool "wampcc" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # libuv + depends on BR2_USE_MMU # libuv + depends on !BR2_STATIC_LIBS # libuv + depends on BR2_TOOLCHAIN_HAS_ATOMIC + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libuv + depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # std::shared_future + select BR2_PACKAGE_LIBUV + select BR2_PACKAGE_JANSSON + select BR2_PACKAGE_OPENSSL + help + wampcc is a C++ library that implements the Web Application + Messaging Protocol. + + https://github.com/darrenjs/wampcc + +comment "wampcc needs a toolchain w/ C++, NPTL, dynamic library" + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_ATOMIC + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on !BR2_INSTALL_LIBSTDCPP || \ + !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS + +comment "wampcc needs a toolchain not affected by GCC bug 64735" + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_ATOMIC + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735 diff --git a/package/wampcc/wampcc.hash b/package/wampcc/wampcc.hash new file mode 100644 index 00000000..0e47ea69 --- /dev/null +++ b/package/wampcc/wampcc.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 b3c3633b4c6a74d7ac8a676a7ea30fbfde7ae19aa1fc37de3b8aa3a553b674a2 wampcc-1.6.tar.gz +sha256 bd185b1ec8a292d42b42346757ff6e198073e13c1e080e9ea548d34dd42d30d8 LICENSE diff --git a/package/wampcc/wampcc.mk b/package/wampcc/wampcc.mk new file mode 100644 index 00000000..11bb1f90 --- /dev/null +++ b/package/wampcc/wampcc.mk @@ -0,0 +1,19 @@ +################################################################################ +# +# wampcc +# +################################################################################ + +WAMPCC_VERSION = 1.6 +WAMPCC_SITE = $(call github,darrenjs,wampcc,v$(WAMPCC_VERSION)) +WAMPCC_DEPENDENCIES = host-pkgconf libuv jansson openssl +WAMPCC_INSTALL_STAGING = YES +WAMPCC_LICENSE = MIT +WAMPCC_LICENSE_FILES = LICENSE + +# Uses __atomic_fetch_add_8 +ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) +WAMPCC_CONF_OPTS += -DCMAKE_EXE_LINKER_FLAGS=-latomic +endif + +$(eval $(cmake-package)) diff --git a/package/watchdog/Config.in b/package/watchdog/Config.in new file mode 100644 index 00000000..bf485034 --- /dev/null +++ b/package/watchdog/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_WATCHDOG + bool "watchdog" + depends on BR2_USE_MMU + help + Watchdog is a daemon that periodically pets a watchdog device + if the configured system status checks pass. If they do not, + the daemon may execute repair commands, shutdown the system or + reboot it. + + https://sourceforge.net/projects/watchdog/ diff --git a/package/watchdog/watchdog.hash b/package/watchdog/watchdog.hash new file mode 100644 index 00000000..7366c1b5 --- /dev/null +++ b/package/watchdog/watchdog.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 b8e7c070e1b72aee2663bdc13b5cc39f76c9232669cfbb1ac0adc7275a3b019d watchdog-5.16.tar.gz +sha256 af7f3f94e85080204b37f7c53717a2c94c6b54d7fa516ebd74e008cb4c0391bd COPYING diff --git a/package/watchdog/watchdog.mk b/package/watchdog/watchdog.mk new file mode 100644 index 00000000..2699fb47 --- /dev/null +++ b/package/watchdog/watchdog.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# watchdog +# +################################################################################ + +WATCHDOG_VERSION = 5.16 +WATCHDOG_SITE = http://downloads.sourceforge.net/sourceforge/watchdog +WATCHDOG_LICENSE = GPL-2.0+ +WATCHDOG_LICENSE_FILES = COPYING +# By default installs binaries in /usr/sbin/, but we want them in +# /sbin/ so that they fall at the same place as Busybox counterparts +WATCHDOG_CONF_OPTS = --sbindir=/sbin + +$(eval $(autotools-package)) diff --git a/package/wavemon/Config.in b/package/wavemon/Config.in new file mode 100644 index 00000000..0cb4cb5c --- /dev/null +++ b/package/wavemon/Config.in @@ -0,0 +1,19 @@ +config BR2_PACKAGE_WAVEMON + bool "wavemon" + depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_NCURSES + select BR2_PACKAGE_LIBNL + help + wavemon is a wireless device monitoring application that + allows you to watch signal and noise levels, packet + statistics, device configuration and network parameters of + your wireless network hardware. + + Note that you need a Linux Kernel configuration with + wireless extensions or with wireless extensions + compatibility enabled. + + https://github.com/uoaerg/wavemon + +comment "wavemon needs a toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/wavemon/wavemon.hash b/package/wavemon/wavemon.hash new file mode 100644 index 00000000..455e64cb --- /dev/null +++ b/package/wavemon/wavemon.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 5ebd5b79d3b7c546bc16b95161872c699a75e9acdfc6e3f02ec48dad10802067 wavemon-0.9.1.tar.gz +sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING diff --git a/package/wavemon/wavemon.mk b/package/wavemon/wavemon.mk new file mode 100644 index 00000000..3ae1141e --- /dev/null +++ b/package/wavemon/wavemon.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# wavemon +# +################################################################################ + +WAVEMON_VERSION = 0.9.1 +WAVEMON_SITE = $(call github,uoaerg,wavemon,v$(WAVEMON_VERSION)) +WAVEMON_LICENSE = GPL-3.0+ +WAVEMON_LICENSE_FILES = COPYING +WAVEMON_DEPENDENCIES = host-pkgconf libnl ncurses + +# Handwritten Makefile.in, automake isn't used +WAVEMON_MAKE_OPTS = CC="$(TARGET_CC)" + +$(eval $(autotools-package)) diff --git a/package/wavpack/Config.in b/package/wavpack/Config.in new file mode 100644 index 00000000..db7b8934 --- /dev/null +++ b/package/wavpack/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_WAVPACK + bool "wavpack" + select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE + help + WavPack is a completely open audio compression format + providing lossless, high-quality lossy, and a unique + hybrid compression mode. + + http://www.wavpack.com/ diff --git a/package/wavpack/wavpack.hash b/package/wavpack/wavpack.hash new file mode 100644 index 00000000..abc9ab69 --- /dev/null +++ b/package/wavpack/wavpack.hash @@ -0,0 +1,3 @@ +# locally computed hash +sha256 4bde6a6b2a86614a6bd2579e60dcc974e2c8f93608d2281110a717c1b3c28b79 wavpack-5.4.0.tar.xz +sha256 f38defde000d62c4ff158f1445cb85a0c2f67cbc1d3cfa34ed882f439f6e3b43 COPYING diff --git a/package/wavpack/wavpack.mk b/package/wavpack/wavpack.mk new file mode 100644 index 00000000..485ab9b2 --- /dev/null +++ b/package/wavpack/wavpack.mk @@ -0,0 +1,38 @@ +################################################################################ +# +# wavpack +# +################################################################################ + +WAVPACK_VERSION = 5.4.0 +WAVPACK_SITE = \ + https://github.com/dbry/WavPack/releases/download/$(WAVPACK_VERSION) +WAVPACK_SOURCE = wavpack-$(WAVPACK_VERSION).tar.xz +WAVPACK_INSTALL_STAGING = YES +WAVPACK_DEPENDENCIES = $(if $(BR2_ENABLE_LOCALE),,libiconv) +WAVPACK_LICENSE = BSD-3-Clause +WAVPACK_LICENSE_FILES = COPYING +WAVPACK_CPE_ID_VENDOR = wavpack + +ifeq ($(BR2_PACKAGE_LIBICONV),y) +WAVPACK_CONF_OPTS += LIBS=-liconv +endif + +ifeq ($(BR2_PACKAGE_OPENSSL),y) +WAVPACK_DEPENDENCIES += openssl +WAVPACK_CONF_OPTS += --enable-libcrypto +else +WAVPACK_CONF_OPTS += --disable-libcrypto +endif + +# WavPack "autodetects" CPU type to enable ASM code. However, the assembly code +# for ARM is written for ARMv7 only and building WavPack for an ARM-non-v7 +# architecture will fail. We explicitly enable ASM for the supported +# architectures x86, x64 and ARMv7 and disable it for all others. +ifeq ($(BR2_i386)$(BR2_x86_64)$(BR2_ARM_CPU_ARMV7A),y) +WAVPACK_CONF_OPTS += --enable-asm +else +WAVPACK_CONF_OPTS += --disable-asm +endif + +$(eval $(autotools-package)) diff --git a/package/wayland-protocols/Config.in b/package/wayland-protocols/Config.in new file mode 100644 index 00000000..8b4dedfd --- /dev/null +++ b/package/wayland-protocols/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_WAYLAND_PROTOCOLS + bool "wayland-protocols" + # Not really... but useless otherwise + depends on BR2_PACKAGE_WAYLAND + help + Wayland protocols that adds functionality not available in + the Wayland core protocol. + + http://wayland.freedesktop.org/ diff --git a/package/wayland-protocols/wayland-protocols.hash b/package/wayland-protocols/wayland-protocols.hash new file mode 100644 index 00000000..321fc62d --- /dev/null +++ b/package/wayland-protocols/wayland-protocols.hash @@ -0,0 +1,5 @@ +# From https://lists.freedesktop.org/archives/wayland-devel/2020-February/041269.html +md5 b0836533a3f2dc6585b1dae00341157f wayland-protocols-1.20.tar.xz +sha1 e78c739a3a85477ed524b81e8bb75efe7f8bf4df wayland-protocols-1.20.tar.xz +sha256 9782b7a1a863d82d7c92478497d13c758f52e7da4f197aa16443f73de77e4de7 wayland-protocols-1.20.tar.xz +sha256 f1a2b233e8a9a71c40f4aa885be08a0842ac85bb8588703c1dd7e6e6502e3124 COPYING diff --git a/package/wayland-protocols/wayland-protocols.mk b/package/wayland-protocols/wayland-protocols.mk new file mode 100644 index 00000000..84028b97 --- /dev/null +++ b/package/wayland-protocols/wayland-protocols.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# wayland-protocols +# +################################################################################ + +WAYLAND_PROTOCOLS_VERSION = 1.20 +WAYLAND_PROTOCOLS_SITE = https://wayland.freedesktop.org/releases +WAYLAND_PROTOCOLS_SOURCE = wayland-protocols-$(WAYLAND_PROTOCOLS_VERSION).tar.xz +WAYLAND_PROTOCOLS_LICENSE = MIT +WAYLAND_PROTOCOLS_LICENSE_FILES = COPYING +WAYLAND_PROTOCOLS_INSTALL_STAGING = YES +WAYLAND_PROTOCOLS_INSTALL_TARGET = NO + +$(eval $(autotools-package)) diff --git a/package/wayland-utils/Config.in b/package/wayland-utils/Config.in new file mode 100644 index 00000000..d7842e61 --- /dev/null +++ b/package/wayland-utils/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_WAYLAND_UTILS + bool "wayland-utils" + depends on BR2_PACKAGE_WAYLAND # wayland-client, wayland-server + select BR2_PACKAGE_WAYLAND_PROTOCOLS + help + Wayland utils (wayland-info). + + https://gitlab.freedesktop.org/ofourdan/wayland-utils diff --git a/package/wayland-utils/wayland-utils.hash b/package/wayland-utils/wayland-utils.hash new file mode 100644 index 00000000..00b6da40 --- /dev/null +++ b/package/wayland-utils/wayland-utils.hash @@ -0,0 +1,6 @@ +# From https://lists.freedesktop.org/archives/wayland-devel/2020-July/041565.html +md5 714875aefb10e7f683cde24e58d033ad wayland-utils-1.0.0.tar.xz +sha1 b5b8d498a892866d56ffbe862039d7c97acbe7bc wayland-utils-1.0.0.tar.xz +sha256 64fecc4c58e87ae9b302901abe10c2e8af69c7503c221a96ecd0700e0aa268c0 wayland-utils-1.0.0.tar.xz +sha512 4c6f1822435b36b3acd361c0c54e56150e8a2697a9c4b2c20a149fcfaafe237e45807df3471884ddf594d89558001099e2d938e3f48988ba6950a0f1e3538db2 wayland-utils-1.0.0.tar.xz +sha256 1eba39c11640014a5841dd3017e5245fc31f47e1cf43a3287a286dd6a8de8a1a COPYING diff --git a/package/wayland-utils/wayland-utils.mk b/package/wayland-utils/wayland-utils.mk new file mode 100644 index 00000000..30a33b61 --- /dev/null +++ b/package/wayland-utils/wayland-utils.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# wayland-utils +# +################################################################################ + +WAYLAND_UTILS_VERSION = 1.0.0 +WAYLAND_UTILS_SITE = https://wayland.freedesktop.org/releases +WAYLAND_UTILS_SOURCE = wayland-utils-$(WAYLAND_UTILS_VERSION).tar.xz +WAYLAND_UTILS_LICENSE = MIT +WAYLAND_UTILS_LICENSE_FILES = COPYING +WAYLAND_UTILS_DEPENDENCIES = host-pkgconf wayland wayland-protocols + +$(eval $(meson-package)) diff --git a/package/wayland/0001-build-add-option-to-disable-tests.patch b/package/wayland/0001-build-add-option-to-disable-tests.patch new file mode 100644 index 00000000..6ab695e9 --- /dev/null +++ b/package/wayland/0001-build-add-option-to-disable-tests.patch @@ -0,0 +1,104 @@ +From 283085496e06b5543771abe5cc746ff0b77cdd23 Mon Sep 17 00:00:00 2001 +From: James Hilliard +Date: Tue, 3 Mar 2020 15:27:51 -0700 +Subject: [PATCH] build: add option to disable tests + +When building for a product, tests are not needed. + +Besides, one test requires a C++ compiler, which is not always +available. + +So, add an option to configure to disable building tests altogether. + +Signed-off-by: "Yann E. MORIN" +Signed-off-by: Alexey Brodkin +Signed-off-by: James Hilliard +[Upstream status: +https://gitlab.freedesktop.org/wayland/wayland/-/merge_requests/66] +--- + Makefile.am | 2 ++ + configure.ac | 9 +++++++++ + meson.build | 4 +++- + meson_options.txt | 4 ++++ + 4 files changed, 18 insertions(+), 1 deletion(-) + +diff --git a/Makefile.am b/Makefile.am +index cc87392..d5d43e3 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -162,6 +162,7 @@ pkgconfig_DATA += egl/wayland-egl.pc + include_HEADERS += egl/wayland-egl-backend.h + pkgconfig_DATA += egl/wayland-egl-backend.pc + ++if ENABLE_TESTS + built_test_programs = \ + array-test \ + client-test \ +@@ -295,6 +296,7 @@ os_wrappers_test_LDADD = libtest-runner.la + + exec_fd_leak_checker_SOURCES = tests/exec-fd-leak-checker.c + exec_fd_leak_checker_LDADD = libtest-helpers.la ++endif + + EXTRA_DIST += tests/scanner-test.sh \ + protocol/tests.xml \ +diff --git a/configure.ac b/configure.ac +index dda5e48..99b7c96 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -77,6 +77,13 @@ AC_ARG_ENABLE([libraries], + [], + [enable_libraries=yes]) + ++AC_ARG_ENABLE([tests], ++ [AC_HELP_STRING([--disable-tests], ++ [Disable compilation of test programs])], ++ [], ++ [enable_tests=yes]) ++ ++ + AC_ARG_WITH([host-scanner], + [AC_HELP_STRING([--with-host-scanner], + [Use installed wayland-scanner from host PATH during build])], +@@ -99,6 +106,8 @@ AM_CONDITIONAL(USE_HOST_SCANNER, test "x$with_host_scanner" = xyes) + + AM_CONDITIONAL(ENABLE_LIBRARIES, test "x$enable_libraries" = xyes) + ++AM_CONDITIONAL(ENABLE_TESTS, test "x$enable_tests" = xyes) ++ + AC_ARG_WITH(icondir, [ --with-icondir= Look for cursor icons here], + [ ICONDIR=$withval], + [ ICONDIR=${datadir}/icons]) +diff --git a/meson.build b/meson.build +index 5632f4e..b37bb7a 100644 +--- a/meson.build ++++ b/meson.build +@@ -83,7 +83,9 @@ subdir('src') + if get_option('libraries') + subdir('cursor') + subdir('egl') +- subdir('tests') ++ if get_option('tests') ++ subdir('tests') ++ endif + endif + + if get_option('documentation') +diff --git a/meson_options.txt b/meson_options.txt +index 76314f7..ab4be92 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -2,6 +2,10 @@ option('libraries', + description: 'Compile Wayland libraries', + type: 'boolean', + value: 'true') ++option('tests', ++ description: 'Compile Wayland tests', ++ type: 'boolean', ++ value: 'true') + option('documentation', + description: 'Build the documentation (requires Doxygen, dot, xmlto, xsltproc)', + type: 'boolean', +-- +2.20.1 + diff --git a/package/wayland/0002-meson-do-not-check-for-c.patch b/package/wayland/0002-meson-do-not-check-for-c.patch new file mode 100644 index 00000000..c5819bf4 --- /dev/null +++ b/package/wayland/0002-meson-do-not-check-for-c.patch @@ -0,0 +1,29 @@ +From 1df9b73db6541cbc483c6ee1b21dbe0cb6e5cbfa Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Wed, 29 Jul 2020 08:20:41 +0200 +Subject: [PATCH] meson: do not check for c++ + +Wayland does not need c++, fixes building with toolchains lacking c++. + +Backported from upstream PR: +https://gitlab.freedesktop.org/wayland/wayland/-/merge_requests/88 + +Signed-off-by: Bernd Kuhls +--- + meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/meson.build b/meson.build +index b67b101..e47a52d 100644 +--- a/meson.build ++++ b/meson.build +@@ -1,5 +1,5 @@ + project( +- 'wayland', 'c', 'cpp', ++ 'wayland', 'c', + version: '1.18.0', + license: 'MIT', + meson_version: '>= 0.47.0', +-- +2.27.0 + diff --git a/package/wayland/Config.in b/package/wayland/Config.in new file mode 100644 index 00000000..c22d9c7e --- /dev/null +++ b/package/wayland/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_WAYLAND + bool "wayland" + depends on !BR2_STATIC_LIBS # dlfcn.h + depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_EXPAT + select BR2_PACKAGE_LIBFFI + select BR2_PACKAGE_LIBXML2 + help + Wayland is a project to define a protocol for a compositor + to talk to its clients as well as a library implementation + of the protocol. + + https://wayland.freedesktop.org/ + +comment "wayland needs a toolchain w/ threads, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/wayland/wayland.hash b/package/wayland/wayland.hash new file mode 100644 index 00000000..abd8bcdf --- /dev/null +++ b/package/wayland/wayland.hash @@ -0,0 +1,8 @@ +# From https://lists.freedesktop.org/archives/wayland-devel/2020-February/041207.html +md5 23317697b6e3ff2e1ac8c5ba3ed57b65 wayland-1.18.0.tar.xz +sha1 33e5292b32a115e829458ea627201ed1e4ad4f45 wayland-1.18.0.tar.xz +sha256 4675a79f091020817a98fd0484e7208c8762242266967f55a67776936c2e294d wayland-1.18.0.tar.xz +sha512 e30199e30c2bbd361ee695b4f3f7a4e264f10ed8f46f2c90762b5739fc578ae757dc39aa0258d8fbf0ed418553470bccd4b2730ed9705481cfccdab5de96a8fc wayland-1.18.0.tar.xz + +# Locally calculated +sha256 6eefcb023622a463168a5c20add95fd24a38c7482622a9254a23b99b7c153061 COPYING diff --git a/package/wayland/wayland.mk b/package/wayland/wayland.mk new file mode 100644 index 00000000..6cb4a50d --- /dev/null +++ b/package/wayland/wayland.mk @@ -0,0 +1,27 @@ +################################################################################ +# +# wayland +# +################################################################################ + +WAYLAND_VERSION = 1.18.0 +WAYLAND_SITE = https://wayland.freedesktop.org/releases +WAYLAND_SOURCE = wayland-$(WAYLAND_VERSION).tar.xz +WAYLAND_LICENSE = MIT +WAYLAND_LICENSE_FILES = COPYING +WAYLAND_CPE_ID_VENDOR = wayland +WAYLAND_INSTALL_STAGING = YES +WAYLAND_DEPENDENCIES = host-pkgconf host-wayland expat libffi libxml2 +HOST_WAYLAND_DEPENDENCIES = host-pkgconf host-expat host-libffi host-libxml2 + +WAYLAND_CONF_OPTS = -Dtests=false -Ddocumentation=false +HOST_WAYLAND_CONF_OPTS = -Dtests=false -Ddocumentation=false + +# Remove the DTD from the target, it's not needed at runtime +define WAYLAND_TARGET_CLEANUP + rm -rf $(TARGET_DIR)/usr/share/wayland +endef +WAYLAND_POST_INSTALL_TARGET_HOOKS += WAYLAND_TARGET_CLEANUP + +$(eval $(meson-package)) +$(eval $(host-meson-package)) diff --git a/package/waylandpp/Config.in b/package/waylandpp/Config.in new file mode 100644 index 00000000..86ca9650 --- /dev/null +++ b/package/waylandpp/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_WAYLANDPP + bool "waylandpp" + depends on BR2_PACKAGE_HAS_LIBEGL_WAYLAND + depends on BR2_HOST_GCC_AT_LEAST_4_9 + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_PACKAGE_WAYLAND + help + Wayland C++ bindings + + https://github.com/NilsBrause/waylandpp + +comment "waylandpp needs an OpenGL-EGL/wayland backend, a toolchain w/ gcc >= 4.9, host gcc >= 4.9, C++ support" + depends on BR2_PACKAGE_WAYLAND + depends on !BR2_PACKAGE_HAS_LIBEGL_WAYLAND || \ + !BR2_HOST_GCC_AT_LEAST_4_9 || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || \ + !BR2_INSTALL_LIBSTDCPP diff --git a/package/waylandpp/waylandpp.hash b/package/waylandpp/waylandpp.hash new file mode 100644 index 00000000..1b806af9 --- /dev/null +++ b/package/waylandpp/waylandpp.hash @@ -0,0 +1,4 @@ +# Locally computed +sha256 e7f486165d3568c3558b5c7099133aea4a285b82820eeafad329fc10271c654d waylandpp-0.2.8.tar.gz +sha256 8ff91f682a38f8a603b173222a60e8dc71754a79a522a316fb6b76ce138c542c LICENSE +sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 scanner/gpl-3.0.txt diff --git a/package/waylandpp/waylandpp.mk b/package/waylandpp/waylandpp.mk new file mode 100644 index 00000000..45d9ccd5 --- /dev/null +++ b/package/waylandpp/waylandpp.mk @@ -0,0 +1,28 @@ +################################################################################ +# +# waylandpp +# +################################################################################ + +WAYLANDPP_VERSION = 0.2.8 +WAYLANDPP_SITE = $(call github,NilsBrause,waylandpp,$(WAYLANDPP_VERSION)) +WAYLANDPP_LICENSE = MIT, GPL-3.0+ (wayland_scanner) +WAYLANDPP_LICENSE_FILES = LICENSE scanner/gpl-3.0.txt +WAYLANDPP_INSTALL_STAGING = YES +# pugixml is needed only to build the host version of wayland-scanner++ +HOST_WAYLANDPP_DEPENDENCIES = host-pugixml host-pkgconf host-wayland +WAYLANDPP_DEPENDENCIES = libegl host-pkgconf wayland host-waylandpp + +# host variant of wayland-scanner++ is needed for building the target +# package +HOST_WAYLANDPP_CONF_OPTS = \ + -DBUILD_LIBRARIES=OFF \ + -DBUILD_SCANNER=ON + +WAYLANDPP_CONF_OPTS = \ + -DBUILD_LIBRARIES=ON \ + -DBUILD_SCANNER=OFF \ + -DWAYLAND_SCANNERPP=$(HOST_DIR)/bin/wayland-scanner++ + +$(eval $(cmake-package)) +$(eval $(host-cmake-package)) diff --git a/package/webkitgtk/Config.in b/package/webkitgtk/Config.in new file mode 100644 index 00000000..2ba8d476 --- /dev/null +++ b/package/webkitgtk/Config.in @@ -0,0 +1,131 @@ +config BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS + bool + # ARM needs BLX, so v5t+, BE completely untested so disabled + default y if BR2_arm && !BR2_ARM_CPU_ARMV4 + default y if BR2_aarch64 || BR2_aarch64_be + default y if BR2_i386 || BR2_x86_64 + # Disabled on MIPS big endian due to sigbus + default y if BR2_mipsel || BR2_mips64el + # Disabled on PowerPC pending runtime testing + # Disabled on SuperH because of segfault + depends on BR2_USE_MMU # libglib2 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt + +comment "webkitgtk needs libgtk3 and a glibc toolchain w/ C++, gcc >= 7, host gcc >= 4.9" + depends on BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS + depends on !BR2_PACKAGE_LIBGTK3 || !BR2_INSTALL_LIBSTDCPP || \ + !BR2_TOOLCHAIN_USES_GLIBC || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_7 || \ + !BR2_HOST_GCC_AT_LEAST_4_9 + depends on BR2_USE_MMU + +config BR2_PACKAGE_WEBKITGTK + bool "webkitgtk" + depends on BR2_HOST_GCC_AT_LEAST_4_9 # icu + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_7 + depends on BR2_TOOLCHAIN_USES_GLIBC + depends on BR2_PACKAGE_LIBGTK3 + depends on BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS + select BR2_PACKAGE_CAIRO + select BR2_PACKAGE_CAIRO_PNG + select BR2_PACKAGE_ENCHANT + select BR2_PACKAGE_HARFBUZZ + select BR2_PACKAGE_ICU + select BR2_PACKAGE_JPEG + select BR2_PACKAGE_LIBGCRYPT + select BR2_PACKAGE_LIBSECRET + select BR2_PACKAGE_LIBSOUP + select BR2_PACKAGE_LIBTASN1 + select BR2_PACKAGE_LIBXML2 + select BR2_PACKAGE_LIBXSLT + select BR2_PACKAGE_OPENJPEG + select BR2_PACKAGE_SQLITE + select BR2_PACKAGE_WEBP + select BR2_PACKAGE_WEBP_DEMUX + select BR2_PACKAGE_WOFF2 + select BR2_PACKAGE_XLIB_LIBXCOMPOSITE if BR2_PACKAGE_LIBGTK3_X11 + select BR2_PACKAGE_XLIB_LIBXDAMAGE if BR2_PACKAGE_LIBGTK3_X11 + select BR2_PACKAGE_XLIB_LIBXRENDER if BR2_PACKAGE_LIBGTK3_X11 + select BR2_PACKAGE_XLIB_LIBXT if BR2_PACKAGE_LIBGTK3_X11 + help + WebKit is an open source, standards compliant web browser + engine. + + http://www.webkitgtk.org/ + +if BR2_PACKAGE_WEBKITGTK + +config BR2_PACKAGE_WEBKITGTK_SANDBOX + bool "sandboxing support" + depends on BR2_PACKAGE_LIBSECCOMP_ARCH_SUPPORTS # libseccomp + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 # libseccomp + select BR2_PACKAGE_BUBBLEWRAP # runtime + select BR2_PACKAGE_XDG_DBUS_PROXY # runtime + select BR2_PACKAGE_LIBSECCOMP + help + Enable sandboxing of the processes used for network operation, + disk access, and Web content rendering. + +comment "sandboxing support needs a toolchain w/ headers >= 3.12" + depends on BR2_PACKAGE_LIBSECCOMP_ARCH_SUPPORTS + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 + +config BR2_PACKAGE_WEBKITGTK_HTTPS + bool "HTTPS support" + depends on !BR2_STATIC_LIBS # libsoup -> glib-networking, gnutls + select BR2_PACKAGE_CA_CERTIFICATES # runtime + select BR2_PACKAGE_LIBSOUP_SSL + help + Enable HTTPS protocol support. + +comment "webkitgtk https support needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS + +config BR2_PACKAGE_WEBKITGTK_MULTIMEDIA + bool "multimedia support" + select BR2_PACKAGE_GSTREAMER1 + select BR2_PACKAGE_GST1_PLUGINS_BAD + select BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_MPEGTSDEMUX + select BR2_PACKAGE_GST1_PLUGINS_BASE + select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_ALSA + select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_APP + select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_AUDIOCONVERT + select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_AUDIORESAMPLE + select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_PLAYBACK + select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_VIDEOCONVERT + select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_VIDEOSCALE + select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_VOLUME + select BR2_PACKAGE_GST1_PLUGINS_GOOD + select BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_AUTODETECT + select BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_ISOMP4 + select BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_MATROSKA + select BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_RTSP + select BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_VPX + select BR2_PACKAGE_GST1_LIBAV + help + This option pulls in all of the required dependencies + to enable multimedia (video/audio) support. + +if BR2_PACKAGE_WEBKITGTK_MULTIMEDIA + +config BR2_PACKAGE_WEBKITGTK_USE_GSTREAMER_GL + bool "use gstreamer-gl" + default y + depends on BR2_PACKAGE_GST1_PLUGINS_BASE_LIB_OPENGL_OPENGL + help + Use the GStreamer GL elements for handling video content. + This is recommended as it improves performance of video + playback. In some target configurations incorrect rendering + might be produced, and disabling this option may help. + +endif + +config BR2_PACKAGE_WEBKITGTK_WEBDRIVER + bool "WebDriver support" + help + Enable support for WebDriver. This will build and install the + WebKitWebDriver program in the target. + +endif diff --git a/package/webkitgtk/webkitgtk.hash b/package/webkitgtk/webkitgtk.hash new file mode 100644 index 00000000..d85a7f46 --- /dev/null +++ b/package/webkitgtk/webkitgtk.hash @@ -0,0 +1,8 @@ +# From https://webkitgtk.org/releases/webkitgtk-2.30.6.tar.xz.sums +md5 11148c4ed400c58fe330ac94208cbc4d webkitgtk-2.30.6.tar.xz +sha1 aaaf9b0f1780f3eae104ae0d3ad15b3e19cf6e8d webkitgtk-2.30.6.tar.xz +sha256 50736ec7a91770b5939d715196e5fe7209b93efcdeef425b24dc51fb8e9d7c1e webkitgtk-2.30.6.tar.xz + +# Hashes for license files: +sha256 0b5d3a7cc325942567373b0ecd757d07c132e0ebd7c97bfc63f7e1a76094edb4 Source/WebCore/LICENSE-APPLE +sha256 f2b3bd09663381deb99721109d22b47af1213bb43007a8b56a06c6375c8050ce Source/WebCore/LICENSE-LGPL-2.1 diff --git a/package/webkitgtk/webkitgtk.mk b/package/webkitgtk/webkitgtk.mk new file mode 100644 index 00000000..f1c05604 --- /dev/null +++ b/package/webkitgtk/webkitgtk.mk @@ -0,0 +1,130 @@ +################################################################################ +# +# webkitgtk +# +################################################################################ + +WEBKITGTK_VERSION = 2.30.6 +WEBKITGTK_SITE = https://www.webkitgtk.org/releases +WEBKITGTK_SOURCE = webkitgtk-$(WEBKITGTK_VERSION).tar.xz +WEBKITGTK_INSTALL_STAGING = YES +WEBKITGTK_LICENSE = LGPL-2.1+, BSD-2-Clause +WEBKITGTK_LICENSE_FILES = \ + Source/WebCore/LICENSE-APPLE \ + Source/WebCore/LICENSE-LGPL-2.1 +WEBKITGTK_CPE_ID_VENDOR = webkitgtk +WEBKITGTK_DEPENDENCIES = host-ruby host-python host-gperf \ + enchant harfbuzz icu jpeg libgcrypt libgtk3 libsecret libsoup \ + libtasn1 libxml2 libxslt openjpeg sqlite webp woff2 +WEBKITGTK_CONF_OPTS = \ + -DENABLE_API_TESTS=OFF \ + -DENABLE_GAMEPAD=OFF \ + -DENABLE_GEOLOCATION=OFF \ + -DENABLE_GTKDOC=OFF \ + -DENABLE_INTROSPECTION=OFF \ + -DENABLE_MINIBROWSER=ON \ + -DENABLE_SPELLCHECK=ON \ + -DPORT=GTK \ + -DSILENCE_CROSS_COMPILATION_NOTICES=ON \ + -DUSE_LIBNOTIFY=OFF \ + -DUSE_LIBHYPHEN=OFF \ + -DUSE_OPENJPEG=ON \ + -DUSE_WOFF2=ON \ + -DUSE_WPE_RENDERER=OFF + +ifeq ($(BR2_PACKAGE_WEBKITGTK_SANDBOX),y) +WEBKITGTK_CONF_OPTS += \ + -DENABLE_BUBBLEWRAP_SANDBOX=ON \ + -DBWRAP_EXECUTABLE=/usr/bin/bwrap \ + -DDBUS_PROXY_EXECUTABLE=/usr/bin/xdg-dbus-proxy +WEBKITGTK_DEPENDENCIES += libseccomp +else +WEBKITGTK_CONF_OPTS += -DENABLE_BUBBLEWRAP_SANDBOX=OFF +endif + +ifeq ($(BR2_PACKAGE_WEBKITGTK_MULTIMEDIA),y) +WEBKITGTK_CONF_OPTS += \ + -DENABLE_VIDEO=ON \ + -DENABLE_WEB_AUDIO=ON +WEBKITGTK_DEPENDENCIES += gstreamer1 gst1-libav gst1-plugins-base gst1-plugins-good +else +WEBKITGTK_CONF_OPTS += \ + -DENABLE_VIDEO=OFF \ + -DENABLE_WEB_AUDIO=OFF +endif + +ifeq ($(BR2_PACKAGE_WEBKITGTK_WEBDRIVER),y) +WEBKITGTK_CONF_OPTS += -DENABLE_WEBDRIVER=ON +else +WEBKITGTK_CONF_OPTS += -DENABLE_WEBDRIVER=OFF +endif + +# Only one target platform can be built, assume X11 > Wayland + +# GTK3-X11 target gives OpenGL from newer libgtk3 versions +# Consider this better than EGL + maybe GLESv2 since both can't be built +# 2D CANVAS acceleration requires OpenGL proper with cairo-gl +ifeq ($(BR2_PACKAGE_LIBGTK3_X11),y) +WEBKITGTK_CONF_OPTS += \ + -DENABLE_ACCELERATED_2D_CANVAS=ON \ + -DENABLE_GLES2=OFF \ + -DENABLE_GRAPHICS_CONTEXT_GL=ON \ + -DENABLE_X11_TARGET=ON +WEBKITGTK_DEPENDENCIES += libgl \ + xlib_libXcomposite xlib_libXdamage xlib_libXrender xlib_libXt +# It can use libgtk2 for npapi plugins +ifeq ($(BR2_PACKAGE_LIBGTK2),y) +WEBKITGTK_CONF_OPTS += -DENABLE_PLUGIN_PROCESS_GTK2=ON +WEBKITGTK_DEPENDENCIES += libgtk2 +else +WEBKITGTK_CONF_OPTS += -DENABLE_PLUGIN_PROCESS_GTK2=OFF +endif +else # !X11 +# GTK3-BROADWAY/WAYLAND needs at least EGL +WEBKITGTK_DEPENDENCIES += libegl +# GLESv2 support is optional though +ifeq ($(BR2_PACKAGE_HAS_LIBGLES),y) +WEBKITGTK_CONF_OPTS += \ + -DENABLE_GLES2=ON \ + -DENABLE_GRAPHICS_CONTEXT_GL=ON +WEBKITGTK_DEPENDENCIES += libgles +else +# Disable general OpenGL (shading) if there's no GLESv2 +WEBKITGTK_CONF_OPTS += \ + -DENABLE_GLES2=OFF \ + -DENABLE_GRAPHICS_CONTEXT_GL=OFF +endif +# We must explicitly state the wayland target +ifeq ($(BR2_PACKAGE_LIBGTK3_WAYLAND),y) +WEBKITGTK_CONF_OPTS += -DENABLE_WAYLAND_TARGET=ON +endif +endif + +ifeq ($(BR2_PACKAGE_WEBKITGTK_USE_GSTREAMER_GL),y) +WEBKITGTK_CONF_OPTS += -DUSE_GSTREAMER_GL=ON +else +WEBKITGTK_CONF_OPTS += -DUSE_GSTREAMER_GL=OFF +endif + +ifeq ($(BR2_INIT_SYSTEMD),y) +WEBKITGTK_CONF_OPTS += -DUSE_SYSTEMD=ON +WEBKITGTK_DEPENDENCIES += systemd +else +WEBKITGTK_CONF_OPTS += -DUSE_SYSTEMD=OFF +endif + +# JIT is not supported for MIPS r6, but the WebKit build system does not +# have a check for these processors. The same goes for ARMv5 and ARMv6. +# Disable JIT forcibly here and use the CLoop interpreter instead. +# +# Also, we have to disable the sampling profiler, which does NOT work +# with ENABLE_C_LOOP. +# +# Upstream bugs: https://bugs.webkit.org/show_bug.cgi?id=191258 +# https://bugs.webkit.org/show_bug.cgi?id=172765 +# +ifeq ($(BR2_ARM_CPU_ARMV5)$(BR2_ARM_CPU_ARMV6)$(BR2_MIPS_CPU_MIPS32R6)$(BR2_MIPS_CPU_MIPS64R6),y) +WEBKITGTK_CONF_OPTS += -DENABLE_JIT=OFF -DENABLE_C_LOOP=ON -DENABLE_SAMPLING_PROFILER=OFF +endif + +$(eval $(cmake-package)) diff --git a/package/webp/Config.in b/package/webp/Config.in new file mode 100644 index 00000000..e8263a95 --- /dev/null +++ b/package/webp/Config.in @@ -0,0 +1,25 @@ +config BR2_PACKAGE_WEBP + bool "webp" + help + WebP is a new image format that provides lossless and lossy + compression for images on the web + + https://developers.google.com/speed/webp/ + +if BR2_PACKAGE_WEBP + +config BR2_PACKAGE_WEBP_DEMUX + bool "webpdemux" + help + Demux is a part of WebPMux for extraction and manipulation + of an extended format WebP file, which can have features + like color profile, metadata and animation. + +config BR2_PACKAGE_WEBP_MUX + bool "webpmux" + help + Mux is a part of WebPMux for creation and manipulation + of an extended format WebP file, which can have features + like color profile, metadata and animation. + +endif diff --git a/package/webp/webp.hash b/package/webp/webp.hash new file mode 100644 index 00000000..24cec6df --- /dev/null +++ b/package/webp/webp.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 2fc8bbde9f97f2ab403c0224fb9ca62b2e6852cbc519e91ceaa7c153ffd88a0c libwebp-1.2.0.tar.gz +sha256 5aec868f669e384a22372a4e8a1a6cd7d44c64cd451f960ca69cc170d1e13acf COPYING diff --git a/package/webp/webp.mk b/package/webp/webp.mk new file mode 100644 index 00000000..ecf26faa --- /dev/null +++ b/package/webp/webp.mk @@ -0,0 +1,58 @@ +################################################################################ +# +# webp +# +################################################################################ + +WEBP_VERSION = 1.2.0 +WEBP_SOURCE = libwebp-$(WEBP_VERSION).tar.gz +WEBP_SITE = http://downloads.webmproject.org/releases/webp +WEBP_LICENSE = BSD-3-Clause +WEBP_LICENSE_FILES = COPYING +WEBP_CPE_ID_VENDOR = webmproject +WEBP_CPE_ID_PRODUCT = libwebp +WEBP_INSTALL_STAGING = YES + +WEBP_CONF_OPTS += \ + --with-jpegincludedir=$(STAGING_DIR)/usr/include \ + --with-jpeglibdir=$(STAGING_DIR)/usr/lib \ + --with-tiffincludedir=$(STAGING_DIR)/usr/include \ + --with-tifflibdir=$(STAGING_DIR)/usr/lib + +ifeq ($(BR2_PACKAGE_WEBP_DEMUX),y) +WEBP_CONF_OPTS += --enable-libwebpdemux +else +WEBP_CONF_OPTS += --disable-libwebpdemux +endif + +ifeq ($(BR2_PACKAGE_WEBP_MUX),y) +WEBP_CONF_OPTS += --enable-libwebpmux +else +WEBP_CONF_OPTS += --disable-libwebpmux +endif + +ifeq ($(BR2_PACKAGE_GIFLIB),y) +WEBP_DEPENDENCIES += giflib +WEBP_CONF_OPTS += --enable-gif +else +WEBP_CONF_OPTS += --disable-gif +endif + +ifeq ($(BR2_PACKAGE_LIBFREEGLUT),y) +WEBP_DEPENDENCIES += libfreeglut +WEBP_CONF_OPTS += --enable-gl +else +WEBP_CONF_OPTS += --disable-gl +endif + +ifeq ($(BR2_PACKAGE_LIBPNG),y) +WEBP_DEPENDENCIES += libpng +WEBP_CONF_ENV += ac_cv_path_LIBPNG_CONFIG=$(STAGING_DIR)/usr/bin/libpng-config +else +WEBP_CONF_ENV += ac_cv_path_LIBPNG_CONFIG=/bin/false +endif + +WEBP_DEPENDENCIES += $(if $(BR2_PACKAGE_JPEG),jpeg) +WEBP_DEPENDENCIES += $(if $(BR2_PACKAGE_TIFF),tiff) + +$(eval $(autotools-package)) diff --git a/package/webrtc-audio-processing/0001-Proper-detection-of-cxxabi.h-and-execinfo.h.patch b/package/webrtc-audio-processing/0001-Proper-detection-of-cxxabi.h-and-execinfo.h.patch new file mode 100644 index 00000000..a0332db8 --- /dev/null +++ b/package/webrtc-audio-processing/0001-Proper-detection-of-cxxabi.h-and-execinfo.h.patch @@ -0,0 +1,63 @@ +From b7a166acaddc4c78afa2b653e25114d9114699f3 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sat, 6 Aug 2016 11:24:50 +0200 +Subject: [PATCH] Proper detection of cxxabi.h and execinfo.h + +The current code in webrtc/base/checks.cc assumes that if __GLIBCXX__ is +defined and __UCLIBC__ is not defined, then both cxxabi.h and execinfo.h +will be available. + +Unfortunately, this is not correct with the musl C library: + + - It defines __GLIBCXX__ + - It does not define __UCLIBC__ (it's not uClibc after all!) + - But it also doesn't provide execinfo.h + +Therefore, in order to make things work properly, we switch to proper +autoconf checks for cxxabi.h and execinfo.h, and only use the backtrace +functionality if both are provided. + +Signed-off-by: Thomas Petazzoni +--- + configure.ac | 2 ++ + webrtc/base/checks.cc | 4 ++-- + 2 files changed, 4 insertions(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index acbb3e2..ff4c752 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -45,6 +45,8 @@ AC_SUBST(GNUSTL_CFLAGS) + # Borrowed from gst-plugins-bad + AC_CHECK_HEADER(MobileCoreServices/MobileCoreServices.h, HAVE_IOS="yes", HAVE_IOS="no", [-]) + ++AC_CHECK_HEADERS([cxxabi.h execinfo.h]) ++ + # Based on gst-plugins-bad configure.ac and defines in + # /build/config/BUILDCONFIG.gn and + # webrtc/BUILD.gn +diff --git a/webrtc/base/checks.cc b/webrtc/base/checks.cc +index 49a31f2..05d23a6 100644 +--- a/webrtc/base/checks.cc ++++ b/webrtc/base/checks.cc +@@ -16,7 +16,7 @@ + #include + #include + +-#if defined(__GLIBCXX__) && !defined(__UCLIBC__) ++#if defined(HAVE_CXX_ABI_H) && defined(HAVE_EXECINFO_H) + #include + #include + #endif +@@ -55,7 +55,7 @@ void PrintError(const char* format, ...) { + // to get usable symbols on Linux. This is copied from V8. Chromium has a more + // advanced stace trace system; also more difficult to copy. + void DumpBacktrace() { +-#if defined(__GLIBCXX__) && !defined(__UCLIBC__) ++#if defined(HAVE_CXX_ABI_H) && defined(HAVE_EXECINFO_H) + void* trace[100]; + int size = backtrace(trace, sizeof(trace) / sizeof(*trace)); + char** symbols = backtrace_symbols(trace, size); +-- +2.7.4 + diff --git a/package/webrtc-audio-processing/Config.in b/package/webrtc-audio-processing/Config.in new file mode 100644 index 00000000..64138269 --- /dev/null +++ b/package/webrtc-audio-processing/Config.in @@ -0,0 +1,21 @@ +config BR2_PACKAGE_WEBRTC_AUDIO_PROCESSING_ARCH_SUPPORTS + bool + default y if BR2_aarch64 || BR2_arm || BR2_i386 || BR2_x86_64 + +config BR2_PACKAGE_WEBRTC_AUDIO_PROCESSING + bool "webrtc-audio-processing" + depends on BR2_PACKAGE_WEBRTC_AUDIO_PROCESSING_ARCH_SUPPORTS + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 + # pthread_condattr_setclock + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL + help + AudioProcessing library based on Google's implementation of + WebRTC. + + http://freedesktop.org/software/pulseaudio/webrtc-audio-processing/ + +comment "webrtc-audio-processing needs a toolchain w/ C++, NPTL, gcc >= 4.8" + depends on BR2_PACKAGE_WEBRTC_AUDIO_PROCESSING_ARCH_SUPPORTS + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS_NPTL \ + || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 diff --git a/package/webrtc-audio-processing/webrtc-audio-processing.hash b/package/webrtc-audio-processing/webrtc-audio-processing.hash new file mode 100644 index 00000000..1376054f --- /dev/null +++ b/package/webrtc-audio-processing/webrtc-audio-processing.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 a0fdd938fd85272d67e81572c5a4d9e200a0c104753cb3c209ded175ce3c5dbf webrtc-audio-processing-0.3.1.tar.xz +sha256 9b79539028e216e813e152d45f5c1ed5fdd0554426ad50270fb03134e7082dac COPYING diff --git a/package/webrtc-audio-processing/webrtc-audio-processing.mk b/package/webrtc-audio-processing/webrtc-audio-processing.mk new file mode 100644 index 00000000..ff84a802 --- /dev/null +++ b/package/webrtc-audio-processing/webrtc-audio-processing.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# webrtc-audio-processing +# +################################################################################ + +WEBRTC_AUDIO_PROCESSING_VERSION = 0.3.1 +WEBRTC_AUDIO_PROCESSING_SOURCE = webrtc-audio-processing-$(WEBRTC_AUDIO_PROCESSING_VERSION).tar.xz +WEBRTC_AUDIO_PROCESSING_SITE = http://freedesktop.org/software/pulseaudio/webrtc-audio-processing +WEBRTC_AUDIO_PROCESSING_INSTALL_STAGING = YES +WEBRTC_AUDIO_PROCESSING_LICENSE = BSD-3-Clause +WEBRTC_AUDIO_PROCESSING_LICENSE_FILES = COPYING +WEBRTC_AUDIO_PROCESSING_DEPENDENCIES = host-pkgconf +# 0001-Proper-detection-of-cxxabi.h-and-execinfo.h.patch +WEBRTC_AUDIO_PROCESSING_AUTORECONF = YES + +ifeq ($(BR2_SOFT_FLOAT),y) +WEBRTC_AUDIO_PROCESSING_CONF_OPTS += --with-ns-mode=fixed +endif + +$(eval $(autotools-package)) diff --git a/package/websocketpp/Config.in b/package/websocketpp/Config.in new file mode 100644 index 00000000..cadb9ff6 --- /dev/null +++ b/package/websocketpp/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_WEBSOCKETPP + bool "websocketpp" + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 + depends on BR2_INSTALL_LIBSTDCPP + help + WebSocket++ is a header only C++ library that implements + RFC6455 The WebSocket Protocol. It allows integrating + WebSocket client and server functionality into C++ programs. + It uses interchangeable network transport modules including + one based on C++ iostreams and one based on Boost Asio. + + http://www.zaphoyd.com/websocketpp + +comment "websocketpp needs a toolchain w/ C++ and gcc >= 4.8" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 diff --git a/package/websocketpp/websocketpp.hash b/package/websocketpp/websocketpp.hash new file mode 100644 index 00000000..e4d0c929 --- /dev/null +++ b/package/websocketpp/websocketpp.hash @@ -0,0 +1,3 @@ +# Locally Computed: +sha256 6ce889d85ecdc2d8fa07408d6787e7352510750daa66b5ad44aacb47bea76755 websocketpp-0.8.2.tar.gz +sha256 b31e597bc777d884a39663c11d0557a0af40780e1f451de11ea5103924a69667 COPYING diff --git a/package/websocketpp/websocketpp.mk b/package/websocketpp/websocketpp.mk new file mode 100644 index 00000000..59b365aa --- /dev/null +++ b/package/websocketpp/websocketpp.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# websocketpp +# +################################################################################ + +WEBSOCKETPP_VERSION = 0.8.2 +WEBSOCKETPP_SITE = $(call github,zaphoyd,websocketpp,$(WEBSOCKETPP_VERSION)) +WEBSOCKETPP_LICENSE = BSD-3c, MIT, Zlib +WEBSOCKETPP_LICENSE_FILES = COPYING +WEBSOCKETPP_CPE_ID_VENDOR = zaphoyd +WEBSOCKETPP_INSTALL_STAGING = YES +# Only installs headers +WEBSOCKETPP_INSTALL_TARGET = NO + +$(eval $(cmake-package)) diff --git a/package/weston/0001-tests-include-fcntl.h-for-open-O_RDWR-O_CLOEXEC-and-.patch b/package/weston/0001-tests-include-fcntl.h-for-open-O_RDWR-O_CLOEXEC-and-.patch new file mode 100644 index 00000000..2eb6bd83 --- /dev/null +++ b/package/weston/0001-tests-include-fcntl.h-for-open-O_RDWR-O_CLOEXEC-and-.patch @@ -0,0 +1,48 @@ +From b10c0e843dcb8148bbe869bb15261955b94ac98c Mon Sep 17 00:00:00 2001 +From: Denys Dmytriyenko +Date: Tue, 8 Sep 2020 19:37:42 -0400 +Subject: [PATCH] tests: include fcntl.h for open(), O_RDWR, O_CLOEXEC and + O_CREAT + +musl libc (unlike glibc) requires explicitly incuding fcntl.h to define open(), +O_RDWR, O_CLOEXEC and O_CREAT. Otherwise the build fails with the errors: + +| ../weston-9.0.0/tests/weston-test-fixture-compositor.c: In function 'wait_for_lock': +| ../weston-9.0.0/tests/weston-test-fixture-compositor.c:135:7: warning: implicit declaration of function 'open'; did you mean 'popen'? [-Wimplicit-function-declaration] +| 135 | fd = open(lock_path, O_RDWR | O_CLOEXEC | O_CREAT, 00700); +| | ^~~~ +| | popen +| ../weston-9.0.0/tests/weston-test-fixture-compositor.c:135:23: error: 'O_RDWR' undeclared (first use in this function) +| 135 | fd = open(lock_path, O_RDWR | O_CLOEXEC | O_CREAT, 00700); +| | ^~~~~~ +| ../weston-9.0.0/tests/weston-test-fixture-compositor.c:135:23: note: each undeclared identifier is reported only once for each function it appears in +| ../weston-9.0.0/tests/weston-test-fixture-compositor.c:135:32: error: 'O_CLOEXEC' undeclared (first use in this function) +| 135 | fd = open(lock_path, O_RDWR | O_CLOEXEC | O_CREAT, 00700); +| | ^~~~~~~~~ +| ../weston-9.0.0/tests/weston-test-fixture-compositor.c:135:44: error: 'O_CREAT' undeclared (first use in this function) +| 135 | fd = open(lock_path, O_RDWR | O_CLOEXEC | O_CREAT, 00700); +| | ^~~~~~~ + +Signed-off-by: Denys Dmytriyenko +Signed-off-by: James Hilliard +[james.hilliard1@gmail.com: backport from upstream commit +b10c0e843dcb8148bbe869bb15261955b94ac98c] +--- + tests/weston-test-fixture-compositor.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/tests/weston-test-fixture-compositor.c b/tests/weston-test-fixture-compositor.c +index 1c32959c..c1eb26c4 100644 +--- a/tests/weston-test-fixture-compositor.c ++++ b/tests/weston-test-fixture-compositor.c +@@ -35,6 +35,7 @@ + #include + #include + #include ++#include + + #include "shared/helpers.h" + #include "weston-test-fixture-compositor.h" +-- +2.25.1 + diff --git a/package/weston/0002-libweston-backend-drm-might-need-EGL.patch b/package/weston/0002-libweston-backend-drm-might-need-EGL.patch new file mode 100644 index 00000000..f504e114 --- /dev/null +++ b/package/weston/0002-libweston-backend-drm-might-need-EGL.patch @@ -0,0 +1,47 @@ +From 4b93b71067949cc5efabb9b3d59278a3f362b11c Mon Sep 17 00:00:00 2001 +From: Heiko Thiery +Date: Wed, 21 Oct 2020 13:33:25 +0200 +Subject: [PATCH] libweston/backend/drm: might need EGL + +gbm-drm.c includes gl-renderer.h. When EGL is enabled, that in turns +includes egl.h. As such, dependencies for drm should include EGL if +it is available. + +This condition is modelled after a similar one in libweston/meson.build + +Reported-by: Gary Bisson +Reported-by: Heiko Thiery +Signed-off-by: Yann E. MORIN +Cc: Refik Tuzakli +Cc: Thomas Petazzoni +Signed-off-by: Heiko Thiery +--- +This patch should be a proper fix for the issue discribed in the patch from +Gary [1]. + +Since the MR on weston upstream [2] is not merged now I add this patch +to have working weston with imx in buildroot. + +[1] https://patchwork.ozlabs.org/project/buildroot/patch/20200402130842.918696-3-gary.bisson@boundarydevices.com/ +[2] https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/508 +--- + libweston/backend-drm/meson.build | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/libweston/backend-drm/meson.build b/libweston/backend-drm/meson.build +index 484c2702..e3e5b976 100644 +--- a/libweston/backend-drm/meson.build ++++ b/libweston/backend-drm/meson.build +@@ -53,6 +53,9 @@ if get_option('renderer-gl') + config_h.set('HAVE_GBM_FD_IMPORT', '1') + endif + deps_drm += dep_gbm ++ if dep_egl.found() ++ deps_drm += dep_egl ++ endif + srcs_drm += 'drm-gbm.c' + config_h.set('BUILD_DRM_GBM', '1') + endif +-- +2.20.1 + diff --git a/package/weston/Config.in b/package/weston/Config.in new file mode 100644 index 00000000..d07eba4c --- /dev/null +++ b/package/weston/Config.in @@ -0,0 +1,142 @@ +comment "weston needs udev and a toolchain w/ locale, threads, dynamic library, headers >= 3.0" + depends on !BR2_PACKAGE_HAS_UDEV || !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 || BR2_STATIC_LIBS || \ + !BR2_ENABLE_LOCALE + +config BR2_PACKAGE_WESTON + bool "weston" + depends on BR2_PACKAGE_HAS_UDEV + depends on !BR2_STATIC_LIBS # wayland + depends on BR2_TOOLCHAIN_HAS_THREADS # wayland + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 + select BR2_PACKAGE_WAYLAND + select BR2_PACKAGE_WAYLAND_PROTOCOLS + select BR2_PACKAGE_LIBXKBCOMMON + select BR2_PACKAGE_CAIRO + select BR2_PACKAGE_CAIRO_PNG + select BR2_PACKAGE_LIBPNG + select BR2_PACKAGE_JPEG + select BR2_PACKAGE_LIBINPUT + select BR2_PACKAGE_LIBDRM + # Runtime dependency + select BR2_PACKAGE_XKEYBOARD_CONFIG + help + Weston is the reference implementation of a Wayland + compositor, and a useful compositor in its own right. + Weston has various backends that lets it run on Linux kernel + modesetting and evdev input as well as under X11. + + http://wayland.freedesktop.org/ + +if BR2_PACKAGE_WESTON + +choice + prompt "default compositor" + +config BR2_PACKAGE_WESTON_DEFAULT_FBDEV + bool "fbdev" + select BR2_PACKAGE_WESTON_FBDEV + +config BR2_PACKAGE_WESTON_DEFAULT_DRM + bool "drm" + depends on BR2_PACKAGE_MESA3D_OPENGL_EGL || BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_WL + select BR2_PACKAGE_WESTON_DRM + +comment "drm backend needs mesa3d w/ EGL driver" + depends on !BR2_PACKAGE_MESA3D_OPENGL_EGL && !BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_WL + +config BR2_PACKAGE_WESTON_DEFAULT_X11 + bool "X11" + depends on BR2_PACKAGE_XORG7 + select BR2_PACKAGE_WESTON_X11 + +comment "X11 backend needs X.org" + depends on !BR2_PACKAGE_XORG7 + +endchoice + +config BR2_PACKAGE_WESTON_DEFAULT_COMPOSITOR + string + default "fbdev" if BR2_PACKAGE_WESTON_DEFAULT_FBDEV + default "drm" if BR2_PACKAGE_WESTON_DEFAULT_DRM + default "x11" if BR2_PACKAGE_WESTON_DEFAULT_X11 + +config BR2_PACKAGE_WESTON_DRM + bool "DRM compositor" + depends on BR2_PACKAGE_MESA3D_OPENGL_EGL || BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_WL + +# Uses libgbm from mesa3d +comment "DRM compositor needs an OpenGL EGL backend provided by mesa3d" + depends on !BR2_PACKAGE_MESA3D_OPENGL_EGL && !BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_WL + +config BR2_PACKAGE_WESTON_FBDEV + bool "fbdev compositor" + +# FreeRDP needs threads and !static, already the case for weston +config BR2_PACKAGE_WESTON_RDP + bool "RDP compositor" + depends on BR2_USE_MMU # freerdp, libglib2 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on BR2_USE_WCHAR # freerdp + depends on BR2_INSTALL_LIBSTDCPP # freerdp + select BR2_PACKAGE_FREERDP + help + This enables the RDP backend, which allows accessing weston + through the network with any RDP-compliant client. + + Please note that one must pass those options to weston for RDP + to be functional: + --rdp-tls-cert=/path/to/server.crt + --rdp-tls-key=/path/to/server.key + + By default, Buildroot installs such files in + /etc/freerdp/server/ so you may want to change them in a + post-build script or a rootfs overlay. + +comment "RDP compositor needs a toolchain w/ wchar, C++" + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP + +config BR2_PACKAGE_WESTON_X11 + bool "X11 compositor" + depends on BR2_PACKAGE_XORG7 + select BR2_PACKAGE_LIBXCB + select BR2_PACKAGE_XLIB_LIBX11 + +comment "X11 compositor needs X.org enabled" + depends on !BR2_PACKAGE_XORG7 + +config BR2_PACKAGE_WESTON_XWAYLAND + bool "XWayland support" + depends on BR2_PACKAGE_XORG7 + depends on BR2_PACKAGE_LIBEPOXY + select BR2_PACKAGE_CAIRO + select BR2_PACKAGE_LIBXCB + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXCURSOR + +comment "XWayland support needs libepoxy and X.org enabled" + depends on !BR2_PACKAGE_XORG7 || !BR2_PACKAGE_LIBEPOXY + +config BR2_PACKAGE_WESTON_DEMO_CLIENTS + bool "demo clients" + depends on BR2_USE_MMU # pango + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pango + depends on BR2_INSTALL_LIBSTDCPP # pango + depends on BR2_TOOLCHAIN_HAS_THREADS # pango + depends on BR2_USE_WCHAR # pango + depends on BR2_PACKAGE_HAS_LIBGLES + depends on BR2_PACKAGE_HAS_LIBEGL_WAYLAND + select BR2_PACKAGE_PANGO + help + This enables the installation of Weston's demo clients. + +comment "demo clients needs an OpenGL ES provider, an OpenEGL-capable Wayland backend and a toolchain w/ wchar, threads, C++" + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_USE_WCHAR || !BR2_PACKAGE_HAS_LIBGLES || \ + !BR2_PACKAGE_HAS_LIBEGL_WAYLAND + +endif diff --git a/package/weston/weston.hash b/package/weston/weston.hash new file mode 100644 index 00000000..5a6b3868 --- /dev/null +++ b/package/weston/weston.hash @@ -0,0 +1,6 @@ +# From https://lists.freedesktop.org/archives/wayland-devel/2020-September/041595.html +md5 b406da0fe9139fd39653238fde22a6cf weston-9.0.0.tar.xz +sha1 90b9540a0bd6d6f7a465817f1c696d4d393183c9 weston-9.0.0.tar.xz +sha256 5cf5d6ce192e0eb15c1fc861a436bf21b5bb3b91dbdabbdebe83e1f83aa098fe weston-9.0.0.tar.xz +sha512 ccc263f8279b7b23e5c593b4a8a023de2c3dc178b1b8d6593599171770bcfe97608de9fcb77aa1cab39255451d289d323e51c317dae190c7641282e085b84f90 weston-9.0.0.tar.xz +sha256 fdb65868f65d0fbdb05c2d3b779e10ce9969fa0c4b9262ba4f260e87086ab860 COPYING diff --git a/package/weston/weston.mk b/package/weston/weston.mk new file mode 100644 index 00000000..8afe4bba --- /dev/null +++ b/package/weston/weston.mk @@ -0,0 +1,143 @@ +################################################################################ +# +# weston +# +################################################################################ + +WESTON_VERSION = 9.0.0 +WESTON_SITE = https://wayland.freedesktop.org/releases +WESTON_SOURCE = weston-$(WESTON_VERSION).tar.xz +WESTON_LICENSE = MIT +WESTON_LICENSE_FILES = COPYING +WESTON_CPE_ID_VENDOR = wayland + +WESTON_DEPENDENCIES = host-pkgconf wayland wayland-protocols \ + libxkbcommon pixman libpng jpeg udev cairo libinput libdrm + +WESTON_CONF_OPTS = \ + -Dbackend-headless=false \ + -Dcolor-management-colord=false \ + -Dremoting=false + +# Uses VIDIOC_EXPBUF, only available from 3.8+ +ifeq ($(BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8),y) +WESTON_CONF_OPTS += -Dsimple-clients=dmabuf-v4l +else +WESTON_CONF_OPTS += -Dsimple-clients= +endif + +ifeq ($(BR2_PACKAGE_DBUS)$(BR2_PACKAGE_SYSTEMD),yy) +WESTON_CONF_OPTS += -Dlauncher-logind=true +WESTON_DEPENDENCIES += dbus systemd +else +WESTON_CONF_OPTS += -Dlauncher-logind=false +endif + +ifeq ($(BR2_PACKAGE_WEBP),y) +WESTON_CONF_OPTS += -Dimage-webp=true +WESTON_DEPENDENCIES += webp +else +WESTON_CONF_OPTS += -Dimage-webp=false +endif + +# weston-launch must be u+s root in order to work properly +ifeq ($(BR2_PACKAGE_LINUX_PAM),y) +define WESTON_PERMISSIONS + /usr/bin/weston-launch f 4755 0 0 - - - - - +endef +define WESTON_USERS + - - weston-launch -1 - - - - Weston launcher group +endef +WESTON_CONF_OPTS += -Dweston-launch=true +WESTON_DEPENDENCIES += linux-pam +else +WESTON_CONF_OPTS += -Dweston-launch=false +endif + +ifeq ($(BR2_PACKAGE_HAS_LIBEGL_WAYLAND)$(BR2_PACKAGE_HAS_LIBGLES),yy) +WESTON_CONF_OPTS += -Drenderer-gl=true +WESTON_DEPENDENCIES += libegl libgles +ifeq ($(BR2_PACKAGE_PIPEWIRE)$(BR2_PACKAGE_WESTON_DRM),yy) +WESTON_CONF_OPTS += -Dpipewire=true +WESTON_DEPENDENCIES += pipewire +else +WESTON_CONF_OPTS += -Dpipewire=false +endif +else +WESTON_CONF_OPTS += \ + -Drenderer-gl=false \ + -Dpipewire=false +endif + +ifeq ($(BR2_PACKAGE_WESTON_RDP),y) +WESTON_DEPENDENCIES += freerdp +WESTON_CONF_OPTS += -Dbackend-rdp=true +else +WESTON_CONF_OPTS += -Dbackend-rdp=false +endif + +ifeq ($(BR2_PACKAGE_WESTON_FBDEV),y) +WESTON_CONF_OPTS += -Dbackend-fbdev=true +else +WESTON_CONF_OPTS += -Dbackend-fbdev=false +endif + +ifeq ($(BR2_PACKAGE_WESTON_DRM),y) +WESTON_CONF_OPTS += -Dbackend-drm=true +else +WESTON_CONF_OPTS += -Dbackend-drm=false +endif + +ifeq ($(BR2_PACKAGE_WESTON_X11),y) +WESTON_CONF_OPTS += -Dbackend-x11=true +WESTON_DEPENDENCIES += libxcb xlib_libX11 +else +WESTON_CONF_OPTS += -Dbackend-x11=false +endif + +# We're guaranteed to have at least one backend +WESTON_CONF_OPTS += -Dbackend-default=$(call qstrip,$(BR2_PACKAGE_WESTON_DEFAULT_COMPOSITOR)) + +ifeq ($(BR2_PACKAGE_WESTON_XWAYLAND),y) +WESTON_CONF_OPTS += -Dxwayland=true +WESTON_DEPENDENCIES += cairo libepoxy libxcb xlib_libX11 xlib_libXcursor +else +WESTON_CONF_OPTS += -Dxwayland=false +endif + +ifeq ($(BR2_PACKAGE_LIBVA),y) +WESTON_CONF_OPTS += -Dbackend-drm-screencast-vaapi=true +WESTON_DEPENDENCIES += libva +else +WESTON_CONF_OPTS += -Dbackend-drm-screencast-vaapi=false +endif + +ifeq ($(BR2_PACKAGE_LCMS2),y) +WESTON_CONF_OPTS += -Dcolor-management-lcms=true +WESTON_DEPENDENCIES += lcms2 +else +WESTON_CONF_OPTS += -Dcolor-management-lcms=false +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD),y) +WESTON_CONF_OPTS += -Dsystemd=true +WESTON_DEPENDENCIES += systemd +else +WESTON_CONF_OPTS += -Dsystemd=false +endif + +ifeq ($(BR2_PACKAGE_LIBXML2),y) +WESTON_CONF_OPTS += -Dtest-junit-xml=true +WESTON_DEPENDENCIES += libxml2 +else +WESTON_CONF_OPTS += -Dtest-junit-xml=false +endif + +ifeq ($(BR2_PACKAGE_WESTON_DEMO_CLIENTS),y) +WESTON_CONF_OPTS += -Ddemo-clients=true +WESTON_DEPENDENCIES += pango +else +WESTON_CONF_OPTS += -Ddemo-clients=false +endif + +$(eval $(meson-package)) diff --git a/package/wf111/Config.in b/package/wf111/Config.in new file mode 100644 index 00000000..8dd20a7c --- /dev/null +++ b/package/wf111/Config.in @@ -0,0 +1,25 @@ +config BR2_PACKAGE_WF111 + bool "wf111" + depends on BR2_LINUX_KERNEL + depends on BR2_ARM_CPU_ARMV5 || BR2_ARM_CPU_ARMV7A || BR2_i386 + # Binary tools are distributed alongside the driver, and are + # dynamically linked against the glibc. + depends on BR2_TOOLCHAIN_USES_GLIBC + help + Silicon Labs WF111 WiFi driver and utilities. + + Warning: CONFIG_WIRELESS_EXT and CONFIG_WEXT_PRIV must be + selected in the Linux kernel configuration. These are blind + options (i.e. not selectable directly) so they cannot be + enabled by a change in linux/linux.mk. There are two choices + to enable these options: + - By making them non blind, with a "WF111 support" + configuration entry that selects them, for example. + - By enabling another random WiFi driver that select them. + + https://www.silabs.com/wireless/wi-fi/bluegiga-legacy-modules/device.wf111 + +comment "wf111 needs a glibc toolchain" + depends on BR2_LINUX_KERNEL + depends on BR2_ARM_CPU_ARMV5 || BR2_ARM_CPU_ARMV7A || BR2_i386 + depends on !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/wf111/wf111.hash b/package/wf111/wf111.hash new file mode 100644 index 00000000..e3a5c484 --- /dev/null +++ b/package/wf111/wf111.hash @@ -0,0 +1,4 @@ +# Locally calculated +sha256 33de265d28702ce32bb292f29a43e9e946382a1e31f1e4feae0f4753cf18b4f4 wf111-linux-driver_5.2.2-r4_armv7-a.tar.gz +sha256 fbe86a30e4025b9f510feb4cb8f846aca82f8f3e8f6c8a28a74baf45c87f6e96 wf111-linux-driver_5.2.2-r4_armv5te.tar.gz +sha256 37983d73f60bab9768eb02a89695448f27cd1964e23cf462e76657344a9c67ac wf111-linux-driver-5-2-2-r3-x86.tar.gz diff --git a/package/wf111/wf111.mk b/package/wf111/wf111.mk new file mode 100644 index 00000000..fd9cb196 --- /dev/null +++ b/package/wf111/wf111.mk @@ -0,0 +1,33 @@ +################################################################################ +# +# wf111 +# +################################################################################ + +ifeq ($(BR2_ARM_CPU_ARMV7A)$(BR2_ARM_CPU_ARMV5),y) +WF111_VERSION = 5.2.2-r4 +else +WF111_VERSION = 5-2-2-r3 +endif + +WF111_SITE = https://www.silabs.com/documents/login/software +WF111_DEPENDENCIES = linux + +ifeq ($(BR2_ARM_CPU_ARMV7A),y) +WF111_SOURCE = wf111-linux-driver_$(WF111_VERSION)_armv7-a.tar.gz +else ifeq ($(BR2_ARM_CPU_ARMV5),y) +WF111_SOURCE = wf111-linux-driver_$(WF111_VERSION)_armv5te.tar.gz +else ifeq ($(BR2_i386),y) +WF111_SOURCE = wf111-linux-driver-$(WF111_VERSION)-x86.tar.gz +endif + +# Due to the stupidity of the package Makefile, we can't invoke +# separately the build step and the install step and get a correct +# behavior. So we do everything in the install step. +define WF111_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) PWD=$(@D) \ + $(LINUX_MAKE_FLAGS) KDIR=$(LINUX_DIR) \ + OUTPUT=$(TARGET_DIR) install_static +endef + +$(eval $(generic-package)) diff --git a/package/wget/Config.in b/package/wget/Config.in new file mode 100644 index 00000000..acb20f8f --- /dev/null +++ b/package/wget/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_WGET + bool "wget" + # fork() + depends on BR2_USE_MMU + depends on BR2_USE_WCHAR + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + help + Network utility to retrieve files from http, https and ftp. + + http://www.gnu.org/software/wget/ + +comment "wget needs a toolchain w/ wchar" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS diff --git a/package/wget/wget.hash b/package/wget/wget.hash new file mode 100644 index 00000000..956e1127 --- /dev/null +++ b/package/wget/wget.hash @@ -0,0 +1,6 @@ +# Locally calculated after checking pgp signature +# https://ftp.gnu.org/gnu/wget/wget-1.20.3.tar.lz.sig +# with key 1CB27DBC98614B2D5841646D08302DB6A2670428 +sha256 69607ce8216c2d1126b7a872db594b3f21e511e660e07ca1f81be96650932abb wget-1.20.3.tar.lz +# Locally calculated +sha256 e79e9c8a0c85d735ff98185918ec94ed7d175efc377012787aebcf3b80f0d90b COPYING diff --git a/package/wget/wget.mk b/package/wget/wget.mk new file mode 100644 index 00000000..65c132e4 --- /dev/null +++ b/package/wget/wget.mk @@ -0,0 +1,57 @@ +################################################################################ +# +# wget +# +################################################################################ + +WGET_VERSION = 1.20.3 +WGET_SOURCE = wget-$(WGET_VERSION).tar.lz +WGET_SITE = $(BR2_GNU_MIRROR)/wget +WGET_DEPENDENCIES = host-pkgconf +WGET_LICENSE = GPL-3.0+ +WGET_LICENSE_FILES = COPYING +WGET_CPE_ID_VENDOR = gnu + +ifeq ($(BR2_PACKAGE_GNUTLS),y) +WGET_CONF_OPTS += --with-ssl=gnutls +WGET_DEPENDENCIES += gnutls +else ifeq ($(BR2_PACKAGE_OPENSSL),y) +WGET_CONF_OPTS += --with-ssl=openssl +WGET_DEPENDENCIES += openssl +else +WGET_CONF_OPTS += --without-ssl +endif + +ifeq ($(BR2_PACKAGE_LIBICONV),y) +WGET_DEPENDENCIES += libiconv +endif + +ifeq ($(BR2_PACKAGE_LIBIDN2),y) +WGET_CONF_OPTS += --with-libidn +WGET_DEPENDENCIES += libidn2 +else +WGET_CONF_OPTS += --without-libidn +endif + +ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBUUID),y) +WGET_DEPENDENCIES += util-linux +endif + +ifeq ($(BR2_PACKAGE_ZLIB),y) +WGET_CONF_OPTS += --with-zlib +WGET_DEPENDENCIES += zlib +else +WGET_CONF_OPTS += --without-zlib +endif + +ifeq ($(BR2_PACKAGE_PCRE2),y) +WGET_CONF_OPTS += --disable-pcre --enable-pcre2 +WGET_DEPENDENCIES += pcre2 +else ifeq ($(BR2_PACKAGE_PCRE),y) +WGET_CONF_OPTS += --enable-pcre --disable-pcre2 +WGET_DEPENDENCIES += pcre +else +WGET_CONF_OPTS += --disable-pcre --disable-pcre2 +endif + +$(eval $(autotools-package)) diff --git a/package/whetstone/Config.in b/package/whetstone/Config.in new file mode 100644 index 00000000..7a68160d --- /dev/null +++ b/package/whetstone/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_WHETSTONE + bool "whetstone" + help + C Converted Whetstone Double Precision Benchmark + + http://www.netlib.org/benchmark/ diff --git a/package/whetstone/whetstone.hash b/package/whetstone/whetstone.hash new file mode 100644 index 00000000..db9bbb45 --- /dev/null +++ b/package/whetstone/whetstone.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 333e4ceca042c146f63eec605573d16ae8b07166cbc44a17bec1ea97c6f1efbf whetstone.c diff --git a/package/whetstone/whetstone.mk b/package/whetstone/whetstone.mk new file mode 100644 index 00000000..3b6ec341 --- /dev/null +++ b/package/whetstone/whetstone.mk @@ -0,0 +1,23 @@ +################################################################################ +# +# whetstone +# +################################################################################ + +WHETSTONE_VERSION = 1.2 +WHETSTONE_SOURCE = whetstone.c +WHETSTONE_SITE = http://www.netlib.org/benchmark + +define WHETSTONE_EXTRACT_CMDS + cp $(WHETSTONE_DL_DIR)/$($(PKG)_SOURCE) $(@D)/ +endef + +define WHETSTONE_BUILD_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) LDLIBS="-lm" -C $(@D) whetstone +endef + +define WHETSTONE_INSTALL_TARGET_CMDS + $(INSTALL) -D $(@D)/whetstone $(TARGET_DIR)/usr/bin/whetstone +endef + +$(eval $(generic-package)) diff --git a/package/which/Config.in b/package/which/Config.in new file mode 100644 index 00000000..0dc31b22 --- /dev/null +++ b/package/which/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_WHICH + bool "which" + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + help + The standard 'which' utility. + + http://carlowood.github.io/which/index.html diff --git a/package/which/which.hash b/package/which/which.hash new file mode 100644 index 00000000..edea4e5e --- /dev/null +++ b/package/which/which.hash @@ -0,0 +1,4 @@ +# Locally calculated after checking pgp signature +sha256 f4a245b94124b377d8b49646bf421f9155d36aa7614b6ebf83705d3ffc76eaad which-2.21.tar.gz +# Locally computed +sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING diff --git a/package/which/which.mk b/package/which/which.mk new file mode 100644 index 00000000..c96e8937 --- /dev/null +++ b/package/which/which.mk @@ -0,0 +1,12 @@ +################################################################################ +# +# which +# +################################################################################ + +WHICH_VERSION = 2.21 +WHICH_SITE = $(BR2_GNU_MIRROR)/which +WHICH_LICENSE = GPL-3.0+ +WHICH_LICENSE_FILES = COPYING + +$(eval $(autotools-package)) diff --git a/package/whois/Config.in b/package/whois/Config.in new file mode 100644 index 00000000..d2a03028 --- /dev/null +++ b/package/whois/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_WHOIS + bool "whois" + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + help + Improved whois client. + + https://github.com/rfc1036/whois diff --git a/package/whois/whois.hash b/package/whois/whois.hash new file mode 100644 index 00000000..f42db356 --- /dev/null +++ b/package/whois/whois.hash @@ -0,0 +1,5 @@ +# From http://snapshot.debian.org/archive/debian/20201003T204015Z/pool/main/w/whois/whois_5.5.7.dsc +sha256 3efa700dbf38d127c31b21af3176cd6e5a69f96a056be60ac1dcd13df7717393 whois_5.5.7.tar.xz + +# Hash for license file: +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/whois/whois.mk b/package/whois/whois.mk new file mode 100644 index 00000000..7d684922 --- /dev/null +++ b/package/whois/whois.mk @@ -0,0 +1,45 @@ +################################################################################ +# +# whois +# +################################################################################ + +WHOIS_VERSION = 5.5.7 +WHOIS_SITE = http://snapshot.debian.org/archive/debian/20201003T204015Z/pool/main/w/whois +WHOIS_SOURCE = whois_$(WHOIS_VERSION).tar.xz +WHOIS_DEPENDENCIES = \ + host-pkgconf \ + $(if $(BR2_PACKAGE_LIBIDN2),libidn2) \ + $(TARGET_NLS_DEPENDENCIES) +WHOIS_MAKE_ENV = $(TARGET_MAKE_ENV) +WHOIS_MAKE_OPTS = CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" \ + LIBS="$(WHOIS_EXTRA_LIBS)" +WHOIS_LICENSE = GPL-2.0+ +WHOIS_LICENSE_FILES = COPYING +WHOIS_EXTRA_LIBS = $(TARGET_NLS_LIBS) + +ifeq ($(BR2_PACKAGE_LIBICONV),y) +WHOIS_DEPENDENCIES += libiconv +WHOIS_EXTRA_LIBS += -liconv +WHOIS_MAKE_ENV += HAVE_ICONV=1 +endif + +ifeq ($(BR2_SYSTEM_ENABLE_NLS),y) +WHOIS_BUILD_TARGETS = +WHOIS_INSTALL_TARGETS = install +else +WHOIS_BUILD_TARGETS = Makefile.depend whois mkpasswd +WHOIS_INSTALL_TARGETS = install-whois install-mkpasswd +endif + +define WHOIS_BUILD_CMDS + $(WHOIS_MAKE_ENV) $(MAKE) $(WHOIS_MAKE_OPTS) \ + $(WHOIS_BUILD_TARGETS) -C $(@D) +endef + +define WHOIS_INSTALL_TARGET_CMDS + $(WHOIS_MAKE_ENV) $(MAKE) $(WHOIS_MAKE_OPTS) \ + BASEDIR="$(TARGET_DIR)" $(WHOIS_INSTALL_TARGETS) -C $(@D) +endef + +$(eval $(generic-package)) diff --git a/package/wilc1000-firmware/Config.in b/package/wilc1000-firmware/Config.in new file mode 100644 index 00000000..df8a7a6b --- /dev/null +++ b/package/wilc1000-firmware/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_WILC1000_FIRMWARE + bool "wilc1000-firmware" + help + Firmware for Atmel Wilc1000 wireless device + + https://github.com/linux4sc/wireless-firmware.git diff --git a/package/wilc1000-firmware/wilc1000-firmware.hash b/package/wilc1000-firmware/wilc1000-firmware.hash new file mode 100644 index 00000000..5344efe5 --- /dev/null +++ b/package/wilc1000-firmware/wilc1000-firmware.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 a2e7a327dd545ba2051946f7613005cbde88fdd952afb8eecdd1dacda7e767d2 v14.1_Firmware.zip diff --git a/package/wilc1000-firmware/wilc1000-firmware.mk b/package/wilc1000-firmware/wilc1000-firmware.mk new file mode 100644 index 00000000..6f504d67 --- /dev/null +++ b/package/wilc1000-firmware/wilc1000-firmware.mk @@ -0,0 +1,24 @@ +################################################################################ +# +# wilc1000-firmware +# +################################################################################ + +WILC1000_FIRMWARE_VERSION = 14.1 +WILC1000_FIRMWARE_SITE = https://github.com/linux4sc/wireless-firmware/archive +WILC1000_FIRMWARE_SOURCE = v$(WILC1000_FIRMWARE_VERSION)_Firmware.zip + +WILC1000_FIRMWARE_LICENSE = PROPRIETARY + +define WILC1000_FIRMWARE_EXTRACT_CMDS + $(UNZIP) -d $(BUILD_DIR) $(WILC1000_FIRMWARE_DL_DIR)/$(WILC1000_FIRMWARE_SOURCE) + mv $(BUILD_DIR)/wireless-firmware-$(WILC1000_FIRMWARE_VERSION)_Firmware/* $(@D) + rmdir $(BUILD_DIR)/wireless-firmware-$(WILC1000_FIRMWARE_VERSION)_Firmware +endef + +define WILC1000_FIRMWARE_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0644 $(@D)/wilc1003_firmware.bin \ + $(TARGET_DIR)/lib/firmware/atmel/wilc1003_firmware.bin +endef + +$(eval $(generic-package)) diff --git a/package/wilink-bt-firmware/Config.in b/package/wilink-bt-firmware/Config.in new file mode 100644 index 00000000..26683043 --- /dev/null +++ b/package/wilink-bt-firmware/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_WILINK_BT_FIRMWARE + bool "wilink-bt-firmware" + help + Texas Instruments Wilink7 and Wilink8 (wl12xx/wl18xx) UART + attached Bluetooth firmware. + + https://github.com/TI-ECS/bt-firmware diff --git a/package/wilink-bt-firmware/wilink-bt-firmware.hash b/package/wilink-bt-firmware/wilink-bt-firmware.hash new file mode 100644 index 00000000..b0aa6b91 --- /dev/null +++ b/package/wilink-bt-firmware/wilink-bt-firmware.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 209e1a46a945e7d4d031e22fb7bd1e3fc96fa3b99d069051ce257c5e2e0843f4 wilink-bt-firmware-43fca73c6a98c63fcb98f82af5bf83761778e005-br1.tar.gz +sha256 21fd99ce784dc33b39ec0b4a383a9a9b8dafea261d73ad4548683c4eecd87f37 LICENSE diff --git a/package/wilink-bt-firmware/wilink-bt-firmware.mk b/package/wilink-bt-firmware/wilink-bt-firmware.mk new file mode 100644 index 00000000..722c4655 --- /dev/null +++ b/package/wilink-bt-firmware/wilink-bt-firmware.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# wilink-bt-firmware +# +################################################################################ + +WILINK_BT_FIRMWARE_VERSION = 43fca73c6a98c63fcb98f82af5bf83761778e005 +WILINK_BT_FIRMWARE_SITE = git://git.ti.com/ti-bt/service-packs.git +WILINK_BT_FIRMWARE_SITE_METHOD = git +WILINK_BT_FIRMWARE_LICENSE = PROPRIETARY +WILINK_BT_FIRMWARE_LICENSE_FILES = LICENSE + +define WILINK_BT_FIRMWARE_INSTALL_TARGET_CMDS + mkdir -p $(TARGET_DIR)/lib/firmware/ti-connectivity + cp $(@D)/initscripts/TIInit_*.bts $(TARGET_DIR)/lib/firmware/ti-connectivity +endef + +$(eval $(generic-package)) diff --git a/package/wine/Config.in b/package/wine/Config.in new file mode 100644 index 00000000..9de8cf0f --- /dev/null +++ b/package/wine/Config.in @@ -0,0 +1,28 @@ +config BR2_PACKAGE_WINE_ARCH_SUPPORTS + bool + default y + # Wine only builds on certain architectures + depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" || \ + BR2_HOSTARCH = "powerpc" || BR2_HOSTARCH = "arm" || \ + BR2_HOSTARCH = "aarch64" + # Wine has much CPU specific code and mostly makes sense on x86 + depends on BR2_i386 + +config BR2_PACKAGE_WINE + bool "wine" + depends on BR2_PACKAGE_WINE_ARCH_SUPPORTS + # Wine unconditionally builds shared libraries + depends on !BR2_STATIC_LIBS + help + Wine is a compatibility layer capable of running Windows + applications on Linux. Instead of simulating internal + Windows logic like a virtual machine or emulator, Wine + translates Windows API calls into POSIX calls on-the-fly, + eliminating the performance and memory penalties of other + methods. + + http://www.winehq.org + +comment "wine needs a toolchain w/ dynamic library" + depends on BR2_PACKAGE_WINE_ARCH_SUPPORTS + depends on BR2_STATIC_LIBS diff --git a/package/wine/wine.hash b/package/wine/wine.hash new file mode 100644 index 00000000..08abccb4 --- /dev/null +++ b/package/wine/wine.hash @@ -0,0 +1,5 @@ +# Locally calculated after checking pgp signature +sha256 87f17254c6794ec6eeb7020b164c859983c9df0dacdd66d6449ff000498c842e wine-5.12.tar.xz +# Locally calculated +sha256 e237fa56668030e928551ddd60f05df5fe957f75eab874bbd017e085ed722e7c COPYING.LIB +sha256 f3ca909e68d38c972e8ded5248b4745958dbb26f2e581ad73cfbedb6b0408e58 LICENSE diff --git a/package/wine/wine.mk b/package/wine/wine.mk new file mode 100644 index 00000000..80c9d20d --- /dev/null +++ b/package/wine/wine.mk @@ -0,0 +1,417 @@ +################################################################################ +# +# wine +# +################################################################################ + +WINE_VERSION = 5.12 +WINE_SOURCE = wine-$(WINE_VERSION).tar.xz +WINE_SITE = https://dl.winehq.org/wine/source/5.x +WINE_LICENSE = LGPL-2.1+ +WINE_LICENSE_FILES = COPYING.LIB LICENSE +WINE_CPE_ID_VENDOR = winehq +WINE_DEPENDENCIES = host-bison host-flex host-wine +HOST_WINE_DEPENDENCIES = host-bison host-flex + +# Wine needs its own directory structure and tools for cross compiling +WINE_CONF_OPTS = \ + --with-wine-tools=../host-wine-$(WINE_VERSION) \ + --disable-tests \ + --disable-win64 \ + --without-capi \ + --without-coreaudio \ + --without-faudio \ + --without-gettext \ + --without-gettextpo \ + --without-gphoto \ + --without-gsm \ + --without-hal \ + --without-opencl \ + --without-oss \ + --without-vkd3d \ + --without-vulkan + +# Wine uses a wrapper around gcc, and uses the value of --host to +# construct the filename of the gcc to call. But for external +# toolchains, the GNU_TARGET_NAME tuple that we construct from our +# internal variables may differ from the actual gcc prefix for the +# external toolchains. So, we have to override whatever the gcc +# wrapper believes what the real gcc is named, and force the tuple of +# the external toolchain, not the one we compute in GNU_TARGET_NAME. +ifeq ($(BR2_TOOLCHAIN_EXTERNAL),y) +WINE_CONF_OPTS += TARGETFLAGS="-b $(TOOLCHAIN_EXTERNAL_PREFIX)" +endif + +ifeq ($(BR2_PACKAGE_ALSA_LIB)$(BR2_PACKAGE_ALSA_LIB_SEQ)$(BR2_PACKAGE_ALSA_LIB_RAWMIDI),yyy) +WINE_CONF_OPTS += --with-alsa +WINE_DEPENDENCIES += alsa-lib +else +WINE_CONF_OPTS += --without-alsa +endif + +ifeq ($(BR2_PACKAGE_CUPS),y) +WINE_CONF_OPTS += --with-cups +WINE_DEPENDENCIES += cups +WINE_CONF_ENV += CUPS_CONFIG=$(STAGING_DIR)/usr/bin/cups-config +else +WINE_CONF_OPTS += --without-cups +endif + +ifeq ($(BR2_PACKAGE_DBUS),y) +WINE_CONF_OPTS += --with-dbus +WINE_DEPENDENCIES += dbus +else +WINE_CONF_OPTS += --without-dbus +endif + +ifeq ($(BR2_PACKAGE_FONTCONFIG),y) +WINE_CONF_OPTS += --with-fontconfig +WINE_DEPENDENCIES += fontconfig +else +WINE_CONF_OPTS += --without-fontconfig +endif + +# To support freetype in wine we also need freetype in host-wine for the cross compiling tools +ifeq ($(BR2_PACKAGE_FREETYPE),y) +WINE_CONF_OPTS += --with-freetype +HOST_WINE_CONF_OPTS += --with-freetype +WINE_DEPENDENCIES += freetype +HOST_WINE_DEPENDENCIES += host-freetype +WINE_CONF_ENV += FREETYPE_CONFIG=$(STAGING_DIR)/usr/bin/freetype-config +else +WINE_CONF_OPTS += --without-freetype +HOST_WINE_CONF_OPTS += --without-freetype +endif + +ifeq ($(BR2_PACKAGE_GNUTLS),y) +WINE_CONF_OPTS += --with-gnutls +WINE_DEPENDENCIES += gnutls +else +WINE_CONF_OPTS += --without-gnutls +endif + +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BASE),y) +WINE_CONF_OPTS += --with-gstreamer +WINE_DEPENDENCIES += gst1-plugins-base +else +WINE_CONF_OPTS += --without-gstreamer +endif + +ifeq ($(BR2_PACKAGE_JPEG),y) +WINE_CONF_OPTS += --with-jpeg +WINE_DEPENDENCIES += jpeg +else +WINE_CONF_OPTS += --without-jpeg +endif + +ifeq ($(BR2_PACKAGE_LCMS2),y) +WINE_CONF_OPTS += --with-cms +WINE_DEPENDENCIES += lcms2 +else +WINE_CONF_OPTS += --without-cms +endif + +ifeq ($(BR2_PACKAGE_HAS_LIBGL),y) +WINE_CONF_OPTS += --with-opengl +WINE_DEPENDENCIES += libgl +else +WINE_CONF_OPTS += --without-opengl +endif + +ifeq ($(BR2_PACKAGE_LIBGLU),y) +WINE_CONF_OPTS += --with-glu +WINE_DEPENDENCIES += libglu +else +WINE_CONF_OPTS += --without-glu +endif + +ifeq ($(BR2_PACKAGE_LIBKRB5),y) +WINE_CONF_OPTS += --with-krb5 +WINE_DEPENDENCIES += libkrb5 +else +WINE_CONF_OPTS += --without-krb5 +endif + +ifeq ($(BR2_PACKAGE_LIBPCAP),y) +WINE_CONF_OPTS += --with-pcap +WINE_DEPENDENCIES += libpcap +else +WINE_CONF_OPTS += --without-pcap +endif + +ifeq ($(BR2_PACKAGE_LIBPNG),y) +WINE_CONF_OPTS += --with-png +WINE_DEPENDENCIES += libpng +else +WINE_CONF_OPTS += --without-png +endif + +ifeq ($(BR2_PACKAGE_LIBUSB),y) +WINE_CONF_OPTS += --with-usb +WINE_DEPENDENCIES += libusb +else +WINE_CONF_OPTS += --without-usb +endif + +ifeq ($(BR2_PACKAGE_LIBV4L),y) +WINE_CONF_OPTS += --with-v4l2 +WINE_DEPENDENCIES += libv4l +else +WINE_CONF_OPTS += --without-v4l2 +endif + +ifeq ($(BR2_PACKAGE_LIBXML2),y) +WINE_CONF_OPTS += --with-xml +WINE_DEPENDENCIES += libxml2 +WINE_CONF_ENV += XML2_CONFIG=$(STAGING_DIR)/usr/bin/xml2-config +else +WINE_CONF_OPTS += --without-xml +endif + +ifeq ($(BR2_PACKAGE_LIBXSLT),y) +WINE_CONF_OPTS += --with-xslt +WINE_DEPENDENCIES += libxslt +WINE_CONF_ENV += XSLT_CONFIG=$(STAGING_DIR)/usr/bin/xslt-config +else +WINE_CONF_OPTS += --without-xslt +endif + +ifeq ($(BR2_PACKAGE_MPG123),y) +WINE_CONF_OPTS += --with-mpg123 +WINE_DEPENDENCIES += mpg123 +else +WINE_CONF_OPTS += --without-mpg123 +endif + +ifeq ($(BR2_PACKAGE_NCURSES),y) +WINE_CONF_OPTS += --with-curses +WINE_DEPENDENCIES += ncurses +else +WINE_CONF_OPTS += --without-curses +endif + +ifeq ($(BR2_PACKAGE_OPENAL),y) +WINE_CONF_OPTS += --with-openal +WINE_DEPENDENCIES += openal +else +WINE_CONF_OPTS += --without-openal +endif + +ifeq ($(BR2_PACKAGE_OPENLDAP),y) +WINE_CONF_OPTS += --with-ldap +WINE_DEPENDENCIES += openldap +else +WINE_CONF_OPTS += --without-ldap +endif + +ifeq ($(BR2_PACKAGE_MESA3D_OSMESA_CLASSIC),y) +WINE_CONF_OPTS += --with-osmesa +WINE_DEPENDENCIES += mesa3d +else +WINE_CONF_OPTS += --without-osmesa +endif + +ifeq ($(BR2_PACKAGE_PULSEAUDIO),y) +WINE_CONF_OPTS += --with-pulse +WINE_DEPENDENCIES += pulseaudio +else +WINE_CONF_OPTS += --without-pulse +endif + +ifeq ($(BR2_PACKAGE_SAMBA4),y) +WINE_CONF_OPTS += --with-netapi +WINE_DEPENDENCIES += samba4 +else +WINE_CONF_OPTS += --without-netapi +endif + +ifeq ($(BR2_PACKAGE_SANE_BACKENDS),y) +WINE_CONF_OPTS += --with-sane +WINE_DEPENDENCIES += sane-backends +WINE_CONF_ENV += SANE_CONFIG=$(STAGING_DIR)/usr/bin/sane-config +else +WINE_CONF_OPTS += --without-sane +endif + +ifeq ($(BR2_PACKAGE_SDL2),y) +WINE_CONF_OPTS += --with-sdl +WINE_DEPENDENCIES += sdl2 +else +WINE_CONF_OPTS += --without-sdl +endif + +ifeq ($(BR2_PACKAGE_TIFF),y) +WINE_CONF_OPTS += --with-tiff +WINE_DEPENDENCIES += tiff +else +WINE_CONF_OPTS += --without-tiff +endif + +ifeq ($(BR2_PACKAGE_HAS_UDEV),y) +WINE_CONF_OPTS += --with-udev +WINE_DEPENDENCIES += udev +else +WINE_CONF_OPTS += --without-udev +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBX11),y) +WINE_CONF_OPTS += --with-x +WINE_DEPENDENCIES += xlib_libX11 +else +WINE_CONF_OPTS += --without-x +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXCOMPOSITE),y) +WINE_CONF_OPTS += --with-xcomposite +WINE_DEPENDENCIES += xlib_libXcomposite +else +WINE_CONF_OPTS += --without-xcomposite +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXCURSOR),y) +WINE_CONF_OPTS += --with-xcursor +WINE_DEPENDENCIES += xlib_libXcursor +else +WINE_CONF_OPTS += --without-xcursor +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXEXT),y) +WINE_CONF_OPTS += --with-xshape --with-xshm +WINE_DEPENDENCIES += xlib_libXext +else +WINE_CONF_OPTS += --without-xshape --without-xshm +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXI),y) +WINE_CONF_OPTS += --with-xinput --with-xinput2 +WINE_DEPENDENCIES += xlib_libXi +else +WINE_CONF_OPTS += --without-xinput --without-xinput2 +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXINERAMA),y) +WINE_CONF_OPTS += --with-xinerama +WINE_DEPENDENCIES += xlib_libXinerama +else +WINE_CONF_OPTS += --without-xinerama +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXRANDR),y) +WINE_CONF_OPTS += --with-xrandr +WINE_DEPENDENCIES += xlib_libXrandr +else +WINE_CONF_OPTS += --without-xrandr +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXRENDER),y) +WINE_CONF_OPTS += --with-xrender +WINE_DEPENDENCIES += xlib_libXrender +else +WINE_CONF_OPTS += --without-xrender +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXXF86VM),y) +WINE_CONF_OPTS += --with-xxf86vm +WINE_DEPENDENCIES += xlib_libXxf86vm +else +WINE_CONF_OPTS += --without-xxf86vm +endif + +ifeq ($(BR2_PACKAGE_ZLIB),y) +WINE_CONF_OPTS += --with-zlib +WINE_DEPENDENCIES += zlib +else +WINE_CONF_OPTS += --without-zlib +endif + +# host-gettext is essential for .po file support in host-wine wrc +ifeq ($(BR2_SYSTEM_ENABLE_NLS),y) +HOST_WINE_DEPENDENCIES += host-gettext +HOST_WINE_CONF_OPTS += --with-gettext --with-gettextpo +else +HOST_WINE_CONF_OPTS += --without-gettext --without-gettextpo +endif + +# Wine needs to enable 64-bit build tools on 64-bit host +ifeq ($(HOSTARCH),x86_64) +HOST_WINE_CONF_OPTS += --enable-win64 +endif + +# Wine only needs the host tools to be built, so cut-down the +# build time by building just what we need. +define HOST_WINE_BUILD_CMDS + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) \ + tools \ + tools/sfnt2fon \ + tools/widl \ + tools/winebuild \ + tools/winegcc \ + tools/wmc \ + tools/wrc +endef + +# Wine only needs its host variant to be built, not that it is +# installed, as it uses the tools from the build directory. But +# we have no way in Buildroot to state that a host package should +# not be installed. So, just provide an noop install command. +define HOST_WINE_INSTALL_CMDS + : +endef + +# We are focused on the cross compiling tools, disable everything else +HOST_WINE_CONF_OPTS += \ + --disable-tests \ + --disable-win16 \ + --without-alsa \ + --without-capi \ + --without-cms \ + --without-coreaudio \ + --without-faudio \ + --without-cups \ + --without-curses \ + --without-dbus \ + --without-fontconfig \ + --without-gphoto \ + --without-glu \ + --without-gnutls \ + --without-gsm \ + --without-gssapi \ + --without-gstreamer \ + --without-hal \ + --without-jpeg \ + --without-krb5 \ + --without-ldap \ + --without-mpg123 \ + --without-netapi \ + --without-openal \ + --without-opencl \ + --without-opengl \ + --without-osmesa \ + --without-oss \ + --without-pcap \ + --without-pulse \ + --without-png \ + --without-sane \ + --without-sdl \ + --without-tiff \ + --without-usb \ + --without-v4l2 \ + --without-vkd3d \ + --without-vulkan \ + --without-x \ + --without-xcomposite \ + --without-xcursor \ + --without-xinerama \ + --without-xinput \ + --without-xinput2 \ + --without-xml \ + --without-xrandr \ + --without-xrender \ + --without-xshape \ + --without-xshm \ + --without-xslt \ + --without-xxf86vm \ + --without-zlib + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/wipe/0001-musl.patch b/package/wipe/0001-musl.patch new file mode 100644 index 00000000..35b3af80 --- /dev/null +++ b/package/wipe/0001-musl.patch @@ -0,0 +1,28 @@ +Fix musl build + +In file included from main.c:46:0: +rand.h:31:9: error: unknown type name ‘u_int32_t’ + typedef u_int32_t u_rand_t; + ^ +: recipe for target 'main.o' failed + +Patch sent upstream: https://sourceforge.net/p/wipe/patches/4/ + +Signed-off-by: Bernd Kuhls + +diff -uNr wipe-2.3.1.org/rand.h wipe-2.3.1/rand.h +--- wipe-2.3.1.org/rand.h 2003-12-03 04:01:02.000000000 +0100 ++++ wipe-2.3.1/rand.h 2016-01-31 21:39:54.000000000 +0100 +@@ -22,10 +22,9 @@ + + #ifdef HAVE_STDINT_H + # include "stdint.h" +-#else +-# ifndef LINUX ++#endif ++#if !defined(u_int32_t) + # define u_int32_t uint32_t +-# endif + #endif + + typedef u_int32_t u_rand_t; diff --git a/package/wipe/Config.in b/package/wipe/Config.in new file mode 100644 index 00000000..0241c137 --- /dev/null +++ b/package/wipe/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_WIPE + bool "wipe" + help + Wipe is a little command for securely erasing files + from magnetic media. It compiles under various unix platforms. + + http://wipe.sourceforge.net diff --git a/package/wipe/wipe.hash b/package/wipe/wipe.hash new file mode 100644 index 00000000..d607efde --- /dev/null +++ b/package/wipe/wipe.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 463916370f9b35bb34419c2c0ae3dc4c0a471db32e8595afa1d14c0337b61aa0 wipe-2.3.1.tar.bz2 +sha256 890cd89006bb57ce95b460e867c7bcc81d30cbc23067a9be4644bdac6882bc14 LICENSE diff --git a/package/wipe/wipe.mk b/package/wipe/wipe.mk new file mode 100644 index 00000000..83a8c875 --- /dev/null +++ b/package/wipe/wipe.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# wipe +# +################################################################################ + +WIPE_VERSION = 2.3.1 +WIPE_SITE = http://downloads.sourceforge.net/project/wipe/wipe/$(WIPE_VERSION) +WIPE_SOURCE = wipe-$(WIPE_VERSION).tar.bz2 +WIPE_LICENSE = GPL-2.0+ +WIPE_LICENSE_FILES = LICENSE + +define WIPE_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/wipe $(TARGET_DIR)/usr/bin/wipe +endef + +$(eval $(autotools-package)) diff --git a/package/wireguard-linux-compat/Config.in b/package/wireguard-linux-compat/Config.in new file mode 100644 index 00000000..5a323a35 --- /dev/null +++ b/package/wireguard-linux-compat/Config.in @@ -0,0 +1,26 @@ +config BR2_PACKAGE_WIREGUARD_LINUX_COMPAT + bool "wireguard linux-compat" + depends on BR2_LINUX_KERNEL + # kernel module requires 3.10+ + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10 + # kernel module in upstream linux since 5.6 + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_6 + help + WireGuard is an extremely simple yet fast and modern VPN + that utilizes state-of-the-art cryptography. It aims to be + faster, simpler, leaner, and more useful than IPSec, while + avoiding the massive headache. It intends to be considerably + more performant than OpenVPN. WireGuard is designed as a + general purpose VPN for running on embedded interfaces and + super computers alike, fit for many different + circumstances. + + Support for WireGuard is included in Linux 5.6+. This + package provides a backport of the kernel support for older + kernels. + + https://www.wireguard.com + +comment "wireguard-linux-compat needs a toolchain w/ headers >= 3.10" + depends on BR2_LINUX_KERNEL + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10 diff --git a/package/wireguard-linux-compat/wireguard-linux-compat.hash b/package/wireguard-linux-compat/wireguard-linux-compat.hash new file mode 100644 index 00000000..f4f94cfd --- /dev/null +++ b/package/wireguard-linux-compat/wireguard-linux-compat.hash @@ -0,0 +1,4 @@ +# https://lists.zx2c4.com/pipermail/wireguard/2021-January/006349.html +sha256 dac6e68cd4c3db441499850dfa8a70706384a3295f37fda1b839a50b79faef54 wireguard-linux-compat-1.0.20210124.tar.xz +# Locally calculated +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/wireguard-linux-compat/wireguard-linux-compat.mk b/package/wireguard-linux-compat/wireguard-linux-compat.mk new file mode 100644 index 00000000..2f36ec8b --- /dev/null +++ b/package/wireguard-linux-compat/wireguard-linux-compat.mk @@ -0,0 +1,23 @@ +################################################################################ +# +# wireguard +# +################################################################################ + +WIREGUARD_LINUX_COMPAT_VERSION = 1.0.20210124 +WIREGUARD_LINUX_COMPAT_SITE = https://git.zx2c4.com/wireguard-linux-compat/snapshot +WIREGUARD_LINUX_COMPAT_SOURCE = wireguard-linux-compat-$(WIREGUARD_LINUX_COMPAT_VERSION).tar.xz +WIREGUARD_LINUX_COMPAT_LICENSE = GPL-2.0 +WIREGUARD_LINUX_COMPAT_LICENSE_FILES = COPYING +WIREGUARD_LINUX_COMPAT_MODULE_SUBDIRS = src + +define WIREGUARD_LINUX_COMPAT_LINUX_CONFIG_FIXUPS + $(call KCONFIG_ENABLE_OPT,CONFIG_INET) + $(call KCONFIG_ENABLE_OPT,CONFIG_NET) + $(call KCONFIG_ENABLE_OPT,CONFIG_NET_FOU) + $(call KCONFIG_ENABLE_OPT,CONFIG_CRYPTO) + $(call KCONFIG_ENABLE_OPT,CONFIG_CRYPTO_MANAGER) +endef + +$(eval $(kernel-module)) +$(eval $(generic-package)) diff --git a/package/wireguard-tools/Config.in b/package/wireguard-tools/Config.in new file mode 100644 index 00000000..130f4c48 --- /dev/null +++ b/package/wireguard-tools/Config.in @@ -0,0 +1,21 @@ +config BR2_PACKAGE_WIREGUARD_TOOLS + bool "wireguard tools" + # kernel module requires 3.10+, userspace makes no sense without it + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10 + help + WireGuard is an extremely simple yet fast and modern VPN + that utilizes state-of-the-art cryptography. It aims to be + faster, simpler, leaner, and more useful than IPSec, while + avoiding the massive headache. It intends to be considerably + more performant than OpenVPN. WireGuard is designed as a + general purpose VPN for running on embedded interfaces and + super computers alike, fit for many different + circumstances. + + This package provides the userspace tooling to configure + WireGuard tunnels. + + https://www.wireguard.com + +comment "wireguard-tools needs a toolchain w/ headers >= 3.10" + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10 diff --git a/package/wireguard-tools/wireguard-tools.hash b/package/wireguard-tools/wireguard-tools.hash new file mode 100644 index 00000000..3bff364e --- /dev/null +++ b/package/wireguard-tools/wireguard-tools.hash @@ -0,0 +1,4 @@ +# https://lists.zx2c4.com/pipermail/wireguard/2020-August/005790.html +sha256 51bc85e33a5b3cf353786ae64b0f1216d7a871447f058b6137f793eb0f53b7fd wireguard-tools-1.0.20200827.tar.xz +# Locally calculated +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/wireguard-tools/wireguard-tools.mk b/package/wireguard-tools/wireguard-tools.mk new file mode 100644 index 00000000..d360c812 --- /dev/null +++ b/package/wireguard-tools/wireguard-tools.mk @@ -0,0 +1,36 @@ +################################################################################ +# +# wireguard-tools +# +################################################################################ + +WIREGUARD_TOOLS_VERSION = 1.0.20200827 +WIREGUARD_TOOLS_SITE = https://git.zx2c4.com/wireguard-tools/snapshot +WIREGUARD_TOOLS_SOURCE = wireguard-tools-$(WIREGUARD_TOOLS_VERSION).tar.xz +WIREGUARD_TOOLS_LICENSE = GPL-2.0 +WIREGUARD_TOOLS_LICENSE_FILES = COPYING + +ifeq ($(BR2_INIT_SYSTEMD),y) +WIREGUARD_TOOLS_MAKE_OPTS += WITH_SYSTEMDUNITS=yes +WIREGUARD_TOOLS_DEPENDENCIES += host-pkgconf +else +WIREGUARD_TOOLS_MAKE_OPTS += WITH_SYSTEMDUNITS=no +endif + +ifeq ($(BR2_PACKAGE_BASH),y) +WIREGUARD_TOOLS_MAKE_OPTS += WITH_BASHCOMPLETION=yes WITH_WGQUICK=yes +else +WIREGUARD_TOOLS_MAKE_OPTS += WITH_BASHCOMPLETION=no WITH_WGQUICK=no +endif + +define WIREGUARD_TOOLS_BUILD_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) $(WIREGUARD_TOOLS_MAKE_OPTS) \ + -C $(@D)/src +endef + +define WIREGUARD_TOOLS_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) $(WIREGUARD_TOOLS_MAKE_OPTS) \ + -C $(@D)/src install DESTDIR=$(TARGET_DIR) +endef + +$(eval $(generic-package)) diff --git a/package/wireless-regdb/Config.in b/package/wireless-regdb/Config.in new file mode 100644 index 00000000..17350a41 --- /dev/null +++ b/package/wireless-regdb/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_WIRELESS_REGDB + bool "wireless-regdb" + help + Wireless regulatory database. + + Wireless regulatory database. The database lists the + allowed radio frequencies for each local jurisdiction. + + Since linux-4.15 the kernel supports loading the files + regulatory.db/regulatory.db.p7s directly from the + /lib/firmware directory, for earlier versions the crda helper + application is needed. + + https://wireless.wiki.kernel.org/en/developers/regulatory/wireless-regdb diff --git a/package/wireless-regdb/wireless-regdb.hash b/package/wireless-regdb/wireless-regdb.hash new file mode 100644 index 00000000..d941fc3b --- /dev/null +++ b/package/wireless-regdb/wireless-regdb.hash @@ -0,0 +1,4 @@ +# From https://www.kernel.org/pub/software/network/wireless-regdb/sha256sums.asc +sha256 9e4c02b2a9710df4dbdb327c39612e8cbbae6495987afeddaebab28c1ea3d8fa wireless-regdb-2021.04.21.tar.xz +# Locally computed +sha256 678b0df753c86198fc496d1f1033429bbd57f101472132ee7eaaf9f5e0a7fae1 LICENSE diff --git a/package/wireless-regdb/wireless-regdb.mk b/package/wireless-regdb/wireless-regdb.mk new file mode 100644 index 00000000..49a3824c --- /dev/null +++ b/package/wireless-regdb/wireless-regdb.mk @@ -0,0 +1,31 @@ +################################################################################ +# +# wireless-regdb +# +################################################################################ + +WIRELESS_REGDB_VERSION = 2021.04.21 +WIRELESS_REGDB_SOURCE = wireless-regdb-$(WIRELESS_REGDB_VERSION).tar.xz +WIRELESS_REGDB_SITE = $(BR2_KERNEL_MIRROR)/software/network/wireless-regdb +WIRELESS_REGDB_LICENSE = ISC +WIRELESS_REGDB_LICENSE_FILES = LICENSE +WIRELESS_REGDB_CPE_ID_VENDOR = kernel + +ifeq ($(BR2_PACKAGE_CRDA),y) +define WIRELESS_REGDB_INSTALL_CRDA_TARGET_CMDS + $(INSTALL) -m 644 -D -T $(@D)/regulatory.bin \ + $(TARGET_DIR)/usr/lib/crda/regulatory.bin + $(INSTALL) -m 644 -D -T $(@D)/sforshee.key.pub.pem \ + $(TARGET_DIR)/etc/wireless-regdb/pubkeys/sforshee.key.pub.pem +endef +endif + +define WIRELESS_REGDB_INSTALL_TARGET_CMDS + $(WIRELESS_REGDB_INSTALL_CRDA_TARGET_CMDS) + $(INSTALL) -m 644 -D -T $(@D)/regulatory.db \ + $(TARGET_DIR)/lib/firmware/regulatory.db + $(INSTALL) -m 644 -D -T $(@D)/regulatory.db.p7s \ + $(TARGET_DIR)/lib/firmware/regulatory.db.p7s +endef + +$(eval $(generic-package)) diff --git a/package/wireless_tools/0001-remove-bzero.patch b/package/wireless_tools/0001-remove-bzero.patch new file mode 100644 index 00000000..53ef5886 --- /dev/null +++ b/package/wireless_tools/0001-remove-bzero.patch @@ -0,0 +1,95 @@ +Switch all instances of deprecated bzero() to memset() equivalent. + +Signed-off-by: Gustavo Zacarias + +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/Config.in b/package/wireless_tools/Config.in new file mode 100644 index 00000000..349908db --- /dev/null +++ b/package/wireless_tools/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_WIRELESS_TOOLS + bool "wireless tools" + help + A collection of tools to configure wireless lan cards. + + https://hewlettpackard.github.io/wireless-tools/ + +if BR2_PACKAGE_WIRELESS_TOOLS + +config BR2_PACKAGE_WIRELESS_TOOLS_LIB + bool "Install shared library" + depends on !BR2_STATIC_LIBS + help + The shared library of wireless tools + +endif diff --git a/package/wireless_tools/wireless_tools.hash b/package/wireless_tools/wireless_tools.hash new file mode 100644 index 00000000..50a3f62b --- /dev/null +++ b/package/wireless_tools/wireless_tools.hash @@ -0,0 +1,3 @@ +# locally computed hash +sha256 abd9c5c98abf1fdd11892ac2f8a56737544fe101e1be27c6241a564948f34c63 wireless_tools.30.pre9.tar.gz +sha256 32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670 COPYING diff --git a/package/wireless_tools/wireless_tools.mk b/package/wireless_tools/wireless_tools.mk new file mode 100644 index 00000000..1d29c3b1 --- /dev/null +++ b/package/wireless_tools/wireless_tools.mk @@ -0,0 +1,42 @@ +################################################################################ +# +# wireless_tools +# +################################################################################ + +WIRELESS_TOOLS_VERSION_MAJOR = 30 +WIRELESS_TOOLS_VERSION = $(WIRELESS_TOOLS_VERSION_MAJOR).pre9 +WIRELESS_TOOLS_SITE = https://hewlettpackard.github.io/wireless-tools +WIRELESS_TOOLS_SOURCE = wireless_tools.$(WIRELESS_TOOLS_VERSION).tar.gz +WIRELESS_TOOLS_LICENSE = GPL-2.0 +WIRELESS_TOOLS_LICENSE_FILES = COPYING +WIRELESS_TOOLS_CPE_ID_VERSION = $(WIRELESS_TOOLS_VERSION_MAJOR) +WIRELESS_TOOLS_CPE_ID_UPDATE = pre9 +WIRELESS_TOOLS_INSTALL_STAGING = YES + +WIRELESS_TOOLS_BUILD_TARGETS = iwmulticall +WIRELESS_TOOLS_INSTALL_TARGETS = install-iwmulticall + +ifeq ($(BR2_PACKAGE_WIRELESS_TOOLS_LIB),y) +WIRELESS_TOOLS_BUILD_TARGETS += libiw.so.$(WIRELESS_TOOLS_VERSION_MAJOR) +WIRELESS_TOOLS_INSTALL_TARGETS += install-dynamic + +define WIRELESS_TOOLS_INSTALL_STAGING_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) PREFIX="$(STAGING_DIR)" LDCONFIG=/bin/true \ + install-dynamic + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) PREFIX="$(STAGING_DIR)/usr" install-hdr +endef + +endif + +define WIRELESS_TOOLS_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" \ + $(WIRELESS_TOOLS_BUILD_TARGETS) +endef + +define WIRELESS_TOOLS_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) PREFIX="$(TARGET_DIR)" LDCONFIG=/bin/true \ + $(WIRELESS_TOOLS_INSTALL_TARGETS) +endef + +$(eval $(generic-package)) diff --git a/package/wireshark/Config.in b/package/wireshark/Config.in new file mode 100644 index 00000000..95fc9b38 --- /dev/null +++ b/package/wireshark/Config.in @@ -0,0 +1,52 @@ +config BR2_PACKAGE_WIRESHARK + bool "wireshark" + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt -> libgpg-error + depends on !BR2_STATIC_LIBS + depends on BR2_USE_MMU # fork(), glib2 + depends on BR2_USE_WCHAR # glib2 + depends on BR2_TOOLCHAIN_HAS_THREADS # glib2 + select BR2_PACKAGE_C_ARES + select BR2_PACKAGE_LIBPCAP + select BR2_PACKAGE_LIBGCRYPT + select BR2_PACKAGE_LIBGLIB2 + select BR2_PACKAGE_SPEEXDSP + help + Network traffic sniffer and protocol decoder. + + https://www.wireshark.org + +if BR2_PACKAGE_WIRESHARK + +config BR2_PACKAGE_WIRESHARK_GUI + bool "Qt5 GUI" + default y + depends on BR2_INSTALL_LIBSTDCPP # qt5 + depends on BR2_HOST_GCC_AT_LEAST_5 # qt5 + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # qt5 + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 # qt5 + depends on !BR2_arc # qt5 + depends on BR2_PACKAGE_HAS_UDEV # qt5 input + select BR2_PACKAGE_QT5 + select BR2_PACKAGE_QT5BASE_FONTCONFIG # runtime + select BR2_PACKAGE_QT5BASE_PNG # runtime + select BR2_PACKAGE_QT5BASE_WIDGETS + select BR2_PACKAGE_QT5MULTIMEDIA + select BR2_PACKAGE_QT5SVG + select BR2_PACKAGE_QT5TOOLS + select BR2_PACKAGE_QT5TOOLS_LINGUIST_TOOLS + help + Enable Qt5 GUI + +comment "Qt5 GUI needs a udev /dev management and a toolchain w/ C++, NPTL, host gcc >= 5.0, gcc >= 5.0" + depends on !BR2_arc + depends on !BR2_PACKAGE_HAS_UDEV || !BR2_INSTALL_LIBSTDCPP || \ + !BR2_TOOLCHAIN_HAS_THREADS_NPTL || !BR2_TOOLCHAIN_GCC_AT_LEAST_5 || \ + !BR2_HOST_GCC_AT_LEAST_5 + +endif # BR2_PACKAGE_WIRESHARK + +comment "wireshark needs a toolchain w/ wchar, threads, dynamic library" + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \ + BR2_STATIC_LIBS diff --git a/package/wireshark/wireshark.hash b/package/wireshark/wireshark.hash new file mode 100644 index 00000000..0876703e --- /dev/null +++ b/package/wireshark/wireshark.hash @@ -0,0 +1,6 @@ +# From https://www.wireshark.org/download/src/all-versions/SIGNATURES-3.4.7.txt +sha1 3fa4bb774030442b9908243a9927d38479c52bf5 wireshark-3.4.7.tar.xz +sha256 6c4cee51ef997cb9d9aaee84113525a5629157d3c743d7c4e320000de804a09d wireshark-3.4.7.tar.xz + +# Locally calculated +sha256 7cdbed2b697efaa45576a033f1ac0e73cd045644a91c79bbf41d4a7d81dac7bf COPYING diff --git a/package/wireshark/wireshark.mk b/package/wireshark/wireshark.mk new file mode 100644 index 00000000..6ee4b203 --- /dev/null +++ b/package/wireshark/wireshark.mk @@ -0,0 +1,207 @@ +################################################################################ +# +# wireshark +# +################################################################################ + +WIRESHARK_VERSION = 3.4.7 +WIRESHARK_SOURCE = wireshark-$(WIRESHARK_VERSION).tar.xz +WIRESHARK_SITE = https://www.wireshark.org/download/src/all-versions +WIRESHARK_LICENSE = wireshark license +WIRESHARK_LICENSE_FILES = COPYING +WIRESHARK_CPE_ID_VENDOR = wireshark +WIRESHARK_DEPENDENCIES = \ + c-ares \ + host-pkgconf \ + host-python3 \ + libgcrypt \ + libglib2 \ + libpcap \ + speexdsp + +WIRESHARK_MAKE_ENV = \ + $(TARGET_MAKE_ENV) \ + PATH="$(@D)/bin:$(BR_PATH)" + +WIRESHARK_CONF_OPTS = \ + -DDISABLE_WERROR=ON \ + -DENABLE_ILBC=OFF \ + -DENABLE_PCAP=ON \ + -DENABLE_SMI=OFF + +# wireshark needs the host version of lemon during compilation. +# This binrary is provided by sqlite-src (which is different from +# sqlite-autotools that is currently packaged in buildroot) moreover wireshark +# adds several patches. +# So, instead of creating a separate host package and installing lemon to +# $(HOST_DIR), this binary is compiled on-the-fly +define WIRESHARK_BUILD_LEMON_TOOL + cd $(@D); \ + mkdir -p $(@D)/bin; \ + $(HOSTCC) $(HOST_CFLAGS) -o $(@D)/bin/lemon tools/lemon/lemon.c +endef + +WIRESHARK_PRE_BUILD_HOOKS += WIRESHARK_BUILD_LEMON_TOOL + +ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) +WIRESHARK_CONF_OPTS += -DCMAKE_EXE_LINKER_FLAGS=-latomic +endif + +ifeq ($(BR2_GCC_ENABLE_LTO),y) +WIRESHARK_CONF_OPTS += -DENABLE_LTO=ON +else +WIRESHARK_CONF_OPTS += -DENABLE_LTO=OFF +endif + +ifeq ($(BR2_PACKAGE_WIRESHARK_GUI),y) +WIRESHARK_CONF_OPTS += -DBUILD_wireshark=ON +WIRESHARK_DEPENDENCIES += qt5base qt5multimedia qt5svg qt5tools +else +WIRESHARK_CONF_OPTS += -DBUILD_wireshark=OFF +endif + +ifeq ($(BR2_PACKAGE_BCG729),y) +WIRESHARK_CONF_OPTS += -DENABLE_BCG729=ON +WIRESHARK_DEPENDENCIES += bcg729 +else +WIRESHARK_CONF_OPTS += -DENABLE_BCG729=OFF +endif + +ifeq ($(BR2_PACKAGE_BROTLI),y) +WIRESHARK_CONF_OPTS += -DENABLE_BROTLI=ON +WIRESHARK_DEPENDENCIES += brotli +else +WIRESHARK_CONF_OPTS += -DENABLE_BROTLI=OFF +endif + +ifeq ($(BR2_PACKAGE_GNUTLS),y) +WIRESHARK_CONF_OPTS += -DENABLE_GNUTLS=ON +WIRESHARK_DEPENDENCIES += gnutls +else +WIRESHARK_CONF_OPTS += -DENABLE_GNUTLS=OFF +endif + +ifeq ($(BR2_PACKAGE_LIBKRB5),y) +WIRESHARK_CONF_OPTS += -DENABLE_KERBEROS=ON +WIRESHARK_DEPENDENCIES += libkrb5 +else +WIRESHARK_CONF_OPTS += -DENABLE_KERBEROS=OFF +endif + +ifeq ($(BR2_PACKAGE_LIBMAXMINDDB),y) +WIRESHARK_CONF_OPTS += -DBUILD_mmdbresolve=ON +WIRESHARK_DEPENDENCIES += libmaxminddb +else +WIRESHARK_CONF_OPTS += -DBUILD_mmdbresolve=OFF +endif + +ifeq ($(BR2_PACKAGE_LIBNL),y) +WIRESHARK_CONF_OPTS += -DENABLE_NETLINK=ON +WIRESHARK_DEPENDENCIES += libnl +else +WIRESHARK_CONF_OPTS += -DENABLE_NETLINK=OFF +endif + +ifeq ($(BR2_PACKAGE_LIBSSH),y) +WIRESHARK_CONF_OPTS += -DENABLE_LIBSSH=ON +WIRESHARK_DEPENDENCIES += libssh +else +WIRESHARK_CONF_OPTS += -DENABLE_LIBSSH=OFF +endif + +ifeq ($(BR2_PACKAGE_LIBXML2),y) +WIRESHARK_CONF_OPTS += -DENABLE_LIBXML2=ON +WIRESHARK_DEPENDENCIES += libxml2 +else +WIRESHARK_CONF_OPTS += -DENABLE_LIBXML2=OFF +endif + +# no support for lua53 yet +ifeq ($(BR2_PACKAGE_LUA_5_1),y) +WIRESHARK_CONF_OPTS += -DENABLE_LUA=ON +WIRESHARK_DEPENDENCIES += lua +else +WIRESHARK_CONF_OPTS += -DENABLE_LUA=OFF +endif + +ifeq ($(BR2_PACKAGE_LZ4),y) +WIRESHARK_CONF_OPTS += -DENABLE_LZ4=ON +WIRESHARK_DEPENDENCIES += lz4 +else +WIRESHARK_CONF_OPTS += -DENABLE_LZ4=OFF +endif + +ifeq ($(BR2_PACKAGE_NGHTTP2),y) +WIRESHARK_CONF_OPTS += -DENABLE_NGHTTP2=ON +WIRESHARK_DEPENDENCIES += nghttp2 +else +WIRESHARK_CONF_OPTS += -DENABLE_NGHTTP2=OFF +endif + +ifeq ($(BR2_PACKAGE_OPUS),y) +WIRESHARK_CONF_OPTS += -DENABLE_OPUS=ON +WIRESHARK_DEPENDENCIES += opus +else +WIRESHARK_CONF_OPTS += -DENABLE_OPUS=OFF +endif + +ifeq ($(BR2_PACKAGE_SBC),y) +WIRESHARK_CONF_OPTS += -DENABLE_SBC=ON +WIRESHARK_DEPENDENCIES += sbc +else +WIRESHARK_CONF_OPTS += -DENABLE_SBC=OFF +endif + +ifeq ($(BR2_PACKAGE_SNAPPY),y) +WIRESHARK_CONF_OPTS += -DENABLE_SNAPPY=ON +WIRESHARK_DEPENDENCIES += snappy +else +WIRESHARK_CONF_OPTS += -DENABLE_SNAPPY=OFF +endif + +ifeq ($(BR2_PACKAGE_SPANDSP),y) +WIRESHARK_CONF_OPTS += -DENABLE_SPANDSP=ON +WIRESHARK_DEPENDENCIES += spandsp +else +WIRESHARK_CONF_OPTS += -DENABLE_SPANDSP=OFF +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD),y) +WIRESHARK_CONF_OPTS += -DBUILD_sdjournal=ON +WIRESHARK_DEPENDENCIES += systemd +else +WIRESHARK_CONF_OPTS += -DBUILD_sdjournal=OFF +endif + +ifeq ($(BR2_PACKAGE_ZSTD),y) +WIRESHARK_CONF_OPTS += -DENABLE_ZSTD=ON +WIRESHARK_DEPENDENCIES += zstd +else +WIRESHARK_CONF_OPTS += -DENABLE_ZSTD=OFF +endif + +# Disable plugins as some of them (like l16mono) can't be built +# statically. ENABLE_STATIC=ON actually means "disable shared library" +# and ENABLE_STATIC=OFF means "enable shared library". So for the +# BR2_SHARED_STATIC_LIBS=y case, we want ENABLE_STATIC=OFF even if +# that sounds counter-intuitive. +ifeq ($(BR2_STATIC_LIBS),y) +WIRESHARK_CONF_OPTS += \ + -DENABLE_PLUGINS=OFF \ + -DENABLE_STATIC=ON \ + -DUSE_STATIC=ON +else +WIRESHARK_CONF_OPTS += \ + -DENABLE_PLUGINS=ON \ + -DENABLE_STATIC=OFF \ + -DUSE_STATIC=OFF +endif + +define WIRESHARK_REMOVE_DOCS + find $(TARGET_DIR)/usr/share/wireshark -name '*.txt' -print0 \ + -o -name '*.html' -print0 | xargs -0 rm -f +endef + +WIRESHARK_POST_INSTALL_TARGET_HOOKS += WIRESHARK_REMOVE_DOCS + +$(eval $(cmake-package)) diff --git a/package/wlroots/Config.in b/package/wlroots/Config.in new file mode 100644 index 00000000..2f72fd49 --- /dev/null +++ b/package/wlroots/Config.in @@ -0,0 +1,41 @@ +comment "wlroots needs udev, mesa3d w/ EGL and GLES support" + depends on !BR2_PACKAGE_MESA3D_OPENGL_EGL || \ + !BR2_PACKAGE_MESA3D_OPENGL_ES || \ + !BR2_PACKAGE_HAS_UDEV + +comment "wlroots needs a toolchain w/ threads, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS || \ + BR2_STATIC_LIBS + +config BR2_PACKAGE_WLROOTS + bool "wlroots" + depends on !BR2_STATIC_LIBS # wayland + depends on BR2_TOOLCHAIN_HAS_THREADS # libdrm, wayland + depends on BR2_PACKAGE_HAS_UDEV # libinput + # Technically wlroots should work with any OpenGL implementation + # which provides EGL, GLES2, and libgbm; but in practice only + # Mesa ships an usable libgbm. + depends on BR2_PACKAGE_MESA3D_OPENGL_EGL + depends on BR2_PACKAGE_MESA3D_OPENGL_ES + select BR2_PACKAGE_LIBDRM + select BR2_PACKAGE_LIBINPUT + select BR2_PACKAGE_LIBXKBCOMMON + select BR2_PACKAGE_PIXMAN + select BR2_PACKAGE_WAYLAND + select BR2_PACKAGE_WAYLAND_PROTOCOLS + help + wlroots is a modular Wayland library for building compositors + which implements many of their common features. + + https://github.com/swaywm/wlroots + +if BR2_PACKAGE_WLROOTS + +config BR2_PACKAGE_WLROOTS_X11 + bool "X11 backend" + depends on BR2_PACKAGE_XORG7 + select BR2_PACKAGE_XLIB_LIBX11 + help + Support Wayland sessions nested inside a X11 window + +endif diff --git a/package/wlroots/wlroots.hash b/package/wlroots/wlroots.hash new file mode 100644 index 00000000..2fab9b30 --- /dev/null +++ b/package/wlroots/wlroots.hash @@ -0,0 +1,5 @@ +# Generated locally, after checking https://github.com/swaywm/wlroots/releases/download/0.12.0/wlroots-0.12.0.tar.gz.sig +sha256 c9e9f4f6d2f526d0b2886daf3ec37e64831773059aa669fb98a88522a1626bdb wlroots-0.12.0.tar.gz + +# Hashes for license files: +sha256 ffd3737a478b83a8b51b42757d3bf909ef36694508355879722e11fc1fa6736b LICENSE diff --git a/package/wlroots/wlroots.mk b/package/wlroots/wlroots.mk new file mode 100644 index 00000000..5665d5a9 --- /dev/null +++ b/package/wlroots/wlroots.mk @@ -0,0 +1,62 @@ +################################################################################ +# +# wlroots +# +################################################################################ + +WLROOTS_VERSION = 0.12.0 +WLROOTS_SITE = https://github.com/swaywm/wlroots/releases/download/$(WLROOTS_VERSION) +WLROOTS_LICENSE = MIT +WLROOTS_LICENSE_FILES = LICENSE +WLROOTS_INSTALL_STAGING = YES + +WLROOTS_DEPENDENCIES = \ + host-pkgconf \ + host-wayland \ + libinput \ + libxkbcommon \ + mesa3d \ + pixman \ + udev \ + wayland \ + wayland-protocols + +WLROOTS_CONF_OPTS = -Dexamples=false -Dxcb-errors=disabled -Dlibseat=disabled + +ifeq ($(BR2_PACKAGE_FFMPEG),y) +WLROOTS_DEPENDENCIES += ffmpeg +endif + +ifeq ($(BR2_PACKAGE_LIBPNG),y) +WLROOTS_DEPENDENCIES += libpng +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_LOGIND),y) +WLROOTS_CONF_OPTS += -Dlogind=enabled -Dlogind-provider=systemd +WLROOTS_DEPENDENCIES += systemd +else +WLROOTS_CONF_OPTS += -Dlogind=disabled +endif + +ifeq ($(BR2_PACKAGE_WLROOTS_X11),y) +WLROOTS_CONF_OPTS += -Dx11-backend=enabled +WLROOTS_DEPENDENCIES += xlib_libX11 +else +WLROOTS_CONF_OPTS += -Dx11-backend=disabled +endif + +ifeq ($(BR2_PACKAGE_LIBXCB),y) +WLROOTS_CONF_OPTS += -Dxwayland=enabled +WLROOTS_DEPENDENCIES += libxcb +else +WLROOTS_CONF_OPTS += -Dxwayland=disabled +endif + +ifeq ($(BR2_PACKAGE_XCB_UTIL_WM),y) +WLROOTS_CONF_OPTS += -Dxcb-icccm=enabled +WLROOTS_DEPENDENCIES += xcb-util-wm +else +WLROOTS_CONF_OPTS += -Dxcb-icccm=disabled +endif + +$(eval $(meson-package)) diff --git a/package/wmctrl/Config.in b/package/wmctrl/Config.in new file mode 100644 index 00000000..37a1f252 --- /dev/null +++ b/package/wmctrl/Config.in @@ -0,0 +1,24 @@ +config BR2_PACKAGE_WMCTRL + bool "wmctrl" + depends on BR2_PACKAGE_XORG7 + depends on BR2_USE_WCHAR # libglib2 + depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 + depends on BR2_USE_MMU # libglib2 + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXMU + select BR2_PACKAGE_LIBGLIB2 + help + Provides command line access to almost all the features + defined in the EWMH specification. It can be used, for + example, to get information about the window manager, to get + a detailed list of desktops and managed windows, to switch + and resize desktops, to make windows full-screen, + always-above or sticky, and to activate, close, move, + resize, maximize and minimize them. + + https://sites.google.com/site/tstyblo/wmctrl/ + +comment "wmctrl needs a toolchain w/ wchar, threads" + depends on BR2_USE_MMU + depends on BR2_PACKAGE_XORG7 + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/wmctrl/wmctrl.hash b/package/wmctrl/wmctrl.hash new file mode 100644 index 00000000..531f64a0 --- /dev/null +++ b/package/wmctrl/wmctrl.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 d78a1efdb62f18674298ad039c5cbdb1edb6e8e149bb3a8e3a01a4750aa3cca9 wmctrl-1.07.tar.gz +sha256 32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670 COPYING diff --git a/package/wmctrl/wmctrl.mk b/package/wmctrl/wmctrl.mk new file mode 100644 index 00000000..36ad3513 --- /dev/null +++ b/package/wmctrl/wmctrl.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# wmctrl +# +################################################################################ + +WMCTRL_VERSION = 1.07 +WMCTRL_SITE = https://sites.google.com/site/tstyblo/wmctrl +WMCTRL_LICENSE = GPL-2.0+ +WMCTRL_LICENSE_FILES = COPYING + +WMCTRL_DEPENDENCIES = libglib2 xlib_libX11 xlib_libXmu + +WMCTRL_CONF_OPTS = \ + --x-includes=$(STAGING_DIR)/usr/include \ + --x-libraries=$(STAGING_DIR)/usr/lib + +$(eval $(autotools-package)) diff --git a/package/woff2/0001-CMake-Handle-multiple-libraries-being-returned-for-B.patch b/package/woff2/0001-CMake-Handle-multiple-libraries-being-returned-for-B.patch new file mode 100644 index 00000000..142eab27 --- /dev/null +++ b/package/woff2/0001-CMake-Handle-multiple-libraries-being-returned-for-B.patch @@ -0,0 +1,80 @@ +From 9a6d50b3f355c1e4d72a235aa0bac4856dff1785 Mon Sep 17 00:00:00 2001 +From: Adrian Perez de Castro +Date: Tue, 27 Mar 2018 19:59:23 +0100 +Subject: [PATCH] CMake: Handle multiple libraries being returned for Brotli + +Brotli is built as three libraries: libbrotlienc, libbrotlidec, and +libbrotlicommon. When requesting the linker flags using pkg-config for +e.g. libbrotlidec, it will return both libbrotlidec and libbrotlicommon. +The FindBrotli*.cmake files ignore the names of the libraries returned +by pkg-config, and hardcode only the libbrotli{enc,dec} names. While +this is fine when using shared libraries (they contain an entry for +libbrotlicommon as required library in their headers), it will cause +linker errors when Brotli has been built as static libraries, due to +the missing symbols from libbrotlicommon being unknown to the linker. + +This fixes FindBrotli*.cmake files by using the library names reported +by pkg-config (instead of hardcoding them), and applying find_library() +to each of the libraries to find their absolute paths. If any of the +libraries is missing, the corresponding BROTLI{ENC,DEC}_LIBRARIES is +unset to let find_package_handle_standard_args() report an error. +--- + cmake/FindBrotliDec.cmake | 13 +++++++++---- + cmake/FindBrotliEnc.cmake | 14 ++++++++++---- + 2 files changed, 19 insertions(+), 8 deletions(-) + +Signed-off-by: Adrian Perez de Castro +Upstream-Status: Submitted [https://github.com/google/woff2/pull/112] + +diff --git a/cmake/FindBrotliDec.cmake b/cmake/FindBrotliDec.cmake +index abb06f4..9cbb415 100644 +--- a/cmake/FindBrotliDec.cmake ++++ b/cmake/FindBrotliDec.cmake +@@ -18,10 +18,15 @@ find_path(BROTLIDEC_INCLUDE_DIRS + HINTS ${PC_BROTLIDEC_INCLUDEDIR} + ) + +-find_library(BROTLIDEC_LIBRARIES +- NAMES brotlidec +- HINTS ${PC_BROTLIDEC_LIBDIR} +-) ++set(BROTLIDEC_LIBRARIES "") ++foreach(_lib ${PC_BROTLIDEC_LIBRARIES}) ++ find_library(PC_BROTLIDEC_PATH_${_lib} ${_lib} HINTS ${PC_BROTLIDEC_LIBRARY_DIRS}) ++ if(NOT PC_BROTLIDEC_PATH_${_lib}) ++ unset(BROTLIDEC_LIBRARIES) ++ break() ++ endif() ++ list(APPEND BROTLIDEC_LIBRARIES "${PC_BROTLIDEC_PATH_${_lib}}") ++endforeach() + + include(FindPackageHandleStandardArgs) + find_package_handle_standard_args(BrotliDec +diff --git a/cmake/FindBrotliEnc.cmake b/cmake/FindBrotliEnc.cmake +index 4be347d..55f3932 100644 +--- a/cmake/FindBrotliEnc.cmake ++++ b/cmake/FindBrotliEnc.cmake +@@ -18,10 +18,16 @@ find_path(BROTLIENC_INCLUDE_DIRS + HINTS ${PC_BROTLIENC_INCLUDEDIR} + ) + +-find_library(BROTLIENC_LIBRARIES +- NAMES brotlienc +- HINTS ${PC_BROTLIENC_LIBDIR} +-) ++set(BROTLIENC_LIBRARIES "") ++foreach(_lib ${PC_BROTLIENC_LIBRARIES}) ++ find_library(PC_BROTLIENC_PATH_${_lib} ${_lib} ++ HINTS ${PC_BROTLIENC_LIBRARY_DIRS}) ++ if(NOT PC_BROTLIENC_PATH_${_lib}) ++ unset(BROTLIENC_LIBRARIES) ++ break() ++ endif() ++ list(APPEND BROTLIENC_LIBRARIES "${PC_BROTLIENC_PATH_${_lib}}") ++endforeach() + + include(FindPackageHandleStandardArgs) + find_package_handle_standard_args(BrotliEnc +-- +2.16.3 + diff --git a/package/woff2/Config.in b/package/woff2/Config.in new file mode 100644 index 00000000..d280414d --- /dev/null +++ b/package/woff2/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_WOFF2 + bool "woff2" + depends on BR2_INSTALL_LIBSTDCPP + select BR2_PACKAGE_BROTLI + help + Reference implementation for the WOFF2 font file format, + typically used for Web fonts + + https://github.com/google/woff2 + +comment "woff2 needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/woff2/woff2.hash b/package/woff2/woff2.hash new file mode 100644 index 00000000..469071e3 --- /dev/null +++ b/package/woff2/woff2.hash @@ -0,0 +1,5 @@ +# Locally generated: +sha512 c788bba1530aec463e755e901f9342f4b599e3a07f54645fef1dc388ab5d5c30625535e5dd38e9e792e04a640574baa50eeefb6b7338ab403755f4a4e0c3044d v1.0.2.tar.gz + +# Hash for license files: +sha512 8ee924da3fb5d16135adcf6a8fbe9e2e8f3d2d80468617e72ca4fa059a60f8455c9a5f68a8dc381b1297c8bf39c887a912d0f69246d2604ada74d3da9e8e490b LICENSE diff --git a/package/woff2/woff2.mk b/package/woff2/woff2.mk new file mode 100644 index 00000000..b2ff33fe --- /dev/null +++ b/package/woff2/woff2.mk @@ -0,0 +1,24 @@ +################################################################################ +# +# woff2 +# +################################################################################ + +WOFF2_VERSION = 1.0.2 +WOFF2_SOURCE = v$(WOFF2_VERSION).tar.gz +WOFF2_SITE = https://github.com/google/woff2/archive +WOFF2_LICENSE = MIT +WOFF2_LICENSE_FILES = LICENSE +WOFF2_INSTALL_STAGING = YES +WOFF2_DEPENDENCIES = brotli +WOFF2_CONF_OPTS = \ + -DNOISY_LOGGING=OFF + +# The CMake build files for woff2 manually set some RPATH handling options +# which make the installation steps fail with static builds, so pass this +# to prevent any attempt of mangling RPATH that CMake would do. +ifneq ($(BR2_SHARED_LIBS),y) +WOFF2_CONF_OPTS += -DCMAKE_SKIP_RPATH=ON +endif + +$(eval $(cmake-package)) diff --git a/package/wolfssl/Config.in b/package/wolfssl/Config.in new file mode 100644 index 00000000..3c6d68f5 --- /dev/null +++ b/package/wolfssl/Config.in @@ -0,0 +1,27 @@ +config BR2_PACKAGE_WOLFSSL + bool "wolfssl" + depends on BR2_TOOLCHAIN_HAS_THREADS + help + The wolfSSL embedded SSL library (formerly CyaSSL) is a + lightweight, portable, C-language-based SSL/TLS library + targeted at IoT, embedded, and RTOS environments primarily + because of its size, speed, and feature set. + + https://www.wolfssl.com/ + +if BR2_PACKAGE_WOLFSSL + +config BR2_PACKAGE_WOLFSSL_ALL + bool "enable all features, except SSLv3" + help + Enable all wolfSSL features, except SSL version 3.0 support. + +config BR2_PACKAGE_WOLFSSL_SSLV3 + bool "enable SSLv3" + help + Enable SSL version 3.0 support. + +endif + +comment "wolfssl needs a toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/wolfssl/wolfssl.hash b/package/wolfssl/wolfssl.hash new file mode 100644 index 00000000..9896713c --- /dev/null +++ b/package/wolfssl/wolfssl.hash @@ -0,0 +1,6 @@ +# Locally computed: +sha256 50db45f348f47e00c93dd244c24108220120cb3cc9d01434789229c32937c444 wolfssl-4.8.1-stable.tar.gz + +# Hash for license files: +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING +sha256 b23c1da1f85d699d3288d73c952b4cd02760d23dc1ddc1b221cbb8be82387189 LICENSING diff --git a/package/wolfssl/wolfssl.mk b/package/wolfssl/wolfssl.mk new file mode 100644 index 00000000..d3dce0a4 --- /dev/null +++ b/package/wolfssl/wolfssl.mk @@ -0,0 +1,48 @@ +################################################################################ +# +# wolfssl +# +################################################################################ + +WOLFSSL_VERSION = 4.8.1-stable +WOLFSSL_SITE = $(call github,wolfSSL,wolfssl,v$(WOLFSSL_VERSION)) +WOLFSSL_INSTALL_STAGING = YES + +WOLFSSL_LICENSE = GPL-2.0+ +WOLFSSL_LICENSE_FILES = COPYING LICENSING +WOLFSSL_CPE_ID_VENDOR = wolfssl + +WOLFSSL_DEPENDENCIES = host-pkgconf + +# wolfssl's source code is released without a configure +# script, so we need autoreconf +WOLFSSL_AUTORECONF = YES + +WOLFSSL_CONF_OPTS = --disable-examples --disable-crypttests + +ifeq ($(BR2_PACKAGE_WOLFSSL_ALL),y) +WOLFSSL_CONF_OPTS += --enable-all +else +WOLFSSL_CONF_OPTS += --disable-all +endif + +ifeq ($(BR2_PACKAGE_WOLFSSL_SSLV3),y) +WOLFSSL_CONF_OPTS += --enable-sslv3 +else +WOLFSSL_CONF_OPTS += --disable-sslv3 +endif + +# enable ARMv8 hardware acceleration +ifeq ($(BR2_ARM_CPU_ARMV8A),y) +WOLFSSL_CONF_OPTS += --enable-armasm +# the flag -mstrict-align is needed to prevent build errors caused by +# some inline assembly in parts of the AES structure using the "m" +# constraint +ifeq ($(BR2_aarch64),y) +WOLFSSL_CONF_ENV += CPPFLAGS="$(TARGET_CPPFLAGS) -mstrict-align" +endif +else +WOLFSSL_CONF_OPTS += --disable-armasm +endif + +$(eval $(autotools-package)) diff --git a/package/wpa_supplicant/0001-AP-Silently-ignore-management-frame-from-unexpected-.patch b/package/wpa_supplicant/0001-AP-Silently-ignore-management-frame-from-unexpected-.patch new file mode 100644 index 00000000..959788c2 --- /dev/null +++ b/package/wpa_supplicant/0001-AP-Silently-ignore-management-frame-from-unexpected-.patch @@ -0,0 +1,77 @@ +From 8c07fa9eda13e835f3f968b2e1c9a8be3a851ff9 Mon Sep 17 00:00:00 2001 +From: Jouni Malinen +Date: Thu, 29 Aug 2019 11:52:04 +0300 +Subject: [PATCH] AP: Silently ignore management frame from unexpected source + address + +Do not process any received Management frames with unexpected/invalid SA +so that we do not add any state for unexpected STA addresses or end up +sending out frames to unexpected destination. This prevents unexpected +sequences where an unprotected frame might end up causing the AP to send +out a response to another device and that other device processing the +unexpected response. + +In particular, this prevents some potential denial of service cases +where the unexpected response frame from the AP might result in a +connected station dropping its association. + +Signed-off-by: Jouni Malinen + +Signed-off-by: Fabrice Fontaine +[Retrieved from: +https://w1.fi/security/2019-7/0001-AP-Silently-ignore-management-frame-from-unexpected-.patch] +--- + src/ap/drv_callbacks.c | 13 +++++++++++++ + src/ap/ieee802_11.c | 12 ++++++++++++ + 2 files changed, 25 insertions(+) + +diff --git a/src/ap/drv_callbacks.c b/src/ap/drv_callbacks.c +index 31587685fe3b..34ca379edc3d 100644 +--- a/src/ap/drv_callbacks.c ++++ b/src/ap/drv_callbacks.c +@@ -131,6 +131,19 @@ int hostapd_notif_assoc(struct hostapd_data *hapd, const u8 *addr, + "hostapd_notif_assoc: Skip event with no address"); + return -1; + } ++ ++ if (is_multicast_ether_addr(addr) || ++ is_zero_ether_addr(addr) || ++ os_memcmp(addr, hapd->own_addr, ETH_ALEN) == 0) { ++ /* Do not process any frames with unexpected/invalid SA so that ++ * we do not add any state for unexpected STA addresses or end ++ * up sending out frames to unexpected destination. */ ++ wpa_printf(MSG_DEBUG, "%s: Invalid SA=" MACSTR ++ " in received indication - ignore this indication silently", ++ __func__, MAC2STR(addr)); ++ return 0; ++ } ++ + random_add_randomness(addr, ETH_ALEN); + + hostapd_logger(hapd, addr, HOSTAPD_MODULE_IEEE80211, +diff --git a/src/ap/ieee802_11.c b/src/ap/ieee802_11.c +index c85a28db44b7..e7065372e158 100644 +--- a/src/ap/ieee802_11.c ++++ b/src/ap/ieee802_11.c +@@ -4626,6 +4626,18 @@ int ieee802_11_mgmt(struct hostapd_data *hapd, const u8 *buf, size_t len, + fc = le_to_host16(mgmt->frame_control); + stype = WLAN_FC_GET_STYPE(fc); + ++ if (is_multicast_ether_addr(mgmt->sa) || ++ is_zero_ether_addr(mgmt->sa) || ++ os_memcmp(mgmt->sa, hapd->own_addr, ETH_ALEN) == 0) { ++ /* Do not process any frames with unexpected/invalid SA so that ++ * we do not add any state for unexpected STA addresses or end ++ * up sending out frames to unexpected destination. */ ++ wpa_printf(MSG_DEBUG, "MGMT: Invalid SA=" MACSTR ++ " in received frame - ignore this frame silently", ++ MAC2STR(mgmt->sa)); ++ return 0; ++ } ++ + if (stype == WLAN_FC_STYPE_BEACON) { + handle_beacon(hapd, mgmt, len, fi); + return 1; +-- +2.20.1 + diff --git a/package/wpa_supplicant/0002-ASN.1-Validate-DigestAlgorithmIdentifier-parameters.patch b/package/wpa_supplicant/0002-ASN.1-Validate-DigestAlgorithmIdentifier-parameters.patch new file mode 100644 index 00000000..5dcfed94 --- /dev/null +++ b/package/wpa_supplicant/0002-ASN.1-Validate-DigestAlgorithmIdentifier-parameters.patch @@ -0,0 +1,116 @@ +From a0541334a6394f8237a4393b7372693cd7e96f15 Mon Sep 17 00:00:00 2001 +From: Jouni Malinen +Date: Sat, 13 Mar 2021 18:19:31 +0200 +Subject: [PATCH] ASN.1: Validate DigestAlgorithmIdentifier parameters + +The supported hash algorithms do not use AlgorithmIdentifier parameters. +However, there are implementations that include NULL parameters in +addition to ones that omit the parameters. Previous implementation did +not check the parameters value at all which supported both these cases, +but did not reject any other unexpected information. + +Use strict validation of digest algorithm parameters and reject any +unexpected value when validating a signature. This is needed to prevent +potential forging attacks. + +Signed-off-by: Jouni Malinen +Signed-off-by: Peter Korsgaard +--- + src/tls/pkcs1.c | 21 +++++++++++++++++++++ + src/tls/x509v3.c | 20 ++++++++++++++++++++ + 2 files changed, 41 insertions(+) + +diff --git a/src/tls/pkcs1.c b/src/tls/pkcs1.c +index bbdb0d72d..5761dfed0 100644 +--- a/src/tls/pkcs1.c ++++ b/src/tls/pkcs1.c +@@ -244,6 +244,8 @@ int pkcs1_v15_sig_ver(struct crypto_public_key *pk, + os_free(decrypted); + return -1; + } ++ wpa_hexdump(MSG_MSGDUMP, "PKCS #1: DigestInfo", ++ hdr.payload, hdr.length); + + pos = hdr.payload; + end = pos + hdr.length; +@@ -265,6 +267,8 @@ int pkcs1_v15_sig_ver(struct crypto_public_key *pk, + os_free(decrypted); + return -1; + } ++ wpa_hexdump(MSG_MSGDUMP, "PKCS #1: DigestAlgorithmIdentifier", ++ hdr.payload, hdr.length); + da_end = hdr.payload + hdr.length; + + if (asn1_get_oid(hdr.payload, hdr.length, &oid, &next)) { +@@ -273,6 +277,23 @@ int pkcs1_v15_sig_ver(struct crypto_public_key *pk, + os_free(decrypted); + return -1; + } ++ wpa_hexdump(MSG_MSGDUMP, "PKCS #1: Digest algorithm parameters", ++ next, da_end - next); ++ ++ /* ++ * RFC 5754: The correct encoding for the SHA2 algorithms would be to ++ * omit the parameters, but there are implementation that encode these ++ * as a NULL element. Allow these two cases and reject anything else. ++ */ ++ if (da_end > next && ++ (asn1_get_next(next, da_end - next, &hdr) < 0 || ++ !asn1_is_null(&hdr) || ++ hdr.payload + hdr.length != da_end)) { ++ wpa_printf(MSG_DEBUG, ++ "PKCS #1: Unexpected digest algorithm parameters"); ++ os_free(decrypted); ++ return -1; ++ } + + if (!asn1_oid_equal(&oid, hash_alg)) { + char txt[100], txt2[100]; +diff --git a/src/tls/x509v3.c b/src/tls/x509v3.c +index a8944dd2f..df337ec4d 100644 +--- a/src/tls/x509v3.c ++++ b/src/tls/x509v3.c +@@ -1964,6 +1964,7 @@ int x509_check_signature(struct x509_certificate *issuer, + os_free(data); + return -1; + } ++ wpa_hexdump(MSG_MSGDUMP, "X509: DigestInfo", hdr.payload, hdr.length); + + pos = hdr.payload; + end = pos + hdr.length; +@@ -1985,6 +1986,8 @@ int x509_check_signature(struct x509_certificate *issuer, + os_free(data); + return -1; + } ++ wpa_hexdump(MSG_MSGDUMP, "X509: DigestAlgorithmIdentifier", ++ hdr.payload, hdr.length); + da_end = hdr.payload + hdr.length; + + if (asn1_get_oid(hdr.payload, hdr.length, &oid, &next)) { +@@ -1992,6 +1995,23 @@ int x509_check_signature(struct x509_certificate *issuer, + os_free(data); + return -1; + } ++ wpa_hexdump(MSG_MSGDUMP, "X509: Digest algorithm parameters", ++ next, da_end - next); ++ ++ /* ++ * RFC 5754: The correct encoding for the SHA2 algorithms would be to ++ * omit the parameters, but there are implementation that encode these ++ * as a NULL element. Allow these two cases and reject anything else. ++ */ ++ if (da_end > next && ++ (asn1_get_next(next, da_end - next, &hdr) < 0 || ++ !asn1_is_null(&hdr) || ++ hdr.payload + hdr.length != da_end)) { ++ wpa_printf(MSG_DEBUG, ++ "X509: Unexpected digest algorithm parameters"); ++ os_free(data); ++ return -1; ++ } + + if (x509_sha1_oid(&oid)) { + if (signature->oid.oid[6] != 5 /* sha-1WithRSAEncryption */) { +-- +2.20.1 + diff --git a/package/wpa_supplicant/0003-Include-stdbool.h-to-allow-C99-bool-to-be-used.patch b/package/wpa_supplicant/0003-Include-stdbool.h-to-allow-C99-bool-to-be-used.patch new file mode 100644 index 00000000..e52dbdb6 --- /dev/null +++ b/package/wpa_supplicant/0003-Include-stdbool.h-to-allow-C99-bool-to-be-used.patch @@ -0,0 +1,32 @@ +From 99cf89555313056d3a8fa54b21d02dc880b363e1 Mon Sep 17 00:00:00 2001 +From: Jouni Malinen +Date: Mon, 20 Apr 2020 20:29:31 +0300 +Subject: [PATCH] Include stdbool.h to allow C99 bool to be used + +We have practically started requiring some C99 features, so might as +well finally go ahead and bring in the C99 bool as well. + +Signed-off-by: Jouni Malinen +[geomatsi@gmail.com: backport from upstream] +Signed-off-by: Sergey Matyukevich +[yann.morin.1998@free.fr: keep upstream sha1 in header, drop numbering] +Signed-off-by: Yann E. MORIN +--- + src/utils/includes.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/utils/includes.h b/src/utils/includes.h +index 75513fc8c..741fc9c14 100644 +--- a/src/utils/includes.h ++++ b/src/utils/includes.h +@@ -18,6 +18,7 @@ + + #include + #include ++#include + #include + #include + #include +-- +2.25.1 + diff --git a/package/wpa_supplicant/0004-ASN.1-Add-helper-functions-for-recognizing-tag-value.patch b/package/wpa_supplicant/0004-ASN.1-Add-helper-functions-for-recognizing-tag-value.patch new file mode 100644 index 00000000..a5415e7d --- /dev/null +++ b/package/wpa_supplicant/0004-ASN.1-Add-helper-functions-for-recognizing-tag-value.patch @@ -0,0 +1,37 @@ +From 9a990e8c4eb92dd64e0ec483599820e45c35ac23 Mon Sep 17 00:00:00 2001 +From: Jouni Malinen +Date: Sat, 13 Mar 2021 23:14:23 +0200 +Subject: [PATCH] ASN.1: Add helper functions for recognizing tag values + +Signed-off-by: Jouni Malinen +[geomatsi@gmail.com: backport asn1_is_null() from upstream 9a990e8c4eb9] +Signed-off-by: Sergey Matyukevich +[yann.morin.1998@free.fr: + - reformat, keep the upstream sha1 and title, + - drop numbering +] +Signed-off-by: Yann E. MORIN +--- + src/tls/asn1.h | 102 +++++++++++++++++++++++++++++++++++++++++++++++++ + 1 file changed, 102 insertions(+) + +diff --git a/src/tls/asn1.h b/src/tls/asn1.h +index de3430adb..a4d1be473 100644 +--- a/src/tls/asn1.h ++++ b/src/tls/asn1.h +@@ -66,6 +66,12 @@ struct wpabuf * asn1_build_alg_id(const struct asn1_oid *oid, + unsigned long asn1_bit_string_to_long(const u8 *buf, size_t len); + int asn1_oid_equal(const struct asn1_oid *a, const struct asn1_oid *b); + ++static inline bool asn1_is_null(const struct asn1_hdr *hdr) ++{ ++ return hdr->class == ASN1_CLASS_UNIVERSAL && ++ hdr->tag == ASN1_TAG_NULL; ++} ++ + extern struct asn1_oid asn1_sha1_oid; + extern struct asn1_oid asn1_sha256_oid; + +-- +2.25.1 + diff --git a/package/wpa_supplicant/50-wpa_supplicant.preset b/package/wpa_supplicant/50-wpa_supplicant.preset new file mode 100644 index 00000000..9af8562c --- /dev/null +++ b/package/wpa_supplicant/50-wpa_supplicant.preset @@ -0,0 +1,4 @@ +disable wpa_supplicant@.service +disable wpa_supplicant-nl80211@.service +disable wpa_supplicant-wired@.service + diff --git a/package/wpa_supplicant/Config.in b/package/wpa_supplicant/Config.in new file mode 100644 index 00000000..c6e4de1d --- /dev/null +++ b/package/wpa_supplicant/Config.in @@ -0,0 +1,128 @@ +config BR2_PACKAGE_WPA_SUPPLICANT + bool "wpa_supplicant" + depends on BR2_USE_MMU # fork() + help + WPA supplicant for secure wireless networks + + http://w1.fi/wpa_supplicant/ + +if BR2_PACKAGE_WPA_SUPPLICANT + +config BR2_PACKAGE_WPA_SUPPLICANT_NL80211 + bool "Enable nl80211 support" + default y + depends on BR2_TOOLCHAIN_HAS_THREADS # libnl + select BR2_PACKAGE_LIBNL + help + Enable support for nl80211. This is the current wireless + API for Linux, supported by all wireless drivers in vanilla + Linux, but may not be supported by some out-of-tree Linux + wireless drivers. wpa_supplicant will still fall back to + using the Wireless Extensions (wext) API with these drivers. + + If this option is disabled, then only the deprecated wext + API will be supported, with far less features. Linux may + supports using wext with modern drivers using a + compatibility layer, but it must be enabled in the kernel + configuration. + +comment "nl80211 support needs a toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS + +config BR2_PACKAGE_WPA_SUPPLICANT_AP_SUPPORT + bool "Enable AP mode" + depends on BR2_PACKAGE_WPA_SUPPLICANT_NL80211 + help + With this option enabled, wpa_supplicant can act as an + access point much like hostapd does with a limited feature + set. This links in parts of hostapd functionality into + wpa_supplicant, making it bigger but dispensing the need for + a separate hostapd binary in some applications hence being + smaller overall. + +config BR2_PACKAGE_WPA_SUPPLICANT_WIFI_DISPLAY + bool "Enable Wi-Fi Display" + depends on BR2_PACKAGE_WPA_SUPPLICANT_AP_SUPPORT + help + Enable support for Wi-Fi Display + +config BR2_PACKAGE_WPA_SUPPLICANT_MESH_NETWORKING + bool "Enable mesh networking" + depends on BR2_PACKAGE_WPA_SUPPLICANT_AP_SUPPORT + depends on BR2_PACKAGE_LIBOPENSSL_ARCH_SUPPORTS + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_OPENSSL_FORCE_LIBOPENSSL + help + Enable support for open and secured mesh networking + (IEEE 802.11s) + +config BR2_PACKAGE_WPA_SUPPLICANT_AUTOSCAN + bool "Enable autoscan" + help + Enable support for the autoscan feature (allow periodic scan) + +config BR2_PACKAGE_WPA_SUPPLICANT_EAP + bool "Enable EAP" + help + Enable support for EAP. + +config BR2_PACKAGE_WPA_SUPPLICANT_HOTSPOT + bool "Enable HS20" + help + Enable Hotspot 2.0 and IEEE 802.11u interworking + functionality. + +config BR2_PACKAGE_WPA_SUPPLICANT_DEBUG_SYSLOG + bool "Enable syslog support" + help + Enable support for sending debug messages to syslog. + +config BR2_PACKAGE_WPA_SUPPLICANT_WPS + bool "Enable WPS" + help + Enable support for Wi-Fi Protected Setup (WPS). + +config BR2_PACKAGE_WPA_SUPPLICANT_WPA3 + bool "Enable WPA3 support" + depends on BR2_PACKAGE_LIBOPENSSL_ARCH_SUPPORTS + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_OPENSSL_FORCE_LIBOPENSSL + help + Enable WPA3 support including OWE, SAE, DPP + +config BR2_PACKAGE_WPA_SUPPLICANT_CLI + bool "Install wpa_cli binary" + help + Install wpa_cli command line utility + +config BR2_PACKAGE_WPA_SUPPLICANT_WPA_CLIENT_SO + bool "Install wpa_client shared library" + depends on !BR2_STATIC_LIBS + help + Install libwpa_client.so. + +comment "wpa_client library needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS + +config BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE + bool "Install wpa_passphrase binary" + help + Install wpa_passphrase command line utility. + +config BR2_PACKAGE_WPA_SUPPLICANT_DBUS + bool "Enable support for the DBus control interface" + depends on BR2_TOOLCHAIN_HAS_THREADS # dbus + select BR2_PACKAGE_DBUS + help + Enable support for the DBus control interface. + +comment "dbus support needs a toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS + +config BR2_PACKAGE_WPA_SUPPLICANT_DBUS_INTROSPECTION + bool "Introspection support" + depends on BR2_PACKAGE_WPA_SUPPLICANT_DBUS + help + Add introspection support for new DBus control interface. + +endif diff --git a/package/wpa_supplicant/wpa_supplicant.conf b/package/wpa_supplicant/wpa_supplicant.conf new file mode 100644 index 00000000..1994a6c7 --- /dev/null +++ b/package/wpa_supplicant/wpa_supplicant.conf @@ -0,0 +1,6 @@ +ctrl_interface=/var/run/wpa_supplicant +ap_scan=1 + +network={ + key_mgmt=NONE +} diff --git a/package/wpa_supplicant/wpa_supplicant.hash b/package/wpa_supplicant/wpa_supplicant.hash new file mode 100644 index 00000000..2387391a --- /dev/null +++ b/package/wpa_supplicant/wpa_supplicant.hash @@ -0,0 +1,5 @@ +# Locally calculated +sha256 fcbdee7b4a64bea8177973299c8c824419c413ec2e3a95db63dd6a5dc3541f17 wpa_supplicant-2.9.tar.gz +sha256 9da5dd0776da266b180b915e460ff75c6ff729aca1196ab396529510f24f3761 README +sha256 c4d65cc13863e0237d0644198558e2c47b4ed91e2b2be4516ff590724187c4a5 0001-P2P-Fix-copying-of-secondary-device-types-for-P2P-gr.patch +sha256 7f40cfec5faf5e927ea9028ab9392cd118685bde7229ad24210caf0a8f6e9611 0001-P2P-Fix-a-corner-case-in-peer-addition-based-on-PD-R.patch diff --git a/package/wpa_supplicant/wpa_supplicant.mk b/package/wpa_supplicant/wpa_supplicant.mk new file mode 100644 index 00000000..c24bd0c9 --- /dev/null +++ b/package/wpa_supplicant/wpa_supplicant.mk @@ -0,0 +1,248 @@ +################################################################################ +# +# wpa_supplicant +# +################################################################################ + +WPA_SUPPLICANT_VERSION = 2.9 +WPA_SUPPLICANT_SITE = http://w1.fi/releases +WPA_SUPPLICANT_PATCH = \ + https://w1.fi/security/2020-2/0001-P2P-Fix-copying-of-secondary-device-types-for-P2P-gr.patch \ + https://w1.fi/security/2021-1/0001-P2P-Fix-a-corner-case-in-peer-addition-based-on-PD-R.patch +WPA_SUPPLICANT_LICENSE = BSD-3-Clause +WPA_SUPPLICANT_LICENSE_FILES = README +WPA_SUPPLICANT_CPE_ID_VENDOR = w1.fi +WPA_SUPPLICANT_CONFIG = $(WPA_SUPPLICANT_DIR)/wpa_supplicant/.config +WPA_SUPPLICANT_SUBDIR = wpa_supplicant +WPA_SUPPLICANT_DBUS_OLD_SERVICE = fi.epitest.hostap.WPASupplicant +WPA_SUPPLICANT_DBUS_NEW_SERVICE = fi.w1.wpa_supplicant1 +WPA_SUPPLICANT_CFLAGS = $(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include/libnl3/ +WPA_SUPPLICANT_LDFLAGS = $(TARGET_LDFLAGS) +WPA_SUPPLICANT_SELINUX_MODULES = networkmanager + +# 0001-AP-Silently-ignore-management-frame-from-unexpected-.patch +WPA_SUPPLICANT_IGNORE_CVES += CVE-2019-16275 + +# 0001-P2P-Fix-a-corner-case-in-peer-addition-based-on-PD-R.patch +WPA_SUPPLICANT_IGNORE_CVES += CVE-2021-27803 + +# 0002-ASN.1-Validate-DigestAlgorithmIdentifier-parameters.patch +WPA_SUPPLICANT_IGNORE_CVES += CVE-2021-30004 + +# install the wpa_client library +WPA_SUPPLICANT_INSTALL_STAGING = YES + +WPA_SUPPLICANT_CONFIG_EDITS = + +# Add support for simple background scan +WPA_SUPPLICANT_CONFIG_SET = CONFIG_BGSCAN_SIMPLE + +WPA_SUPPLICANT_CONFIG_ENABLE = \ + CONFIG_IEEE80211AC \ + CONFIG_IEEE80211N \ + CONFIG_IEEE80211R \ + CONFIG_INTERNAL_LIBTOMMATH \ + CONFIG_DEBUG_FILE \ + CONFIG_MATCH_IFACE + +WPA_SUPPLICANT_CONFIG_DISABLE = \ + CONFIG_SMARTCARD + +# libnl-3 needs -lm (for rint) and -lpthread if linking statically +# And library order matters hence stick -lnl-3 first since it's appended +# in the wpa_supplicant Makefiles as in LIBS+=-lnl-3 ... thus failing +ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_NL80211),y) +ifeq ($(BR2_STATIC_LIBS),y) +WPA_SUPPLICANT_LIBS += -lnl-3 -lm -lpthread +endif +WPA_SUPPLICANT_DEPENDENCIES += host-pkgconf libnl +WPA_SUPPLICANT_CONFIG_ENABLE += CONFIG_LIBNL32 +else +WPA_SUPPLICANT_CONFIG_DISABLE += CONFIG_DRIVER_NL80211 +endif + +# Trailing underscore on purpose to not enable CONFIG_EAPOL_TEST +ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_EAP),y) +WPA_SUPPLICANT_CONFIG_ENABLE += CONFIG_EAP_ +# uses dlopen() +ifeq ($(BR2_STATIC_LIBS),y) +WPA_SUPPLICANT_CONFIG_DISABLE += CONFIG_EAP_TNC +endif +else +WPA_SUPPLICANT_CONFIG_DISABLE += CONFIG_EAP +endif + +ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_HOTSPOT),y) +WPA_SUPPLICANT_CONFIG_ENABLE += CONFIG_HS20 \ + CONFIG_INTERWORKING +endif + +ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_AP_SUPPORT),y) +WPA_SUPPLICANT_CONFIG_ENABLE += \ + CONFIG_AP \ + CONFIG_P2P +else +WPA_SUPPLICANT_CONFIG_DISABLE += \ + CONFIG_AP \ + CONFIG_P2P +endif + +ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_WIFI_DISPLAY),y) +WPA_SUPPLICANT_CONFIG_ENABLE += CONFIG_WIFI_DISPLAY +else +WPA_SUPPLICANT_CONFIG_DISABLE += CONFIG_WIFI_DISPLAY +endif + +ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_MESH_NETWORKING),y) +WPA_SUPPLICANT_CONFIG_SET += CONFIG_MESH +WPA_SUPPLICANT_CONFIG_ENABLE += CONFIG_IEEE80211W +endif + +ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_AUTOSCAN),y) +WPA_SUPPLICANT_CONFIG_ENABLE += \ + CONFIG_AUTOSCAN_EXPONENTIAL \ + CONFIG_AUTOSCAN_PERIODIC +endif + +ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_WPS),y) +WPA_SUPPLICANT_CONFIG_ENABLE += CONFIG_WPS +endif + +ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_WPA3),y) +WPA_SUPPLICANT_CONFIG_ENABLE += \ + CONFIG_DPP \ + CONFIG_SAE \ + CONFIG_OWE +else +WPA_SUPPLICANT_CONFIG_DISABLE += \ + CONFIG_DPP \ + CONFIG_SAE \ + CONFIG_OWE +endif + +# Try to use openssl if it's already available +ifeq ($(BR2_PACKAGE_LIBOPENSSL),y) +WPA_SUPPLICANT_DEPENDENCIES += host-pkgconf libopenssl +WPA_SUPPLICANT_LIBS += `$(PKG_CONFIG_HOST_BINARY) --libs openssl` +WPA_SUPPLICANT_CONFIG_EDITS += 's/\#\(CONFIG_TLS=openssl\)/\1/' +else +WPA_SUPPLICANT_CONFIG_DISABLE += CONFIG_EAP_PWD CONFIG_EAP_TEAP +WPA_SUPPLICANT_CONFIG_EDITS += 's/\#\(CONFIG_TLS=\).*/\1internal/' +endif + +ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_DBUS),y) +WPA_SUPPLICANT_DEPENDENCIES += host-pkgconf dbus +WPA_SUPPLICANT_MAKE_ENV = \ + PKG_CONFIG_SYSROOT_DIR="$(STAGING_DIR)" \ + PKG_CONFIG_PATH="$(STAGING_DIR)/usr/lib/pkgconfig" +WPA_SUPPLICANT_CONFIG_ENABLE += CONFIG_CTRL_IFACE_DBUS_NEW +define WPA_SUPPLICANT_INSTALL_DBUS_NEW + $(INSTALL) -m 0644 -D \ + $(@D)/wpa_supplicant/dbus/$(WPA_SUPPLICANT_DBUS_NEW_SERVICE).service \ + $(TARGET_DIR)/usr/share/dbus-1/system-services/$(WPA_SUPPLICANT_DBUS_NEW_SERVICE).service +endef + +ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_DBUS_INTROSPECTION),y) +WPA_SUPPLICANT_CONFIG_ENABLE += CONFIG_CTRL_IFACE_DBUS_INTRO +endif + +else +WPA_SUPPLICANT_CONFIG_DISABLE += CONFIG_CTRL_IFACE_DBUS_NEW +endif + +ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_DEBUG_SYSLOG),y) +WPA_SUPPLICANT_CONFIG_ENABLE += CONFIG_DEBUG_SYSLOG +endif + +ifeq ($(BR2_PACKAGE_READLINE),y) +WPA_SUPPLICANT_DEPENDENCIES += readline +WPA_SUPPLICANT_CONFIG_ENABLE += CONFIG_READLINE +endif + +ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_WPA_CLIENT_SO),y) +WPA_SUPPLICANT_CONFIG_SET += CONFIG_BUILD_WPA_CLIENT_SO +define WPA_SUPPLICANT_INSTALL_WPA_CLIENT_SO + $(INSTALL) -m 0644 -D $(@D)/$(WPA_SUPPLICANT_SUBDIR)/libwpa_client.so \ + $(TARGET_DIR)/usr/lib/libwpa_client.so + $(INSTALL) -m 0644 -D $(@D)/src/common/wpa_ctrl.h \ + $(TARGET_DIR)/usr/include/wpa_ctrl.h +endef +define WPA_SUPPLICANT_INSTALL_STAGING_WPA_CLIENT_SO + $(INSTALL) -m 0644 -D $(@D)/$(WPA_SUPPLICANT_SUBDIR)/libwpa_client.so \ + $(STAGING_DIR)/usr/lib/libwpa_client.so + $(INSTALL) -m 0644 -D $(@D)/src/common/wpa_ctrl.h \ + $(STAGING_DIR)/usr/include/wpa_ctrl.h +endef +endif + +define WPA_SUPPLICANT_CONFIGURE_CMDS + cp $(@D)/wpa_supplicant/defconfig $(WPA_SUPPLICANT_CONFIG) + sed -i $(patsubst %,-e 's/^#\(%\)/\1/',$(WPA_SUPPLICANT_CONFIG_ENABLE)) \ + $(patsubst %,-e 's/^\(%\)/#\1/',$(WPA_SUPPLICANT_CONFIG_DISABLE)) \ + $(patsubst %,-e '1i%=y',$(WPA_SUPPLICANT_CONFIG_SET)) \ + $(patsubst %,-e %,$(WPA_SUPPLICANT_CONFIG_EDITS)) \ + $(WPA_SUPPLICANT_CONFIG) +endef + +# LIBS for wpa_supplicant, LIBS_c for wpa_cli, LIBS_p for wpa_passphrase +define WPA_SUPPLICANT_BUILD_CMDS + $(TARGET_MAKE_ENV) CFLAGS="$(WPA_SUPPLICANT_CFLAGS)" \ + LDFLAGS="$(TARGET_LDFLAGS)" BINDIR=/usr/sbin \ + LIBS="$(WPA_SUPPLICANT_LIBS)" LIBS_c="$(WPA_SUPPLICANT_LIBS)" \ + LIBS_p="$(WPA_SUPPLICANT_LIBS)" \ + $(MAKE) CC="$(TARGET_CC)" -C $(@D)/$(WPA_SUPPLICANT_SUBDIR) +endef + +ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_CLI),y) +define WPA_SUPPLICANT_INSTALL_CLI + $(INSTALL) -m 0755 -D $(@D)/$(WPA_SUPPLICANT_SUBDIR)/wpa_cli \ + $(TARGET_DIR)/usr/sbin/wpa_cli +endef +endif + +ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE),y) +define WPA_SUPPLICANT_INSTALL_PASSPHRASE + $(INSTALL) -m 0755 -D $(@D)/$(WPA_SUPPLICANT_SUBDIR)/wpa_passphrase \ + $(TARGET_DIR)/usr/sbin/wpa_passphrase +endef +endif + +ifeq ($(BR2_PACKAGE_DBUS),y) +define WPA_SUPPLICANT_INSTALL_DBUS + $(INSTALL) -m 0644 -D \ + $(@D)/wpa_supplicant/dbus/dbus-wpa_supplicant.conf \ + $(TARGET_DIR)/etc/dbus-1/system.d/wpa_supplicant.conf + $(WPA_SUPPLICANT_INSTALL_DBUS_OLD) + $(WPA_SUPPLICANT_INSTALL_DBUS_NEW) +endef +endif + +define WPA_SUPPLICANT_INSTALL_STAGING_CMDS + $(WPA_SUPPLICANT_INSTALL_STAGING_WPA_CLIENT_SO) +endef + +define WPA_SUPPLICANT_INSTALL_TARGET_CMDS + $(INSTALL) -m 0755 -D $(@D)/$(WPA_SUPPLICANT_SUBDIR)/wpa_supplicant \ + $(TARGET_DIR)/usr/sbin/wpa_supplicant + $(INSTALL) -m 644 -D package/wpa_supplicant/wpa_supplicant.conf \ + $(TARGET_DIR)/etc/wpa_supplicant.conf + $(WPA_SUPPLICANT_INSTALL_CLI) + $(WPA_SUPPLICANT_INSTALL_PASSPHRASE) + $(WPA_SUPPLICANT_INSTALL_DBUS) + $(WPA_SUPPLICANT_INSTALL_WPA_CLIENT_SO) +endef + +define WPA_SUPPLICANT_INSTALL_INIT_SYSTEMD + $(INSTALL) -m 0644 -D $(@D)/$(WPA_SUPPLICANT_SUBDIR)/systemd/wpa_supplicant.service \ + $(TARGET_DIR)/usr/lib/systemd/system/wpa_supplicant.service + $(INSTALL) -m 0644 -D $(@D)/$(WPA_SUPPLICANT_SUBDIR)/systemd/wpa_supplicant@.service \ + $(TARGET_DIR)/usr/lib/systemd/system/wpa_supplicant@.service + $(INSTALL) -m 0644 -D $(@D)/$(WPA_SUPPLICANT_SUBDIR)/systemd/wpa_supplicant-nl80211@.service \ + $(TARGET_DIR)/usr/lib/systemd/system/wpa_supplicant-nl80211@.service + $(INSTALL) -m 0644 -D $(@D)/$(WPA_SUPPLICANT_SUBDIR)/systemd/wpa_supplicant-wired@.service \ + $(TARGET_DIR)/usr/lib/systemd/system/wpa_supplicant-wired@.service + $(INSTALL) -D -m 644 $(WPA_SUPPLICANT_PKGDIR)/50-wpa_supplicant.preset \ + $(TARGET_DIR)/usr/lib/systemd/system-preset/50-wpa_supplicant.preset +endef + +$(eval $(generic-package)) diff --git a/package/wpan-tools/Config.in b/package/wpan-tools/Config.in new file mode 100644 index 00000000..9e327420 --- /dev/null +++ b/package/wpan-tools/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_WPAN_TOOLS + bool "wpan-tools" + depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_LIBNL + help + Userspace tools for Linux IEEE 802.15.4 stack. + + http://wpan.cakelab.org/ + +comment "wpan-tools needs a toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/wpan-tools/wpan-tools.hash b/package/wpan-tools/wpan-tools.hash new file mode 100644 index 00000000..c9f0df2c --- /dev/null +++ b/package/wpan-tools/wpan-tools.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 3e509d9ed838df1247cc9a0c6ca483cb356ae778851817bd7410044687b655e2 wpan-tools-0.9.tar.gz +sha256 fe8e595c24d821a60885eb259619df5e5e3976c48465fde0be29fcd78530798f COPYING diff --git a/package/wpan-tools/wpan-tools.mk b/package/wpan-tools/wpan-tools.mk new file mode 100644 index 00000000..d8898a72 --- /dev/null +++ b/package/wpan-tools/wpan-tools.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# wpan-tools +# +################################################################################ + +WPAN_TOOLS_VERSION = 0.9 +WPAN_TOOLS_SITE = $(call github,linux-wpan,wpan-tools,wpan-tools-$(WPAN_TOOLS_VERSION)) +WPAN_TOOLS_DEPENDENCIES = host-pkgconf libnl +WPAN_TOOLS_LICENSE = ISC +WPAN_TOOLS_LICENSE_FILES = COPYING +# From git +WPAN_TOOLS_AUTORECONF = YES + +$(eval $(autotools-package)) diff --git a/package/wpebackend-fdo/Config.in b/package/wpebackend-fdo/Config.in new file mode 100644 index 00000000..8a8c820c --- /dev/null +++ b/package/wpebackend-fdo/Config.in @@ -0,0 +1,20 @@ +comment "wpebackend-fdo needs a toolchain w/ C++, wchar, threads, dynamic library and an OpenEGL-capable Wayland backend" + depends on !BR2_PACKAGE_HAS_LIBEGL_WAYLAND || !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR \ + || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS + +config BR2_PACKAGE_WPEBACKEND_FDO + bool "wpebackend-fdo" + depends on !BR2_STATIC_LIBS # wayland + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS # wayland, libglib2 + depends on BR2_USE_WCHAR # libglib2 + depends on BR2_USE_MMU # libglib2 + depends on BR2_PACKAGE_HAS_LIBEGL_WAYLAND + select BR2_PACKAGE_LIBEPOXY + select BR2_PACKAGE_LIBGLIB2 + select BR2_PACKAGE_LIBWPE + select BR2_PACKAGE_WAYLAND + help + WPEBackend interface using freedesktop.org API. + + https://wpewebkit.org/ diff --git a/package/wpebackend-fdo/wpebackend-fdo.hash b/package/wpebackend-fdo/wpebackend-fdo.hash new file mode 100644 index 00000000..27e827ae --- /dev/null +++ b/package/wpebackend-fdo/wpebackend-fdo.hash @@ -0,0 +1,7 @@ +# From https://wpewebkit.org/releases/wpebackend-fdo-1.8.3.tar.xz.sums +md5 980cbda207bf8f6263799c5062425737 wpebackend-fdo-1.8.3.tar.xz +sha1 c849043039d805448715be90cb5b3491f0a90c5f wpebackend-fdo-1.8.3.tar.xz +sha256 3d0b4282a1bd9e0664d7a20abe14e982f3285296ac62de56cae2a404b9d28b9e wpebackend-fdo-1.8.3.tar.xz + +# Hashes for license files: +sha256 c9f6803371047fad3e72200ec6cd226329a5ee08ac61104c8211c2761fb46825 COPYING diff --git a/package/wpebackend-fdo/wpebackend-fdo.mk b/package/wpebackend-fdo/wpebackend-fdo.mk new file mode 100644 index 00000000..5f7e7acf --- /dev/null +++ b/package/wpebackend-fdo/wpebackend-fdo.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# wpebackend-fdo +# +################################################################################ + +WPEBACKEND_FDO_VERSION = 1.8.3 +WPEBACKEND_FDO_SITE = https://wpewebkit.org/releases +WPEBACKEND_FDO_SOURCE = wpebackend-fdo-$(WPEBACKEND_FDO_VERSION).tar.xz +WPEBACKEND_FDO_INSTALL_STAGING = YES +WPEBACKEND_FDO_LICENSE = BSD-2-Clause +WPEBACKEND_FDO_LICENSE_FILES = COPYING +WPEBACKEND_FDO_DEPENDENCIES = libepoxy libglib2 libwpe wayland + +$(eval $(meson-package)) diff --git a/package/wpewebkit/0001-Fix-build-with-musl.patch b/package/wpewebkit/0001-Fix-build-with-musl.patch new file mode 100644 index 00000000..705c67c7 --- /dev/null +++ b/package/wpewebkit/0001-Fix-build-with-musl.patch @@ -0,0 +1,79 @@ +From cc3c27a7e997ef157ed469127f185a7bb6eb1feb Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Mon, 27 May 2019 23:51:32 +0200 +Subject: [PATCH] Fix build with musl + +Signed-off-by: Khem Raj +[Retrieved (and slightly updated) from: +https://github.com/WebPlatformForEmbedded/meta-wpe/blob/master/recipes-wpe/wpewebkit/wpewebkit/0001-Fix-build-with-musl.patch] +Signed-off-by: Fabrice Fontaine +--- + Source/JavaScriptCore/runtime/MachineContext.h | 10 +++++----- + Source/WTF/wtf/PlatformHave.h | 2 +- + 2 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/Source/JavaScriptCore/runtime/MachineContext.h b/Source/JavaScriptCore/runtime/MachineContext.h +index bf0bdc7a51a..78d2ec81838 100644 +--- a/Source/JavaScriptCore/runtime/MachineContext.h ++++ b/Source/JavaScriptCore/runtime/MachineContext.h +@@ -146,7 +146,7 @@ inline void*& stackPointer(mcontext_t& machineContext) + #error Unknown Architecture + #endif + +-#elif OS(FUCHSIA) || defined(__GLIBC__) || defined(__BIONIC__) ++#elif OS(FUCHSIA) || OS(LINUX) || defined(__BIONIC__) + + #if CPU(X86) + return reinterpret_cast((uintptr_t&) machineContext.gregs[REG_ESP]); +@@ -251,7 +251,7 @@ inline void*& framePointer(mcontext_t& machineContext) + #error Unknown Architecture + #endif + +-#elif OS(FUCHSIA) || defined(__GLIBC__) || defined(__BIONIC__) ++#elif OS(FUCHSIA) || OS(LINUX) || defined(__BIONIC__) + + // The following sequence depends on glibc's sys/ucontext.h. + #if CPU(X86) +@@ -354,7 +354,7 @@ inline void*& instructionPointer(mcontext_t& machineContext) + #error Unknown Architecture + #endif + +-#elif OS(FUCHSIA) || defined(__GLIBC__) || defined(__BIONIC__) ++#elif OS(FUCHSIA) || OS(LINUX) || defined(__BIONIC__) + + // The following sequence depends on glibc's sys/ucontext.h. + #if CPU(X86) +@@ -466,7 +466,7 @@ inline void*& argumentPointer<1>(mcontext_t& machineContext) + #error Unknown Architecture + #endif + +-#elif OS(FUCHSIA) || defined(__GLIBC__) || defined(__BIONIC__) ++#elif OS(FUCHSIA) || OS(LINUX) || defined(__BIONIC__) + + // The following sequence depends on glibc's sys/ucontext.h. + #if CPU(X86) +@@ -583,7 +583,7 @@ inline void*& llintInstructionPointer(mcontext_t& machineContext) + #error Unknown Architecture + #endif + +-#elif OS(FUCHSIA) || defined(__GLIBC__) || defined(__BIONIC__) ++#elif OS(FUCHSIA) || OS(LINUX) || defined(__BIONIC__) + + // The following sequence depends on glibc's sys/ucontext.h. + #if CPU(X86) +diff --git a/Source/WTF/wtf/Platform.h b/Source/WTF/wtf/Platform.h +index e2a3388993f..95fe7c593cf 100644 +--- a/Source/WTF/wtf/PlatformHave.h ++++ b/Source/WTF/wtf/PlatformHave.h +@@ -683,7 +683,7 @@ + #define HAVE_CFNETWORK_STORAGE_PARTITIONING 1 + #endif + +-#if OS(DARWIN) || OS(FUCHSIA) || ((OS(FREEBSD) || defined(__GLIBC__) || defined(__BIONIC__)) && (CPU(X86) || CPU(X86_64) || CPU(ARM) || CPU(ARM64) || CPU(MIPS))) ++#if OS(DARWIN) || OS(FUCHSIA) || ((OS(FREEBSD) || OS(LINUX) || defined(__BIONIC__)) && (CPU(X86) || CPU(X86_64) || CPU(ARM) || CPU(ARM64) || CPU(MIPS))) + #define HAVE_MACHINE_CONTEXT 1 + #endif + +-- +2.20.1 + diff --git a/package/wpewebkit/Config.in b/package/wpewebkit/Config.in new file mode 100644 index 00000000..c8c66e84 --- /dev/null +++ b/package/wpewebkit/Config.in @@ -0,0 +1,128 @@ +config BR2_PACKAGE_WPEWEBKIT_ARCH_SUPPORTS + bool + # ARM needs BLX, so v5t+, BE completely untested so disabled + default y if BR2_arm && !BR2_ARM_CPU_ARMV4 + default y if BR2_aarch64 || BR2_aarch64_be + default y if BR2_i386 || BR2_x86_64 + # Disabled on MIPS big endian due to sigbus + default y if BR2_mipsel || BR2_mips64el + # Disabled on PowerPC pending runtime testing + # Disabled on SuperH because of segfault + depends on BR2_USE_MMU # libglib2 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt + +comment "wpewebkit needs a toolchain w/ C++, wchar, threads, dynamic library, gcc >= 7, host gcc >= 4.9" + depends on BR2_PACKAGE_WPEWEBKIT_ARCH_SUPPORTS + depends on !BR2_BINFMT_FLAT + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR \ + || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS \ + || !BR2_TOOLCHAIN_GCC_AT_LEAST_7 \ + || !BR2_HOST_GCC_AT_LEAST_4_9 + +comment "wpewebkit needs an OpenGL ES w/ EGL-capable Wayland backend" + depends on BR2_PACKAGE_WPEWEBKIT_ARCH_SUPPORTS + depends on !BR2_BINFMT_FLAT + depends on !BR2_PACKAGE_HAS_LIBGLES || !BR2_PACKAGE_HAS_LIBEGL \ + || !BR2_PACKAGE_HAS_LIBEGL_WAYLAND + +config BR2_PACKAGE_WPEWEBKIT + bool "wpewebkit" + depends on !BR2_STATIC_LIBS # wayland + depends on !BR2_BINFMT_FLAT # icu + depends on BR2_HOST_GCC_AT_LEAST_4_9 # icu + depends on BR2_INSTALL_LIBSTDCPP # harfbuzz, icu + depends on BR2_TOOLCHAIN_HAS_THREADS # wayland, icu, libsoup + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_7 + depends on BR2_USE_WCHAR # icu, libsoup + depends on BR2_PACKAGE_HAS_LIBGLES # libepoxy + depends on BR2_PACKAGE_HAS_LIBEGL # libepoxy + depends on BR2_PACKAGE_HAS_LIBEGL_WAYLAND # wpebackend-fdo + depends on BR2_PACKAGE_WPEWEBKIT_ARCH_SUPPORTS + select BR2_PACKAGE_CAIRO + select BR2_PACKAGE_CAIRO_PNG + select BR2_PACKAGE_HARFBUZZ + select BR2_PACKAGE_ICU + select BR2_PACKAGE_JPEG + select BR2_PACKAGE_LIBEPOXY + select BR2_PACKAGE_LIBGCRYPT + select BR2_PACKAGE_LIBPNG + select BR2_PACKAGE_LIBSOUP + select BR2_PACKAGE_LIBTASN1 + select BR2_PACKAGE_LIBXSLT + select BR2_PACKAGE_OPENJPEG + select BR2_PACKAGE_WAYLAND + select BR2_PACKAGE_WAYLAND_PROTOCOLS + select BR2_PACKAGE_WEBP + select BR2_PACKAGE_WEBP_DEMUX + select BR2_PACKAGE_WPEBACKEND_FDO + help + WPE (Web Platform for Embedded) port of the WebKit engine, + to allow embedders to create simple and performant systems + based on Web platform technologies. + + https://wpewebkit.org/ + +if BR2_PACKAGE_WPEWEBKIT + +config BR2_PACKAGE_WPEWEBKIT_SANDBOX + bool "sandboxing support" + depends on BR2_PACKAGE_LIBSECCOMP_ARCH_SUPPORTS # libseccomp + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 # libseccomp + select BR2_PACKAGE_BUBBLEWRAP # runtime + select BR2_PACKAGE_XDG_DBUS_PROXY # runtime + select BR2_PACKAGE_LIBSECCOMP + help + Enable sandboxing of the processes used for network operation, + disk asccess, and Web content rendering. + +comment "sandboxing supports needs a toolchain w/ headers >= 3.12" + depends on BR2_PACKAGE_LIBSECCOMP_ARCH_SUPPORTS + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 + +config BR2_PACKAGE_WPEWEBKIT_MULTIMEDIA + bool "multimedia support" + select BR2_PACKAGE_GSTREAMER1 + select BR2_PACKAGE_GST1_PLUGINS_BAD + select BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_MPEGTSDEMUX + select BR2_PACKAGE_GST1_PLUGINS_BASE + select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_ALSA + select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_APP + select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_AUDIOCONVERT + select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_AUDIORESAMPLE + select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_PLAYBACK + select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_VIDEOCONVERT + select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_VIDEOSCALE + select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_VOLUME + select BR2_PACKAGE_GST1_PLUGINS_GOOD + select BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_AUTODETECT + select BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_ISOMP4 + select BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_MATROSKA + select BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_RTSP + select BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_VPX + select BR2_PACKAGE_GST1_LIBAV + help + This option pulls in all of the required dependencies + to enable multimedia (video/audio) support. + +if BR2_PACKAGE_WPEWEBKIT_MULTIMEDIA + +config BR2_PACKAGE_WPEWEBKIT_USE_GSTREAMER_GL + bool "use gstreamer-gl" + default y + depends on BR2_PACKAGE_GST1_PLUGINS_BASE_LIB_OPENGL_OPENGL + help + Use the GStreamer GL elements for handling video content. + This is recommended as it improves performance of video + playback. In some target configurations incorrect rendering + might be produced, and disabling this option may help. + +endif + +config BR2_PACKAGE_WPEWEBKIT_WEBDRIVER + bool "WebDriver support" + help + Enable support for WebDriver. This will build and install the + WebKitWebDriver program in the target. + +endif diff --git a/package/wpewebkit/wpewebkit.hash b/package/wpewebkit/wpewebkit.hash new file mode 100644 index 00000000..c3aa8d41 --- /dev/null +++ b/package/wpewebkit/wpewebkit.hash @@ -0,0 +1,8 @@ +# From https://wpewebkit.org/releases/wpewebkit-2.30.6.tar.xz.sums +md5 e35b31932ad3da6c06736d8f2d347072 wpewebkit-2.30.6.tar.xz +sha1 25a481e97e463df08fb2c0b0fa5d4299938670ac wpewebkit-2.30.6.tar.xz +sha256 893a3098226f116bbb38a665a3053c7d30e3c5dca786b954f9aa38f8c8581468 wpewebkit-2.30.6.tar.xz + +# Hashes for license files: +sha256 0b5d3a7cc325942567373b0ecd757d07c132e0ebd7c97bfc63f7e1a76094edb4 Source/WebCore/LICENSE-APPLE +sha256 f2b3bd09663381deb99721109d22b47af1213bb43007a8b56a06c6375c8050ce Source/WebCore/LICENSE-LGPL-2.1 diff --git a/package/wpewebkit/wpewebkit.mk b/package/wpewebkit/wpewebkit.mk new file mode 100644 index 00000000..b18ee2a3 --- /dev/null +++ b/package/wpewebkit/wpewebkit.mk @@ -0,0 +1,89 @@ +################################################################################ +# +# wpewebkit +# +################################################################################ + +WPEWEBKIT_VERSION = 2.30.6 +WPEWEBKIT_SITE = http://www.wpewebkit.org/releases +WPEWEBKIT_SOURCE = wpewebkit-$(WPEWEBKIT_VERSION).tar.xz +WPEWEBKIT_INSTALL_STAGING = YES +WPEWEBKIT_LICENSE = LGPL-2.1+, BSD-2-Clause +WPEWEBKIT_LICENSE_FILES = \ + Source/WebCore/LICENSE-APPLE \ + Source/WebCore/LICENSE-LGPL-2.1 +WPEWEBKIT_CPE_ID_VENDOR = wpewebkit +WPEWEBKIT_CPE_ID_PRODUCT = wpe_webkit +WPEWEBKIT_DEPENDENCIES = host-gperf host-python host-ruby \ + harfbuzz cairo icu jpeg libepoxy libgcrypt libgles libsoup libtasn1 \ + libpng libxslt openjpeg wayland-protocols webp wpebackend-fdo + +WPEWEBKIT_CONF_OPTS = \ + -DPORT=WPE \ + -DENABLE_ACCESSIBILITY=OFF \ + -DENABLE_API_TESTS=OFF \ + -DENABLE_MINIBROWSER=OFF \ + -DSILENCE_CROSS_COMPILATION_NOTICES=ON + +ifeq ($(BR2_PACKAGE_WPEWEBKIT_SANDBOX),y) +WPEWEBKIT_CONF_OPTS += \ + -DENABLE_BUBBLEWRAP_SANDBOX=ON \ + -DBWRAP_EXECUTABLE=/usr/bin/bwrap \ + -DDBUS_PROXY_EXECUTABLE=/usr/bin/xdg-dbus-proxy +WPEWEBKIT_DEPENDENCIES += libseccomp +else +WPEWEBKIT_CONF_OPTS += -DENABLE_BUBBLEWRAP_SANDBOX=OFF +endif + +ifeq ($(BR2_PACKAGE_WPEWEBKIT_MULTIMEDIA),y) +WPEWEBKIT_CONF_OPTS += \ + -DENABLE_VIDEO=ON \ + -DENABLE_WEB_AUDIO=ON +WPEWEBKIT_DEPENDENCIES += gstreamer1 gst1-libav gst1-plugins-base gst1-plugins-good +else +WPEWEBKIT_CONF_OPTS += \ + -DENABLE_VIDEO=OFF \ + -DENABLE_WEB_AUDIO=OFF +endif + +ifeq ($(BR2_PACKAGE_WPEWEBKIT_USE_GSTREAMER_GL),y) +WPEWEBKIT_CONF_OPTS += -DUSE_GSTREAMER_GL=ON +else +WPEWEBKIT_CONF_OPTS += -DUSE_GSTREAMER_GL=OFF +endif + +ifeq ($(BR2_PACKAGE_WPEWEBKIT_WEBDRIVER),y) +WPEWEBKIT_CONF_OPTS += -DENABLE_WEBDRIVER=ON +else +WPEWEBKIT_CONF_OPTS += -DENABLE_WEBDRIVER=OFF +endif + +ifeq ($(BR2_PACKAGE_WOFF2),y) +WPEWEBKIT_CONF_OPTS += -DUSE_WOFF2=ON +WPEWEBKIT_DEPENDENCIES += woff2 +else +WPEWEBKIT_CONF_OPTS += -DUSE_WOFF2=OFF +endif + +ifeq ($(BR2_INIT_SYSTEMD),y) +WPEWEBKIT_CONF_OPTS += -DUSE_SYSTEMD=ON +WPEWEBKIT_DEPENDENCIES += systemd +else +WPEWEBKIT_CONF_OPTS += -DUSE_SYSTEMD=OFF +endif + +# JIT is not supported for MIPS r6, but the WebKit build system does not +# have a check for these processors. The same goes for ARMv5 and ARMv6. +# Disable JIT forcibly here and use the CLoop interpreter instead. +# +# Also, we have to disable the sampling profiler, which does NOT work +# with ENABLE_C_LOOP. +# +# Upstream bugs: https://bugs.webkit.org/show_bug.cgi?id=191258 +# https://bugs.webkit.org/show_bug.cgi?id=172765 +# +ifeq ($(BR2_ARM_CPU_ARMV5)$(BR2_ARM_CPU_ARMV6)$(BR2_MIPS_CPU_MIPS32R6)$(BR2_MIPS_CPU_MIPS64R6),y) +WPEWEBKIT_CONF_OPTS += -DENABLE_JIT=OFF -DENABLE_C_LOOP=ON -DENABLE_SAMPLING_PROFILER=OFF +endif + +$(eval $(cmake-package)) diff --git a/package/wqy-zenhei/Config.in b/package/wqy-zenhei/Config.in new file mode 100644 index 00000000..f9135e01 --- /dev/null +++ b/package/wqy-zenhei/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_WQY_ZENHEI + bool "wqy-zenhei" + help + "WenQuanYi Zen Hei" is a Hei-Ti Style (sans-serif) Chinese + font capable of text formatting and on-screen display of + both simplified and traditional forms of Chinese Hanzi + glyphs (among many other languages). Both the proportional + "WenQuanYi Zen Hei", as well as the monospaced typeface + "WenQuanYi Zen Hei Mono" provides over 35,000 glyphs, + including over 21,000 Chinese Hanzi. This font provides full + coverage of GBK (CP936) charset, CJK Unified Ideographs, as + well as the code-points needed for zh_CN, zh_SG, zh_TW, + zh_HK, zh_MO, ja (Japanese) and ko (Korean) locales for + fontconfig. + + https://sourceforge.net/projects/wqy/ diff --git a/package/wqy-zenhei/wqy-zenhei.hash b/package/wqy-zenhei/wqy-zenhei.hash new file mode 100644 index 00000000..386f16eb --- /dev/null +++ b/package/wqy-zenhei/wqy-zenhei.hash @@ -0,0 +1,6 @@ +# from https://sourceforge.net/projects/wqy/files/wqy-zenhei/0.9.45%20%28Fighting-state%20RC1%29/ +md5 4c6c3f4e902dd5ee0a121e8c41d040bd wqy-zenhei-0.9.45.tar.gz +sha1 b86b65d3048ade868fcc89229cfac6baf80a3e54 wqy-zenhei-0.9.45.tar.gz +# locally calculated +sha256 e4b7e306475bf9427d1757578f0e4528930c84c44eaa3f167d4c42f110ee75d6 wqy-zenhei-0.9.45.tar.gz +sha256 871c2a85e6bbf7bec65043820b706a265ed95d4e58c577fbb2c9f60c39c26ca7 COPYING diff --git a/package/wqy-zenhei/wqy-zenhei.mk b/package/wqy-zenhei/wqy-zenhei.mk new file mode 100644 index 00000000..88e60f3e --- /dev/null +++ b/package/wqy-zenhei/wqy-zenhei.mk @@ -0,0 +1,27 @@ +################################################################################ +# +# wqy-zenhei +# +################################################################################ + +WQY_ZENHEI_VERSION = 0.9.45 +WQY_ZENHEI_SITE = https://downloads.sourceforge.net/project/wqy/wqy-zenhei/$(WQY_ZENHEI_VERSION)%20%28Fighting-state%20RC1%29 +WQY_ZENHEI_LICENSE = GPL-2.0-with-font-exception +WQY_ZENHEI_LICENSE_FILES = COPYING + +ifeq ($(BR2_PACKAGE_FONTCONFIG),y) +define WQY_ZENHEI_FONTCONFIG_CONF_INSTALL_CMDS + $(INSTALL) -D -m 0644 $(@D)/43-wqy-zenhei-sharp.conf \ + $(TARGET_DIR)/usr/share/fontconfig/conf.avail/43-wqy-zenhei-sharp.conf + $(INSTALL) -D -m 0644 $(@D)/44-wqy-zenhei.conf \ + $(TARGET_DIR)/usr/share/fontconfig/conf.avail/44-wqy-zenhei.conf +endef +endif + +define WQY_ZENHEI_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0644 $(@D)/wqy-zenhei.ttc \ + $(TARGET_DIR)/usr/share/fonts/wqy-zenhei/wqy-zenhei.ttc + $(WQY_ZENHEI_FONTCONFIG_CONF_INSTALL_CMDS) +endef + +$(eval $(generic-package)) diff --git a/package/wsapi-fcgi/Config.in b/package/wsapi-fcgi/Config.in new file mode 100644 index 00000000..657ae78c --- /dev/null +++ b/package/wsapi-fcgi/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_WSAPI_FCGI + bool "wsapi-fcgi" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_LIBFCGI + select BR2_PACKAGE_WSAPI # runtime + help + WSAPI is an API that abstracts the web server from Lua web + applications. This is the rock that contains the FCGI module + lfcgi. + + https://luarocks.org/modules/mascarenhas/wsapi-fcgi diff --git a/package/wsapi-fcgi/wsapi-fcgi.hash b/package/wsapi-fcgi/wsapi-fcgi.hash new file mode 100644 index 00000000..0e3e5933 --- /dev/null +++ b/package/wsapi-fcgi/wsapi-fcgi.hash @@ -0,0 +1,4 @@ +# computed by luarocks/buildroot +sha256 14b77861638a5e863fd10d60ad460a961dc108ea5b915f71461a18d5e6be8e4e wsapi-fcgi-1.7-1.src.rock +sha256 6aa14e3febf7a9e810ce672b015f5a5514241ce5d1c3a6a48f921f089d270159 wsapi/doc/us/license.html +sha256 c7bf3061d00a96d10cb9dbc3a737d0af22594e2ef8f788842d7ab92eeaa864f2 wsapi/doc/us/license.md diff --git a/package/wsapi-fcgi/wsapi-fcgi.mk b/package/wsapi-fcgi/wsapi-fcgi.mk new file mode 100644 index 00000000..677bb774 --- /dev/null +++ b/package/wsapi-fcgi/wsapi-fcgi.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# wsapi-fcgi +# +################################################################################ + +WSAPI_FCGI_VERSION = 1.7-1 +WSAPI_FCGI_SUBDIR = wsapi +WSAPI_FCGI_LICENSE = MIT +WSAPI_FCGI_LICENSE_FILES = \ + $(WSAPI_FCGI_SUBDIR)/doc/us/license.html \ + $(WSAPI_FCGI_SUBDIR)/doc/us/license.md +WSAPI_FCGI_DEPENDENCIES = libfcgi + +$(eval $(luarocks-package)) diff --git a/package/wsapi-xavante/Config.in b/package/wsapi-xavante/Config.in new file mode 100644 index 00000000..7af23b84 --- /dev/null +++ b/package/wsapi-xavante/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_WSAPI_XAVANTE + bool "wsapi-xavante" + select BR2_PACKAGE_WSAPI # runtime + select BR2_PACKAGE_XAVANTE # runtime + help + WSAPI is an API that abstracts the web server from Lua web + applications. This is the rock that contains the Xavante + adapter and launcher. + + https://keplerproject.github.io/wsapi/ diff --git a/package/wsapi-xavante/wsapi-xavante.hash b/package/wsapi-xavante/wsapi-xavante.hash new file mode 100644 index 00000000..6045117b --- /dev/null +++ b/package/wsapi-xavante/wsapi-xavante.hash @@ -0,0 +1,4 @@ +# computed by luarocks/buildroot +sha256 01211bb80dab92f87cece6e31854d73ae4a2ce06af7c48423a54313d72adf9fb wsapi-xavante-1.7-1.src.rock +sha256 6aa14e3febf7a9e810ce672b015f5a5514241ce5d1c3a6a48f921f089d270159 wsapi/doc/us/license.html +sha256 c7bf3061d00a96d10cb9dbc3a737d0af22594e2ef8f788842d7ab92eeaa864f2 wsapi/doc/us/license.md diff --git a/package/wsapi-xavante/wsapi-xavante.mk b/package/wsapi-xavante/wsapi-xavante.mk new file mode 100644 index 00000000..3a747e9b --- /dev/null +++ b/package/wsapi-xavante/wsapi-xavante.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# wsapi-xavante +# +################################################################################ + +WSAPI_XAVANTE_VERSION = 1.7-1 +WSAPI_XAVANTE_SUBDIR = wsapi +WSAPI_XAVANTE_LICENSE = MIT +WSAPI_XAVANTE_LICENSE_FILES = \ + $(WSAPI_XAVANTE_SUBDIR)/doc/us/license.html \ + $(WSAPI_XAVANTE_SUBDIR)/doc/us/license.md + +$(eval $(luarocks-package)) diff --git a/package/wsapi/Config.in b/package/wsapi/Config.in new file mode 100644 index 00000000..e758e8e0 --- /dev/null +++ b/package/wsapi/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_WSAPI + bool "wsapi" + select BR2_PACKAGE_COXPCALL if BR2_PACKAGE_LUA_5_1 # runtime + select BR2_PACKAGE_LUAFILESYSTEM # runtime + select BR2_PACKAGE_RINGS # runtime + help + API that abstracts the web server from Lua web applications. + + https://keplerproject.github.io/wsapi/ diff --git a/package/wsapi/wsapi.hash b/package/wsapi/wsapi.hash new file mode 100644 index 00000000..a89853de --- /dev/null +++ b/package/wsapi/wsapi.hash @@ -0,0 +1,4 @@ +# computed by luarocks/buildroot +sha256 1a0829dffd6bdbf99f5c4278d504cda5ede9344d5089bdcf5216c9eb2999ae22 wsapi-1.7-1.src.rock +sha256 6aa14e3febf7a9e810ce672b015f5a5514241ce5d1c3a6a48f921f089d270159 wsapi/doc/us/license.html +sha256 c7bf3061d00a96d10cb9dbc3a737d0af22594e2ef8f788842d7ab92eeaa864f2 wsapi/doc/us/license.md diff --git a/package/wsapi/wsapi.mk b/package/wsapi/wsapi.mk new file mode 100644 index 00000000..d67efd0e --- /dev/null +++ b/package/wsapi/wsapi.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# wsapi +# +################################################################################ + +WSAPI_VERSION = 1.7-1 +WSAPI_SUBDIR = wsapi +WSAPI_LICENSE = MIT +WSAPI_LICENSE_FILES = \ + $(WSAPI_SUBDIR)/doc/us/license.html \ + $(WSAPI_SUBDIR)/doc/us/license.md + +$(eval $(luarocks-package)) diff --git a/package/x11r7/Config.in b/package/x11r7/Config.in new file mode 100644 index 00000000..b891fb42 --- /dev/null +++ b/package/x11r7/Config.in @@ -0,0 +1,245 @@ +menuconfig BR2_PACKAGE_XORG7 + bool "X.org X Window System" + depends on BR2_USE_WCHAR + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_STATIC_LIBS # dlopen in xlib_libX11 + help + Support for X11R7 libraries, servers, drivers, and/or + applications in the target. + + http://xorg.freedesktop.org + +if BR2_PACKAGE_XORG7 + menu "X11R7 Servers" + source package/x11r7/xserver_xorg-server/Config.in + endmenu + menu "X11R7 Libraries" + source package/x11r7/libxcb/Config.in + source package/x11r7/xcb-util/Config.in + source package/x11r7/xcb-util-cursor/Config.in + source package/x11r7/xcb-util-image/Config.in + source package/x11r7/xcb-util-keysyms/Config.in + source package/x11r7/xcb-util-renderutil/Config.in + source package/x11r7/xcb-util-wm/Config.in + source package/x11r7/xlib_libFS/Config.in + source package/x11r7/xlib_libICE/Config.in + source package/x11r7/xlib_libSM/Config.in + source package/x11r7/xlib_libX11/Config.in + source package/x11r7/xlib_libXScrnSaver/Config.in + source package/x11r7/xlib_libXau/Config.in + source package/x11r7/xlib_libXaw/Config.in + source package/x11r7/xlib_libXcomposite/Config.in + source package/x11r7/xlib_libXcursor/Config.in + source package/x11r7/xlib_libXdamage/Config.in + source package/x11r7/xlib_libXdmcp/Config.in + source package/x11r7/xlib_libXext/Config.in + source package/x11r7/xlib_libXfixes/Config.in + source package/x11r7/xlib_libXfont/Config.in + source package/x11r7/xlib_libXfont2/Config.in + source package/x11r7/xlib_libXft/Config.in + source package/x11r7/xlib_libXi/Config.in + source package/x11r7/xlib_libXinerama/Config.in + source package/x11r7/xlib_libXmu/Config.in + source package/x11r7/xlib_libXpm/Config.in + source package/x11r7/xlib_libXrandr/Config.in + source package/x11r7/xlib_libXrender/Config.in + source package/x11r7/xlib_libXres/Config.in + source package/x11r7/xlib_libXt/Config.in + source package/x11r7/xlib_libXtst/Config.in + source package/x11r7/xlib_libXv/Config.in + source package/x11r7/xlib_libXvMC/Config.in + source package/x11r7/xlib_libXxf86dga/Config.in + source package/x11r7/xlib_libXxf86vm/Config.in + source package/x11r7/xlib_libdmx/Config.in + source package/x11r7/xlib_libfontenc/Config.in + source package/x11r7/xlib_libxkbfile/Config.in + source package/x11r7/xlib_libxshmfence/Config.in + source package/x11r7/xlib_xtrans/Config.in + endmenu + menu "X11R7 Applications" + source package/x11r7/xapp_appres/Config.in + source package/x11r7/xapp_bdftopcf/Config.in + source package/x11r7/xapp_beforelight/Config.in + source package/x11r7/xapp_bitmap/Config.in + source package/x11r7/xapp_editres/Config.in + source package/x11r7/xapp_fonttosfnt/Config.in + source package/x11r7/xapp_fslsfonts/Config.in + source package/x11r7/xapp_fstobdf/Config.in + source package/x11r7/xapp_iceauth/Config.in + source package/x11r7/xapp_ico/Config.in + source package/x11r7/xapp_listres/Config.in + source package/x11r7/xapp_luit/Config.in + source package/x11r7/xapp_mkfontscale/Config.in + source package/x11r7/xapp_oclock/Config.in + source package/x11r7/xapp_rgb/Config.in + source package/x11r7/xapp_rstart/Config.in + source package/x11r7/xapp_scripts/Config.in + source package/x11r7/xapp_sessreg/Config.in + source package/x11r7/xapp_setxkbmap/Config.in + source package/x11r7/xapp_showfont/Config.in + source package/x11r7/xapp_smproxy/Config.in + source package/x11r7/xapp_twm/Config.in + source package/x11r7/xapp_viewres/Config.in + source package/x11r7/xapp_x11perf/Config.in + source package/x11r7/xapp_xauth/Config.in + source package/x11r7/xapp_xbacklight/Config.in + source package/x11r7/xapp_xbiff/Config.in + source package/x11r7/xapp_xcalc/Config.in + source package/x11r7/xapp_xclipboard/Config.in + source package/x11r7/xapp_xclock/Config.in + source package/x11r7/xapp_xcmsdb/Config.in + source package/x11r7/xapp_xcompmgr/Config.in + source package/x11r7/xapp_xconsole/Config.in + source package/x11r7/xapp_xcursorgen/Config.in + source package/x11r7/xapp_xdbedizzy/Config.in + source package/x11r7/xapp_xditview/Config.in + source package/x11r7/xapp_xdm/Config.in + source package/x11r7/xapp_xdpyinfo/Config.in + source package/x11r7/xapp_xdriinfo/Config.in + source package/x11r7/xapp_xedit/Config.in + source package/x11r7/xapp_xev/Config.in + source package/x11r7/xapp_xeyes/Config.in + source package/x11r7/xapp_xf86dga/Config.in + source package/x11r7/xapp_xfd/Config.in + source package/x11r7/xapp_xfindproxy/Config.in + source package/x11r7/xapp_xfontsel/Config.in + source package/x11r7/xapp_xfs/Config.in + source package/x11r7/xapp_xfsinfo/Config.in + source package/x11r7/xapp_xgamma/Config.in + source package/x11r7/xapp_xgc/Config.in + source package/x11r7/xapp_xhost/Config.in + source package/x11r7/xapp_xinit/Config.in + source package/x11r7/xapp_xinput/Config.in + source package/x11r7/xapp_xinput-calibrator/Config.in + source package/x11r7/xapp_xkbcomp/Config.in + source package/x11r7/xapp_xkbevd/Config.in + source package/x11r7/xapp_xkbprint/Config.in + source package/x11r7/xapp_xkbutils/Config.in + source package/x11r7/xapp_xkill/Config.in + source package/x11r7/xapp_xload/Config.in + source package/x11r7/xapp_xlogo/Config.in + source package/x11r7/xapp_xlsatoms/Config.in + source package/x11r7/xapp_xlsclients/Config.in + source package/x11r7/xapp_xlsfonts/Config.in + source package/x11r7/xapp_xmag/Config.in + source package/x11r7/xapp_xman/Config.in + source package/x11r7/xapp_xmessage/Config.in + source package/x11r7/xapp_xmh/Config.in + source package/x11r7/xapp_xmodmap/Config.in + source package/x11r7/xapp_xmore/Config.in + source package/x11r7/xapp_xpr/Config.in + source package/x11r7/xapp_xprop/Config.in + source package/x11r7/xapp_xrandr/Config.in + source package/x11r7/xapp_xrdb/Config.in + source package/x11r7/xapp_xrefresh/Config.in + source package/x11r7/xapp_xset/Config.in + source package/x11r7/xapp_xsetmode/Config.in + source package/x11r7/xapp_xsetpointer/Config.in + source package/x11r7/xapp_xsetroot/Config.in + source package/x11r7/xapp_xsm/Config.in + source package/x11r7/xapp_xstdcmap/Config.in + source package/x11r7/xapp_xvidtune/Config.in + source package/x11r7/xapp_xvinfo/Config.in + source package/x11r7/xapp_xwd/Config.in + source package/x11r7/xapp_xwininfo/Config.in + source package/x11r7/xapp_xwud/Config.in + endmenu + if BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR + menu "X11R7 Drivers" + source package/x11r7/xdriver_xf86-input-evdev/Config.in + source package/x11r7/xdriver_xf86-input-joystick/Config.in + source package/x11r7/xdriver_xf86-input-keyboard/Config.in + source package/x11r7/xdriver_xf86-input-libinput/Config.in + source package/x11r7/xdriver_xf86-input-mouse/Config.in + source package/x11r7/xdriver_xf86-input-synaptics/Config.in + source package/x11r7/xdriver_xf86-input-tslib/Config.in + source package/x11r7/xdriver_xf86-input-vmmouse/Config.in + source package/x11r7/xdriver_xf86-video-amdgpu/Config.in + source package/x11r7/xdriver_xf86-video-ark/Config.in + source package/x11r7/xdriver_xf86-video-ast/Config.in + source package/x11r7/xdriver_xf86-video-ati/Config.in + source package/x11r7/xdriver_xf86-video-cirrus/Config.in + source package/x11r7/xdriver_xf86-video-dummy/Config.in + source package/x11r7/xdriver_xf86-video-fbdev/Config.in + source package/x11r7/xdriver_xf86-video-fbturbo/Config.in + source package/x11r7/xdriver_xf86-video-geode/Config.in + source package/x11r7/xdriver_xf86-video-glint/Config.in + source package/x11r7/xdriver_xf86-video-i128/Config.in + source package/x11r7/xdriver_xf86-video-imx/Config.in + source package/x11r7/xdriver_xf86-video-imx-viv/Config.in + source package/x11r7/xdriver_xf86-video-intel/Config.in + source package/x11r7/xdriver_xf86-video-mach64/Config.in + source package/x11r7/xdriver_xf86-video-mga/Config.in + source package/x11r7/xdriver_xf86-video-neomagic/Config.in + source package/x11r7/xdriver_xf86-video-nouveau/Config.in + source package/x11r7/xdriver_xf86-video-nv/Config.in + source package/x11r7/xdriver_xf86-video-openchrome/Config.in + source package/x11r7/xdriver_xf86-video-qxl/Config.in + source package/x11r7/xdriver_xf86-video-r128/Config.in + source package/x11r7/xdriver_xf86-video-savage/Config.in + source package/x11r7/xdriver_xf86-video-siliconmotion/Config.in + source package/x11r7/xdriver_xf86-video-sis/Config.in + source package/x11r7/xdriver_xf86-video-tdfx/Config.in + source package/x11r7/xdriver_xf86-video-tga/Config.in + source package/x11r7/xdriver_xf86-video-trident/Config.in + source package/x11r7/xdriver_xf86-video-vesa/Config.in + source package/x11r7/xdriver_xf86-video-vmware/Config.in + source package/x11r7/xdriver_xf86-video-voodoo/Config.in + endmenu + endif + menu "X11R7 Fonts" + source package/x11r7/xfont_font-util/Config.in + source package/x11r7/xfont_encodings/Config.in + source package/x11r7/xfont_font-adobe-100dpi/Config.in + source package/x11r7/xfont_font-adobe-75dpi/Config.in + source package/x11r7/xfont_font-adobe-utopia-100dpi/Config.in + source package/x11r7/xfont_font-adobe-utopia-75dpi/Config.in + source package/x11r7/xfont_font-adobe-utopia-type1/Config.in + source package/x11r7/xfont_font-alias/Config.in + source package/x11r7/xfont_font-arabic-misc/Config.in + source package/x11r7/xfont_font-bh-100dpi/Config.in + source package/x11r7/xfont_font-bh-75dpi/Config.in + source package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/Config.in + source package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/Config.in + source package/x11r7/xfont_font-bh-ttf/Config.in + source package/x11r7/xfont_font-bh-type1/Config.in + source package/x11r7/xfont_font-bitstream-100dpi/Config.in + source package/x11r7/xfont_font-bitstream-75dpi/Config.in + source package/x11r7/xfont_font-bitstream-type1/Config.in + source package/x11r7/xfont_font-cronyx-cyrillic/Config.in + source package/x11r7/xfont_font-cursor-misc/Config.in + source package/x11r7/xfont_font-daewoo-misc/Config.in + source package/x11r7/xfont_font-dec-misc/Config.in + source package/x11r7/xfont_font-ibm-type1/Config.in + source package/x11r7/xfont_font-isas-misc/Config.in + source package/x11r7/xfont_font-jis-misc/Config.in + source package/x11r7/xfont_font-micro-misc/Config.in + source package/x11r7/xfont_font-misc-cyrillic/Config.in + source package/x11r7/xfont_font-misc-ethiopic/Config.in + source package/x11r7/xfont_font-misc-meltho/Config.in + source package/x11r7/xfont_font-misc-misc/Config.in + source package/x11r7/xfont_font-mutt-misc/Config.in + source package/x11r7/xfont_font-schumacher-misc/Config.in + source package/x11r7/xfont_font-screen-cyrillic/Config.in + source package/x11r7/xfont_font-sony-misc/Config.in + source package/x11r7/xfont_font-sun-misc/Config.in + source package/x11r7/xfont_font-winitzki-cyrillic/Config.in + source package/x11r7/xfont_font-xfree86-type1/Config.in + endmenu + menu "X11R7 X protocols" + source package/x11r7/xcb-proto/Config.in + source package/x11r7/xorgproto/Config.in + endmenu + menu "X11R7 Utilities" + source package/x11r7/xutil_makedepend/Config.in + source package/x11r7/mcookie/Config.in + endmenu + menu "X11R7 Other data" + source package/x11r7/xdata_xbitmaps/Config.in + source package/x11r7/xdata_xcursor-themes/Config.in + source package/x11r7/xcursor-transparent-theme/Config.in + endmenu +endif + +comment "X.org needs a toolchain w/ wchar, threads, dynamic library" + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/x11r7/libxcb/Config.in b/package/x11r7/libxcb/Config.in new file mode 100644 index 00000000..e15dde3b --- /dev/null +++ b/package/x11r7/libxcb/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_LIBXCB + bool "libxcb" + select BR2_PACKAGE_XCB_PROTO + select BR2_PACKAGE_XLIB_LIBXDMCP + select BR2_PACKAGE_XLIB_LIBXAU + help + The X protocol C-language Binding (XCB) is a replacement for + Xlib featuring a small footprint, latency hiding, direct + access to the protocol, improved threading support, and + extensibility. + + http://xcb.freedesktop.org/ diff --git a/package/x11r7/libxcb/libxcb.hash b/package/x11r7/libxcb/libxcb.hash new file mode 100644 index 00000000..1861ef8a --- /dev/null +++ b/package/x11r7/libxcb/libxcb.hash @@ -0,0 +1,5 @@ +# From https://lists.x.org/archives/xorg-announce/2020-February/003039.html +sha256 a55ed6db98d43469801262d81dc2572ed124edc3db31059d4e9916eb9f844c34 libxcb-1.14.tar.xz +sha512 b90a23204b0d2c29d8b115577edb01df0465e02d6a8876550fecd62375d24a5d5f872ddd5946772ddba077cadce75b12c7a6d218469dc30b5b92bc82188e8bc6 libxcb-1.14.tar.xz +# Locally computed +sha256 c5ffbfeaa501071ceeb97b7de2c0d703fdaa35de01c0fb6cbac1c28453a3e9fd COPYING diff --git a/package/x11r7/libxcb/libxcb.mk b/package/x11r7/libxcb/libxcb.mk new file mode 100644 index 00000000..4cbd9cf6 --- /dev/null +++ b/package/x11r7/libxcb/libxcb.mk @@ -0,0 +1,31 @@ +################################################################################ +# +# libxcb +# +################################################################################ + +LIBXCB_VERSION = 1.14 +LIBXCB_SOURCE = libxcb-$(LIBXCB_VERSION).tar.xz +LIBXCB_SITE = http://xcb.freedesktop.org/dist +LIBXCB_LICENSE = MIT +LIBXCB_LICENSE_FILES = COPYING +LIBXCB_CPE_ID_VENDOR = x + +LIBXCB_INSTALL_STAGING = YES + +LIBXCB_DEPENDENCIES = \ + host-libxslt xcb-proto xlib_libXdmcp xlib_libXau \ + host-xcb-proto host-python3 host-pkgconf +HOST_LIBXCB_DEPENDENCIES = \ + host-libxslt host-xcb-proto host-xlib_libXdmcp \ + host-xlib_libXau host-python3 host-pkgconf + +LIBXCB_CONF_OPTS = --with-doxygen=no +HOST_LIBXCB_CONF_OPTS = --with-doxygen=no + +# Force detection of Buildroot host-python3 over system python +LIBXCB_CONF_OPTS += ac_cv_path_PYTHON=$(HOST_DIR)/bin/python3 +HOST_LIBXCB_CONF_OPTS += ac_cv_path_PYTHON=$(HOST_DIR)/bin/python3 + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/x11r7/mcookie/Config.in b/package/x11r7/mcookie/Config.in new file mode 100644 index 00000000..2e9cfc76 --- /dev/null +++ b/package/x11r7/mcookie/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_MCOOKIE + bool "mcookie" + help + cookie generator for X server + + http://www.x.org diff --git a/package/x11r7/mcookie/mcookie.c b/package/x11r7/mcookie/mcookie.c new file mode 100644 index 00000000..3c38f6f3 --- /dev/null +++ b/package/x11r7/mcookie/mcookie.c @@ -0,0 +1,425 @@ +/* mcookie.c -- Generates random numbers for xauth + * Created: Fri Feb 3 10:42:48 1995 by faith@cs.unc.edu + * Revised: Fri Mar 19 07:48:01 1999 by faith@acm.org + * Public Domain 1995, 1999 Rickard E. Faith (faith@acm.org) + * This program comes with ABSOLUTELY NO WARRANTY. + * + * $Id: mcookie.c,v 1.5 1997/07/06 00:13:06 aebr Exp $ + * + * This program gathers some random bits of data and used the MD5 + * message-digest algorithm to generate a 128-bit hexadecimal number for + * use with xauth(1). + * + * NOTE: Unless /dev/random is available, this program does not actually + * gather 128 bits of random information, so the magic cookie generated + * will be considerably easier to guess than one might expect. + * + * 1999-02-22 Arkadiusz Mi¶kiewicz + * - added Native Language Support + * 1999-03-21 aeb: Added some fragments of code from Colin Plumb. + * + */ + +#include +#include +#include +#include +#include +#include + +#define BUFFERSIZE 4096 + + +#ifndef MD5_H +#define MD5_H + +#if defined (__alpha__) || defined (__ia64__) || defined (__x86_64__) +typedef unsigned int uint32; +#else +typedef unsigned long uint32; +#endif + +struct MD5Context { + uint32 buf[4]; + uint32 bits[2]; + unsigned char in[64]; +}; + +void MD5Init(struct MD5Context *context); +void MD5Update(struct MD5Context *context, unsigned char const *buf, + unsigned len); +void MD5Final(unsigned char digest[16], struct MD5Context *context); +void MD5Transform(uint32 buf[4], uint32 const in[16]); + +/* + * This is needed to make RSAREF happy on some MS-DOS compilers. + */ +typedef struct MD5Context MD5_CTX; + +#endif /* !MD5_H */ + + + +/* + * This code implements the MD5 message-digest algorithm. + * The algorithm is due to Ron Rivest. This code was + * written by Colin Plumb in 1993, no copyright is claimed. + * This code is in the public domain; do with it what you wish. + * + * Equivalent code is available from RSA Data Security, Inc. + * This code has been tested against that, and is equivalent, + * except that you don't need to include two pages of legalese + * with every copy. + * + * To compute the message digest of a chunk of bytes, declare an + * MD5Context structure, pass it to MD5Init, call MD5Update as + * needed on buffers full of bytes, and then call MD5Final, which + * will fill a supplied 16-byte array with the digest. + */ +#include /* for memcpy() */ +#include + +#if __BYTE_ORDER == __LITTLE_ENDIAN +#define byteReverse(buf, len) /* Nothing */ +#else +void byteReverse(unsigned char *buf, unsigned longs); + +/* + * Note: this code is harmless on little-endian machines. + */ +void byteReverse(unsigned char *buf, unsigned longs) +{ + uint32 t; + do { + t = (uint32) ((unsigned) buf[3] << 8 | buf[2]) << 16 | + ((unsigned) buf[1] << 8 | buf[0]); + *(uint32 *) buf = t; + buf += 4; + } while (--longs); +} +#endif + +/* + * Start MD5 accumulation. Set bit count to 0 and buffer to mysterious + * initialization constants. + */ +void MD5Init(struct MD5Context *ctx) +{ + ctx->buf[0] = 0x67452301; + ctx->buf[1] = 0xefcdab89; + ctx->buf[2] = 0x98badcfe; + ctx->buf[3] = 0x10325476; + + ctx->bits[0] = 0; + ctx->bits[1] = 0; +} + +/* + * Update context to reflect the concatenation of another buffer full + * of bytes. + */ +void MD5Update(struct MD5Context *ctx, unsigned char const *buf, unsigned len) +{ + uint32 t; + + /* Update bitcount */ + + t = ctx->bits[0]; + if ((ctx->bits[0] = t + ((uint32) len << 3)) < t) + ctx->bits[1]++; /* Carry from low to high */ + ctx->bits[1] += len >> 29; + + t = (t >> 3) & 0x3f; /* Bytes already in shsInfo->data */ + + /* Handle any leading odd-sized chunks */ + + if (t) { + unsigned char *p = (unsigned char *) ctx->in + t; + + t = 64 - t; + if (len < t) { + memcpy(p, buf, len); + return; + } + memcpy(p, buf, t); + byteReverse(ctx->in, 16); + MD5Transform(ctx->buf, (uint32 *) ctx->in); + buf += t; + len -= t; + } + /* Process data in 64-byte chunks */ + + while (len >= 64) { + memcpy(ctx->in, buf, 64); + byteReverse(ctx->in, 16); + MD5Transform(ctx->buf, (uint32 *) ctx->in); + buf += 64; + len -= 64; + } + + /* Handle any remaining bytes of data. */ + + memcpy(ctx->in, buf, len); +} + +/* + * Final wrapup - pad to 64-byte boundary with the bit pattern + * 1 0* (64-bit count of bits processed, MSB-first) + */ +void MD5Final(unsigned char digest[16], struct MD5Context *ctx) +{ + unsigned count; + unsigned char *p; + + /* Compute number of bytes mod 64 */ + count = (ctx->bits[0] >> 3) & 0x3F; + + /* Set the first char of padding to 0x80. This is safe since there is + always at least one byte free */ + p = ctx->in + count; + *p++ = 0x80; + + /* Bytes of padding needed to make 64 bytes */ + count = 64 - 1 - count; + + /* Pad out to 56 mod 64 */ + if (count < 8) { + /* Two lots of padding: Pad the first block to 64 bytes */ + memset(p, 0, count); + byteReverse(ctx->in, 16); + MD5Transform(ctx->buf, (uint32 *) ctx->in); + + /* Now fill the next block with 56 bytes */ + memset(ctx->in, 0, 56); + } else { + /* Pad block to 56 bytes */ + memset(p, 0, count - 8); + } + byteReverse(ctx->in, 14); + + /* Append length in bits and transform */ + ((uint32 *) ctx->in)[14] = ctx->bits[0]; + ((uint32 *) ctx->in)[15] = ctx->bits[1]; + + MD5Transform(ctx->buf, (uint32 *) ctx->in); + byteReverse((unsigned char *) ctx->buf, 4); + memcpy(digest, ctx->buf, 16); + memset(ctx, 0, sizeof(*ctx)); /* In case it's sensitive */ +} + +/* The four core functions - F1 is optimized somewhat */ + +/* #define F1(x, y, z) (x & y | ~x & z) */ +#define F1(x, y, z) (z ^ (x & (y ^ z))) +#define F2(x, y, z) F1(z, x, y) +#define F3(x, y, z) (x ^ y ^ z) +#define F4(x, y, z) (y ^ (x | ~z)) + +/* This is the central step in the MD5 algorithm. */ +#define MD5STEP(f, w, x, y, z, data, s) \ + ( w += f(x, y, z) + data, w = w<>(32-s), w += x ) + +/* + * The core of the MD5 algorithm, this alters an existing MD5 hash to + * reflect the addition of 16 longwords of new data. MD5Update blocks + * the data and converts bytes into longwords for this routine. + */ +void MD5Transform(uint32 buf[4], uint32 const in[16]) +{ + register uint32 a, b, c, d; + + a = buf[0]; + b = buf[1]; + c = buf[2]; + d = buf[3]; + + MD5STEP(F1, a, b, c, d, in[0] + 0xd76aa478, 7); + MD5STEP(F1, d, a, b, c, in[1] + 0xe8c7b756, 12); + MD5STEP(F1, c, d, a, b, in[2] + 0x242070db, 17); + MD5STEP(F1, b, c, d, a, in[3] + 0xc1bdceee, 22); + MD5STEP(F1, a, b, c, d, in[4] + 0xf57c0faf, 7); + MD5STEP(F1, d, a, b, c, in[5] + 0x4787c62a, 12); + MD5STEP(F1, c, d, a, b, in[6] + 0xa8304613, 17); + MD5STEP(F1, b, c, d, a, in[7] + 0xfd469501, 22); + MD5STEP(F1, a, b, c, d, in[8] + 0x698098d8, 7); + MD5STEP(F1, d, a, b, c, in[9] + 0x8b44f7af, 12); + MD5STEP(F1, c, d, a, b, in[10] + 0xffff5bb1, 17); + MD5STEP(F1, b, c, d, a, in[11] + 0x895cd7be, 22); + MD5STEP(F1, a, b, c, d, in[12] + 0x6b901122, 7); + MD5STEP(F1, d, a, b, c, in[13] + 0xfd987193, 12); + MD5STEP(F1, c, d, a, b, in[14] + 0xa679438e, 17); + MD5STEP(F1, b, c, d, a, in[15] + 0x49b40821, 22); + + MD5STEP(F2, a, b, c, d, in[1] + 0xf61e2562, 5); + MD5STEP(F2, d, a, b, c, in[6] + 0xc040b340, 9); + MD5STEP(F2, c, d, a, b, in[11] + 0x265e5a51, 14); + MD5STEP(F2, b, c, d, a, in[0] + 0xe9b6c7aa, 20); + MD5STEP(F2, a, b, c, d, in[5] + 0xd62f105d, 5); + MD5STEP(F2, d, a, b, c, in[10] + 0x02441453, 9); + MD5STEP(F2, c, d, a, b, in[15] + 0xd8a1e681, 14); + MD5STEP(F2, b, c, d, a, in[4] + 0xe7d3fbc8, 20); + MD5STEP(F2, a, b, c, d, in[9] + 0x21e1cde6, 5); + MD5STEP(F2, d, a, b, c, in[14] + 0xc33707d6, 9); + MD5STEP(F2, c, d, a, b, in[3] + 0xf4d50d87, 14); + MD5STEP(F2, b, c, d, a, in[8] + 0x455a14ed, 20); + MD5STEP(F2, a, b, c, d, in[13] + 0xa9e3e905, 5); + MD5STEP(F2, d, a, b, c, in[2] + 0xfcefa3f8, 9); + MD5STEP(F2, c, d, a, b, in[7] + 0x676f02d9, 14); + MD5STEP(F2, b, c, d, a, in[12] + 0x8d2a4c8a, 20); + + MD5STEP(F3, a, b, c, d, in[5] + 0xfffa3942, 4); + MD5STEP(F3, d, a, b, c, in[8] + 0x8771f681, 11); + MD5STEP(F3, c, d, a, b, in[11] + 0x6d9d6122, 16); + MD5STEP(F3, b, c, d, a, in[14] + 0xfde5380c, 23); + MD5STEP(F3, a, b, c, d, in[1] + 0xa4beea44, 4); + MD5STEP(F3, d, a, b, c, in[4] + 0x4bdecfa9, 11); + MD5STEP(F3, c, d, a, b, in[7] + 0xf6bb4b60, 16); + MD5STEP(F3, b, c, d, a, in[10] + 0xbebfbc70, 23); + MD5STEP(F3, a, b, c, d, in[13] + 0x289b7ec6, 4); + MD5STEP(F3, d, a, b, c, in[0] + 0xeaa127fa, 11); + MD5STEP(F3, c, d, a, b, in[3] + 0xd4ef3085, 16); + MD5STEP(F3, b, c, d, a, in[6] + 0x04881d05, 23); + MD5STEP(F3, a, b, c, d, in[9] + 0xd9d4d039, 4); + MD5STEP(F3, d, a, b, c, in[12] + 0xe6db99e5, 11); + MD5STEP(F3, c, d, a, b, in[15] + 0x1fa27cf8, 16); + MD5STEP(F3, b, c, d, a, in[2] + 0xc4ac5665, 23); + + MD5STEP(F4, a, b, c, d, in[0] + 0xf4292244, 6); + MD5STEP(F4, d, a, b, c, in[7] + 0x432aff97, 10); + MD5STEP(F4, c, d, a, b, in[14] + 0xab9423a7, 15); + MD5STEP(F4, b, c, d, a, in[5] + 0xfc93a039, 21); + MD5STEP(F4, a, b, c, d, in[12] + 0x655b59c3, 6); + MD5STEP(F4, d, a, b, c, in[3] + 0x8f0ccc92, 10); + MD5STEP(F4, c, d, a, b, in[10] + 0xffeff47d, 15); + MD5STEP(F4, b, c, d, a, in[1] + 0x85845dd1, 21); + MD5STEP(F4, a, b, c, d, in[8] + 0x6fa87e4f, 6); + MD5STEP(F4, d, a, b, c, in[15] + 0xfe2ce6e0, 10); + MD5STEP(F4, c, d, a, b, in[6] + 0xa3014314, 15); + MD5STEP(F4, b, c, d, a, in[13] + 0x4e0811a1, 21); + MD5STEP(F4, a, b, c, d, in[4] + 0xf7537e82, 6); + MD5STEP(F4, d, a, b, c, in[11] + 0xbd3af235, 10); + MD5STEP(F4, c, d, a, b, in[2] + 0x2ad7d2bb, 15); + MD5STEP(F4, b, c, d, a, in[9] + 0xeb86d391, 21); + + buf[0] += a; + buf[1] += b; + buf[2] += c; + buf[3] += d; +} + + + + +struct rngs { + const char *path; + int minlength, maxlength; +} rngs[] = { + { "/dev/random", 16, 16 }, /* 16 bytes = 128 bits suffice */ + { "/proc/interrupts", 0, 0 }, + { "/proc/slabinfo", 0, 0 }, + { "/proc/stat", 0, 0 }, + { "/dev/urandom", 32, 64 }, +}; +#define RNGS (sizeof(rngs)/sizeof(struct rngs)) + +int Verbose = 0; + +/* The basic function to hash a file */ +static off_t +hash_file(struct MD5Context *ctx, int fd) +{ + off_t count = 0; + ssize_t r; + unsigned char buf[BUFFERSIZE]; + + while ((r = read(fd, buf, sizeof(buf))) > 0) { + MD5Update(ctx, buf, r); + count += r; + } + /* Separate files with a null byte */ + buf[0] = 0; + MD5Update(ctx, buf, 1); + return count; +} + +int main( int argc, char **argv ) +{ + int i; + struct MD5Context ctx; + unsigned char digest[16]; + unsigned char buf[BUFFERSIZE]; + int fd; + int c; + pid_t pid; + char *file = NULL; + int r; + struct timeval tv; + struct timezone tz; + + while ((c = getopt( argc, argv, "vf:" )) != -1) + switch (c) { + case 'v': ++Verbose; break; + case 'f': file = optarg; break; + } + + MD5Init( &ctx ); + + gettimeofday( &tv, &tz ); + MD5Update( &ctx, (unsigned char *)&tv, sizeof( tv ) ); + pid = getppid(); + MD5Update( &ctx, (unsigned char *)&pid, sizeof( pid )); + pid = getpid(); + MD5Update( &ctx, (unsigned char *)&pid, sizeof( pid )); + + if (file) { + int count = 0; + + if (file[0] == '-' && !file[1]) + fd = fileno(stdin); + else + fd = open( file, O_RDONLY ); + + if (fd < 0) { + fprintf( stderr, "Could not open %s\n", file ); + } else { + count = hash_file( &ctx, fd ); + if (Verbose) + fprintf( stderr, "Got %d bytes from %s\n", count, file ); + + if (file[0] != '-' || file[1]) close( fd ); + } + } + + for (i = 0; i < RNGS; i++) { + if ((fd = open( rngs[i].path, O_RDONLY|O_NONBLOCK )) >= 0) { + int count = sizeof(buf); + + if (rngs[i].maxlength && count > rngs[i].maxlength) + count = rngs[i].maxlength; + r = read( fd, buf, count ); + if (r > 0) + MD5Update( &ctx, buf, r ); + else + r = 0; + close( fd ); + if (Verbose) + fprintf( stderr, "Got %d bytes from %s\n", r, rngs[i].path ); + if (rngs[i].minlength && r >= rngs[i].minlength) + break; + } else if (Verbose) + fprintf( stderr, "Could not open %s\n", rngs[i].path ); + } + + MD5Final( digest, &ctx ); + for (i = 0; i < 16; i++) printf( "%02x", digest[i] ); + putchar ( '\n' ); + + /* + * The following is important for cases like disk full, so shell scripts + * can bomb out properly rather than think they succeeded. + */ + if (fflush(stdout) < 0 || fclose(stdout) < 0) + return 1; + + return 0; +} diff --git a/package/x11r7/mcookie/mcookie.mk b/package/x11r7/mcookie/mcookie.mk new file mode 100644 index 00000000..b14599d5 --- /dev/null +++ b/package/x11r7/mcookie/mcookie.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# mcookie +# +################################################################################ + +MCOOKIE_LICENSE = Public Domain + +define MCOOKIE_EXTRACT_CMDS + cp package/x11r7/mcookie/mcookie.c $(@D)/ +endef + +define MCOOKIE_BUILD_CMDS + (cd $(@D); $(TARGET_CC) -Wall -Os -s mcookie.c -o mcookie) +endef + +define MCOOKIE_INSTALL_TARGET_CMDS + install -m 0755 -D $(@D)/mcookie $(TARGET_DIR)/usr/bin/mcookie +endef + +$(eval $(generic-package)) diff --git a/package/x11r7/x11r7.mk b/package/x11r7/x11r7.mk new file mode 100644 index 00000000..85ecbc59 --- /dev/null +++ b/package/x11r7/x11r7.mk @@ -0,0 +1 @@ +include $(sort $(wildcard package/x11r7/*/*.mk)) diff --git a/package/x11r7/xapp_appres/Config.in b/package/x11r7/xapp_appres/Config.in new file mode 100644 index 00000000..7574659a --- /dev/null +++ b/package/x11r7/xapp_appres/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_APPRES + bool "appres" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXT + help + list X application resource database diff --git a/package/x11r7/xapp_appres/xapp_appres.hash b/package/x11r7/xapp_appres/xapp_appres.hash new file mode 100644 index 00000000..8750e2d1 --- /dev/null +++ b/package/x11r7/xapp_appres/xapp_appres.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-March/002847.html +md5 f544e701043249d2bb3deed48314bc55 appres-1.0.5.tar.bz2 +sha1 5e5dbffd0a125732bb8bb8a202e04555a9604089 appres-1.0.5.tar.bz2 +sha256 ffad893712c81943b919e3cbfe46fc65259cc0d9eb96d5e658670e3fbb265928 appres-1.0.5.tar.bz2 +sha512 70825563cd80f0f433c48ab2fdae888072939c1b22fb22340b70b9444c97916275ed92c9e5bf9a06bb76c32a5371b89ff7c0211a9a47a227c88311078c2c4137 appres-1.0.5.tar.bz2 +# Locally computed +sha256 5969302729a9621fd526a7f9942a51a29b858e0b682ffd28eeda5fc4dfaddf55 COPYING diff --git a/package/x11r7/xapp_appres/xapp_appres.mk b/package/x11r7/xapp_appres/xapp_appres.mk new file mode 100644 index 00000000..4159332b --- /dev/null +++ b/package/x11r7/xapp_appres/xapp_appres.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_appres +# +################################################################################ + +XAPP_APPRES_VERSION = 1.0.5 +XAPP_APPRES_SOURCE = appres-$(XAPP_APPRES_VERSION).tar.bz2 +XAPP_APPRES_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_APPRES_LICENSE = MIT +XAPP_APPRES_LICENSE_FILES = COPYING +XAPP_APPRES_DEPENDENCIES = xlib_libX11 xlib_libXt + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_bdftopcf/Config.in b/package/x11r7/xapp_bdftopcf/Config.in new file mode 100644 index 00000000..a9caffa6 --- /dev/null +++ b/package/x11r7/xapp_bdftopcf/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XAPP_BDFTOPCF + bool "bdftopcf" + select BR2_PACKAGE_XLIB_LIBXFONT + help + X.Org bdftopcf application diff --git a/package/x11r7/xapp_bdftopcf/xapp_bdftopcf.hash b/package/x11r7/xapp_bdftopcf/xapp_bdftopcf.hash new file mode 100644 index 00000000..614d5438 --- /dev/null +++ b/package/x11r7/xapp_bdftopcf/xapp_bdftopcf.hash @@ -0,0 +1,8 @@ +# From https://lists.x.org/archives/xorg-announce/2017-November/002821.html +md5 2a455d3c02390597feb9cefb3fe97a45 bdftopcf-1.1.tar.bz2 +sha1 48a783337a5aa49ebc102c9788ff0f43ea35c5c4 bdftopcf-1.1.tar.bz2 +sha256 4b4df05fc53f1e98993638d6f7e178d95b31745c4568cee407e167491fd311a2 bdftopcf-1.1.tar.bz2 +sha512 7b790e8d512ca2812ac889c156ef91c48798b4744a6857e5b17e0128764b5afa8c5426fe5de05a9819d64745116718db4221b3e657e3c2633465e87179c44bec bdftopcf-1.1.tar.bz2 + +# Locally calculated +sha256 a437fb5272ba507c2977b2ef623bb391270f521b2a20271ed044785f4eaa5dbc COPYING diff --git a/package/x11r7/xapp_bdftopcf/xapp_bdftopcf.mk b/package/x11r7/xapp_bdftopcf/xapp_bdftopcf.mk new file mode 100644 index 00000000..7ee618d6 --- /dev/null +++ b/package/x11r7/xapp_bdftopcf/xapp_bdftopcf.mk @@ -0,0 +1,19 @@ +################################################################################ +# +# xapp_bdftopcf +# +################################################################################ + +XAPP_BDFTOPCF_VERSION = 1.1 +XAPP_BDFTOPCF_SOURCE = bdftopcf-$(XAPP_BDFTOPCF_VERSION).tar.bz2 +XAPP_BDFTOPCF_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_BDFTOPCF_LICENSE = MIT +XAPP_BDFTOPCF_LICENSE_FILES = COPYING +XAPP_BDFTOPCF_DEPENDENCIES = xlib_libXfont +HOST_XAPP_BDFTOPCF_DEPENDENCIES = host-xlib_libXfont + +# needed for linking against libXfont +XAPP_BDFTOPCF_MAKE_OPTS += LIBS=-ldl + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/x11r7/xapp_beforelight/Config.in b/package/x11r7/xapp_beforelight/Config.in new file mode 100644 index 00000000..3a111897 --- /dev/null +++ b/package/x11r7/xapp_beforelight/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_XAPP_BEFORELIGHT + bool "beforelight" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXSCRNSAVER + select BR2_PACKAGE_XLIB_LIBXAW + select BR2_PACKAGE_XLIB_LIBXT + help + screen saver diff --git a/package/x11r7/xapp_beforelight/xapp_beforelight.hash b/package/x11r7/xapp_beforelight/xapp_beforelight.hash new file mode 100644 index 00000000..00aff757 --- /dev/null +++ b/package/x11r7/xapp_beforelight/xapp_beforelight.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2013-January/002131.html +sha256 8fcab6f15148ca680c0d3da8de7dcb41f8e6a076f442cf8bdcf272be9e348166 beforelight-1.0.5.tar.bz2 +# Locally computed +sha256 27d8cbdcde7a0bd062ce49cdf8c672201452a64e3e6823f09b1beffe2c4b8eff COPYING diff --git a/package/x11r7/xapp_beforelight/xapp_beforelight.mk b/package/x11r7/xapp_beforelight/xapp_beforelight.mk new file mode 100644 index 00000000..7dcb715e --- /dev/null +++ b/package/x11r7/xapp_beforelight/xapp_beforelight.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xapp_beforelight +# +################################################################################ + +XAPP_BEFORELIGHT_VERSION = 1.0.5 +XAPP_BEFORELIGHT_SOURCE = beforelight-$(XAPP_BEFORELIGHT_VERSION).tar.bz2 +XAPP_BEFORELIGHT_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_BEFORELIGHT_LICENSE = MIT +XAPP_BEFORELIGHT_LICENSE_FILES = COPYING +XAPP_BEFORELIGHT_DEPENDENCIES = xlib_libX11 xlib_libXScrnSaver xlib_libXaw xlib_libXt +XAPP_BEFORELIGHT_CONF_OPTS = --with-appdefaultdir=/usr/share/X11/app-defaults + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_bitmap/Config.in b/package/x11r7/xapp_bitmap/Config.in new file mode 100644 index 00000000..e5bb5e83 --- /dev/null +++ b/package/x11r7/xapp_bitmap/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_XAPP_BITMAP + bool "bitmap" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXAW + select BR2_PACKAGE_XLIB_LIBXMU + select BR2_PACKAGE_XDATA_XBITMAPS + help + X.Org bitmap application diff --git a/package/x11r7/xapp_bitmap/xapp_bitmap.hash b/package/x11r7/xapp_bitmap/xapp_bitmap.hash new file mode 100644 index 00000000..f632bce3 --- /dev/null +++ b/package/x11r7/xapp_bitmap/xapp_bitmap.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-February/002941.html +md5 b94172053ffa282bd88274f1e6a677f1 bitmap-1.0.9.tar.bz2 +sha1 26ba3130b14a2db81b427f2353ac21301c5d2527 bitmap-1.0.9.tar.bz2 +sha256 e0f3afad5272d796f54c33fa1b5bd1fb3f62843a54b28c87196d06a35123e5f5 bitmap-1.0.9.tar.bz2 +sha512 873c626c72a0f4025fe8c8aeedbf3fe4ee5657fb487ad7410406a20da518c0358041dc45c2549926cc10e1d031977073b9d1ddb32830fdce95b716a52fe44456 bitmap-1.0.9.tar.bz2 +# Locally computed +sha256 03be44611edac06827bd13c0815a67ecd37ffe8fb1b9e210d6545d79bec89a3a COPYING diff --git a/package/x11r7/xapp_bitmap/xapp_bitmap.mk b/package/x11r7/xapp_bitmap/xapp_bitmap.mk new file mode 100644 index 00000000..6bc0dbde --- /dev/null +++ b/package/x11r7/xapp_bitmap/xapp_bitmap.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xapp_bitmap +# +################################################################################ + +XAPP_BITMAP_VERSION = 1.0.9 +XAPP_BITMAP_SOURCE = bitmap-$(XAPP_BITMAP_VERSION).tar.bz2 +XAPP_BITMAP_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_BITMAP_LICENSE = MIT +XAPP_BITMAP_LICENSE_FILES = COPYING +XAPP_BITMAP_DEPENDENCIES = xlib_libX11 xlib_libXaw xlib_libXmu xdata_xbitmaps +XAPP_BITMAP_CONF_OPTS = --with-appdefaultdir=/usr/share/X11/app-defaults + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_editres/Config.in b/package/x11r7/xapp_editres/Config.in new file mode 100644 index 00000000..390ec487 --- /dev/null +++ b/package/x11r7/xapp_editres/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_XAPP_EDITRES + bool "editres" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXAW + select BR2_PACKAGE_XLIB_LIBXMU + select BR2_PACKAGE_XLIB_LIBXT + help + a dynamic resource editor for X Toolkit applications diff --git a/package/x11r7/xapp_editres/xapp_editres.hash b/package/x11r7/xapp_editres/xapp_editres.hash new file mode 100644 index 00000000..15367955 --- /dev/null +++ b/package/x11r7/xapp_editres/xapp_editres.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-March/002846.html +md5 526cf79edc0c5e379aefb21539243f96 editres-1.0.7.tar.bz2 +sha1 389e953ebb5080564a6780cb34b72bafae7f5540 editres-1.0.7.tar.bz2 +sha256 089ad34628e55a779b97e369f55fb12caefc96d684b508d9022eb9e12b775c11 editres-1.0.7.tar.bz2 +sha512 b9c928b556116bf50cf4b6ea779bdc9fedf29f5db3e6a8cc75c122578c92e1cc530a81b226ec24aad183b8ebc2de570f200314b0d9ce7883b6e3306007365b32 editres-1.0.7.tar.bz2 +# Locally computed +sha256 b1049cf96db2c00428b8313541ab333ec4e06f102955f3edd44f88ec43b0acd6 COPYING diff --git a/package/x11r7/xapp_editres/xapp_editres.mk b/package/x11r7/xapp_editres/xapp_editres.mk new file mode 100644 index 00000000..108a0ec3 --- /dev/null +++ b/package/x11r7/xapp_editres/xapp_editres.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xapp_editres +# +################################################################################ + +XAPP_EDITRES_VERSION = 1.0.7 +XAPP_EDITRES_SOURCE = editres-$(XAPP_EDITRES_VERSION).tar.bz2 +XAPP_EDITRES_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_EDITRES_LICENSE = MIT +XAPP_EDITRES_LICENSE_FILES = COPYING +XAPP_EDITRES_DEPENDENCIES = xlib_libX11 xlib_libXaw xlib_libXmu xlib_libXt +XAPP_EDITRES_CONF_OPTS = --with-appdefaultdir=/usr/share/X11/app-defaults + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_fonttosfnt/Config.in b/package/x11r7/xapp_fonttosfnt/Config.in new file mode 100644 index 00000000..eb35710f --- /dev/null +++ b/package/x11r7/xapp_fonttosfnt/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_XAPP_FONTTOSFNT + bool "fonttosfnt" + select BR2_PACKAGE_FREETYPE + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBFONTENC + help + X.Org fonttosfnt application diff --git a/package/x11r7/xapp_fonttosfnt/xapp_fonttosfnt.hash b/package/x11r7/xapp_fonttosfnt/xapp_fonttosfnt.hash new file mode 100644 index 00000000..72077bee --- /dev/null +++ b/package/x11r7/xapp_fonttosfnt/xapp_fonttosfnt.hash @@ -0,0 +1,5 @@ +# From https://lists.x.org/archives/xorg-announce/2021-June/003093.html +sha256 1a1bb4ef25856dea7de3d491ae7231493225b400bee0f6a1f949017ffd203a64 fonttosfnt-1.2.2.tar.bz2 +sha512 ceac6ccb064043d46f9f16f31fb89c6cbf7f026d049f7b5325d6af97e809b4cd068e6149413bb328c0af601a98b5070e21d469888a6853f6cabecd5b46f60240 fonttosfnt-1.2.2.tar.bz2 +# Locally computed +sha256 f83378580cb7909a98b52bf5cd6a29f4894d76318c5c5312dd3f17a3e92beef1 COPYING diff --git a/package/x11r7/xapp_fonttosfnt/xapp_fonttosfnt.mk b/package/x11r7/xapp_fonttosfnt/xapp_fonttosfnt.mk new file mode 100644 index 00000000..9fdccbb8 --- /dev/null +++ b/package/x11r7/xapp_fonttosfnt/xapp_fonttosfnt.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_fonttosfnt +# +################################################################################ + +XAPP_FONTTOSFNT_VERSION = 1.2.2 +XAPP_FONTTOSFNT_SOURCE = fonttosfnt-$(XAPP_FONTTOSFNT_VERSION).tar.bz2 +XAPP_FONTTOSFNT_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_FONTTOSFNT_LICENSE = MIT +XAPP_FONTTOSFNT_LICENSE_FILES = COPYING +XAPP_FONTTOSFNT_DEPENDENCIES = freetype xlib_libX11 xlib_libfontenc + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_fslsfonts/Config.in b/package/x11r7/xapp_fslsfonts/Config.in new file mode 100644 index 00000000..1917d615 --- /dev/null +++ b/package/x11r7/xapp_fslsfonts/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_FSLSFONTS + bool "fslsfonts" + select BR2_PACKAGE_XLIB_LIBFS + select BR2_PACKAGE_XLIB_LIBX11 + help + list fonts served by X font server diff --git a/package/x11r7/xapp_fslsfonts/xapp_fslsfonts.hash b/package/x11r7/xapp_fslsfonts/xapp_fslsfonts.hash new file mode 100644 index 00000000..1a7985f9 --- /dev/null +++ b/package/x11r7/xapp_fslsfonts/xapp_fslsfonts.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2014-December/002510.html +sha256 f1ed55093356b78daec2678d22f52d42ec11fe88575562d734396962e626d7f6 fslsfonts-1.0.5.tar.bz2 +# Locally computed +sha256 fbdfcafb5755565ad688bf3f7f808109d358040ec83ed3de496155105451fdf4 COPYING diff --git a/package/x11r7/xapp_fslsfonts/xapp_fslsfonts.mk b/package/x11r7/xapp_fslsfonts/xapp_fslsfonts.mk new file mode 100644 index 00000000..27786a55 --- /dev/null +++ b/package/x11r7/xapp_fslsfonts/xapp_fslsfonts.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_fslsfonts +# +################################################################################ + +XAPP_FSLSFONTS_VERSION = 1.0.5 +XAPP_FSLSFONTS_SOURCE = fslsfonts-$(XAPP_FSLSFONTS_VERSION).tar.bz2 +XAPP_FSLSFONTS_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_FSLSFONTS_LICENSE = MIT +XAPP_FSLSFONTS_LICENSE_FILES = COPYING +XAPP_FSLSFONTS_DEPENDENCIES = xlib_libFS xlib_libX11 + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_fstobdf/Config.in b/package/x11r7/xapp_fstobdf/Config.in new file mode 100644 index 00000000..0a1f62ba --- /dev/null +++ b/package/x11r7/xapp_fstobdf/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_FSTOBDF + bool "fstobdf" + select BR2_PACKAGE_XLIB_LIBFS + select BR2_PACKAGE_XLIB_LIBX11 + help + generate BDF font from X font server diff --git a/package/x11r7/xapp_fstobdf/xapp_fstobdf.hash b/package/x11r7/xapp_fstobdf/xapp_fstobdf.hash new file mode 100644 index 00000000..a2f1425a --- /dev/null +++ b/package/x11r7/xapp_fstobdf/xapp_fstobdf.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2014-December/002511.html +sha256 66cf550326c993e7043f260a8ec4a533a3bf9d8f0e7397a6fe9cca803732e92e fstobdf-1.0.6.tar.bz2 +# Locally computed +sha256 b76125d919ac2bfbff96955dec98b90729633b2df5fbfa2ad3f2e4376164febb COPYING diff --git a/package/x11r7/xapp_fstobdf/xapp_fstobdf.mk b/package/x11r7/xapp_fstobdf/xapp_fstobdf.mk new file mode 100644 index 00000000..e897514c --- /dev/null +++ b/package/x11r7/xapp_fstobdf/xapp_fstobdf.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_fstobdf +# +################################################################################ + +XAPP_FSTOBDF_VERSION = 1.0.6 +XAPP_FSTOBDF_SOURCE = fstobdf-$(XAPP_FSTOBDF_VERSION).tar.bz2 +XAPP_FSTOBDF_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_FSTOBDF_LICENSE = MIT +XAPP_FSTOBDF_LICENSE_FILES = COPYING +XAPP_FSTOBDF_DEPENDENCIES = xlib_libFS xlib_libX11 + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_iceauth/Config.in b/package/x11r7/xapp_iceauth/Config.in new file mode 100644 index 00000000..ce2db988 --- /dev/null +++ b/package/x11r7/xapp_iceauth/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_ICEAUTH + bool "iceauth" + select BR2_PACKAGE_XLIB_LIBICE + select BR2_PACKAGE_XLIB_LIBX11 + help + ICE authority file utility diff --git a/package/x11r7/xapp_iceauth/xapp_iceauth.hash b/package/x11r7/xapp_iceauth/xapp_iceauth.hash new file mode 100644 index 00000000..f1ea73a7 --- /dev/null +++ b/package/x11r7/xapp_iceauth/xapp_iceauth.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-March/002850.html +md5 3b9b79fa0f9928161f4bad94273de7ae iceauth-1.0.8.tar.bz2 +sha1 2ce23c40a17d98badeb8ce70d26e81a5ac0e178c iceauth-1.0.8.tar.bz2 +sha256 e6ee213a217265cc76050e4293ea70b98c32dce6505c6421227efbda62ab60c6 iceauth-1.0.8.tar.bz2 +sha512 9d4520adf951b16a3e784349dbb70d5d8176b74b956f8adc63abf55d049745c113b03ccfa60a281fc39b487db3742302dc6287c9985ce83a0157bf4674df2af1 iceauth-1.0.8.tar.bz2 +# Locally computed +sha256 fdd9ba8ccb92af2f31f542e7b7a18c27257e6cdce147d231bc9ba3654ad84976 COPYING diff --git a/package/x11r7/xapp_iceauth/xapp_iceauth.mk b/package/x11r7/xapp_iceauth/xapp_iceauth.mk new file mode 100644 index 00000000..0e0e0017 --- /dev/null +++ b/package/x11r7/xapp_iceauth/xapp_iceauth.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_iceauth +# +################################################################################ + +XAPP_ICEAUTH_VERSION = 1.0.8 +XAPP_ICEAUTH_SOURCE = iceauth-$(XAPP_ICEAUTH_VERSION).tar.bz2 +XAPP_ICEAUTH_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_ICEAUTH_LICENSE = MIT +XAPP_ICEAUTH_LICENSE_FILES = COPYING +XAPP_ICEAUTH_DEPENDENCIES = xlib_libICE xlib_libX11 + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_ico/Config.in b/package/x11r7/xapp_ico/Config.in new file mode 100644 index 00000000..892f2be8 --- /dev/null +++ b/package/x11r7/xapp_ico/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XAPP_ICO + bool "ico" + select BR2_PACKAGE_XLIB_LIBX11 + help + animate an icosahedron or other polyhedron diff --git a/package/x11r7/xapp_ico/xapp_ico.hash b/package/x11r7/xapp_ico/xapp_ico.hash new file mode 100644 index 00000000..693aff65 --- /dev/null +++ b/package/x11r7/xapp_ico/xapp_ico.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-March/002880.html +md5 7895f2d109f4206b6d2db37257e07d12 ico-1.0.5.tar.bz2 +sha1 8759ec954375f3a1b37dc920a12790bfbfb0cad3 ico-1.0.5.tar.bz2 +sha256 d73b62f29eb98d850f16b76d759395180b860b613fbe1686b18eee99a6e3773f ico-1.0.5.tar.bz2 +sha512 93a94a66d4a41b39d4b3657050e58f8269d352dae5d5916c9ecdda1cb14f23b9d159d67c50fdfa654b4b1c2ad11434bed140ace70703c82b05d3fe8686aab8f6 ico-1.0.5.tar.bz2 +# Locally computed +sha256 97ef3a622f2f385cabfc8ab7aff13dc46468c10a5520670b5edfa33f2c3999eb COPYING diff --git a/package/x11r7/xapp_ico/xapp_ico.mk b/package/x11r7/xapp_ico/xapp_ico.mk new file mode 100644 index 00000000..8b0d4f90 --- /dev/null +++ b/package/x11r7/xapp_ico/xapp_ico.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_ico +# +################################################################################ + +XAPP_ICO_VERSION = 1.0.5 +XAPP_ICO_SOURCE = ico-$(XAPP_ICO_VERSION).tar.bz2 +XAPP_ICO_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_ICO_LICENSE = MIT +XAPP_ICO_LICENSE_FILES = COPYING +XAPP_ICO_DEPENDENCIES = xlib_libX11 + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_listres/Config.in b/package/x11r7/xapp_listres/Config.in new file mode 100644 index 00000000..a3be6b38 --- /dev/null +++ b/package/x11r7/xapp_listres/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_XAPP_LISTRES + bool "listres" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXAW + select BR2_PACKAGE_XLIB_LIBXMU + select BR2_PACKAGE_XLIB_LIBXT + help + list resources in widgets diff --git a/package/x11r7/xapp_listres/xapp_listres.hash b/package/x11r7/xapp_listres/xapp_listres.hash new file mode 100644 index 00000000..1e1c1195 --- /dev/null +++ b/package/x11r7/xapp_listres/xapp_listres.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-March/002848.html +md5 24e05349f2881aaa58cbe160e49223ac listres-1.0.4.tar.bz2 +sha1 903857c7a9ec3d8edc8a88101aef33cd27796649 listres-1.0.4.tar.bz2 +sha256 6a1229f478796e141d6658762f432ebbe1f6083b27550847d52239b3f7ec2b10 listres-1.0.4.tar.bz2 +sha512 925bceab6ff96fcf91f58ba2f858905d6e2eff7074ba29cfc02def7c19fb493545837884f1070dc004422451f749cd459000c01e8c9bb51a7cce7f7ab4067b8a listres-1.0.4.tar.bz2 +# Locally computed +sha256 aefb540c54bc95c68702cd2ae668c559e63cc1a84f55ae5c0e78547e7d75d2d5 COPYING diff --git a/package/x11r7/xapp_listres/xapp_listres.mk b/package/x11r7/xapp_listres/xapp_listres.mk new file mode 100644 index 00000000..b4ac3e1d --- /dev/null +++ b/package/x11r7/xapp_listres/xapp_listres.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_listres +# +################################################################################ + +XAPP_LISTRES_VERSION = 1.0.4 +XAPP_LISTRES_SOURCE = listres-$(XAPP_LISTRES_VERSION).tar.bz2 +XAPP_LISTRES_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_LISTRES_LICENSE = MIT +XAPP_LISTRES_LICENSE_FILES = COPYING +XAPP_LISTRES_DEPENDENCIES = xlib_libX11 xlib_libXaw xlib_libXmu xlib_libXt + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_luit/0001-posix-openpt.patch b/package/x11r7/xapp_luit/0001-posix-openpt.patch new file mode 100644 index 00000000..c8ff8e43 --- /dev/null +++ b/package/x11r7/xapp_luit/0001-posix-openpt.patch @@ -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 + +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/Config.in b/package/x11r7/xapp_luit/Config.in new file mode 100644 index 00000000..69da5706 --- /dev/null +++ b/package/x11r7/xapp_luit/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_XAPP_LUIT + bool "luit" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBFONTENC + help + Locale and ISO 2022 support for Unicode terminals diff --git a/package/x11r7/xapp_luit/xapp_luit.hash b/package/x11r7/xapp_luit/xapp_luit.hash new file mode 100644 index 00000000..55537b7f --- /dev/null +++ b/package/x11r7/xapp_luit/xapp_luit.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2012-March/001894.html +sha256 30b0e787cb07a0f504b70f1d6123930522111ce9d4276f6683a69b322b49c636 luit-1.1.1.tar.bz2 +# Locally computed +sha256 20b6a1481d9dafeaa471e2ac497ecc651428e8369cc935b5bd9d0e5b77d78081 COPYING diff --git a/package/x11r7/xapp_luit/xapp_luit.mk b/package/x11r7/xapp_luit/xapp_luit.mk new file mode 100644 index 00000000..d3217fe5 --- /dev/null +++ b/package/x11r7/xapp_luit/xapp_luit.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_luit +# +################################################################################ + +XAPP_LUIT_VERSION = 1.1.1 +XAPP_LUIT_SOURCE = luit-$(XAPP_LUIT_VERSION).tar.bz2 +XAPP_LUIT_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_LUIT_LICENSE = MIT +XAPP_LUIT_LICENSE_FILES = COPYING +XAPP_LUIT_DEPENDENCIES = xlib_libX11 xlib_libfontenc + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_mkfontscale/Config.in b/package/x11r7/xapp_mkfontscale/Config.in new file mode 100644 index 00000000..d0a9d896 --- /dev/null +++ b/package/x11r7/xapp_mkfontscale/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_XAPP_MKFONTSCALE + bool "mkfontscale" + select BR2_PACKAGE_FREETYPE + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBFONTENC + select BR2_PACKAGE_XORGPROTO + select BR2_PACKAGE_ZLIB + help + create an index of scalable font files for X diff --git a/package/x11r7/xapp_mkfontscale/xapp_mkfontscale.hash b/package/x11r7/xapp_mkfontscale/xapp_mkfontscale.hash new file mode 100644 index 00000000..cbcdb170 --- /dev/null +++ b/package/x11r7/xapp_mkfontscale/xapp_mkfontscale.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-March/002988.html +md5 215940de158b1a3d8b3f8b442c606e2f mkfontscale-1.2.1.tar.bz2 +sha1 fb9d0458a4476a237609b676f9cebcc64b0a8a85 mkfontscale-1.2.1.tar.bz2 +sha256 ca0495eb974a179dd742bfa6199d561bda1c8da4a0c5a667f21fd82aaab6bac7 mkfontscale-1.2.1.tar.bz2 +sha512 4d243160e1f7f8dfa6a8f53349c1a42a55fc99426455ebdef58352c5e951fce8b4f1fbd1061a76c9a148095b002eac372db1ae5e2647d2ccb4886635b317b18c mkfontscale-1.2.1.tar.bz2 +# Locally computed +sha256 80df6f5b759f7775042313e4586506db60f26fd15b98b532cf518bd8cf1e8488 COPYING diff --git a/package/x11r7/xapp_mkfontscale/xapp_mkfontscale.mk b/package/x11r7/xapp_mkfontscale/xapp_mkfontscale.mk new file mode 100644 index 00000000..11d9cc95 --- /dev/null +++ b/package/x11r7/xapp_mkfontscale/xapp_mkfontscale.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# xapp_mkfontscale +# +################################################################################ + +XAPP_MKFONTSCALE_VERSION = 1.2.1 +XAPP_MKFONTSCALE_SOURCE = mkfontscale-$(XAPP_MKFONTSCALE_VERSION).tar.bz2 +XAPP_MKFONTSCALE_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_MKFONTSCALE_LICENSE = MIT +XAPP_MKFONTSCALE_LICENSE_FILES = COPYING +XAPP_MKFONTSCALE_DEPENDENCIES = zlib freetype xlib_libfontenc xorgproto +HOST_XAPP_MKFONTSCALE_DEPENDENCIES = \ + host-zlib host-freetype host-xlib_libfontenc host-xorgproto + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/x11r7/xapp_oclock/Config.in b/package/x11r7/xapp_oclock/Config.in new file mode 100644 index 00000000..00cd4132 --- /dev/null +++ b/package/x11r7/xapp_oclock/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_XAPP_OCLOCK + bool "oclock" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XLIB_LIBXMU + help + round X clock diff --git a/package/x11r7/xapp_oclock/xapp_oclock.hash b/package/x11r7/xapp_oclock/xapp_oclock.hash new file mode 100644 index 00000000..b345b448 --- /dev/null +++ b/package/x11r7/xapp_oclock/xapp_oclock.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-March/002856.html +md5 973f6d25a6f0990720b98a15c9436b92 oclock-1.0.4.tar.bz2 +sha1 0bc8f3f44290950f60af894e20e0ceb0c5e8e862 oclock-1.0.4.tar.bz2 +sha256 cc20cfc1c0d5128d89e1eecd9ba52e58f111075be163e0aeda5690dbaafbaefe oclock-1.0.4.tar.bz2 +sha512 6e0d36a84572a153226b2929f2253cb7adc3c9e5e3af168aeaf8c487ade2e43517b271a8e9cdb2a2c4a67ca56ed0b99c194ca63a4a822b68bfc72ca6518335e7 oclock-1.0.4.tar.bz2 +# Locally computed +sha256 f6cae4b0c603ef5bd76da2df96b38aa43aa7547e482adb8cb8b83f09af35e4a2 COPYING diff --git a/package/x11r7/xapp_oclock/xapp_oclock.mk b/package/x11r7/xapp_oclock/xapp_oclock.mk new file mode 100644 index 00000000..0f94cf8c --- /dev/null +++ b/package/x11r7/xapp_oclock/xapp_oclock.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xapp_oclock +# +################################################################################ + +XAPP_OCLOCK_VERSION = 1.0.4 +XAPP_OCLOCK_SOURCE = oclock-$(XAPP_OCLOCK_VERSION).tar.bz2 +XAPP_OCLOCK_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_OCLOCK_LICENSE = MIT +XAPP_OCLOCK_LICENSE_FILES = COPYING +XAPP_OCLOCK_DEPENDENCIES = xlib_libX11 xlib_libXext xlib_libXmu +XAPP_OCLOCK_CONF_OPTS = --with-appdefaultdir=/usr/share/X11/app-defaults + +ifeq ($(BR2_PACKAGE_XLIB_LIBXKBFILE),y) +XAPP_OCLOCK_CONF_OPTS += --with-xkb +XAPP_OCLOCK_DEPENDENCIES += xlib_libxkbfile +else +XAPP_OCLOCK_CONF_OPTS += --without-xkb +endif + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_rgb/Config.in b/package/x11r7/xapp_rgb/Config.in new file mode 100644 index 00000000..7198b5f1 --- /dev/null +++ b/package/x11r7/xapp_rgb/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XAPP_RGB + bool "rgb" + select BR2_PACKAGE_XORGPROTO + help + uncompile an rgb color-name database diff --git a/package/x11r7/xapp_rgb/xapp_rgb.hash b/package/x11r7/xapp_rgb/xapp_rgb.hash new file mode 100644 index 00000000..ce05454c --- /dev/null +++ b/package/x11r7/xapp_rgb/xapp_rgb.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2014-November/002494.html +sha256 bbca7c6aa59939b9f6a0fb9fff15dfd62176420ffd4ae30c8d92a6a125fbe6b0 rgb-1.0.6.tar.bz2 +# Locally computed +sha256 1d08eb3384f5dedc7735bcfae1aa58cb64643ca9389edce3312b1c3cefbfdaa7 COPYING diff --git a/package/x11r7/xapp_rgb/xapp_rgb.mk b/package/x11r7/xapp_rgb/xapp_rgb.mk new file mode 100644 index 00000000..b2d5d777 --- /dev/null +++ b/package/x11r7/xapp_rgb/xapp_rgb.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_rgb +# +################################################################################ + +XAPP_RGB_VERSION = 1.0.6 +XAPP_RGB_SOURCE = rgb-$(XAPP_RGB_VERSION).tar.bz2 +XAPP_RGB_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_RGB_LICENSE = MIT +XAPP_RGB_LICENSE_FILES = COPYING +XAPP_RGB_DEPENDENCIES = xorgproto host-pkgconf + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_rstart/Config.in b/package/x11r7/xapp_rstart/Config.in new file mode 100644 index 00000000..3c1d5a9e --- /dev/null +++ b/package/x11r7/xapp_rstart/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_RSTART + bool "rstart" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_XLIB_LIBX11 + help + X.Org rstart application diff --git a/package/x11r7/xapp_rstart/xapp_rstart.hash b/package/x11r7/xapp_rstart/xapp_rstart.hash new file mode 100644 index 00000000..e87424cb --- /dev/null +++ b/package/x11r7/xapp_rstart/xapp_rstart.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2013-February/002168.html +sha256 29134e9fdffc8d6ac6904c293b392ba6a493ce571fbd2015485b19a8e4d0ffeb rstart-1.0.5.tar.bz2 +# Locally computed +sha256 7561fa083e87cd511669d8725ebe89dde6cd4f72cdea35b817262dc6ad6fbe9a COPYING diff --git a/package/x11r7/xapp_rstart/xapp_rstart.mk b/package/x11r7/xapp_rstart/xapp_rstart.mk new file mode 100644 index 00000000..2bcc2923 --- /dev/null +++ b/package/x11r7/xapp_rstart/xapp_rstart.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_rstart +# +################################################################################ + +XAPP_RSTART_VERSION = 1.0.5 +XAPP_RSTART_SOURCE = rstart-$(XAPP_RSTART_VERSION).tar.bz2 +XAPP_RSTART_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_RSTART_LICENSE = MIT +XAPP_RSTART_LICENSE_FILES = COPYING +XAPP_RSTART_DEPENDENCIES = xlib_libX11 + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_scripts/Config.in b/package/x11r7/xapp_scripts/Config.in new file mode 100644 index 00000000..691f0e21 --- /dev/null +++ b/package/x11r7/xapp_scripts/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XAPP_SCRIPTS + bool "scripts" + select BR2_PACKAGE_XLIB_LIBX11 + help + start an X program on a remote machine diff --git a/package/x11r7/xapp_scripts/xapp_scripts.hash b/package/x11r7/xapp_scripts/xapp_scripts.hash new file mode 100644 index 00000000..cc561eb2 --- /dev/null +++ b/package/x11r7/xapp_scripts/xapp_scripts.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 1b154b4359302ca499818c45396325aef9ff364d6ff4ce5c3769e4803994a136 scripts-1.0.1.tar.bz2 +sha256 27d8cbdcde7a0bd062ce49cdf8c672201452a64e3e6823f09b1beffe2c4b8eff COPYING diff --git a/package/x11r7/xapp_scripts/xapp_scripts.mk b/package/x11r7/xapp_scripts/xapp_scripts.mk new file mode 100644 index 00000000..5146db57 --- /dev/null +++ b/package/x11r7/xapp_scripts/xapp_scripts.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_scripts +# +################################################################################ + +XAPP_SCRIPTS_VERSION = 1.0.1 +XAPP_SCRIPTS_SOURCE = scripts-$(XAPP_SCRIPTS_VERSION).tar.bz2 +XAPP_SCRIPTS_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_SCRIPTS_LICENSE = MIT +XAPP_SCRIPTS_LICENSE_FILES = COPYING +XAPP_SCRIPTS_DEPENDENCIES = xlib_libX11 + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_sessreg/Config.in b/package/x11r7/xapp_sessreg/Config.in new file mode 100644 index 00000000..c9048b3b --- /dev/null +++ b/package/x11r7/xapp_sessreg/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_SESSREG + bool "sessreg" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XORGPROTO + help + manage utmp/wtmp entries for non-init clients diff --git a/package/x11r7/xapp_sessreg/xapp_sessreg.hash b/package/x11r7/xapp_sessreg/xapp_sessreg.hash new file mode 100644 index 00000000..12a7d368 --- /dev/null +++ b/package/x11r7/xapp_sessreg/xapp_sessreg.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-June/002994.html +md5 92be564d4be7d8aa7b5024057b715210 sessreg-1.1.2.tar.bz2 +sha1 169c1ff9fb152b4b4ca0cfbd3e1aee33af042016 sessreg-1.1.2.tar.bz2 +sha256 dfcb9e954273ace63879aec053c7880466f8755752a35aa9ced3fa5f04fd2c33 sessreg-1.1.2.tar.bz2 +sha512 7e3c2bdcadb7133aace463b58d8c6108d315ec95d2a42509073eeddc7f02644092a4b3168bd3b426c041736a016291092e0bf8368acd620dbeff96d53d12f98c sessreg-1.1.2.tar.bz2 +# Locally computed +sha256 ac8f5cc696e6c473aea4caaf18650316dc8912fcf0f370cae1df5f395cea8631 COPYING diff --git a/package/x11r7/xapp_sessreg/xapp_sessreg.mk b/package/x11r7/xapp_sessreg/xapp_sessreg.mk new file mode 100644 index 00000000..7f488e24 --- /dev/null +++ b/package/x11r7/xapp_sessreg/xapp_sessreg.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_sessreg +# +################################################################################ + +XAPP_SESSREG_VERSION = 1.1.2 +XAPP_SESSREG_SOURCE = sessreg-$(XAPP_SESSREG_VERSION).tar.bz2 +XAPP_SESSREG_SITE = https://xorg.freedesktop.org/archive/individual/app +XAPP_SESSREG_LICENSE = MIT +XAPP_SESSREG_LICENSE_FILES = COPYING +XAPP_SESSREG_DEPENDENCIES = xlib_libX11 xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_setxkbmap/Config.in b/package/x11r7/xapp_setxkbmap/Config.in new file mode 100644 index 00000000..2b1389c7 --- /dev/null +++ b/package/x11r7/xapp_setxkbmap/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_SETXKBMAP + bool "setxkbmap" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXKBFILE + help + Controls the keyboard layout of a running X server. diff --git a/package/x11r7/xapp_setxkbmap/xapp_setxkbmap.hash b/package/x11r7/xapp_setxkbmap/xapp_setxkbmap.hash new file mode 100644 index 00000000..4f963593 --- /dev/null +++ b/package/x11r7/xapp_setxkbmap/xapp_setxkbmap.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-July/003007.html +md5 93e736c98fb75856ee8227a0c49a128d setxkbmap-1.3.2.tar.bz2 +sha1 44783734bc58fca93165a20da0bb3eca1ccb9ad9 setxkbmap-1.3.2.tar.bz2 +sha256 8ff27486442725e50b02d7049152f51d125ecad71b7ce503cfa09d5d8ceeb9f5 setxkbmap-1.3.2.tar.bz2 +sha512 bfa8015dee0d8d3fdbbd89afbd71c8606ce168d6edca8521d5ed05a00fecbea39bc4bfcce84b71458bdeb34c60bd80a5df27e0691ccee3966443ecdc937faf38 setxkbmap-1.3.2.tar.bz2 +# Locally computed +sha256 afb8ce58340b6a6b85b73e256425263ce46f5a427279785e275991cb660cce82 COPYING diff --git a/package/x11r7/xapp_setxkbmap/xapp_setxkbmap.mk b/package/x11r7/xapp_setxkbmap/xapp_setxkbmap.mk new file mode 100644 index 00000000..8b697475 --- /dev/null +++ b/package/x11r7/xapp_setxkbmap/xapp_setxkbmap.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_setxkbmap +# +################################################################################ + +XAPP_SETXKBMAP_VERSION = 1.3.2 +XAPP_SETXKBMAP_SOURCE = setxkbmap-$(XAPP_SETXKBMAP_VERSION).tar.bz2 +XAPP_SETXKBMAP_SITE = https://xorg.freedesktop.org/archive/individual/app +XAPP_SETXKBMAP_LICENSE = MIT +XAPP_SETXKBMAP_LICENSE_FILES = COPYING +XAPP_SETXKBMAP_DEPENDENCIES = xlib_libX11 xlib_libxkbfile + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_showfont/Config.in b/package/x11r7/xapp_showfont/Config.in new file mode 100644 index 00000000..edfab3fc --- /dev/null +++ b/package/x11r7/xapp_showfont/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XAPP_SHOWFONT + bool "showfont" + select BR2_PACKAGE_XLIB_LIBFS + help + font dumper for X font server diff --git a/package/x11r7/xapp_showfont/xapp_showfont.hash b/package/x11r7/xapp_showfont/xapp_showfont.hash new file mode 100644 index 00000000..ff35e9c9 --- /dev/null +++ b/package/x11r7/xapp_showfont/xapp_showfont.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2014-December/002513.html +sha256 e9735c1c530b8a52edfab7415cc0fd7f8d2889095114f4cb689a27476461ac89 showfont-1.0.5.tar.bz2 +# Locally computed +sha256 c32217021e0507207e2ee6da3fcee3d9e32816003a7153b3357c08cdc97934a8 COPYING diff --git a/package/x11r7/xapp_showfont/xapp_showfont.mk b/package/x11r7/xapp_showfont/xapp_showfont.mk new file mode 100644 index 00000000..c0b8c9a3 --- /dev/null +++ b/package/x11r7/xapp_showfont/xapp_showfont.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_showfont +# +################################################################################ + +XAPP_SHOWFONT_VERSION = 1.0.5 +XAPP_SHOWFONT_SOURCE = showfont-$(XAPP_SHOWFONT_VERSION).tar.bz2 +XAPP_SHOWFONT_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_SHOWFONT_LICENSE = MIT +XAPP_SHOWFONT_LICENSE_FILES = COPYING +XAPP_SHOWFONT_DEPENDENCIES = xlib_libFS + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_smproxy/Config.in b/package/x11r7/xapp_smproxy/Config.in new file mode 100644 index 00000000..80ab984e --- /dev/null +++ b/package/x11r7/xapp_smproxy/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_SMPROXY + bool "smproxy" + select BR2_PACKAGE_XLIB_LIBXMU + select BR2_PACKAGE_XLIB_LIBXT + help + Session Manager Proxy diff --git a/package/x11r7/xapp_smproxy/xapp_smproxy.hash b/package/x11r7/xapp_smproxy/xapp_smproxy.hash new file mode 100644 index 00000000..db9dd27a --- /dev/null +++ b/package/x11r7/xapp_smproxy/xapp_smproxy.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2015-April/002564.html +sha256 6cf19155a2752237f36dbf8bc4184465ea190d2652f887faccb4e2a6ebf77266 smproxy-1.0.6.tar.bz2 +# Locally computed +sha256 92dce6d8a1fcc0c6b5e56dc44e431e7f73bfa2ed5e83295662aa314067a671d8 COPYING diff --git a/package/x11r7/xapp_smproxy/xapp_smproxy.mk b/package/x11r7/xapp_smproxy/xapp_smproxy.mk new file mode 100644 index 00000000..f51c1ec0 --- /dev/null +++ b/package/x11r7/xapp_smproxy/xapp_smproxy.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_smproxy +# +################################################################################ + +XAPP_SMPROXY_VERSION = 1.0.6 +XAPP_SMPROXY_SOURCE = smproxy-$(XAPP_SMPROXY_VERSION).tar.bz2 +XAPP_SMPROXY_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_SMPROXY_LICENSE = MIT +XAPP_SMPROXY_LICENSE_FILES = COPYING +XAPP_SMPROXY_DEPENDENCIES = xlib_libXmu xlib_libXt + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_twm/Config.in b/package/x11r7/xapp_twm/Config.in new file mode 100644 index 00000000..25bf800f --- /dev/null +++ b/package/x11r7/xapp_twm/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_XAPP_TWM + bool "twm" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XLIB_LIBXT + select BR2_PACKAGE_XLIB_LIBXMU + help + No description available diff --git a/package/x11r7/xapp_twm/xapp_twm.hash b/package/x11r7/xapp_twm/xapp_twm.hash new file mode 100644 index 00000000..26661f1f --- /dev/null +++ b/package/x11r7/xapp_twm/xapp_twm.hash @@ -0,0 +1,5 @@ +# From https://lists.x.org/archives/xorg-announce/2020-June/003047.html +sha256 f4e8a842dec410e79741f25ed4dfac09df080835d0bba2e3983b5914569b68c7 twm-1.0.11.tar.xz +sha512 948034bba23e6b6c4412fcd2e46bb11a9980297601218a54a5055165ab0229a44dde0d50f338b24e82d76f390597e2fa09d11ff7f3fe1b1d736b10083c7da20d twm-1.0.11.tar.xz +# Locally computed +sha256 4809ffc9656bc9a704e19ab467d1cedc97c48c9d1f9a4018e6d99d2e61f75945 COPYING diff --git a/package/x11r7/xapp_twm/xapp_twm.mk b/package/x11r7/xapp_twm/xapp_twm.mk new file mode 100644 index 00000000..46d4ca33 --- /dev/null +++ b/package/x11r7/xapp_twm/xapp_twm.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xapp_twm +# +################################################################################ + +XAPP_TWM_VERSION = 1.0.11 +XAPP_TWM_SOURCE = twm-$(XAPP_TWM_VERSION).tar.xz +XAPP_TWM_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_TWM_LICENSE = MIT +XAPP_TWM_LICENSE_FILES = COPYING +XAPP_TWM_DEPENDENCIES = \ + host-bison xlib_libX11 xlib_libXext xlib_libXt xlib_libXmu + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_viewres/Config.in b/package/x11r7/xapp_viewres/Config.in new file mode 100644 index 00000000..32827c80 --- /dev/null +++ b/package/x11r7/xapp_viewres/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XAPP_VIEWRES + bool "viewres" + select BR2_PACKAGE_XLIB_LIBXAW + help + graphical class browser for Xt diff --git a/package/x11r7/xapp_viewres/xapp_viewres.hash b/package/x11r7/xapp_viewres/xapp_viewres.hash new file mode 100644 index 00000000..9b40c0a5 --- /dev/null +++ b/package/x11r7/xapp_viewres/xapp_viewres.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-August/003020.html +md5 38e6568271d8098327706c5cf855dbc7 viewres-1.0.6.tar.bz2 +sha1 f1d12e5b4e1180916edb44234599a486b025b480 viewres-1.0.6.tar.bz2 +sha256 11c15db02066c1d5fc3febf9b185d16c1112f87e37c4b101a484dcefffb80934 viewres-1.0.6.tar.bz2 +sha512 3f4cfc61608bc6c9b35ef66ceb473661ca01946d3306d54040d32803e8e0eec506a0ce37ea22bfe514544a6ba9645fd30f39b20c063aff696b3c0fda3fe95dff viewres-1.0.6.tar.bz2 +# Locally computed +sha256 aefb540c54bc95c68702cd2ae668c559e63cc1a84f55ae5c0e78547e7d75d2d5 COPYING diff --git a/package/x11r7/xapp_viewres/xapp_viewres.mk b/package/x11r7/xapp_viewres/xapp_viewres.mk new file mode 100644 index 00000000..2e05a6e7 --- /dev/null +++ b/package/x11r7/xapp_viewres/xapp_viewres.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xapp_viewres +# +################################################################################ + +XAPP_VIEWRES_VERSION = 1.0.6 +XAPP_VIEWRES_SOURCE = viewres-$(XAPP_VIEWRES_VERSION).tar.bz2 +XAPP_VIEWRES_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_VIEWRES_LICENSE = MIT +XAPP_VIEWRES_LICENSE_FILES = COPYING +XAPP_VIEWRES_DEPENDENCIES = xlib_libXaw +XAPP_VIEWRES_CONF_OPTS = --with-appdefaultdir=/usr/share/X11/app-defaults + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_x11perf/Config.in b/package/x11r7/xapp_x11perf/Config.in new file mode 100644 index 00000000..0f1eca89 --- /dev/null +++ b/package/x11r7/xapp_x11perf/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_XAPP_X11PERF + bool "x11perf" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXMU + select BR2_PACKAGE_XLIB_LIBXFT + help + summarize x11perf results diff --git a/package/x11r7/xapp_x11perf/xapp_x11perf.hash b/package/x11r7/xapp_x11perf/xapp_x11perf.hash new file mode 100644 index 00000000..b472c21b --- /dev/null +++ b/package/x11r7/xapp_x11perf/xapp_x11perf.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-March/002983.html +md5 e96b56756990c56c24d2d02c2964456b x11perf-1.6.1.tar.bz2 +sha1 c54ebef80b6cb565397fe2e3069e0d7470027e5a x11perf-1.6.1.tar.bz2 +sha256 1c7e0b8ffc2794b4ccf11e04d551823abe0ea47b4f7db0637390db6fbe817c34 x11perf-1.6.1.tar.bz2 +sha512 b386151bfe3d7c04ab9953ae1882f3c5b627d6d1afb9a8cfe87c58236a88883fc11bbadb2226b9aa61df84b4fce625a1c9e3d146a124ac17e8d7d605b35d9c0b x11perf-1.6.1.tar.bz2 +# Locally computed +sha256 f467ff659142e2eb4cb7275c48c789d249af398b09a405d3e181dcc339b3b922 COPYING diff --git a/package/x11r7/xapp_x11perf/xapp_x11perf.mk b/package/x11r7/xapp_x11perf/xapp_x11perf.mk new file mode 100644 index 00000000..ec10590b --- /dev/null +++ b/package/x11r7/xapp_x11perf/xapp_x11perf.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_x11perf +# +################################################################################ + +XAPP_X11PERF_VERSION = 1.6.1 +XAPP_X11PERF_SOURCE = x11perf-$(XAPP_X11PERF_VERSION).tar.bz2 +XAPP_X11PERF_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_X11PERF_LICENSE = MIT +XAPP_X11PERF_LICENSE_FILES = COPYING +XAPP_X11PERF_DEPENDENCIES = xlib_libX11 xlib_libXmu xlib_libXft + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xauth/Config.in b/package/x11r7/xapp_xauth/Config.in new file mode 100644 index 00000000..919fd50b --- /dev/null +++ b/package/x11r7/xapp_xauth/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_XAPP_XAUTH + bool "xauth" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXAU + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XLIB_LIBXMU + help + X authority file utility diff --git a/package/x11r7/xapp_xauth/xapp_xauth.hash b/package/x11r7/xapp_xauth/xapp_xauth.hash new file mode 100644 index 00000000..0251c083 --- /dev/null +++ b/package/x11r7/xapp_xauth/xapp_xauth.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-July/003005.html +md5 e50587c1bb832aafd1a19d91a0890a0b xauth-1.1.tar.bz2 +sha1 16180e36d75a23cb182cb91e78f24273f1a63967 xauth-1.1.tar.bz2 +sha256 6d1dd1b79dd185107c5b0fdd22d1d791ad749ad6e288d0cdf80964c4ffa7530c xauth-1.1.tar.bz2 +sha512 b6ecd59a853a491ef45bf8cfbff63bed36645f81cb79ae9d18458b57f7502bccf92f0d979d3337578518646f680ad379e67b1dac15a927cbb11372733e7a3a0c xauth-1.1.tar.bz2 +# Locally computed +sha256 dcdf5fa36a652efbe61a21def1301739b0010334ae3f049f1cff433221a8c7a5 COPYING diff --git a/package/x11r7/xapp_xauth/xapp_xauth.mk b/package/x11r7/xapp_xauth/xapp_xauth.mk new file mode 100644 index 00000000..cd900f00 --- /dev/null +++ b/package/x11r7/xapp_xauth/xapp_xauth.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xauth +# +################################################################################ + +XAPP_XAUTH_VERSION = 1.1 +XAPP_XAUTH_SOURCE = xauth-$(XAPP_XAUTH_VERSION).tar.bz2 +XAPP_XAUTH_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XAUTH_LICENSE = MIT +XAPP_XAUTH_LICENSE_FILES = COPYING +XAPP_XAUTH_DEPENDENCIES = xlib_libX11 xlib_libXau xlib_libXext xlib_libXmu + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xbacklight/Config.in b/package/x11r7/xapp_xbacklight/Config.in new file mode 100644 index 00000000..5764056d --- /dev/null +++ b/package/x11r7/xapp_xbacklight/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_XAPP_XBACKLIGHT + bool "xbacklight" + select BR2_PACKAGE_XCB_UTIL + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXRANDR + select BR2_PACKAGE_XLIB_LIBXRENDER + help + xbacklight diff --git a/package/x11r7/xapp_xbacklight/xapp_xbacklight.hash b/package/x11r7/xapp_xbacklight/xapp_xbacklight.hash new file mode 100644 index 00000000..12d20525 --- /dev/null +++ b/package/x11r7/xapp_xbacklight/xapp_xbacklight.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-July/003008.html +md5 5b6405973db69c0443be2fba8e1a8ab7 xbacklight-1.2.3.tar.bz2 +sha1 f0a6163738143ec23542b459aef567309a119e0c xbacklight-1.2.3.tar.bz2 +sha256 3a27f324777ae99fee476cfb2f064576fb8cba4eb77f97cda37adda1c1d39ade xbacklight-1.2.3.tar.bz2 +sha512 717c87ce24634892fc4ac54fc59dcc0a5bc8f206aaf1d13410f95f7e4fe6e3dbc7ff8d951bcd8ea8c5e955357a00fea6ceadd4559e60b1a632e40f71290e12c7 xbacklight-1.2.3.tar.bz2 +# Locally computed +sha256 c9fbf1f272215babef31808c1235de8e4f7641ca5edfc4fc615b6556054b2b04 COPYING diff --git a/package/x11r7/xapp_xbacklight/xapp_xbacklight.mk b/package/x11r7/xapp_xbacklight/xapp_xbacklight.mk new file mode 100644 index 00000000..d52d562c --- /dev/null +++ b/package/x11r7/xapp_xbacklight/xapp_xbacklight.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xbacklight +# +################################################################################ + +XAPP_XBACKLIGHT_VERSION = 1.2.3 +XAPP_XBACKLIGHT_SOURCE = xbacklight-$(XAPP_XBACKLIGHT_VERSION).tar.bz2 +XAPP_XBACKLIGHT_SITE = https://xorg.freedesktop.org/archive/individual/app +XAPP_XBACKLIGHT_LICENSE = MIT +XAPP_XBACKLIGHT_LICENSE_FILES = COPYING +XAPP_XBACKLIGHT_DEPENDENCIES = xlib_libX11 xlib_libXrandr xlib_libXrender xcb-util + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xbiff/Config.in b/package/x11r7/xapp_xbiff/Config.in new file mode 100644 index 00000000..ea4b58aa --- /dev/null +++ b/package/x11r7/xapp_xbiff/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_XBIFF + bool "xbiff" + select BR2_PACKAGE_XLIB_LIBXAW + select BR2_PACKAGE_XDATA_XBITMAPS + help + mailbox flag for X diff --git a/package/x11r7/xapp_xbiff/xapp_xbiff.hash b/package/x11r7/xapp_xbiff/xapp_xbiff.hash new file mode 100644 index 00000000..9c646785 --- /dev/null +++ b/package/x11r7/xapp_xbiff/xapp_xbiff.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-July/003009.html +md5 66dd3ebd6351b1911b831b89b2dba8ec xbiff-1.0.4.tar.bz2 +sha1 193c0a2be1f7f374bb9d32217a198c92a63619e8 xbiff-1.0.4.tar.bz2 +sha256 e1e1a39628a5678585008ef7fb1ff2864edaaa0e062989c2331f8c74e0fec971 xbiff-1.0.4.tar.bz2 +sha512 0fb920a08640ec59f23d8a8a47bd244565dfbaff7a21c38a8a2abe1edb5eacabc970b5dbdc409163fc444fde5b75a2dc4e0114312938efec5b77228f3bf785ac xbiff-1.0.4.tar.bz2 +# Locally computed +sha256 9b840f2e1900889124cc999f3158da2b6b07bf6d0d77bdbb01ce65d2e702dc83 COPYING diff --git a/package/x11r7/xapp_xbiff/xapp_xbiff.mk b/package/x11r7/xapp_xbiff/xapp_xbiff.mk new file mode 100644 index 00000000..2c3975c1 --- /dev/null +++ b/package/x11r7/xapp_xbiff/xapp_xbiff.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xbiff +# +################################################################################ + +XAPP_XBIFF_VERSION = 1.0.4 +XAPP_XBIFF_SOURCE = xbiff-$(XAPP_XBIFF_VERSION).tar.bz2 +XAPP_XBIFF_SITE = https://xorg.freedesktop.org/archive/individual/app +XAPP_XBIFF_LICENSE = MIT +XAPP_XBIFF_LICENSE_FILES = COPYING +XAPP_XBIFF_DEPENDENCIES = xlib_libXaw xdata_xbitmaps + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xcalc/Config.in b/package/x11r7/xapp_xcalc/Config.in new file mode 100644 index 00000000..2552be02 --- /dev/null +++ b/package/x11r7/xapp_xcalc/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XAPP_XCALC + bool "xcalc" + select BR2_PACKAGE_XLIB_LIBXAW + help + scientific calculator for X diff --git a/package/x11r7/xapp_xcalc/xapp_xcalc.hash b/package/x11r7/xapp_xcalc/xapp_xcalc.hash new file mode 100644 index 00000000..d7fac37e --- /dev/null +++ b/package/x11r7/xapp_xcalc/xapp_xcalc.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-June/002996.html +md5 3b566e47c76356cecaa71eb431767ae1 xcalc-1.1.0.tar.bz2 +sha1 0537f7ee56558cf80133c6b49c4757c1166aaeb6 xcalc-1.1.0.tar.bz2 +sha256 d5d746954465afc3da1f355d721882806568fb04b4d059c027702c0d16a3b5eb xcalc-1.1.0.tar.bz2 +sha512 877aab7bb08f409a21c26b841f4d91eb6993914ed0d26512e47d6b3d2b3e0b231158901415a106cfb45de43f03f253bf2a8733f986538d4ee810afe0e54f98d5 xcalc-1.1.0.tar.bz2 +# Locally computed +sha256 8dd69dbec37866a41d3040c5c478aca46e0b50c30319f178064d5e2ed9d3f912 COPYING diff --git a/package/x11r7/xapp_xcalc/xapp_xcalc.mk b/package/x11r7/xapp_xcalc/xapp_xcalc.mk new file mode 100644 index 00000000..b917d9e9 --- /dev/null +++ b/package/x11r7/xapp_xcalc/xapp_xcalc.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# xapp_xcalc +# +################################################################################ + +XAPP_XCALC_VERSION = 1.1.0 +XAPP_XCALC_SOURCE = xcalc-$(XAPP_XCALC_VERSION).tar.bz2 +XAPP_XCALC_SITE = https://xorg.freedesktop.org/releases/individual/app +XAPP_XCALC_LICENSE = MIT +XAPP_XCALC_LICENSE_FILES = COPYING +XAPP_XCALC_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) install-exec install-data +XAPP_XCALC_DEPENDENCIES = xlib_libXaw +XAPP_XCALC_CONF_OPTS = --with-appdefaultdir=/usr/share/X11/app-defaults + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xclipboard/Config.in b/package/x11r7/xapp_xclipboard/Config.in new file mode 100644 index 00000000..941c2197 --- /dev/null +++ b/package/x11r7/xapp_xclipboard/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XAPP_XCLIPBOARD + bool "xclipboard" + select BR2_PACKAGE_XLIB_LIBXAW + help + interchange between cut buffer and selection diff --git a/package/x11r7/xapp_xclipboard/xapp_xclipboard.hash b/package/x11r7/xapp_xclipboard/xapp_xclipboard.hash new file mode 100644 index 00000000..ef45b928 --- /dev/null +++ b/package/x11r7/xapp_xclipboard/xapp_xclipboard.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2013-September/002299.html +sha256 9c0e0a1f4f1d49f73c6cf3ccd27b5ca0e18afc63679f1a1ee466b1d82446ebb5 xclipboard-1.1.3.tar.bz2 +# Locally computed +sha256 f0a362fc1b8e788845b1c0ad7ba9ade58fdfb73da750c3b9780db5d70b947657 COPYING diff --git a/package/x11r7/xapp_xclipboard/xapp_xclipboard.mk b/package/x11r7/xapp_xclipboard/xapp_xclipboard.mk new file mode 100644 index 00000000..d77ac986 --- /dev/null +++ b/package/x11r7/xapp_xclipboard/xapp_xclipboard.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xapp_xclipboard +# +################################################################################ + +XAPP_XCLIPBOARD_VERSION = 1.1.3 +XAPP_XCLIPBOARD_SOURCE = xclipboard-$(XAPP_XCLIPBOARD_VERSION).tar.bz2 +XAPP_XCLIPBOARD_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XCLIPBOARD_LICENSE = MIT +XAPP_XCLIPBOARD_LICENSE_FILES = COPYING +XAPP_XCLIPBOARD_DEPENDENCIES = xlib_libXaw xlib_libXmu xlib_libXt +XAPP_XCLIPBOARD_CONF_OPTS = --with-appdefaultdir=/usr/share/X11/app-defaults + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xclock/Config.in b/package/x11r7/xapp_xclock/Config.in new file mode 100644 index 00000000..083a6d1e --- /dev/null +++ b/package/x11r7/xapp_xclock/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_XAPP_XCLOCK + bool "xclock" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXAW + select BR2_PACKAGE_XLIB_LIBXFT + select BR2_PACKAGE_XLIB_LIBXRENDER + select BR2_PACKAGE_XLIB_LIBXKBFILE + help + analog / digital clock for X diff --git a/package/x11r7/xapp_xclock/xapp_xclock.hash b/package/x11r7/xapp_xclock/xapp_xclock.hash new file mode 100644 index 00000000..881b4015 --- /dev/null +++ b/package/x11r7/xapp_xclock/xapp_xclock.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-July/003010.html +md5 437522a96f424f68fc64ed34ece9b211 xclock-1.0.9.tar.bz2 +sha1 774c711cf7ee3f601f7209bbb01ce3f0d5ddbde6 xclock-1.0.9.tar.bz2 +sha256 cf461fb2c6f2ac42c54d8429ee2010fdb9a1442a370adfbfe8a7bfaf33c123bb xclock-1.0.9.tar.bz2 +sha512 fcbac0b4ab1cea4ae0751ce1c0c6302048e5d98d459873c7580e4ca786ec49fa27f73e5831bdfe135abb5cfeabe886456276e9d01351ea7905c606f40f84522d xclock-1.0.9.tar.bz2 +# Locally computed +sha256 ee1f19f46801ef00e70498603e74df644d0b93fc82f06b55ce64c3a2c9f16e71 COPYING diff --git a/package/x11r7/xapp_xclock/xapp_xclock.mk b/package/x11r7/xapp_xclock/xapp_xclock.mk new file mode 100644 index 00000000..77cc7011 --- /dev/null +++ b/package/x11r7/xapp_xclock/xapp_xclock.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xapp_xclock +# +################################################################################ + +XAPP_XCLOCK_VERSION = 1.0.9 +XAPP_XCLOCK_SOURCE = xclock-$(XAPP_XCLOCK_VERSION).tar.bz2 +XAPP_XCLOCK_SITE = https://xorg.freedesktop.org/archive/individual/app +XAPP_XCLOCK_LICENSE = MIT +XAPP_XCLOCK_LICENSE_FILES = COPYING +XAPP_XCLOCK_DEPENDENCIES = xlib_libX11 xlib_libXaw xlib_libXft xlib_libXrender xlib_libxkbfile +XAPP_XCLOCK_CONF_OPTS = --with-appdefaultdir=/usr/share/X11/app-defaults + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xcmsdb/Config.in b/package/x11r7/xapp_xcmsdb/Config.in new file mode 100644 index 00000000..82c9da3a --- /dev/null +++ b/package/x11r7/xapp_xcmsdb/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_XCMSDB + bool "xcmsdb" + select BR2_PACKAGE_XLIB_LIBX11 + help + Device Color Characterization utility for X Color Management + System diff --git a/package/x11r7/xapp_xcmsdb/xapp_xcmsdb.hash b/package/x11r7/xapp_xcmsdb/xapp_xcmsdb.hash new file mode 100644 index 00000000..75a07f36 --- /dev/null +++ b/package/x11r7/xapp_xcmsdb/xapp_xcmsdb.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2015-April/002567.html +sha256 e5585361bb8b6a05bb814a8d0e444ee93e0f00180881d3070aff4571e97f67c6 xcmsdb-1.0.5.tar.bz2 +# Locally computed +sha256 c3bd4ac91beb08fee5272b17a3ddee8d2791cc5eaee5bce5271042a45fa4fa6a COPYING diff --git a/package/x11r7/xapp_xcmsdb/xapp_xcmsdb.mk b/package/x11r7/xapp_xcmsdb/xapp_xcmsdb.mk new file mode 100644 index 00000000..3cccacc0 --- /dev/null +++ b/package/x11r7/xapp_xcmsdb/xapp_xcmsdb.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xcmsdb +# +################################################################################ + +XAPP_XCMSDB_VERSION = 1.0.5 +XAPP_XCMSDB_SOURCE = xcmsdb-$(XAPP_XCMSDB_VERSION).tar.bz2 +XAPP_XCMSDB_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XCMSDB_LICENSE = MIT +XAPP_XCMSDB_LICENSE_FILES = COPYING +XAPP_XCMSDB_DEPENDENCIES = xlib_libX11 + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xcompmgr/Config.in b/package/x11r7/xapp_xcompmgr/Config.in new file mode 100644 index 00000000..b46014db --- /dev/null +++ b/package/x11r7/xapp_xcompmgr/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_XAPP_XCOMPMGR + bool "xcompmgr" + select BR2_PACKAGE_XLIB_LIBXCOMPOSITE + select BR2_PACKAGE_XLIB_LIBXDAMAGE + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XLIB_LIBXFIXES + select BR2_PACKAGE_XLIB_LIBXRENDER + help + xcompmgr is a sample compositing manager that enables basic + eye-candy effects. diff --git a/package/x11r7/xapp_xcompmgr/xapp_xcompmgr.hash b/package/x11r7/xapp_xcompmgr/xapp_xcompmgr.hash new file mode 100644 index 00000000..b893d018 --- /dev/null +++ b/package/x11r7/xapp_xcompmgr/xapp_xcompmgr.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-March/002989.html +md5 ef8c7d4140c11efb8de4141b3968208c xcompmgr-1.1.8.tar.bz2 +sha1 7bb28329b4bb687763df2d2c1723cb6ecb20945a xcompmgr-1.1.8.tar.bz2 +sha256 0b89daf4f060fa3fa83cca862c45d531fef7121b5d06552c1d73d396ad9a7243 xcompmgr-1.1.8.tar.bz2 +sha512 ccf29426ffb0797a53653d1ce152de5eee0cec284811fed4b8e634ea0d948180531e4619d96f47e4f9594432c57322624fe0fdaee2c9200efac427fc0904953d xcompmgr-1.1.8.tar.bz2 +# Locally computed +sha256 c843545f72771b3ff95eb88defc2e3ed8f9a1802d9bb6c32c196bb5eec3d3a5d COPYING diff --git a/package/x11r7/xapp_xcompmgr/xapp_xcompmgr.mk b/package/x11r7/xapp_xcompmgr/xapp_xcompmgr.mk new file mode 100644 index 00000000..24ebad7b --- /dev/null +++ b/package/x11r7/xapp_xcompmgr/xapp_xcompmgr.mk @@ -0,0 +1,19 @@ +################################################################################ +# +# xapp_xcompmgr +# +################################################################################ + +XAPP_XCOMPMGR_VERSION = 1.1.8 +XAPP_XCOMPMGR_SOURCE = xcompmgr-$(XAPP_XCOMPMGR_VERSION).tar.bz2 +XAPP_XCOMPMGR_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XCOMPMGR_LICENSE = MIT +XAPP_XCOMPMGR_LICENSE_FILES = COPYING +XAPP_XCOMPMGR_DEPENDENCIES = \ + xlib_libXcomposite \ + xlib_libXdamage \ + xlib_libXext \ + xlib_libXfixes \ + xlib_libXrender + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xconsole/Config.in b/package/x11r7/xapp_xconsole/Config.in new file mode 100644 index 00000000..3d796bd3 --- /dev/null +++ b/package/x11r7/xapp_xconsole/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_XAPP_XCONSOLE + bool "xconsole" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXAW + select BR2_PACKAGE_XLIB_LIBXT + select BR2_PACKAGE_XLIB_LIBXMU + select BR2_PACKAGE_XORGPROTO + help + xconsole - monitor system console messages with X diff --git a/package/x11r7/xapp_xconsole/xapp_xconsole.hash b/package/x11r7/xapp_xconsole/xapp_xconsole.hash new file mode 100644 index 00000000..5d6c2ac8 --- /dev/null +++ b/package/x11r7/xapp_xconsole/xapp_xconsole.hash @@ -0,0 +1,4 @@ +# From https://lists.x.org/archives/xorg-announce/2017-January/002774.html +sha256 d1144882df207378381bc83927906559defbf7b83a01d52c50ad44234c5851e0 xconsole-1.0.7.tar.bz2 +# Locally computed +sha256 a29ea5dbcde7ba1695c95949be6303d1ca1de0b7786a38b60f33eccf03506f9d COPYING diff --git a/package/x11r7/xapp_xconsole/xapp_xconsole.mk b/package/x11r7/xapp_xconsole/xapp_xconsole.mk new file mode 100644 index 00000000..ddec4cfa --- /dev/null +++ b/package/x11r7/xapp_xconsole/xapp_xconsole.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# xapp_xconsole +# +################################################################################ + +XAPP_XCONSOLE_VERSION = 1.0.7 +XAPP_XCONSOLE_SOURCE = xconsole-$(XAPP_XCONSOLE_VERSION).tar.bz2 +XAPP_XCONSOLE_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XCONSOLE_LICENSE = MIT +XAPP_XCONSOLE_LICENSE_FILES = COPYING +XAPP_XCONSOLE_DEPENDENCIES = \ + xlib_libX11 xlib_libXaw xlib_libXt xorgproto \ + xlib_libXmu +XAPP_XCONSOLE_CONF_OPTS = --with-appdefaultdir=/usr/share/X11/app-defaults + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xcursorgen/Config.in b/package/x11r7/xapp_xcursorgen/Config.in new file mode 100644 index 00000000..c47ec28f --- /dev/null +++ b/package/x11r7/xapp_xcursorgen/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_XAPP_XCURSORGEN + bool "xcursorgen" + select BR2_PACKAGE_LIBPNG + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXCURSOR + help + create an X cursor file from a collection of PNG images diff --git a/package/x11r7/xapp_xcursorgen/xapp_xcursorgen.hash b/package/x11r7/xapp_xcursorgen/xapp_xcursorgen.hash new file mode 100644 index 00000000..51031d62 --- /dev/null +++ b/package/x11r7/xapp_xcursorgen/xapp_xcursorgen.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-January/002936.html +md5 25cc7ca1ce5dcbb61c2b471c55e686b5 xcursorgen-1.0.7.tar.bz2 +sha1 109367eb23b0ad52cf5de15f50c02ebe872698ae xcursorgen-1.0.7.tar.bz2 +sha256 35b6f844b24f1776e9006c880a745728800764dbe3b327a128772b4610d8eb3d xcursorgen-1.0.7.tar.bz2 +sha512 bd13ad23691d3daa2d5dcdc5902cf62e3dcb97a0289aff362e6cd85866a1d8cafb64f98800a75bfb4cf1f3c76244ca20201847dff594543d136d0abaec7011d2 xcursorgen-1.0.7.tar.bz2 +# Locally computed +sha256 8c773336b654442ac8018715a52be1a8254895c57c898d5387016e9488cc2009 COPYING diff --git a/package/x11r7/xapp_xcursorgen/xapp_xcursorgen.mk b/package/x11r7/xapp_xcursorgen/xapp_xcursorgen.mk new file mode 100644 index 00000000..bcc696b0 --- /dev/null +++ b/package/x11r7/xapp_xcursorgen/xapp_xcursorgen.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# xapp_xcursorgen +# +################################################################################ + +XAPP_XCURSORGEN_VERSION = 1.0.7 +XAPP_XCURSORGEN_SOURCE = xcursorgen-$(XAPP_XCURSORGEN_VERSION).tar.bz2 +XAPP_XCURSORGEN_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XCURSORGEN_LICENSE = MIT +XAPP_XCURSORGEN_LICENSE_FILES = COPYING +XAPP_XCURSORGEN_DEPENDENCIES = libpng xlib_libX11 xlib_libXcursor +HOST_XAPP_XCURSORGEN_DEPENDENCIES = \ + host-libpng host-xlib_libX11 host-xlib_libXcursor + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/x11r7/xapp_xdbedizzy/Config.in b/package/x11r7/xapp_xdbedizzy/Config.in new file mode 100644 index 00000000..e4a5960f --- /dev/null +++ b/package/x11r7/xapp_xdbedizzy/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XAPP_XDBEDIZZY + bool "xdbedizzy" + select BR2_PACKAGE_XLIB_LIBXEXT + help + X.Org xdbedizzy application diff --git a/package/x11r7/xapp_xdbedizzy/xapp_xdbedizzy.hash b/package/x11r7/xapp_xdbedizzy/xapp_xdbedizzy.hash new file mode 100644 index 00000000..88b84382 --- /dev/null +++ b/package/x11r7/xapp_xdbedizzy/xapp_xdbedizzy.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2010-October/001514.html +sha1 281bee72116311e2d8393ae53ea832e9d267eded xdbedizzy-1.1.0.tar.bz2 +# Locally computed +sha256 27d8cbdcde7a0bd062ce49cdf8c672201452a64e3e6823f09b1beffe2c4b8eff COPYING diff --git a/package/x11r7/xapp_xdbedizzy/xapp_xdbedizzy.mk b/package/x11r7/xapp_xdbedizzy/xapp_xdbedizzy.mk new file mode 100644 index 00000000..72d04f83 --- /dev/null +++ b/package/x11r7/xapp_xdbedizzy/xapp_xdbedizzy.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xdbedizzy +# +################################################################################ + +XAPP_XDBEDIZZY_VERSION = 1.1.0 +XAPP_XDBEDIZZY_SOURCE = xdbedizzy-$(XAPP_XDBEDIZZY_VERSION).tar.bz2 +XAPP_XDBEDIZZY_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XDBEDIZZY_LICENSE = MIT +XAPP_XDBEDIZZY_LICENSE_FILES = COPYING +XAPP_XDBEDIZZY_DEPENDENCIES = xlib_libXext + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xditview/Config.in b/package/x11r7/xapp_xditview/Config.in new file mode 100644 index 00000000..22944f70 --- /dev/null +++ b/package/x11r7/xapp_xditview/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XAPP_XDITVIEW + bool "xditview" + select BR2_PACKAGE_XLIB_LIBXAW + help + display ditroff output diff --git a/package/x11r7/xapp_xditview/xapp_xditview.hash b/package/x11r7/xapp_xditview/xapp_xditview.hash new file mode 100644 index 00000000..0eb3a13f --- /dev/null +++ b/package/x11r7/xapp_xditview/xapp_xditview.hash @@ -0,0 +1,7 @@ +# From http://lists.x.org/archives/xorg-announce/2015-April/002570.html +md5 3a909116a3b2abe3845215cf49e09fa5 xditview-1.0.5.tar.bz2 +sha1 f06f65bca31168c86bcebd7f92dbbda08817a5cc xditview-1.0.5.tar.bz2 +sha256 eecb1ed51ab4edc7f454476d1248cfb7799a17c5679b3dd834e8b4658331c04b xditview-1.0.5.tar.bz2 +sha512 e20c903f38394b496111267e142d84d11e69a3b89f91869652d1f2ee5c997a13f90bfa2966651b42cd3979a330b348a6e397cc6a74c45b1f3f91643e7c06765d xditview-1.0.5.tar.bz2 +# Locally computed +sha256 023d879308a49249181f78bbb567e93c45138ad847fe969d191e4802e7a1a005 COPYING diff --git a/package/x11r7/xapp_xditview/xapp_xditview.mk b/package/x11r7/xapp_xditview/xapp_xditview.mk new file mode 100644 index 00000000..38871003 --- /dev/null +++ b/package/x11r7/xapp_xditview/xapp_xditview.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xapp_xditview +# +################################################################################ + +XAPP_XDITVIEW_VERSION = 1.0.5 +XAPP_XDITVIEW_SOURCE = xditview-$(XAPP_XDITVIEW_VERSION).tar.bz2 +XAPP_XDITVIEW_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XDITVIEW_LICENSE = MIT +XAPP_XDITVIEW_LICENSE_FILES = COPYING +XAPP_XDITVIEW_DEPENDENCIES = xlib_libXaw +XAPP_XDITVIEW_CONF_OPTS = --with-appdefaultdir=/usr/share/X11/app-defaults + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xdm/Config.in b/package/x11r7/xapp_xdm/Config.in new file mode 100644 index 00000000..af816a13 --- /dev/null +++ b/package/x11r7/xapp_xdm/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_XAPP_XDM + bool "xdm" + depends on BR2_USE_MMU # fork() + # Runtime dependency: can't start an X server unless there is one + depends on BR2_PACKAGE_XSERVER_XORG_SERVER + select BR2_PACKAGE_XAPP_SESSREG + select BR2_PACKAGE_XAPP_XRDB + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXAW + select BR2_PACKAGE_XLIB_LIBXDMCP + select BR2_PACKAGE_XLIB_LIBXINERAMA + select BR2_PACKAGE_XLIB_LIBXT + select BR2_PACKAGE_XORGPROTO + help + X.Org xdm application diff --git a/package/x11r7/xapp_xdm/S99xdm b/package/x11r7/xapp_xdm/S99xdm new file mode 100644 index 00000000..a2c0a1de --- /dev/null +++ b/package/x11r7/xapp_xdm/S99xdm @@ -0,0 +1,25 @@ +#!/bin/sh + +XDM_BIN=/usr/bin/xdm + +case "$1" in + start) + printf "Starting XDM: " + $XDM_BIN + echo "done" + ;; + stop) + echo "Stopping XDM" + killall -q xdm + ;; + restart) + $0 stop + $0 start + ;; + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 + ;; +esac + +exit 0 diff --git a/package/x11r7/xapp_xdm/xapp_xdm.hash b/package/x11r7/xapp_xdm/xapp_xdm.hash new file mode 100644 index 00000000..605be9de --- /dev/null +++ b/package/x11r7/xapp_xdm/xapp_xdm.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-March/002959.html +md5 47c4c3bf8d59b64b64d134df8b5e5ec5 xdm-1.1.12.tar.bz2 +sha1 5cc5590e40837949b1a63cb030878f8ceebd4d85 xdm-1.1.12.tar.bz2 +sha256 0dd283f72dda098d09e2925b9278c95e21551e693a5802ab442d1b577d8327f4 xdm-1.1.12.tar.bz2 +sha512 1a4be0a070ced5db8fda6fc74794c9f9ed0cb37fa440fda6a3a7652aff62dfc3d7ba68b9facf054671ebf0f4db2a0eec29d0aa3716e3407ccd5529bac3553bdb xdm-1.1.12.tar.bz2 +# Locally computed +sha256 b33b4bebbd6511b3e15315e8e29d67f25334ee45da8b7da6e6e97c53a70c6923 COPYING diff --git a/package/x11r7/xapp_xdm/xapp_xdm.mk b/package/x11r7/xapp_xdm/xapp_xdm.mk new file mode 100644 index 00000000..3c91e215 --- /dev/null +++ b/package/x11r7/xapp_xdm/xapp_xdm.mk @@ -0,0 +1,32 @@ +################################################################################ +# +# xapp_xdm +# +################################################################################ + +XAPP_XDM_VERSION = 1.1.12 +XAPP_XDM_SOURCE = xdm-$(XAPP_XDM_VERSION).tar.bz2 +XAPP_XDM_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XDM_LICENSE = MIT +XAPP_XDM_LICENSE_FILES = COPYING +XAPP_XDM_CONF_ENV = ac_cv_file__dev_urandom=yes +XAPP_XDM_DEPENDENCIES = \ + xapp_sessreg \ + xapp_xrdb \ + xlib_libX11 \ + xlib_libXaw \ + xlib_libXdmcp \ + xlib_libXinerama \ + xlib_libXt \ + xorgproto +XAPP_XDM_CONF_OPTS = \ + --with-appdefaultdir=/usr/share/X11/app-defaults \ + --with-utmp-file=/var/adm/utmpx \ + --with-wtmp-file=/var/adm/wtmpx + +define XAPP_XDM_INSTALL_INIT_SYSV + $(INSTALL) -m 0755 -D package/x11r7/xapp_xdm/S99xdm \ + $(TARGET_DIR)/etc/init.d/S99xdm +endef + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xdpyinfo/Config.in b/package/x11r7/xapp_xdpyinfo/Config.in new file mode 100644 index 00000000..85279038 --- /dev/null +++ b/package/x11r7/xapp_xdpyinfo/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_XAPP_XDPYINFO + bool "xdpyinfo" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XLIB_LIBXTST + help + display information utility for X diff --git a/package/x11r7/xapp_xdpyinfo/xapp_xdpyinfo.hash b/package/x11r7/xapp_xdpyinfo/xapp_xdpyinfo.hash new file mode 100644 index 00000000..eb02eaed --- /dev/null +++ b/package/x11r7/xapp_xdpyinfo/xapp_xdpyinfo.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2015-April/002569.html +sha256 30238ed915619e06ceb41721e5f747d67320555cc38d459e954839c189ccaf51 xdpyinfo-1.3.2.tar.bz2 +# Locally computed +sha256 49733ead65fdfa1da0d176f9b965cc08dae74d73d66c9606488d52f6fc036abf COPYING diff --git a/package/x11r7/xapp_xdpyinfo/xapp_xdpyinfo.mk b/package/x11r7/xapp_xdpyinfo/xapp_xdpyinfo.mk new file mode 100644 index 00000000..cf94f70b --- /dev/null +++ b/package/x11r7/xapp_xdpyinfo/xapp_xdpyinfo.mk @@ -0,0 +1,37 @@ +################################################################################ +# +# xapp_xdpyinfo +# +################################################################################ + +XAPP_XDPYINFO_VERSION = 1.3.2 +XAPP_XDPYINFO_SOURCE = xdpyinfo-$(XAPP_XDPYINFO_VERSION).tar.bz2 +XAPP_XDPYINFO_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XDPYINFO_LICENSE = MIT +XAPP_XDPYINFO_LICENSE_FILES = COPYING +XAPP_XDPYINFO_CONF_OPTS = --without-xf86misc # not in BR +XAPP_XDPYINFO_DEPENDENCIES = xlib_libX11 xlib_libXext xlib_libXtst \ + $(if $(BR2_PACKAGE_XLIB_LIBXI),xlib_libXi) \ + $(if $(BR2_PACKAGE_XLIB_LIBXRENDER),xlib_libXrender) \ + $(if $(BR2_PACKAGE_XLIB_LIBXCOMPOSITE),xlib_libXcomposite) \ + $(if $(BR2_PACKAGE_XLIB_LIBXXF86VM),xlib_libXxf86vm) + +ifeq ($(BR2_PACKAGE_XLIB_LIBXXF86DGA),y) +XAPP_XDPYINFO_DEPENDENCIES += xlib_libXxf86dga +else +XAPP_XDPYINFO_CONF_OPTS += --without-dga +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBDMX),y) +XAPP_XDPYINFO_DEPENDENCIES += xlib_libdmx +else +XAPP_XDPYINFO_CONF_OPTS += --without-dmx +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXINERAMA),y) +XAPP_XDPYINFO_DEPENDENCIES += xlib_libXinerama +else +XAPP_XDPYINFO_CONF_OPTS += --without-xinerama +endif + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xdriinfo/Config.in b/package/x11r7/xapp_xdriinfo/Config.in new file mode 100644 index 00000000..df65b491 --- /dev/null +++ b/package/x11r7/xapp_xdriinfo/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_XAPP_XDRIINFO + bool "xdriinfo" + depends on BR2_PACKAGE_HAS_LIBGL + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XORGPROTO + help + query configuration information of DRI drivers + +comment "xdriinfo needs an OpenGL backend" + depends on !BR2_PACKAGE_HAS_LIBGL diff --git a/package/x11r7/xapp_xdriinfo/xapp_xdriinfo.hash b/package/x11r7/xapp_xdriinfo/xapp_xdriinfo.hash new file mode 100644 index 00000000..80a4ac48 --- /dev/null +++ b/package/x11r7/xapp_xdriinfo/xapp_xdriinfo.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-March/002858.html +md5 480e63cd365f03eb2515a6527d5f4ca6 xdriinfo-1.0.6.tar.bz2 +sha1 11682ae1f04a311b832651d78bbf4c6ac77f0ed9 xdriinfo-1.0.6.tar.bz2 +sha256 d9ccd2c3e87899417acc9ea1f3e319a4198112babe1dc711273584f607449d51 xdriinfo-1.0.6.tar.bz2 +sha512 7ddd9e19abaef93e4d85004293528ec3814ef84c470d496dbb8dc8313d804bb7520406de8d33d2bc2b3af942bd0a5d5032a109b2726438a966af63ea680a102f xdriinfo-1.0.6.tar.bz2 +# Locally computed +sha256 de2fbb160bbb64c48975d7a3ebe3636a312b73227df1efe37488a8cecb9c1932 COPYING diff --git a/package/x11r7/xapp_xdriinfo/xapp_xdriinfo.mk b/package/x11r7/xapp_xdriinfo/xapp_xdriinfo.mk new file mode 100644 index 00000000..7f7aac9e --- /dev/null +++ b/package/x11r7/xapp_xdriinfo/xapp_xdriinfo.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xdriinfo +# +################################################################################ + +XAPP_XDRIINFO_VERSION = 1.0.6 +XAPP_XDRIINFO_SOURCE = xdriinfo-$(XAPP_XDRIINFO_VERSION).tar.bz2 +XAPP_XDRIINFO_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XDRIINFO_LICENSE = MIT +XAPP_XDRIINFO_LICENSE_FILES = COPYING +XAPP_XDRIINFO_DEPENDENCIES = libgl xlib_libX11 xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xedit/Config.in b/package/x11r7/xapp_xedit/Config.in new file mode 100644 index 00000000..876d5412 --- /dev/null +++ b/package/x11r7/xapp_xedit/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_XEDIT + bool "xedit" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_XLIB_LIBXAW + help + simple text editor for X diff --git a/package/x11r7/xapp_xedit/xapp_xedit.hash b/package/x11r7/xapp_xedit/xapp_xedit.hash new file mode 100644 index 00000000..e521e008 --- /dev/null +++ b/package/x11r7/xapp_xedit/xapp_xedit.hash @@ -0,0 +1,5 @@ +# From http://lists.x.org/archives/xorg-announce/2015-February/002535.html +sha1 f37b5d0f8ec461955f0419dbb1890d8cf63d179d xedit-1.2.2.tar.bz2 +sha256 69aa42885dfc06332ca22eb01cc7187e49206e6d65b74113a8ee4cc345fc2927 xedit-1.2.2.tar.bz2 +# Locally computed +sha256 6d3e4092277ea08fc6b3180dba061120ea53ee965afb84fce16f8ab3d35bb47a COPYING diff --git a/package/x11r7/xapp_xedit/xapp_xedit.mk b/package/x11r7/xapp_xedit/xapp_xedit.mk new file mode 100644 index 00000000..1cb99dc6 --- /dev/null +++ b/package/x11r7/xapp_xedit/xapp_xedit.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# xapp_xedit +# +################################################################################ + +XAPP_XEDIT_VERSION = 1.2.2 +XAPP_XEDIT_SOURCE = xedit-$(XAPP_XEDIT_VERSION).tar.bz2 +XAPP_XEDIT_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XEDIT_LICENSE = MIT +XAPP_XEDIT_LICENSE_FILES = COPYING +XAPP_XEDIT_DEPENDENCIES = xlib_libXaw + +XAPP_XEDIT_CONF_OPTS = \ + --disable-selective-werror \ + --with-appdefaultdir=/usr/share/X11/app-defaults + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xev/Config.in b/package/x11r7/xapp_xev/Config.in new file mode 100644 index 00000000..864d6424 --- /dev/null +++ b/package/x11r7/xapp_xev/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_XEV + bool "xev" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXRANDR + help + print contents of X events diff --git a/package/x11r7/xapp_xev/xapp_xev.hash b/package/x11r7/xapp_xev/xapp_xev.hash new file mode 100644 index 00000000..8b9a006c --- /dev/null +++ b/package/x11r7/xapp_xev/xapp_xev.hash @@ -0,0 +1,5 @@ +# From https://lists.x.org/archives/xorg-announce/2020-July/003048.html +sha256 d700e08bfe751ed2dbf802baa204b056d0e49348b6eb3c6f9cb035d8ae4885e2 xev-1.2.4.tar.bz2 +sha512 383472ddbfad639ba46a69080ecdd11a514a0578fd32c463fae18da02e0265c944589eebf12a858994f5fd601c02a0d51517e9b3ff61c6afe740d374f02781ca xev-1.2.4.tar.bz2 +# Locally computed +sha256 9b840f2e1900889124cc999f3158da2b6b07bf6d0d77bdbb01ce65d2e702dc83 COPYING diff --git a/package/x11r7/xapp_xev/xapp_xev.mk b/package/x11r7/xapp_xev/xapp_xev.mk new file mode 100644 index 00000000..7d5f3cbb --- /dev/null +++ b/package/x11r7/xapp_xev/xapp_xev.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xev +# +################################################################################ + +XAPP_XEV_VERSION = 1.2.4 +XAPP_XEV_SOURCE = xev-$(XAPP_XEV_VERSION).tar.bz2 +XAPP_XEV_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XEV_LICENSE = MIT +XAPP_XEV_LICENSE_FILES = COPYING +XAPP_XEV_DEPENDENCIES = xlib_libX11 xlib_libXrandr + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xeyes/Config.in b/package/x11r7/xapp_xeyes/Config.in new file mode 100644 index 00000000..5cf7f6c0 --- /dev/null +++ b/package/x11r7/xapp_xeyes/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_XAPP_XEYES + bool "xeyes" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XLIB_LIBXMU + select BR2_PACKAGE_XLIB_LIBXRENDER + select BR2_PACKAGE_XLIB_LIBXT + help + X.Org xeyes application diff --git a/package/x11r7/xapp_xeyes/xapp_xeyes.hash b/package/x11r7/xapp_xeyes/xapp_xeyes.hash new file mode 100644 index 00000000..bbb6a9b0 --- /dev/null +++ b/package/x11r7/xapp_xeyes/xapp_xeyes.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-March/002860.html +md5 6f0543ec84283df5743eeafc173bea4a xeyes-1.1.2.tar.bz2 +sha1 458987f8accdbd8abf993ee51030391cf584d2e8 xeyes-1.1.2.tar.bz2 +sha256 57bcec0d2d167af9e5d44d0dbd74c6d7c0f0591cd0608952b23c749fdd910553 xeyes-1.1.2.tar.bz2 +sha512 008d76f03ddabd3d86ad9e52a540504553b94cb7a6743b20cf08897549eb27505667365ab9af21956a1b5ec7297acca8903a326536e6195a30e643cd93297ee0 xeyes-1.1.2.tar.bz2 +# Locally computed +sha256 d8de1de40e16227d1eb4b19e95117ce3f990f71f71df096a2259b0bc9931e042 COPYING diff --git a/package/x11r7/xapp_xeyes/xapp_xeyes.mk b/package/x11r7/xapp_xeyes/xapp_xeyes.mk new file mode 100644 index 00000000..6c7f859d --- /dev/null +++ b/package/x11r7/xapp_xeyes/xapp_xeyes.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xeyes +# +################################################################################ + +XAPP_XEYES_VERSION = 1.1.2 +XAPP_XEYES_SOURCE = xeyes-$(XAPP_XEYES_VERSION).tar.bz2 +XAPP_XEYES_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XEYES_LICENSE = MIT +XAPP_XEYES_LICENSE_FILES = COPYING +XAPP_XEYES_DEPENDENCIES = xlib_libX11 xlib_libXext xlib_libXmu xlib_libXrender xlib_libXt + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xf86dga/Config.in b/package/x11r7/xapp_xf86dga/Config.in new file mode 100644 index 00000000..5d812033 --- /dev/null +++ b/package/x11r7/xapp_xf86dga/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_XAPP_XF86DGA + bool "xf86dga" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXXF86DGA + help + test program for the XFree86-DGA extension diff --git a/package/x11r7/xapp_xf86dga/xapp_xf86dga.hash b/package/x11r7/xapp_xf86dga/xapp_xf86dga.hash new file mode 100644 index 00000000..1a82db9f --- /dev/null +++ b/package/x11r7/xapp_xf86dga/xapp_xf86dga.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2010-October/001515.html +sha1 030659e3728f5f7142e1cf727f147aceeabe4b9e xf86dga-1.0.3.tar.bz2 +# Locally computed +sha256 27d8cbdcde7a0bd062ce49cdf8c672201452a64e3e6823f09b1beffe2c4b8eff COPYING diff --git a/package/x11r7/xapp_xf86dga/xapp_xf86dga.mk b/package/x11r7/xapp_xf86dga/xapp_xf86dga.mk new file mode 100644 index 00000000..fe8e4278 --- /dev/null +++ b/package/x11r7/xapp_xf86dga/xapp_xf86dga.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# xapp_xf86dga +# +################################################################################ + +XAPP_XF86DGA_VERSION = 1.0.3 +XAPP_XF86DGA_SOURCE = xf86dga-$(XAPP_XF86DGA_VERSION).tar.bz2 +XAPP_XF86DGA_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XF86DGA_LICENSE = MIT +XAPP_XF86DGA_LICENSE_FILES = COPYING +XAPP_XF86DGA_DEPENDENCIES = \ + host-pkgconf \ + xlib_libX11 \ + xlib_libXxf86dga + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xfd/Config.in b/package/x11r7/xapp_xfd/Config.in new file mode 100644 index 00000000..f006b1e4 --- /dev/null +++ b/package/x11r7/xapp_xfd/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_XAPP_XFD + bool "xfd" + select BR2_PACKAGE_FREETYPE + select BR2_PACKAGE_FONTCONFIG + select BR2_PACKAGE_XLIB_LIBXAW + select BR2_PACKAGE_XLIB_LIBXFT + help + X.Org xfd application diff --git a/package/x11r7/xapp_xfd/xapp_xfd.hash b/package/x11r7/xapp_xfd/xapp_xfd.hash new file mode 100644 index 00000000..d1f5c454 --- /dev/null +++ b/package/x11r7/xapp_xfd/xapp_xfd.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-March/002968.html +md5 f9c9f2b101a96d4b50c2a4ab9b5ab5b1 xfd-1.1.3.tar.bz2 +sha1 ca6dbe2027b205992a52c6bb717a43508f12a8c4 xfd-1.1.3.tar.bz2 +sha256 192f938ba5830e84cc807d8ead2ad9655b43eaed6500c830f3e083aad10ed958 xfd-1.1.3.tar.bz2 +sha512 68e2d4ce5e24215353b6f3231191d69639c4dd90a703e03ccf152bbfe4012da071c387ba289f918fb0336a3be9ee49dc05cbec7273fa85f5e476ead7e10795f0 xfd-1.1.3.tar.bz2 +# Locally computed +sha256 57ae10f24fc110dafb3b8d7735cf26b1905ff74e716745b2520e4ccd7751095c COPYING diff --git a/package/x11r7/xapp_xfd/xapp_xfd.mk b/package/x11r7/xapp_xfd/xapp_xfd.mk new file mode 100644 index 00000000..149e24b7 --- /dev/null +++ b/package/x11r7/xapp_xfd/xapp_xfd.mk @@ -0,0 +1,28 @@ +################################################################################ +# +# xapp_xfd +# +################################################################################ + +XAPP_XFD_VERSION = 1.1.3 +XAPP_XFD_SOURCE = xfd-$(XAPP_XFD_VERSION).tar.bz2 +XAPP_XFD_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XFD_LICENSE = MIT +XAPP_XFD_LICENSE_FILES = COPYING +XAPP_XFD_DEPENDENCIES = \ + freetype \ + fontconfig \ + xlib_libXaw \ + xlib_libXft \ + $(TARGET_NLS_DEPENDENCIES) +XAPP_XFD_CONF_OPTS = --with-appdefaultdir=/usr/share/X11/app-defaults +XAPP_XFD_CONF_ENV = LIBS=$(TARGET_NLS_LIBS) + +ifeq ($(BR2_PACKAGE_XLIB_LIBXKBFILE),y) +XAPP_XFD_CONF_OPTS += --with-xkb +XAPP_XFD_DEPENDENCIES += xlib_libxkbfile +else +XAPP_XFD_CONF_OPTS += --without-xkb +endif + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xfindproxy/Config.in b/package/x11r7/xapp_xfindproxy/Config.in new file mode 100644 index 00000000..e452dc96 --- /dev/null +++ b/package/x11r7/xapp_xfindproxy/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_XAPP_XFINDPROXY + bool "xfindproxy" + select BR2_PACKAGE_XLIB_LIBICE + select BR2_PACKAGE_XLIB_LIBXT + select BR2_PACKAGE_XORGPROTO + help + xfindproxy utilizes the Proxy Management Protocol to + communicate with a proxy manager to locate available X11 + proxy services. diff --git a/package/x11r7/xapp_xfindproxy/xapp_xfindproxy.hash b/package/x11r7/xapp_xfindproxy/xapp_xfindproxy.hash new file mode 100644 index 00000000..55091ad2 --- /dev/null +++ b/package/x11r7/xapp_xfindproxy/xapp_xfindproxy.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2015-April/002573.html +sha256 5626bda27c7faa5cbe289a17f8552538fff08a96d542b85efdda1804ccf8a01f xfindproxy-1.0.4.tar.bz2 +# Locally computed +sha256 373984cd13212f3e2fbbcdf88694fd1f5a3658ed9184a6ac44f686fc2e8620f2 COPYING diff --git a/package/x11r7/xapp_xfindproxy/xapp_xfindproxy.mk b/package/x11r7/xapp_xfindproxy/xapp_xfindproxy.mk new file mode 100644 index 00000000..7832e0ca --- /dev/null +++ b/package/x11r7/xapp_xfindproxy/xapp_xfindproxy.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# xapp_xfindproxy +# +################################################################################ + +XAPP_XFINDPROXY_VERSION = 1.0.4 +XAPP_XFINDPROXY_SOURCE = xfindproxy-$(XAPP_XFINDPROXY_VERSION).tar.bz2 +XAPP_XFINDPROXY_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XFINDPROXY_LICENSE = MIT +XAPP_XFINDPROXY_LICENSE_FILES = COPYING +XAPP_XFINDPROXY_DEPENDENCIES = \ + xlib_libICE \ + xlib_libXt \ + xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xfontsel/Config.in b/package/x11r7/xapp_xfontsel/Config.in new file mode 100644 index 00000000..0c6aa379 --- /dev/null +++ b/package/x11r7/xapp_xfontsel/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XAPP_XFONTSEL + bool "xfontsel" + select BR2_PACKAGE_XLIB_LIBXAW + help + point and click selection of X11 font names diff --git a/package/x11r7/xapp_xfontsel/xapp_xfontsel.hash b/package/x11r7/xapp_xfontsel/xapp_xfontsel.hash new file mode 100644 index 00000000..a09df558 --- /dev/null +++ b/package/x11r7/xapp_xfontsel/xapp_xfontsel.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-March/002861.html +md5 13150ff98846bf6d9a14bee00697fa47 xfontsel-1.0.6.tar.bz2 +sha1 3fd8d78cc270030b41298170c3e5222065dd1cfd xfontsel-1.0.6.tar.bz2 +sha256 25aa0b7c4262f5e99c07c2b96e00e4eb25b7e53f94fa803942af9d0e8da3001c xfontsel-1.0.6.tar.bz2 +sha512 2f6bc51549a302404cdaf9a5a825add383953fcbb2a0c7076691cefd4dd7e4a3c772c047be74101c8486f75d03ce0bd3e65ede14e91732cf2a932810441c9099 xfontsel-1.0.6.tar.bz2 +# Locally computed +sha256 a27097bcc5cdf4fa5d761dd4e5cea1f41911c51b0a7d9da6e3a48f69d9fd0c09 COPYING diff --git a/package/x11r7/xapp_xfontsel/xapp_xfontsel.mk b/package/x11r7/xapp_xfontsel/xapp_xfontsel.mk new file mode 100644 index 00000000..9dea4299 --- /dev/null +++ b/package/x11r7/xapp_xfontsel/xapp_xfontsel.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xfontsel +# +################################################################################ + +XAPP_XFONTSEL_VERSION = 1.0.6 +XAPP_XFONTSEL_SOURCE = xfontsel-$(XAPP_XFONTSEL_VERSION).tar.bz2 +XAPP_XFONTSEL_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XFONTSEL_LICENSE = MIT +XAPP_XFONTSEL_LICENSE_FILES = COPYING +XAPP_XFONTSEL_DEPENDENCIES = xlib_libXaw + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xfs/Config.in b/package/x11r7/xapp_xfs/Config.in new file mode 100644 index 00000000..19e675b2 --- /dev/null +++ b/package/x11r7/xapp_xfs/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_XAPP_XFS + bool "xfs" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_XLIB_LIBFS + select BR2_PACKAGE_XLIB_LIBXFONT2 + select BR2_PACKAGE_XORGPROTO + help + X font server diff --git a/package/x11r7/xapp_xfs/xapp_xfs.hash b/package/x11r7/xapp_xfs/xapp_xfs.hash new file mode 100644 index 00000000..22ec25a1 --- /dev/null +++ b/package/x11r7/xapp_xfs/xapp_xfs.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2017-November/002826.html +md5 b4d2e644bfb35cae8858d2411501b07e xfs-1.2.0.tar.bz2 +sha1 00848fcc2915ed8b00e75ac311c4727327324f57 xfs-1.2.0.tar.bz2 +sha256 db2212115783498f8eeaaee1349461d6c4e9d2005e142bacd3a984fe57269860 xfs-1.2.0.tar.bz2 +sha512 557b08aa07919239ce345d60b288b886640200bb1a59649fc890c3ccaa8559cc6745189614e696ab1b390ec024b393be5493787b7b0d2b3545b342d743c2e0ef xfs-1.2.0.tar.bz2 +# Locally computed +sha256 0314ea37f40eff3c9ffe44b3924b2a768422f006a754e8286bfd1c73203d225e COPYING diff --git a/package/x11r7/xapp_xfs/xapp_xfs.mk b/package/x11r7/xapp_xfs/xapp_xfs.mk new file mode 100644 index 00000000..9177a65b --- /dev/null +++ b/package/x11r7/xapp_xfs/xapp_xfs.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xfs +# +################################################################################ + +XAPP_XFS_VERSION = 1.2.0 +XAPP_XFS_SOURCE = xfs-$(XAPP_XFS_VERSION).tar.bz2 +XAPP_XFS_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XFS_LICENSE = MIT +XAPP_XFS_LICENSE_FILES = COPYING +XAPP_XFS_DEPENDENCIES = xlib_libFS xlib_libXfont2 xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xfsinfo/Config.in b/package/x11r7/xapp_xfsinfo/Config.in new file mode 100644 index 00000000..84c8ac13 --- /dev/null +++ b/package/x11r7/xapp_xfsinfo/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_XFSINFO + bool "xfsinfo" + select BR2_PACKAGE_XLIB_LIBFS + select BR2_PACKAGE_XLIB_LIBX11 + help + X font server information utility diff --git a/package/x11r7/xapp_xfsinfo/xapp_xfsinfo.hash b/package/x11r7/xapp_xfsinfo/xapp_xfsinfo.hash new file mode 100644 index 00000000..67480a51 --- /dev/null +++ b/package/x11r7/xapp_xfsinfo/xapp_xfsinfo.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-February/002949.html +md5 0060d6151427d9e570e54fc52a88e7d7 xfsinfo-1.0.6.tar.bz2 +sha1 cbfe7470179f1ab5eecf992226dc1b28902c6b4c xfsinfo-1.0.6.tar.bz2 +sha256 8a3e8b9b9ae6ed571989d04e1846d39b9043e28f7623b500ebe1d47762c9b1d6 xfsinfo-1.0.6.tar.bz2 +sha512 901fc3817d7c95f2ba75ed0c51de91abd8efa67bbb93ad6b7d66e56a2f721af9db364e92f9ef2e719835fd48e934a5ea7402e5565c0ccd9b6b82633e869dc57b xfsinfo-1.0.6.tar.bz2 +# Locally computed +sha256 bae01fa08f30f21f9cfb75e8339d081b34e5e03d12677177f85a55b0ca41d0db COPYING diff --git a/package/x11r7/xapp_xfsinfo/xapp_xfsinfo.mk b/package/x11r7/xapp_xfsinfo/xapp_xfsinfo.mk new file mode 100644 index 00000000..bef9787f --- /dev/null +++ b/package/x11r7/xapp_xfsinfo/xapp_xfsinfo.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xfsinfo +# +################################################################################ + +XAPP_XFSINFO_VERSION = 1.0.6 +XAPP_XFSINFO_SOURCE = xfsinfo-$(XAPP_XFSINFO_VERSION).tar.bz2 +XAPP_XFSINFO_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XFSINFO_LICENSE = MIT +XAPP_XFSINFO_LICENSE_FILES = COPYING +XAPP_XFSINFO_DEPENDENCIES = xlib_libFS xlib_libX11 + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xgamma/Config.in b/package/x11r7/xapp_xgamma/Config.in new file mode 100644 index 00000000..b20a7840 --- /dev/null +++ b/package/x11r7/xapp_xgamma/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XAPP_XGAMMA + bool "xgamma" + select BR2_PACKAGE_XLIB_LIBXXF86VM + help + Alter a monitor's gamma correction through the X server diff --git a/package/x11r7/xapp_xgamma/xapp_xgamma.hash b/package/x11r7/xapp_xgamma/xapp_xgamma.hash new file mode 100644 index 00000000..0031450c --- /dev/null +++ b/package/x11r7/xapp_xgamma/xapp_xgamma.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2015-April/002574.html +sha256 0ef1c35b5c18b1b22317f455c8df13c0a471a8efad63c89c98ae3ce8c2b222d3 xgamma-1.0.6.tar.bz2 +# Locally computed +sha256 78d354d348feaaab8d67a220e84137ec24fece04af4dface2e67132c72e216a2 COPYING diff --git a/package/x11r7/xapp_xgamma/xapp_xgamma.mk b/package/x11r7/xapp_xgamma/xapp_xgamma.mk new file mode 100644 index 00000000..a73a29e5 --- /dev/null +++ b/package/x11r7/xapp_xgamma/xapp_xgamma.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xgamma +# +################################################################################ + +XAPP_XGAMMA_VERSION = 1.0.6 +XAPP_XGAMMA_SOURCE = xgamma-$(XAPP_XGAMMA_VERSION).tar.bz2 +XAPP_XGAMMA_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XGAMMA_LICENSE = MIT +XAPP_XGAMMA_LICENSE_FILES = COPYING +XAPP_XGAMMA_DEPENDENCIES = xlib_libXxf86vm + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xgc/Config.in b/package/x11r7/xapp_xgc/Config.in new file mode 100644 index 00000000..98faba88 --- /dev/null +++ b/package/x11r7/xapp_xgc/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XAPP_XGC + bool "xgc" + select BR2_PACKAGE_XLIB_LIBXAW + help + X graphics demo diff --git a/package/x11r7/xapp_xgc/xapp_xgc.hash b/package/x11r7/xapp_xgc/xapp_xgc.hash new file mode 100644 index 00000000..50e1362b --- /dev/null +++ b/package/x11r7/xapp_xgc/xapp_xgc.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2015-April/002575.html +sha256 14828d9bda358ad57efc0206bc416ee33ba542091edb186485cca5389adc2f5e xgc-1.0.5.tar.bz2 +# Locally computed +sha256 13ebeb3e59e406064d46e94a707ed5ec5d8d2bf840971265dd46db0850d22d02 COPYING diff --git a/package/x11r7/xapp_xgc/xapp_xgc.mk b/package/x11r7/xapp_xgc/xapp_xgc.mk new file mode 100644 index 00000000..41d42c46 --- /dev/null +++ b/package/x11r7/xapp_xgc/xapp_xgc.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xgc +# +################################################################################ + +XAPP_XGC_VERSION = 1.0.5 +XAPP_XGC_SOURCE = xgc-$(XAPP_XGC_VERSION).tar.bz2 +XAPP_XGC_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XGC_LICENSE = MIT +XAPP_XGC_LICENSE_FILES = COPYING +XAPP_XGC_DEPENDENCIES = xlib_libXaw + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xhost/Config.in b/package/x11r7/xapp_xhost/Config.in new file mode 100644 index 00000000..659b34de --- /dev/null +++ b/package/x11r7/xapp_xhost/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_XHOST + bool "xhost" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXMU + help + Controls host and/or user access to a running X server. diff --git a/package/x11r7/xapp_xhost/xapp_xhost.hash b/package/x11r7/xapp_xhost/xapp_xhost.hash new file mode 100644 index 00000000..0c387944 --- /dev/null +++ b/package/x11r7/xapp_xhost/xapp_xhost.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-February/002950.html +md5 a48c72954ae6665e0616f6653636da8c xhost-1.0.8.tar.bz2 +sha1 971670858a464d4f8eeb6f4e182f9fcd94149790 xhost-1.0.8.tar.bz2 +sha256 a2dc3c579e13674947395ef8ccc1b3763f89012a216c2cc6277096489aadc396 xhost-1.0.8.tar.bz2 +sha512 55581f9bc45a70a73b13fe718ca83c4cb0a6116d26addc0f07659ebeb5bf7d2379e84cab5a1702ae77a298a66f42ae03f41ddc7d5acd61c6f18448e58ad7cb6b xhost-1.0.8.tar.bz2 +# Locally computed +sha256 7e69bed6fcfff05ecf454d7e4b29cd265172385833f1978f04b638f92f2cfecf COPYING diff --git a/package/x11r7/xapp_xhost/xapp_xhost.mk b/package/x11r7/xapp_xhost/xapp_xhost.mk new file mode 100644 index 00000000..e9fb1552 --- /dev/null +++ b/package/x11r7/xapp_xhost/xapp_xhost.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xhost +# +################################################################################ + +XAPP_XHOST_VERSION = 1.0.8 +XAPP_XHOST_SOURCE = xhost-$(XAPP_XHOST_VERSION).tar.bz2 +XAPP_XHOST_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XHOST_LICENSE = MIT +XAPP_XHOST_LICENSE_FILES = COPYING +XAPP_XHOST_DEPENDENCIES = xlib_libX11 xlib_libXmu + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xinit/Config.in b/package/x11r7/xapp_xinit/Config.in new file mode 100644 index 00000000..d9fb1c5f --- /dev/null +++ b/package/x11r7/xapp_xinit/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_XAPP_XINIT + bool "xinit" + depends on BR2_USE_MMU # fork() + # Runtime dependency: can't start an X server unless there is one + depends on BR2_PACKAGE_XSERVER_XORG_SERVER + # Runtime dependency; mcookie is also in util-linux + select BR2_PACKAGE_MCOOKIE if !BR2_PACKAGE_UTIL_LINUX + select BR2_PACKAGE_XAPP_XAUTH + select BR2_PACKAGE_XLIB_LIBX11 + help + X Window System initializer diff --git a/package/x11r7/xapp_xinit/xapp_xinit.hash b/package/x11r7/xapp_xinit/xapp_xinit.hash new file mode 100644 index 00000000..076bd647 --- /dev/null +++ b/package/x11r7/xapp_xinit/xapp_xinit.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-March/002962.html +md5 6d506ab2efc17a08e87778654e099d37 xinit-1.4.1.tar.bz2 +sha1 d874a2eecf2c30291e327851b151fdab8183260c xinit-1.4.1.tar.bz2 +sha256 de9b8f617b68a70f6caf87da01fcf0ebd2b75690cdcba9c921d0ef54fa54abb9 xinit-1.4.1.tar.bz2 +sha512 6cbc5d025a891c419f3f4493381b2fca57a67d78df866d2f16a83426f86bad6eca7f240fac12b25cbcc63df0fec41f625407184e044898602d66483715315340 xinit-1.4.1.tar.bz2 +# Locally computed +sha256 c47001aa217d4ae7787121d80634db4bdba564e49a0ecab8d48b1bdc4edee1c7 COPYING diff --git a/package/x11r7/xapp_xinit/xapp_xinit.mk b/package/x11r7/xapp_xinit/xapp_xinit.mk new file mode 100644 index 00000000..86a4d926 --- /dev/null +++ b/package/x11r7/xapp_xinit/xapp_xinit.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xapp_xinit +# +################################################################################ + +XAPP_XINIT_VERSION = 1.4.1 +XAPP_XINIT_SOURCE = xinit-$(XAPP_XINIT_VERSION).tar.bz2 +XAPP_XINIT_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XINIT_DEPENDENCIES = xapp_xauth xlib_libX11 +XAPP_XINIT_LICENSE = MIT +XAPP_XINIT_LICENSE_FILES = COPYING +XAPP_XINIT_CONF_OPTS = MCOOKIE=/usr/bin/mcookie + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xinput-calibrator/Config.in b/package/x11r7/xapp_xinput-calibrator/Config.in new file mode 100644 index 00000000..76fbcd43 --- /dev/null +++ b/package/x11r7/xapp_xinput-calibrator/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_XAPP_XINPUT_CALIBRATOR + bool "xinput-calibrator" + depends on BR2_INSTALL_LIBSTDCPP + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXI + help + A generic touchscreen calibration program for X.Org. + + http://www.freedesktop.org/wiki/Software/xinput_calibrator + +comment "xinput-calibrator needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/x11r7/xapp_xinput-calibrator/xapp_xinput-calibrator.hash b/package/x11r7/xapp_xinput-calibrator/xapp_xinput-calibrator.hash new file mode 100644 index 00000000..b8fcaed0 --- /dev/null +++ b/package/x11r7/xapp_xinput-calibrator/xapp_xinput-calibrator.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 baa4ddca49ec94c27ba4c715bfa26692fec1132103e927213c3169e475d3d971 xinput_calibrator-0.7.5.tar.gz +sha256 ba6f260bba7d9640cfedfde3a6ae1790583ab8b9ee7c547233ecc0a214d1a6d3 COPYING diff --git a/package/x11r7/xapp_xinput-calibrator/xapp_xinput-calibrator.mk b/package/x11r7/xapp_xinput-calibrator/xapp_xinput-calibrator.mk new file mode 100644 index 00000000..974b83df --- /dev/null +++ b/package/x11r7/xapp_xinput-calibrator/xapp_xinput-calibrator.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xinput-calibrator +# +################################################################################ + +XAPP_XINPUT_CALIBRATOR_VERSION = 0.7.5 +XAPP_XINPUT_CALIBRATOR_SOURCE = xinput_calibrator-$(XAPP_XINPUT_CALIBRATOR_VERSION).tar.gz +XAPP_XINPUT_CALIBRATOR_SITE = http://github.com/downloads/tias/xinput_calibrator +XAPP_XINPUT_CALIBRATOR_LICENSE = MIT +XAPP_XINPUT_CALIBRATOR_LICENSE_FILES = COPYING +XAPP_XINPUT_CALIBRATOR_DEPENDENCIES = xlib_libX11 xlib_libXi + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xinput/Config.in b/package/x11r7/xapp_xinput/Config.in new file mode 100644 index 00000000..e438a45b --- /dev/null +++ b/package/x11r7/xapp_xinput/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_XAPP_XINPUT + bool "xinput" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXI + select BR2_PACKAGE_XLIB_LIBXRANDR + select BR2_PACKAGE_XLIB_LIBXINERAMA + help + xinput diff --git a/package/x11r7/xapp_xinput/xapp_xinput.hash b/package/x11r7/xapp_xinput/xapp_xinput.hash new file mode 100644 index 00000000..456a58c7 --- /dev/null +++ b/package/x11r7/xapp_xinput/xapp_xinput.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-July/003013.html +md5 ac6b7432726008b2f50eba82b0e2dbe4 xinput-1.6.3.tar.bz2 +sha1 92ea7dfb3d8465921b0dca85da7d5b01cedae6c8 xinput-1.6.3.tar.bz2 +sha256 35a281dd3b9b22ea85e39869bb7670ba78955d5fec17c6ef7165d61e5aeb66ed xinput-1.6.3.tar.bz2 +sha512 cb2fef866ac5a71dbca3e23b4ecadaca38e65dc1b30f8bb024bad92486554fafc472706619a1af04c746a4f53ce6aea827d694b9f4f0c7d0d46bb1da81984076 xinput-1.6.3.tar.bz2 +# Locally computed +sha256 bbd35c7a8e8c5cb073935e84b29b0c53f7131a4ef1ce737dc2be5616941e07e1 COPYING diff --git a/package/x11r7/xapp_xinput/xapp_xinput.mk b/package/x11r7/xapp_xinput/xapp_xinput.mk new file mode 100644 index 00000000..0d6c0def --- /dev/null +++ b/package/x11r7/xapp_xinput/xapp_xinput.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xinput +# +################################################################################ + +XAPP_XINPUT_VERSION = 1.6.3 +XAPP_XINPUT_SOURCE = xinput-$(XAPP_XINPUT_VERSION).tar.bz2 +XAPP_XINPUT_SITE = https://xorg.freedesktop.org/archive/individual/app +XAPP_XINPUT_LICENSE = MIT +XAPP_XINPUT_LICENSE_FILES = COPYING +XAPP_XINPUT_DEPENDENCIES = xlib_libX11 xlib_libXi xlib_libXrandr xlib_libXinerama + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xkbcomp/Config.in b/package/x11r7/xapp_xkbcomp/Config.in new file mode 100644 index 00000000..2b575b25 --- /dev/null +++ b/package/x11r7/xapp_xkbcomp/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_XKBCOMP + bool "xkbcomp" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXKBFILE + help + compile XKB keyboard description diff --git a/package/x11r7/xapp_xkbcomp/xapp_xkbcomp.hash b/package/x11r7/xapp_xkbcomp/xapp_xkbcomp.hash new file mode 100644 index 00000000..7191d552 --- /dev/null +++ b/package/x11r7/xapp_xkbcomp/xapp_xkbcomp.hash @@ -0,0 +1,5 @@ +# From https://lists.x.org/archives/xorg-announce/2020-November/003063.html +sha256 59cce603a607a17722a0a1cf99010f4894e7812beb5d695abbc08474d59af27e xkbcomp-1.4.4.tar.bz2 +sha512 971eb06277a49083b42154472596f1452fa94cdee28bad345bbcd85b028441bfd975763c20ed92aa69d6605b3fb23d27fee89df91501963b77c863667bae41c4 xkbcomp-1.4.4.tar.bz2 +# Locally computed +sha256 f1a78f5796fe2374f2b93e579328a02283e57d2a8316484b31799b12debe7ee3 COPYING diff --git a/package/x11r7/xapp_xkbcomp/xapp_xkbcomp.mk b/package/x11r7/xapp_xkbcomp/xapp_xkbcomp.mk new file mode 100644 index 00000000..69d4aefb --- /dev/null +++ b/package/x11r7/xapp_xkbcomp/xapp_xkbcomp.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# xapp_xkbcomp +# +################################################################################ + +XAPP_XKBCOMP_VERSION = 1.4.4 +XAPP_XKBCOMP_SOURCE = xkbcomp-$(XAPP_XKBCOMP_VERSION).tar.bz2 +XAPP_XKBCOMP_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XKBCOMP_LICENSE = MIT +XAPP_XKBCOMP_LICENSE_FILES = COPYING +XAPP_XKBCOMP_DEPENDENCIES = xlib_libX11 xlib_libxkbfile +HOST_XAPP_XKBCOMP_DEPENDENCIES = host-xlib_libX11 host-xlib_libxkbfile +XAPP_XKBCOMP_CONF_ENV = ac_cv_file___xkbparse_c=yes + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/x11r7/xapp_xkbevd/Config.in b/package/x11r7/xapp_xkbevd/Config.in new file mode 100644 index 00000000..0cbb9e4f --- /dev/null +++ b/package/x11r7/xapp_xkbevd/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_XKBEVD + bool "xkbevd" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_XLIB_LIBXKBFILE + help + XKB event daemon diff --git a/package/x11r7/xapp_xkbevd/xapp_xkbevd.hash b/package/x11r7/xapp_xkbevd/xapp_xkbevd.hash new file mode 100644 index 00000000..c3cf2f32 --- /dev/null +++ b/package/x11r7/xapp_xkbevd/xapp_xkbevd.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2015-April/002577.html +sha256 2430a2e5302a4cb4a5530c1df8cb3721a149bbf8eb377a2898921a145197f96a xkbevd-1.1.4.tar.bz2 +# Locally computed +sha256 38c6dbf8f88b1c920561ff3a4d1ffdb85c069c664f5f8b64a9adb477ef347b7c COPYING diff --git a/package/x11r7/xapp_xkbevd/xapp_xkbevd.mk b/package/x11r7/xapp_xkbevd/xapp_xkbevd.mk new file mode 100644 index 00000000..7a9a8fb1 --- /dev/null +++ b/package/x11r7/xapp_xkbevd/xapp_xkbevd.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xkbevd +# +################################################################################ + +XAPP_XKBEVD_VERSION = 1.1.4 +XAPP_XKBEVD_SOURCE = xkbevd-$(XAPP_XKBEVD_VERSION).tar.bz2 +XAPP_XKBEVD_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XKBEVD_LICENSE = MIT +XAPP_XKBEVD_LICENSE_FILES = COPYING +XAPP_XKBEVD_DEPENDENCIES = xlib_libxkbfile + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xkbprint/Config.in b/package/x11r7/xapp_xkbprint/Config.in new file mode 100644 index 00000000..e7a4242c --- /dev/null +++ b/package/x11r7/xapp_xkbprint/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XAPP_XKBPRINT + bool "xkbprint" + select BR2_PACKAGE_XLIB_LIBXKBFILE + help + print an XKB keyboard description diff --git a/package/x11r7/xapp_xkbprint/xapp_xkbprint.hash b/package/x11r7/xapp_xkbprint/xapp_xkbprint.hash new file mode 100644 index 00000000..c7e0747f --- /dev/null +++ b/package/x11r7/xapp_xkbprint/xapp_xkbprint.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-November/003030.html +md5 9c34da77363dc3d0f616980da87244bf xkbprint-1.0.5.tar.bz2 +sha1 e707caffb3c680b3a869a776aa3f80caeac9e9c3 xkbprint-1.0.5.tar.bz2 +sha256 5b58fe834f0822f06d63d283fac404098c6d3f6acce61888b81016f1c41023fa xkbprint-1.0.5.tar.bz2 +sha512 ac3870352f3a595b5b8a8cb64f39e9bea81b17572c73cfbf72482477a2f576d0ffcdcf735cb3c66b8a88a7fe0f7aece6738cbac87df5641e44fae1ab9b97111f xkbprint-1.0.5.tar.bz2 +# Locally computed +sha256 79b32f28f7f5063054a564e1fdeee56f82a525b6516303704a1f70e55fe7197e COPYING diff --git a/package/x11r7/xapp_xkbprint/xapp_xkbprint.mk b/package/x11r7/xapp_xkbprint/xapp_xkbprint.mk new file mode 100644 index 00000000..8643cb42 --- /dev/null +++ b/package/x11r7/xapp_xkbprint/xapp_xkbprint.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xkbprint +# +################################################################################ + +XAPP_XKBPRINT_VERSION = 1.0.5 +XAPP_XKBPRINT_SOURCE = xkbprint-$(XAPP_XKBPRINT_VERSION).tar.bz2 +XAPP_XKBPRINT_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XKBPRINT_LICENSE = MIT +XAPP_XKBPRINT_LICENSE_FILES = COPYING +XAPP_XKBPRINT_DEPENDENCIES = xlib_libxkbfile + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xkbutils/Config.in b/package/x11r7/xapp_xkbutils/Config.in new file mode 100644 index 00000000..22a819b3 --- /dev/null +++ b/package/x11r7/xapp_xkbutils/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_XKBUTILS + bool "xkbutils" + select BR2_PACKAGE_XLIB_LIBXAW + select BR2_PACKAGE_XLIB_LIBXKBFILE + help + X.Org xkbutils application diff --git a/package/x11r7/xapp_xkbutils/xapp_xkbutils.hash b/package/x11r7/xapp_xkbutils/xapp_xkbutils.hash new file mode 100644 index 00000000..2f8dbc7c --- /dev/null +++ b/package/x11r7/xapp_xkbutils/xapp_xkbutils.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2013-February/002162.html +sha256 d2a18ab90275e8bca028773c44264d2266dab70853db4321bdbc18da75148130 xkbutils-1.0.4.tar.bz2 +# Locally computed +sha256 3d67b53c085de6d475705b60855b9277afac5d4c4ec531d0ffd1ef0d00571594 COPYING diff --git a/package/x11r7/xapp_xkbutils/xapp_xkbutils.mk b/package/x11r7/xapp_xkbutils/xapp_xkbutils.mk new file mode 100644 index 00000000..96ca8a40 --- /dev/null +++ b/package/x11r7/xapp_xkbutils/xapp_xkbutils.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xkbutils +# +################################################################################ + +XAPP_XKBUTILS_VERSION = 1.0.4 +XAPP_XKBUTILS_SOURCE = xkbutils-$(XAPP_XKBUTILS_VERSION).tar.bz2 +XAPP_XKBUTILS_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XKBUTILS_LICENSE = MIT +XAPP_XKBUTILS_LICENSE_FILES = COPYING +XAPP_XKBUTILS_DEPENDENCIES = xlib_libXaw xlib_libxkbfile + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xkill/Config.in b/package/x11r7/xapp_xkill/Config.in new file mode 100644 index 00000000..fcab92a5 --- /dev/null +++ b/package/x11r7/xapp_xkill/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_XKILL + bool "xkill" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXMU + help + kill a client by its X resource diff --git a/package/x11r7/xapp_xkill/xapp_xkill.hash b/package/x11r7/xapp_xkill/xapp_xkill.hash new file mode 100644 index 00000000..06029717 --- /dev/null +++ b/package/x11r7/xapp_xkill/xapp_xkill.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-March/002864.html +md5 938177e4472c346cf031c1aefd8934fc xkill-1.0.5.tar.bz2 +sha1 c5ee06b33adb252a41e4f737be6bd47651ff582a xkill-1.0.5.tar.bz2 +sha256 c5f0bb6a95e1ac7c4def8a657496d5d2f21ccd41eb47ef2c9ccb03fb6d6aff6b xkill-1.0.5.tar.bz2 +sha512 4603a1794f114f5cea2c885020c9d073c8421d1e785c99ff6b936ae97139c8dac8020a187b5bbd0fa6d56ed6fab879441b42ba900cc5f2f5a534dafdc86b9249 xkill-1.0.5.tar.bz2 +# Locally computed +sha256 13306c3890e4c8710bc468dee0eba7f9677cd94c7a67d2d81fa932d4f635b21f COPYING diff --git a/package/x11r7/xapp_xkill/xapp_xkill.mk b/package/x11r7/xapp_xkill/xapp_xkill.mk new file mode 100644 index 00000000..64ddbca6 --- /dev/null +++ b/package/x11r7/xapp_xkill/xapp_xkill.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xkill +# +################################################################################ + +XAPP_XKILL_VERSION = 1.0.5 +XAPP_XKILL_SOURCE = xkill-$(XAPP_XKILL_VERSION).tar.bz2 +XAPP_XKILL_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XKILL_LICENSE = MIT +XAPP_XKILL_LICENSE_FILES = COPYING +XAPP_XKILL_DEPENDENCIES = xlib_libX11 xlib_libXmu + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xload/Config.in b/package/x11r7/xapp_xload/Config.in new file mode 100644 index 00000000..25c79d2c --- /dev/null +++ b/package/x11r7/xapp_xload/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XAPP_XLOAD + bool "xload" + select BR2_PACKAGE_XLIB_LIBXAW + help + system load average display for X diff --git a/package/x11r7/xapp_xload/xapp_xload.hash b/package/x11r7/xapp_xload/xapp_xload.hash new file mode 100644 index 00000000..99d9cabb --- /dev/null +++ b/package/x11r7/xapp_xload/xapp_xload.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-March/002865.html +md5 29afafdffe97f809d43a41db9dd63f25 xload-1.1.3.tar.bz2 +sha1 fd5053d38551883309863c2a43de2ceffa908a50 xload-1.1.3.tar.bz2 +sha256 f34e4803871d771325cfe52bebd98cc5b6040d3f065184ec73de436f9a375907 xload-1.1.3.tar.bz2 +sha512 8dbc4f0cee7b30d7381be819152b27653d9b0049266e59bde2e2c972a88c4f2bdea766fc407bbdfef15d0aab30fedc756189a1048170a812853133a5094fe7a5 xload-1.1.3.tar.bz2 +# Locally computed +sha256 a09b31d26e4d2781eef1e71f39789f86cad6d81153e72064f45875910fa6258f COPYING diff --git a/package/x11r7/xapp_xload/xapp_xload.mk b/package/x11r7/xapp_xload/xapp_xload.mk new file mode 100644 index 00000000..9f491ccd --- /dev/null +++ b/package/x11r7/xapp_xload/xapp_xload.mk @@ -0,0 +1,25 @@ +################################################################################ +# +# xapp_xload +# +################################################################################ + +XAPP_XLOAD_VERSION = 1.1.3 +XAPP_XLOAD_SOURCE = xload-$(XAPP_XLOAD_VERSION).tar.bz2 +XAPP_XLOAD_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XLOAD_LICENSE = MIT +XAPP_XLOAD_LICENSE_FILES = COPYING +XAPP_XLOAD_DEPENDENCIES = xlib_libXaw $(TARGET_NLS_DEPENDENCIES) +XAPP_XLOAD_CONF_OPTS = --with-appdefaultdir=/usr/share/X11/app-defaults +XAPP_XLOAD_CONF_ENV = LIBS=$(TARGET_NLS_LIBS) + +ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y) +# musl doesn't have rwhod.h, but xload can replace it with stubs +XAPP_XLOAD_CONF_OPTS += CFLAGS="$(TARGET_CFLAGS) -DRLOADSTUB" +endif + +ifeq ($(BR2_SYSTEM_ENABLE_NLS),) +XAPP_XLOAD_CONF_ENV += ac_cv_search_gettext=no +endif + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xlogo/Config.in b/package/x11r7/xapp_xlogo/Config.in new file mode 100644 index 00000000..aacb75ff --- /dev/null +++ b/package/x11r7/xapp_xlogo/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_XAPP_XLOGO + bool "xlogo" + select BR2_PACKAGE_XLIB_LIBXAW + select BR2_PACKAGE_XLIB_LIBXRENDER + select BR2_PACKAGE_XLIB_LIBXFT + help + X Window System logo diff --git a/package/x11r7/xapp_xlogo/xapp_xlogo.hash b/package/x11r7/xapp_xlogo/xapp_xlogo.hash new file mode 100644 index 00000000..a4aada48 --- /dev/null +++ b/package/x11r7/xapp_xlogo/xapp_xlogo.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-March/002963.html +md5 e9d21de1dc8c8b9f854509a26a985cd7 xlogo-1.0.5.tar.bz2 +sha1 f025a0ad30c45cbec1c2f3b1610bff94fb4e9f33 xlogo-1.0.5.tar.bz2 +sha256 633d7a3aa5df61e4e643b740e5799664741ab1a0ba40593e54fcd15dc30f378e xlogo-1.0.5.tar.bz2 +sha512 0d78e269b0be3c5de71de7f362b896bfd9934ecd9d0361b3302399b1269e029c4a9f35418d792121a1edc34405d753f9d69c996cc3a69ac717f2b0d1f736406b xlogo-1.0.5.tar.bz2 +# Locally computed +sha256 972b454b6c0da17cec61225ab9dfd4afc69fd8e7e4c629497197c6f79adc6fb0 COPYING diff --git a/package/x11r7/xapp_xlogo/xapp_xlogo.mk b/package/x11r7/xapp_xlogo/xapp_xlogo.mk new file mode 100644 index 00000000..455469e1 --- /dev/null +++ b/package/x11r7/xapp_xlogo/xapp_xlogo.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# xapp_xlogo +# +################################################################################ + +XAPP_XLOGO_VERSION = 1.0.5 +XAPP_XLOGO_SOURCE = xlogo-$(XAPP_XLOGO_VERSION).tar.bz2 +XAPP_XLOGO_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XLOGO_LICENSE = MIT +XAPP_XLOGO_LICENSE_FILES = COPYING +XAPP_XLOGO_DEPENDENCIES = \ + xlib_libXaw xlib_libXrender \ + xlib_libXft host-pkgconf + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xlsatoms/Config.in b/package/x11r7/xapp_xlsatoms/Config.in new file mode 100644 index 00000000..2ad84845 --- /dev/null +++ b/package/x11r7/xapp_xlsatoms/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_XLSATOMS + bool "xlsatoms" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXMU + help + list interned atoms defined on server diff --git a/package/x11r7/xapp_xlsatoms/xapp_xlsatoms.hash b/package/x11r7/xapp_xlsatoms/xapp_xlsatoms.hash new file mode 100644 index 00000000..de7eabe3 --- /dev/null +++ b/package/x11r7/xapp_xlsatoms/xapp_xlsatoms.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-February/002951.html +md5 61671fee12535347db24ec3a715032a7 xlsatoms-1.1.3.tar.bz2 +sha1 9fdb1e8df6bb08529a812ac90f63d500bf5174cc xlsatoms-1.1.3.tar.bz2 +sha256 57868f958c263976727881f3078e55b86b4a109dc578d2b92f5c6d690850a382 xlsatoms-1.1.3.tar.bz2 +sha512 c267ccfdc5a83e834bfb5c3b144e22642badcadef4eb146eeec2df6fe6f85e9379500ae4219912c70fa2e535036a1a96cf496381f5d814e79af075e03c975f30 xlsatoms-1.1.3.tar.bz2 +# Locally computed +sha256 f0a362fc1b8e788845b1c0ad7ba9ade58fdfb73da750c3b9780db5d70b947657 COPYING diff --git a/package/x11r7/xapp_xlsatoms/xapp_xlsatoms.mk b/package/x11r7/xapp_xlsatoms/xapp_xlsatoms.mk new file mode 100644 index 00000000..a3230fc2 --- /dev/null +++ b/package/x11r7/xapp_xlsatoms/xapp_xlsatoms.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xlsatoms +# +################################################################################ + +XAPP_XLSATOMS_VERSION = 1.1.3 +XAPP_XLSATOMS_SOURCE = xlsatoms-$(XAPP_XLSATOMS_VERSION).tar.bz2 +XAPP_XLSATOMS_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XLSATOMS_LICENSE = MIT +XAPP_XLSATOMS_LICENSE_FILES = COPYING +XAPP_XLSATOMS_DEPENDENCIES = xlib_libX11 xlib_libXmu + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xlsclients/Config.in b/package/x11r7/xapp_xlsclients/Config.in new file mode 100644 index 00000000..a934af45 --- /dev/null +++ b/package/x11r7/xapp_xlsclients/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_XAPP_XLSCLIENTS + bool "xlsclients" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXMU + select BR2_PACKAGE_LIBXCB + select BR2_PACKAGE_XCB_UTIL + help + X.Org xlsclients application diff --git a/package/x11r7/xapp_xlsclients/xapp_xlsclients.hash b/package/x11r7/xapp_xlsclients/xapp_xlsclients.hash new file mode 100644 index 00000000..a465c3ce --- /dev/null +++ b/package/x11r7/xapp_xlsclients/xapp_xlsclients.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-March/002866.html +md5 4fa92377e0ddc137cd226a7a87b6b29a xlsclients-1.1.4.tar.bz2 +sha1 175af1c216a1db3de5023ecd6cce186e7693c6e4 xlsclients-1.1.4.tar.bz2 +sha256 773f2af49c7ea2c44fba4213bee64325875c1b3c9bc4bbcd8dac9261751809c1 xlsclients-1.1.4.tar.bz2 +sha512 42fd848d88d3cf31168a37fed63f9f5b60ddc4f36be2956b354e574c93129d75f29e005d6631784380bcef27860b54c64f419ca18ad77f092f4520dec47b10f4 xlsclients-1.1.4.tar.bz2 +# Locally computed +sha256 716d6f1d18cb97cdd4a2ef7b101d944a250ca9de57578a490c038b9aaf950648 COPYING diff --git a/package/x11r7/xapp_xlsclients/xapp_xlsclients.mk b/package/x11r7/xapp_xlsclients/xapp_xlsclients.mk new file mode 100644 index 00000000..167748b3 --- /dev/null +++ b/package/x11r7/xapp_xlsclients/xapp_xlsclients.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xlsclients +# +################################################################################ + +XAPP_XLSCLIENTS_VERSION = 1.1.4 +XAPP_XLSCLIENTS_SOURCE = xlsclients-$(XAPP_XLSCLIENTS_VERSION).tar.bz2 +XAPP_XLSCLIENTS_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XLSCLIENTS_LICENSE = MIT +XAPP_XLSCLIENTS_LICENSE_FILES = COPYING +XAPP_XLSCLIENTS_DEPENDENCIES = xlib_libX11 xlib_libXmu libxcb xcb-util + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xlsfonts/Config.in b/package/x11r7/xapp_xlsfonts/Config.in new file mode 100644 index 00000000..dab61ebf --- /dev/null +++ b/package/x11r7/xapp_xlsfonts/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XAPP_XLSFONTS + bool "xlsfonts" + select BR2_PACKAGE_XLIB_LIBX11 + help + X.Org xlsfonts application diff --git a/package/x11r7/xapp_xlsfonts/xapp_xlsfonts.hash b/package/x11r7/xapp_xlsfonts/xapp_xlsfonts.hash new file mode 100644 index 00000000..f76369f9 --- /dev/null +++ b/package/x11r7/xapp_xlsfonts/xapp_xlsfonts.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-March/002867.html +md5 5774fd4f518b3f338f2b28f270e04bfc xlsfonts-1.0.6.tar.bz2 +sha1 bf95e46e0897dcb9d197ce20d4fa024b8ace5148 xlsfonts-1.0.6.tar.bz2 +sha256 89b80b3a030006ab6cef717be286c12f2477894b227158b1e6133274f6ebd368 xlsfonts-1.0.6.tar.bz2 +sha512 052a3b1dec23cb20fdfacd4500cb836feb3b888bf568a548ea71deb58a4ba10a1ad5392d658e95272c6d4a1832edf1f19c3de2498b78dca82c43ee52800a30c0 xlsfonts-1.0.6.tar.bz2 +# Locally computed +sha256 dcdf5fa36a652efbe61a21def1301739b0010334ae3f049f1cff433221a8c7a5 COPYING diff --git a/package/x11r7/xapp_xlsfonts/xapp_xlsfonts.mk b/package/x11r7/xapp_xlsfonts/xapp_xlsfonts.mk new file mode 100644 index 00000000..0ccd4ea6 --- /dev/null +++ b/package/x11r7/xapp_xlsfonts/xapp_xlsfonts.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xlsfonts +# +################################################################################ + +XAPP_XLSFONTS_VERSION = 1.0.6 +XAPP_XLSFONTS_SOURCE = xlsfonts-$(XAPP_XLSFONTS_VERSION).tar.bz2 +XAPP_XLSFONTS_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XLSFONTS_LICENSE = MIT +XAPP_XLSFONTS_LICENSE_FILES = COPYING +XAPP_XLSFONTS_DEPENDENCIES = xlib_libX11 + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xmag/Config.in b/package/x11r7/xapp_xmag/Config.in new file mode 100644 index 00000000..44d2c8e1 --- /dev/null +++ b/package/x11r7/xapp_xmag/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XAPP_XMAG + bool "xmag" + select BR2_PACKAGE_XLIB_LIBXAW + help + X.Org xmag application diff --git a/package/x11r7/xapp_xmag/xapp_xmag.hash b/package/x11r7/xapp_xmag/xapp_xmag.hash new file mode 100644 index 00000000..55a9d479 --- /dev/null +++ b/package/x11r7/xapp_xmag/xapp_xmag.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2015-April/002581.html +sha256 87a2bc23b251e2d8f8370d3283a4d6c8dac98a30cb5749a04336cdb55c14e161 xmag-1.0.6.tar.bz2 +# Locally computed +sha256 ef8744e617719339c4934579f8558ee4a5aec4396bebd6af02562b63a7c16d27 COPYING diff --git a/package/x11r7/xapp_xmag/xapp_xmag.mk b/package/x11r7/xapp_xmag/xapp_xmag.mk new file mode 100644 index 00000000..113c328e --- /dev/null +++ b/package/x11r7/xapp_xmag/xapp_xmag.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xapp_xmag +# +################################################################################ + +XAPP_XMAG_VERSION = 1.0.6 +XAPP_XMAG_SOURCE = xmag-$(XAPP_XMAG_VERSION).tar.bz2 +XAPP_XMAG_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XMAG_LICENSE = MIT +XAPP_XMAG_LICENSE_FILES = COPYING +XAPP_XMAG_DEPENDENCIES = xlib_libXaw +XAPP_XMAG_CONF_OPTS = --with-appdefaultdir=/usr/share/X11/app-defaults + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xman/Config.in b/package/x11r7/xapp_xman/Config.in new file mode 100644 index 00000000..4f4f067e --- /dev/null +++ b/package/x11r7/xapp_xman/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XAPP_XMAN + bool "xman" + select BR2_PACKAGE_XLIB_LIBXAW + help + Manual page display program for the X Window System diff --git a/package/x11r7/xapp_xman/xapp_xman.hash b/package/x11r7/xapp_xman/xapp_xman.hash new file mode 100644 index 00000000..e4a93d17 --- /dev/null +++ b/package/x11r7/xapp_xman/xapp_xman.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-July/003011.html +md5 629436867b202098967636b17c8d303c xman-1.1.5.tar.bz2 +sha1 ec76dbd010f68974e05dfe8bc4b91731a3b7285b xman-1.1.5.tar.bz2 +sha256 4e3c2c7497e9734a6d3c8e1b6a364612892bb31e9f33076c9fdae7177ab60978 xman-1.1.5.tar.bz2 +sha512 f6b2be424a79f298bf1a81edce4172572195c9efc9454e5b7b7046f344ed08154c77ccaa763ccdf3f1a30b64aa4802783bf813ee637437ccb1fba434fc5d4400 xman-1.1.5.tar.bz2 +# Locally computed +sha256 4c3d6d6fc5661c64285931a0871728f3745d962d877477235dc66e4043db3d36 COPYING diff --git a/package/x11r7/xapp_xman/xapp_xman.mk b/package/x11r7/xapp_xman/xapp_xman.mk new file mode 100644 index 00000000..f8abfe57 --- /dev/null +++ b/package/x11r7/xapp_xman/xapp_xman.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# xapp_xman +# +################################################################################ + +XAPP_XMAN_VERSION = 1.1.5 +XAPP_XMAN_SOURCE = xman-$(XAPP_XMAN_VERSION).tar.bz2 +XAPP_XMAN_SITE = https://xorg.freedesktop.org/archive/individual/app +XAPP_XMAN_LICENSE = MIT +XAPP_XMAN_LICENSE_FILES = COPYING +XAPP_XMAN_DEPENDENCIES = xlib_libXaw +XAPP_XMAN_CONF_OPTS = --with-appdefaultdir=/usr/share/X11/app-defaults + +XAPP_XMAN_CONF_ENV = \ + ac_cv_file__etc_man_conf=no \ + ac_cv_file__etc_man_config=no \ + ac_cv_file__etc_manpath_config=no \ + ac_cv_file__usr_share_misc_man_conf=no + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xmessage/Config.in b/package/x11r7/xapp_xmessage/Config.in new file mode 100644 index 00000000..e80562ff --- /dev/null +++ b/package/x11r7/xapp_xmessage/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XAPP_XMESSAGE + bool "xmessage" + select BR2_PACKAGE_XLIB_LIBXAW + help + display a message or query in a window (X-based /bin/echo) diff --git a/package/x11r7/xapp_xmessage/xapp_xmessage.hash b/package/x11r7/xapp_xmessage/xapp_xmessage.hash new file mode 100644 index 00000000..b668edf6 --- /dev/null +++ b/package/x11r7/xapp_xmessage/xapp_xmessage.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-March/002868.html +md5 e50ffae17eeb3943079620cb78f5ce0b xmessage-1.0.5.tar.bz2 +sha1 d3eca72c7173d0d9547c676a16bcec51ca1213a2 xmessage-1.0.5.tar.bz2 +sha256 373dfb81e7a6f06d3d22485a12fcde6e255d58c6dee1bbaeb00c7d0caa9b2029 xmessage-1.0.5.tar.bz2 +sha512 a8423c3986b1576fa67800c315a605a527bb9a8f594ac269a736ae7b91eed0d4d83deb89148197dc3cd3f0e51894146958ce2979f78e97dcdb99c5326e34dabe xmessage-1.0.5.tar.bz2 +# Locally computed +sha256 dfd5427188bd6d6647ad1a9a0644428403c6239f6aa7f9d1a17629d8cc0a4ecd COPYING diff --git a/package/x11r7/xapp_xmessage/xapp_xmessage.mk b/package/x11r7/xapp_xmessage/xapp_xmessage.mk new file mode 100644 index 00000000..9d426974 --- /dev/null +++ b/package/x11r7/xapp_xmessage/xapp_xmessage.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xapp_xmessage +# +################################################################################ + +XAPP_XMESSAGE_VERSION = 1.0.5 +XAPP_XMESSAGE_SOURCE = xmessage-$(XAPP_XMESSAGE_VERSION).tar.bz2 +XAPP_XMESSAGE_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XMESSAGE_LICENSE = MIT +XAPP_XMESSAGE_LICENSE_FILES = COPYING +XAPP_XMESSAGE_DEPENDENCIES = xlib_libXaw +XAPP_XMESSAGE_CONF_OPTS = --with-appdefaultdir=/usr/share/X11/app-defaults + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xmh/Config.in b/package/x11r7/xapp_xmh/Config.in new file mode 100644 index 00000000..4e86d0f4 --- /dev/null +++ b/package/x11r7/xapp_xmh/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_XAPP_XMH + bool "xmh" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_XLIB_LIBXAW + select BR2_PACKAGE_XDATA_XBITMAPS + help + send and read mail with an X interface to MH diff --git a/package/x11r7/xapp_xmh/xapp_xmh.hash b/package/x11r7/xapp_xmh/xapp_xmh.hash new file mode 100644 index 00000000..1dadc345 --- /dev/null +++ b/package/x11r7/xapp_xmh/xapp_xmh.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2015-April/002582.html +sha256 b92f4f912a5fb6346d52cc2b639aea087b347f3b2e4e1a4fc7a165b1345f5689 xmh-1.0.3.tar.bz2 +# Locally computed +sha256 27d8cbdcde7a0bd062ce49cdf8c672201452a64e3e6823f09b1beffe2c4b8eff COPYING diff --git a/package/x11r7/xapp_xmh/xapp_xmh.mk b/package/x11r7/xapp_xmh/xapp_xmh.mk new file mode 100644 index 00000000..c18bbfe5 --- /dev/null +++ b/package/x11r7/xapp_xmh/xapp_xmh.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xmh +# +################################################################################ + +XAPP_XMH_VERSION = 1.0.3 +XAPP_XMH_SOURCE = xmh-$(XAPP_XMH_VERSION).tar.bz2 +XAPP_XMH_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XMH_LICENSE = MIT +XAPP_XMH_LICENSE_FILES = COPYING +XAPP_XMH_DEPENDENCIES = xlib_libXaw xdata_xbitmaps + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xmodmap/Config.in b/package/x11r7/xapp_xmodmap/Config.in new file mode 100644 index 00000000..9be79abf --- /dev/null +++ b/package/x11r7/xapp_xmodmap/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XAPP_XMODMAP + bool "xmodmap" + select BR2_PACKAGE_XLIB_LIBX11 + help + utility for modifying keymaps and pointer button mappings in X diff --git a/package/x11r7/xapp_xmodmap/xapp_xmodmap.hash b/package/x11r7/xapp_xmodmap/xapp_xmodmap.hash new file mode 100644 index 00000000..4925ec00 --- /dev/null +++ b/package/x11r7/xapp_xmodmap/xapp_xmodmap.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-February/002952.html +md5 51f1d30a525e9903280ffeea2744b1f6 xmodmap-1.0.10.tar.bz2 +sha1 69e041f8a8c501bd1feb68805a0880633a685bc8 xmodmap-1.0.10.tar.bz2 +sha256 473f0941d7439d501bb895ff358832b936ec34c749b9704c37a15e11c318487c xmodmap-1.0.10.tar.bz2 +sha512 324c7dcef843186088f16b3bc47485eb3c9b4331e56ce43b692deb4bb3d4f4f27512480e91a379cceac8383df920dc5e37cd825246b50b6343291cec48134c04 xmodmap-1.0.10.tar.bz2 +# Locally computed +sha256 c149563cf2cb0ecfb1148b6eb8f604c62bed43452a0d0fbafb97286a97840f5c COPYING diff --git a/package/x11r7/xapp_xmodmap/xapp_xmodmap.mk b/package/x11r7/xapp_xmodmap/xapp_xmodmap.mk new file mode 100644 index 00000000..f3a458b7 --- /dev/null +++ b/package/x11r7/xapp_xmodmap/xapp_xmodmap.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xmodmap +# +################################################################################ + +XAPP_XMODMAP_VERSION = 1.0.10 +XAPP_XMODMAP_SOURCE = xmodmap-$(XAPP_XMODMAP_VERSION).tar.bz2 +XAPP_XMODMAP_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XMODMAP_LICENSE = MIT +XAPP_XMODMAP_LICENSE_FILES = COPYING +XAPP_XMODMAP_DEPENDENCIES = xlib_libX11 + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xmore/Config.in b/package/x11r7/xapp_xmore/Config.in new file mode 100644 index 00000000..80c3950b --- /dev/null +++ b/package/x11r7/xapp_xmore/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XAPP_XMORE + bool "xmore" + select BR2_PACKAGE_XLIB_LIBXAW + help + plain text display program for the X Window System diff --git a/package/x11r7/xapp_xmore/xapp_xmore.hash b/package/x11r7/xapp_xmore/xapp_xmore.hash new file mode 100644 index 00000000..cd777831 --- /dev/null +++ b/package/x11r7/xapp_xmore/xapp_xmore.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-March/002964.html +md5 8e1279352192e4142740c21db58f9be9 xmore-1.0.3.tar.bz2 +sha1 b57b92afd783d28c4c505e0c95556939f24c3ec9 xmore-1.0.3.tar.bz2 +sha256 644a1e0d5182d7708d413722d0579a587dc56b9a8cb60640df076d302e09251b xmore-1.0.3.tar.bz2 +sha512 e3e44831cd87a54bb585f80ef0d87f69dc35f6c834a73241aad9f6e2b0999b53c51a0a3f915a94ae4d6dc9bdfb9f60b6576f0bdcec441443abd98efa6c51b1d3 xmore-1.0.3.tar.bz2 +# Locally computed +sha256 27d8cbdcde7a0bd062ce49cdf8c672201452a64e3e6823f09b1beffe2c4b8eff COPYING diff --git a/package/x11r7/xapp_xmore/xapp_xmore.mk b/package/x11r7/xapp_xmore/xapp_xmore.mk new file mode 100644 index 00000000..f8a3ba8c --- /dev/null +++ b/package/x11r7/xapp_xmore/xapp_xmore.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xmore +# +################################################################################ + +XAPP_XMORE_VERSION = 1.0.3 +XAPP_XMORE_SOURCE = xmore-$(XAPP_XMORE_VERSION).tar.bz2 +XAPP_XMORE_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XMORE_LICENSE = MIT +XAPP_XMORE_LICENSE_FILES = COPYING +XAPP_XMORE_DEPENDENCIES = xlib_libXaw + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xpr/Config.in b/package/x11r7/xapp_xpr/Config.in new file mode 100644 index 00000000..0710d62a --- /dev/null +++ b/package/x11r7/xapp_xpr/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_XPR + bool "xpr" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXMU + help + X.Org xpr application diff --git a/package/x11r7/xapp_xpr/xapp_xpr.hash b/package/x11r7/xapp_xpr/xapp_xpr.hash new file mode 100644 index 00000000..0a1b4f81 --- /dev/null +++ b/package/x11r7/xapp_xpr/xapp_xpr.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-March/002869.html +md5 eaac255076ea351fd08d76025788d9f9 xpr-1.0.5.tar.bz2 +sha1 0632c7d8632ac9d23f285811aaea805a2956e155 xpr-1.0.5.tar.bz2 +sha256 b936e0f1f8d63f5ad097a0bbdce2e67c34f5d49b7263f32a832ff62d394d1e1f xpr-1.0.5.tar.bz2 +sha512 d5dfb936ec4ad0067d02654dec8e862fe337ff6a2c2f974b2b3a612a829c2e728a0d51e7aba00ed2a94dc96dc50cc69f2c59f522e0635013f5f4f5bb3f4ab967 xpr-1.0.5.tar.bz2 +# Locally computed +sha256 5e8ff9b5d3fc86b5d0bc5957c9ee0aa1a6d0fb9a6b116aae70762b628a0d5069 COPYING diff --git a/package/x11r7/xapp_xpr/xapp_xpr.mk b/package/x11r7/xapp_xpr/xapp_xpr.mk new file mode 100644 index 00000000..b77c5b48 --- /dev/null +++ b/package/x11r7/xapp_xpr/xapp_xpr.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xpr +# +################################################################################ + +XAPP_XPR_VERSION = 1.0.5 +XAPP_XPR_SOURCE = xpr-$(XAPP_XPR_VERSION).tar.bz2 +XAPP_XPR_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XPR_LICENSE = MIT +XAPP_XPR_LICENSE_FILES = COPYING +XAPP_XPR_DEPENDENCIES = xlib_libX11 xlib_libXmu + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xprop/Config.in b/package/x11r7/xapp_xprop/Config.in new file mode 100644 index 00000000..314e79f6 --- /dev/null +++ b/package/x11r7/xapp_xprop/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_XPROP + bool "xprop" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXMU + help + property displayer for X diff --git a/package/x11r7/xapp_xprop/xapp_xprop.hash b/package/x11r7/xapp_xprop/xapp_xprop.hash new file mode 100644 index 00000000..43eed80b --- /dev/null +++ b/package/x11r7/xapp_xprop/xapp_xprop.hash @@ -0,0 +1,5 @@ +# From https://lists.x.org/archives/xorg-announce/2020-November/003064.html +sha256 9b92ed0316bf2486121d8bac88bd1878f16b43bd335f18009b1f941f1eca93a1 xprop-1.2.5.tar.bz2 +sha512 93cfa621fa76ca6e8e780a252c508380b6dc9db39b67bfca16bb9800f0d39110f5d18189409a8577ef79e98bf5eece17f5e23f2218ca72ae8bb04ee7b429d559 xprop-1.2.5.tar.bz2 +# Locally computed +sha256 f19ff982936cca133b9593a6561c3817512207e0b4c951d0e4eb5956d30d4415 COPYING diff --git a/package/x11r7/xapp_xprop/xapp_xprop.mk b/package/x11r7/xapp_xprop/xapp_xprop.mk new file mode 100644 index 00000000..75f0d37c --- /dev/null +++ b/package/x11r7/xapp_xprop/xapp_xprop.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xprop +# +################################################################################ + +XAPP_XPROP_VERSION = 1.2.5 +XAPP_XPROP_SOURCE = xprop-$(XAPP_XPROP_VERSION).tar.bz2 +XAPP_XPROP_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XPROP_LICENSE = MIT +XAPP_XPROP_LICENSE_FILES = COPYING +XAPP_XPROP_DEPENDENCIES = xlib_libX11 xlib_libXmu + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xrandr/Config.in b/package/x11r7/xapp_xrandr/Config.in new file mode 100644 index 00000000..fe9bd4e9 --- /dev/null +++ b/package/x11r7/xapp_xrandr/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_XRANDR + bool "xrandr" + select BR2_PACKAGE_XLIB_LIBXRANDR + select BR2_PACKAGE_XLIB_LIBX11 + help + primitive command line interface to RandR extension diff --git a/package/x11r7/xapp_xrandr/xapp_xrandr.hash b/package/x11r7/xapp_xrandr/xapp_xrandr.hash new file mode 100644 index 00000000..408b070d --- /dev/null +++ b/package/x11r7/xapp_xrandr/xapp_xrandr.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-August/003018.html +md5 fe40f7a4fd39dd3a02248d3e0b1972e4 xrandr-1.5.1.tar.xz +sha1 9f72957e0d2a26ece509336ea7e1529cc9ea881e xrandr-1.5.1.tar.xz +sha256 7bc76daf9d72f8aff885efad04ce06b90488a1a169d118dea8a2b661832e8762 xrandr-1.5.1.tar.xz +sha512 3d0d37e974b9dffb996276ee7fd676327fd0956e5f5f572dd142a651a35d3cdfa2f6dd415cf27bf87f306981957aba4cc014c12baebefcabaa5d66b78a114922 xrandr-1.5.1.tar.xz +# Locally computed +sha256 0dd9a3d62c48dd7b87790029e39fb5e11756d33fded3bc1644e11585c87b2038 COPYING diff --git a/package/x11r7/xapp_xrandr/xapp_xrandr.mk b/package/x11r7/xapp_xrandr/xapp_xrandr.mk new file mode 100644 index 00000000..8586c6fe --- /dev/null +++ b/package/x11r7/xapp_xrandr/xapp_xrandr.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xapp_xrandr +# +################################################################################ + +XAPP_XRANDR_VERSION = 1.5.1 +XAPP_XRANDR_SOURCE = xrandr-$(XAPP_XRANDR_VERSION).tar.xz +XAPP_XRANDR_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XRANDR_LICENSE = MIT +XAPP_XRANDR_LICENSE_FILES = COPYING +XAPP_XRANDR_DEPENDENCIES = xlib_libXrandr xlib_libX11 +XAPP_XRANDR_CONF_OPTS = --disable-malloc0returnsnull + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xrdb/Config.in b/package/x11r7/xapp_xrdb/Config.in new file mode 100644 index 00000000..8c078570 --- /dev/null +++ b/package/x11r7/xapp_xrdb/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_XRDB + bool "xrdb" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXMU + help + X server resource database utility diff --git a/package/x11r7/xapp_xrdb/xapp_xrdb.hash b/package/x11r7/xapp_xrdb/xapp_xrdb.hash new file mode 100644 index 00000000..b8a6896c --- /dev/null +++ b/package/x11r7/xapp_xrdb/xapp_xrdb.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-February/002953.html +md5 34ae801ef994d192c70fcce2bdb2a1b2 xrdb-1.2.0.tar.bz2 +sha1 79596928246288a217abdec0e4a2315ec9b07963 xrdb-1.2.0.tar.bz2 +sha256 f23a65cfa1f7126040d68b6cf1e4567523edac10f8dc06f23d840d330c7c6946 xrdb-1.2.0.tar.bz2 +sha512 14e1cdfb2152fb28f1f4641b177ab236648d7e967a95b952bf4cfce8d3e1ef085e85385354e3381aaf644462e8888a1847f755ab4016ecb4cb4a715b001dd2ef xrdb-1.2.0.tar.bz2 +# Locally computed +sha256 ca1b3e2f9f37c35876b69a9c1c5a7860fae59b7ba87a1d2dc541b722e29b1ecc COPYING diff --git a/package/x11r7/xapp_xrdb/xapp_xrdb.mk b/package/x11r7/xapp_xrdb/xapp_xrdb.mk new file mode 100644 index 00000000..b445805d --- /dev/null +++ b/package/x11r7/xapp_xrdb/xapp_xrdb.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xrdb +# +################################################################################ + +XAPP_XRDB_VERSION = 1.2.0 +XAPP_XRDB_SOURCE = xrdb-$(XAPP_XRDB_VERSION).tar.bz2 +XAPP_XRDB_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XRDB_LICENSE = MIT +XAPP_XRDB_LICENSE_FILES = COPYING +XAPP_XRDB_DEPENDENCIES = xlib_libX11 xlib_libXmu + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xrefresh/Config.in b/package/x11r7/xapp_xrefresh/Config.in new file mode 100644 index 00000000..16b1e50b --- /dev/null +++ b/package/x11r7/xapp_xrefresh/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XAPP_XREFRESH + bool "xrefresh" + select BR2_PACKAGE_XLIB_LIBX11 + help + refresh all or part of an X screen diff --git a/package/x11r7/xapp_xrefresh/xapp_xrefresh.hash b/package/x11r7/xapp_xrefresh/xapp_xrefresh.hash new file mode 100644 index 00000000..8eae8ed1 --- /dev/null +++ b/package/x11r7/xapp_xrefresh/xapp_xrefresh.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-March/002872.html +md5 c56fa4adbeed1ee5173f464a4c4a61a6 xrefresh-1.0.6.tar.bz2 +sha1 11eb5b3f905631281d2cedd86a0b666bab0d9bdc xrefresh-1.0.6.tar.bz2 +sha256 287dfb9bb7e8d780d07e672e3252150850869cb550958ed5f8401f0835cd6353 xrefresh-1.0.6.tar.bz2 +sha512 361e97fecfc2706d5eeab69df0d4dd4baa55b6783cfddabf51d8561b7c930d71ce6c217e0512c6564208d69b04f89c69ea8c0bfb2e4f6cc25b062b55e4db3674 xrefresh-1.0.6.tar.bz2 +# Locally computed +sha256 4f51c9a91cd277697cbea6604bf4cb240c1ed14cdba82550cb9cac8f1286f663 COPYING diff --git a/package/x11r7/xapp_xrefresh/xapp_xrefresh.mk b/package/x11r7/xapp_xrefresh/xapp_xrefresh.mk new file mode 100644 index 00000000..36a4feaa --- /dev/null +++ b/package/x11r7/xapp_xrefresh/xapp_xrefresh.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xrefresh +# +################################################################################ + +XAPP_XREFRESH_VERSION = 1.0.6 +XAPP_XREFRESH_SOURCE = xrefresh-$(XAPP_XREFRESH_VERSION).tar.bz2 +XAPP_XREFRESH_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XREFRESH_LICENSE = MIT +XAPP_XREFRESH_LICENSE_FILES = COPYING +XAPP_XREFRESH_DEPENDENCIES = xlib_libX11 + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xset/Config.in b/package/x11r7/xapp_xset/Config.in new file mode 100644 index 00000000..71497ab7 --- /dev/null +++ b/package/x11r7/xapp_xset/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XAPP_XSET + bool "xset" + select BR2_PACKAGE_XLIB_LIBXMU + help + X.Org xset application diff --git a/package/x11r7/xapp_xset/xapp_xset.hash b/package/x11r7/xapp_xset/xapp_xset.hash new file mode 100644 index 00000000..62f951ba --- /dev/null +++ b/package/x11r7/xapp_xset/xapp_xset.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-March/002873.html +md5 70ea7bc7bacf1a124b1692605883f620 xset-1.2.4.tar.bz2 +sha1 41a857f30ff5bb0dfbda1549bb703984344ea228 xset-1.2.4.tar.bz2 +sha256 e4fd95280df52a88e9b0abc1fee11dcf0f34fc24041b9f45a247e52df941c957 xset-1.2.4.tar.bz2 +sha512 f24714c9a82081a09d3054bbad98553de9366992f22eaf3e2bcadbb58fad1d3dad2547fef6fa9898d8a9df064573c29df9d82a5c801fa92248604c95f65dc83d xset-1.2.4.tar.bz2 +# Locally computed +sha256 6bfc619b6d37dd0e6ca575edcb3a05194136e04d1d9989b8e14e6f7850587382 COPYING diff --git a/package/x11r7/xapp_xset/xapp_xset.mk b/package/x11r7/xapp_xset/xapp_xset.mk new file mode 100644 index 00000000..9ead55a2 --- /dev/null +++ b/package/x11r7/xapp_xset/xapp_xset.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xset +# +################################################################################ + +XAPP_XSET_VERSION = 1.2.4 +XAPP_XSET_SOURCE = xset-$(XAPP_XSET_VERSION).tar.bz2 +XAPP_XSET_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XSET_LICENSE = MIT +XAPP_XSET_LICENSE_FILES = COPYING +XAPP_XSET_DEPENDENCIES = xlib_libXmu + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xsetmode/Config.in b/package/x11r7/xapp_xsetmode/Config.in new file mode 100644 index 00000000..a08e02d7 --- /dev/null +++ b/package/x11r7/xapp_xsetmode/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_XSETMODE + bool "xsetmode" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXI + help + set the mode for an X Input device diff --git a/package/x11r7/xapp_xsetmode/xapp_xsetmode.hash b/package/x11r7/xapp_xsetmode/xapp_xsetmode.hash new file mode 100644 index 00000000..5d4e1645 --- /dev/null +++ b/package/x11r7/xapp_xsetmode/xapp_xsetmode.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 988b47cd922991c6e6adbce15dc386ac75690b61744b526c3af5a4eaa9afa0aa xsetmode-1.0.0.tar.bz2 +sha256 8f22998f14924220f0f530660811d24e5371a8d7672287c9d22f1eafb7256863 COPYING diff --git a/package/x11r7/xapp_xsetmode/xapp_xsetmode.mk b/package/x11r7/xapp_xsetmode/xapp_xsetmode.mk new file mode 100644 index 00000000..c4599a9b --- /dev/null +++ b/package/x11r7/xapp_xsetmode/xapp_xsetmode.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xsetmode +# +################################################################################ + +XAPP_XSETMODE_VERSION = 1.0.0 +XAPP_XSETMODE_SOURCE = xsetmode-$(XAPP_XSETMODE_VERSION).tar.bz2 +XAPP_XSETMODE_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XSETMODE_LICENSE = MIT +XAPP_XSETMODE_LICENSE_FILES = COPYING +XAPP_XSETMODE_DEPENDENCIES = xlib_libX11 xlib_libXi + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xsetpointer/Config.in b/package/x11r7/xapp_xsetpointer/Config.in new file mode 100644 index 00000000..0deb6d81 --- /dev/null +++ b/package/x11r7/xapp_xsetpointer/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_XAPP_XSETPOINTER + bool "xsetpointer" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXI + select BR2_PACKAGE_XORGPROTO + help + set an X Input device as the main pointer diff --git a/package/x11r7/xapp_xsetpointer/xapp_xsetpointer.hash b/package/x11r7/xapp_xsetpointer/xapp_xsetpointer.hash new file mode 100644 index 00000000..8167f3d1 --- /dev/null +++ b/package/x11r7/xapp_xsetpointer/xapp_xsetpointer.hash @@ -0,0 +1,6 @@ +# From https://lists.freedesktop.org/archives/xorg-announce/2006-November/000150.html +md5 9e5bcbeda4aaf02bfa095e41d30baee4 xsetpointer-1.0.1.tar.bz2 +sha1 a8b01c6f27625a6f6943f9be17b1e5511f69d710 xsetpointer-1.0.1.tar.bz2 +# locally computed +sha256 495d88871eb5081e98bbae55f813f73cb3ce4145d6ca3e8f2826800166c04571 xsetpointer-1.0.1.tar.bz2 +sha256 8f22998f14924220f0f530660811d24e5371a8d7672287c9d22f1eafb7256863 COPYING diff --git a/package/x11r7/xapp_xsetpointer/xapp_xsetpointer.mk b/package/x11r7/xapp_xsetpointer/xapp_xsetpointer.mk new file mode 100644 index 00000000..21630eb7 --- /dev/null +++ b/package/x11r7/xapp_xsetpointer/xapp_xsetpointer.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xsetpointer +# +################################################################################ + +XAPP_XSETPOINTER_VERSION = 1.0.1 +XAPP_XSETPOINTER_SOURCE = xsetpointer-$(XAPP_XSETPOINTER_VERSION).tar.bz2 +XAPP_XSETPOINTER_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XSETPOINTER_LICENSE = MIT +XAPP_XSETPOINTER_LICENSE_FILES = COPYING +XAPP_XSETPOINTER_DEPENDENCIES = xlib_libX11 xlib_libXi xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xsetroot/Config.in b/package/x11r7/xapp_xsetroot/Config.in new file mode 100644 index 00000000..a70df80d --- /dev/null +++ b/package/x11r7/xapp_xsetroot/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_XAPP_XSETROOT + bool "xsetroot" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXMU + select BR2_PACKAGE_XLIB_LIBXCURSOR + select BR2_PACKAGE_XDATA_XBITMAPS + help + X.Org xsetroot application diff --git a/package/x11r7/xapp_xsetroot/xapp_xsetroot.hash b/package/x11r7/xapp_xsetroot/xapp_xsetroot.hash new file mode 100644 index 00000000..7cbabb5c --- /dev/null +++ b/package/x11r7/xapp_xsetroot/xapp_xsetroot.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-March/002874.html +md5 5fe769c8777a6e873ed1305e4ce2c353 xsetroot-1.1.2.tar.bz2 +sha1 42ab81761823b44974feab86477007c49dbace50 xsetroot-1.1.2.tar.bz2 +sha256 10c442ba23591fb5470cea477a0aa5f679371f4f879c8387a1d9d05637ae417c xsetroot-1.1.2.tar.bz2 +sha512 0b9df1b72305e5c24f1e1664578aa4411a5ffcdc5d318458117594e641f01c34700205b0d16c08abf4a8106d36128ccdbe1ea1f1035fce9018d6b52801a8b72b xsetroot-1.1.2.tar.bz2 +# Locally computed +sha256 48e9c9572e0dc1c14b93b753542f780e7751dd7f035816374d8a8be0211a4520 COPYING diff --git a/package/x11r7/xapp_xsetroot/xapp_xsetroot.mk b/package/x11r7/xapp_xsetroot/xapp_xsetroot.mk new file mode 100644 index 00000000..98ba344c --- /dev/null +++ b/package/x11r7/xapp_xsetroot/xapp_xsetroot.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xsetroot +# +################################################################################ + +XAPP_XSETROOT_VERSION = 1.1.2 +XAPP_XSETROOT_SOURCE = xsetroot-$(XAPP_XSETROOT_VERSION).tar.bz2 +XAPP_XSETROOT_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XSETROOT_LICENSE = MIT +XAPP_XSETROOT_LICENSE_FILES = COPYING +XAPP_XSETROOT_DEPENDENCIES = xlib_libX11 xlib_libXmu xlib_libXcursor xdata_xbitmaps + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xsm/Config.in b/package/x11r7/xapp_xsm/Config.in new file mode 100644 index 00000000..88f20cf6 --- /dev/null +++ b/package/x11r7/xapp_xsm/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_XSM + bool "xsm" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_XLIB_LIBXAW + help + X Session Manager diff --git a/package/x11r7/xapp_xsm/xapp_xsm.hash b/package/x11r7/xapp_xsm/xapp_xsm.hash new file mode 100644 index 00000000..eda231fe --- /dev/null +++ b/package/x11r7/xapp_xsm/xapp_xsm.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-March/002875.html +md5 bd32c14f09d58f46084b6a8f20e6e8f1 xsm-1.0.4.tar.bz2 +sha1 dd41234e276fe8b2d0a853879568f73b6d98812a xsm-1.0.4.tar.bz2 +sha256 9934b6893a4e52cf7435368fc8d425c371b5e32d96e420ead30166eb82d64425 xsm-1.0.4.tar.bz2 +sha512 d4e4da7c309a4eae126d2b58a13684f4dbc06b09f76dde9c89c707375df2843614f3d83bc44f9cd02f239200db3397abd86796dca0dbafc69f60482b0af5a176 xsm-1.0.4.tar.bz2 +# Locally computed +sha256 27d8cbdcde7a0bd062ce49cdf8c672201452a64e3e6823f09b1beffe2c4b8eff COPYING diff --git a/package/x11r7/xapp_xsm/xapp_xsm.mk b/package/x11r7/xapp_xsm/xapp_xsm.mk new file mode 100644 index 00000000..6d752b4d --- /dev/null +++ b/package/x11r7/xapp_xsm/xapp_xsm.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xsm +# +################################################################################ + +XAPP_XSM_VERSION = 1.0.4 +XAPP_XSM_SOURCE = xsm-$(XAPP_XSM_VERSION).tar.bz2 +XAPP_XSM_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XSM_LICENSE = MIT +XAPP_XSM_LICENSE_FILES = COPYING +XAPP_XSM_DEPENDENCIES = xlib_libXaw + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xstdcmap/Config.in b/package/x11r7/xapp_xstdcmap/Config.in new file mode 100644 index 00000000..f15c36b8 --- /dev/null +++ b/package/x11r7/xapp_xstdcmap/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_XSTDCMAP + bool "xstdcmap" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXMU + help + X standard colormap utility diff --git a/package/x11r7/xapp_xstdcmap/xapp_xstdcmap.hash b/package/x11r7/xapp_xstdcmap/xapp_xstdcmap.hash new file mode 100644 index 00000000..fc067850 --- /dev/null +++ b/package/x11r7/xapp_xstdcmap/xapp_xstdcmap.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-February/002954.html +md5 da67142c128d18386ff145882e0afc66 xstdcmap-1.0.4.tar.bz2 +sha1 a5eff72ba31625e5b11506add800140019a39636 xstdcmap-1.0.4.tar.bz2 +sha256 06898b3f1eaad0b205ff3c75bdefa3207868b889d4cb37b32b8267b2bbfe6f8b xstdcmap-1.0.4.tar.bz2 +sha512 2adbb0aec1766341e04090efa962241ff6c9e32c612851b7221cec0ee16852107d406a08ec5251070f39df882c13e3c8c9edcd88f278187a9f373e1727643a8f xstdcmap-1.0.4.tar.bz2 +# Locally computed +sha256 f0a362fc1b8e788845b1c0ad7ba9ade58fdfb73da750c3b9780db5d70b947657 COPYING diff --git a/package/x11r7/xapp_xstdcmap/xapp_xstdcmap.mk b/package/x11r7/xapp_xstdcmap/xapp_xstdcmap.mk new file mode 100644 index 00000000..dd5b0ee3 --- /dev/null +++ b/package/x11r7/xapp_xstdcmap/xapp_xstdcmap.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xstdcmap +# +################################################################################ + +XAPP_XSTDCMAP_VERSION = 1.0.4 +XAPP_XSTDCMAP_SOURCE = xstdcmap-$(XAPP_XSTDCMAP_VERSION).tar.bz2 +XAPP_XSTDCMAP_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XSTDCMAP_LICENSE = MIT +XAPP_XSTDCMAP_LICENSE_FILES = COPYING +XAPP_XSTDCMAP_DEPENDENCIES = xlib_libX11 xlib_libXmu + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xvidtune/Config.in b/package/x11r7/xapp_xvidtune/Config.in new file mode 100644 index 00000000..b1902cd9 --- /dev/null +++ b/package/x11r7/xapp_xvidtune/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_XVIDTUNE + bool "xvidtune" + select BR2_PACKAGE_XLIB_LIBXAW + select BR2_PACKAGE_XLIB_LIBXXF86VM + help + video mode tuner for Xorg diff --git a/package/x11r7/xapp_xvidtune/xapp_xvidtune.hash b/package/x11r7/xapp_xvidtune/xapp_xvidtune.hash new file mode 100644 index 00000000..ecf7d033 --- /dev/null +++ b/package/x11r7/xapp_xvidtune/xapp_xvidtune.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2013-January/002129.html +sha256 24e5e103933a04bfb2e1d18562619ed74031ab515e7343eb546bacdbcbeecf01 xvidtune-1.0.3.tar.bz2 +# Locally computed +sha256 f3da8eaed19e27e4f67e6f076d4ebdb8d649e15a8ad33a415fb65a23de1b6689 COPYING diff --git a/package/x11r7/xapp_xvidtune/xapp_xvidtune.mk b/package/x11r7/xapp_xvidtune/xapp_xvidtune.mk new file mode 100644 index 00000000..d7c4d5bf --- /dev/null +++ b/package/x11r7/xapp_xvidtune/xapp_xvidtune.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xvidtune +# +################################################################################ + +XAPP_XVIDTUNE_VERSION = 1.0.3 +XAPP_XVIDTUNE_SOURCE = xvidtune-$(XAPP_XVIDTUNE_VERSION).tar.bz2 +XAPP_XVIDTUNE_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XVIDTUNE_LICENSE = MIT +XAPP_XVIDTUNE_LICENSE_FILES = COPYING +XAPP_XVIDTUNE_DEPENDENCIES = xlib_libXaw xlib_libXxf86vm + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xvinfo/Config.in b/package/x11r7/xapp_xvinfo/Config.in new file mode 100644 index 00000000..2612c047 --- /dev/null +++ b/package/x11r7/xapp_xvinfo/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_XVINFO + bool "xvinfo" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXV + help + Print out X-Video extension adaptor information diff --git a/package/x11r7/xapp_xvinfo/xapp_xvinfo.hash b/package/x11r7/xapp_xvinfo/xapp_xvinfo.hash new file mode 100644 index 00000000..405fc36e --- /dev/null +++ b/package/x11r7/xapp_xvinfo/xapp_xvinfo.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-February/002955.html +md5 b13afec137b9b331814a9824ab03ec80 xvinfo-1.1.4.tar.bz2 +sha1 136a70a72b23c81f4fe8f4c8cb7073316be16b44 xvinfo-1.1.4.tar.bz2 +sha256 0353220d6606077ba42363db65f50410759f9815352f77adc799e2adfa76e73f xvinfo-1.1.4.tar.bz2 +sha512 85e1f936c5c826f0fdde3670bd77d5cde8641c6e8e7849e42142e91b5aa01d7e0e60d2b064eb6fef4f5666321813ca2dc9f9656756ccbe6dcda37b119ee8a63e xvinfo-1.1.4.tar.bz2 +# Locally computed +sha256 7725b0484faa1832534814ecb577f5a86acc74f1bcce25f92c55dfc1b693717d COPYING diff --git a/package/x11r7/xapp_xvinfo/xapp_xvinfo.mk b/package/x11r7/xapp_xvinfo/xapp_xvinfo.mk new file mode 100644 index 00000000..7b3b97f0 --- /dev/null +++ b/package/x11r7/xapp_xvinfo/xapp_xvinfo.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xvinfo +# +################################################################################ + +XAPP_XVINFO_VERSION = 1.1.4 +XAPP_XVINFO_SOURCE = xvinfo-$(XAPP_XVINFO_VERSION).tar.bz2 +XAPP_XVINFO_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XVINFO_LICENSE = MIT +XAPP_XVINFO_LICENSE_FILES = COPYING +XAPP_XVINFO_DEPENDENCIES = xlib_libX11 xlib_libXv + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xwd/Config.in b/package/x11r7/xapp_xwd/Config.in new file mode 100644 index 00000000..ada4820f --- /dev/null +++ b/package/x11r7/xapp_xwd/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_XAPP_XWD + bool "xwd" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXKBFILE + select BR2_PACKAGE_XLIB_LIBXMU + help + dump an image of an X window diff --git a/package/x11r7/xapp_xwd/xapp_xwd.hash b/package/x11r7/xapp_xwd/xapp_xwd.hash new file mode 100644 index 00000000..606618bc --- /dev/null +++ b/package/x11r7/xapp_xwd/xapp_xwd.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-March/002876.html +md5 11794a8eba6d295a192a8975287fd947 xwd-1.0.7.tar.bz2 +sha1 65ce0617be29687cf6082c3a0e85d15a0dcccda9 xwd-1.0.7.tar.bz2 +sha256 cd6815b8b9e0b98e284d3d732fb12162159cb9dcee4f45a7d4c0bd8b308a6794 xwd-1.0.7.tar.bz2 +sha512 6fdb0a115ae505169bbc7fcc45580daf26bced2e26e0bf9a877636016038931a8386e8edcbe015f4024be508d0461906adef4834cf22a445e3c282f0b8fad17e xwd-1.0.7.tar.bz2 +# Locally computed +sha256 7cfda56afd92a1ecd2f23bd0064e01b5141053390d854785504adfe2c0fbd946 COPYING diff --git a/package/x11r7/xapp_xwd/xapp_xwd.mk b/package/x11r7/xapp_xwd/xapp_xwd.mk new file mode 100644 index 00000000..4d7ed0f8 --- /dev/null +++ b/package/x11r7/xapp_xwd/xapp_xwd.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xwd +# +################################################################################ + +XAPP_XWD_VERSION = 1.0.7 +XAPP_XWD_SOURCE = xwd-$(XAPP_XWD_VERSION).tar.bz2 +XAPP_XWD_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XWD_LICENSE = MIT +XAPP_XWD_LICENSE_FILES = COPYING +XAPP_XWD_DEPENDENCIES = xlib_libX11 xlib_libXmu xlib_libxkbfile + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xwininfo/Config.in b/package/x11r7/xapp_xwininfo/Config.in new file mode 100644 index 00000000..4e095707 --- /dev/null +++ b/package/x11r7/xapp_xwininfo/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XAPP_XWININFO + bool "xwininfo" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXMU + help + window information utility for X diff --git a/package/x11r7/xapp_xwininfo/xapp_xwininfo.hash b/package/x11r7/xapp_xwininfo/xapp_xwininfo.hash new file mode 100644 index 00000000..163d5cc4 --- /dev/null +++ b/package/x11r7/xapp_xwininfo/xapp_xwininfo.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-July/003012.html +md5 26d46f7ef0588d3392da3ad5802be420 xwininfo-1.1.5.tar.bz2 +sha1 9f67b1eb07c5824d437bf577cf6198962af1aeb7 xwininfo-1.1.5.tar.bz2 +sha256 7a405441dfc476666c744f5fcd1bc8a75abf8b5b1d85db7b88b370982365080e xwininfo-1.1.5.tar.bz2 +sha512 a3268bbeeeeafac94e589fdd47554a965910d40df7cc3d9c36c7c24fa4f5dd49615484d5916ccb41efca9cd4cf9d8981a4c60953b921220b3f4f57f9cce0e1a6 xwininfo-1.1.5.tar.bz2 +# Locally computed +sha256 443d675237c023a47e4886506b72796afbb2633394812027f91d6e8fa433b2af COPYING diff --git a/package/x11r7/xapp_xwininfo/xapp_xwininfo.mk b/package/x11r7/xapp_xwininfo/xapp_xwininfo.mk new file mode 100644 index 00000000..9652487a --- /dev/null +++ b/package/x11r7/xapp_xwininfo/xapp_xwininfo.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xwininfo +# +################################################################################ + +XAPP_XWININFO_VERSION = 1.1.5 +XAPP_XWININFO_SOURCE = xwininfo-$(XAPP_XWININFO_VERSION).tar.bz2 +XAPP_XWININFO_SITE = https://xorg.freedesktop.org/archive/individual/app +XAPP_XWININFO_LICENSE = MIT +XAPP_XWININFO_LICENSE_FILES = COPYING +XAPP_XWININFO_DEPENDENCIES = xlib_libX11 xlib_libXmu + +$(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xwud/Config.in b/package/x11r7/xapp_xwud/Config.in new file mode 100644 index 00000000..cb8337e9 --- /dev/null +++ b/package/x11r7/xapp_xwud/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XAPP_XWUD + bool "xwud" + select BR2_PACKAGE_XLIB_LIBX11 + help + image displayer for X diff --git a/package/x11r7/xapp_xwud/xapp_xwud.hash b/package/x11r7/xapp_xwud/xapp_xwud.hash new file mode 100644 index 00000000..e4205781 --- /dev/null +++ b/package/x11r7/xapp_xwud/xapp_xwud.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-March/002878.html +md5 79972093bb0766fcd0223b2bd6d11932 xwud-1.0.5.tar.bz2 +sha1 a85d84a1b81f8e667ea6ac126d447590c93eb079 xwud-1.0.5.tar.bz2 +sha256 99997051f8a892313f22edf41dab45864e86e7062ee9012d5dbb6a40fc6b10a9 xwud-1.0.5.tar.bz2 +sha512 27a0ce7481978ae6cd94b0d94374af72185e270d68f2496620e148bb00945427c4827138d9efc48745e6382e3da3390ed0cdff7dbd02dcf9706e8ecccae97184 xwud-1.0.5.tar.bz2 +# Locally computed +sha256 be3db9aa060c462490a8c1ed44a4d059b32bba359f4688b1ecf3f794d363539e COPYING diff --git a/package/x11r7/xapp_xwud/xapp_xwud.mk b/package/x11r7/xapp_xwud/xapp_xwud.mk new file mode 100644 index 00000000..2c2e1ad4 --- /dev/null +++ b/package/x11r7/xapp_xwud/xapp_xwud.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xapp_xwud +# +################################################################################ + +XAPP_XWUD_VERSION = 1.0.5 +XAPP_XWUD_SOURCE = xwud-$(XAPP_XWUD_VERSION).tar.bz2 +XAPP_XWUD_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XWUD_LICENSE = MIT +XAPP_XWUD_LICENSE_FILES = COPYING +XAPP_XWUD_DEPENDENCIES = xlib_libX11 + +$(eval $(autotools-package)) diff --git a/package/x11r7/xcb-proto/Config.in b/package/x11r7/xcb-proto/Config.in new file mode 100644 index 00000000..a4c93831 --- /dev/null +++ b/package/x11r7/xcb-proto/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XCB_PROTO + bool "xcb-proto" + help + The protocol headers that define XCB. + + http://xcb.freedesktop.org/ diff --git a/package/x11r7/xcb-proto/xcb-proto.hash b/package/x11r7/xcb-proto/xcb-proto.hash new file mode 100644 index 00000000..e6bc2379 --- /dev/null +++ b/package/x11r7/xcb-proto/xcb-proto.hash @@ -0,0 +1,5 @@ +# From https://lists.x.org/archives/xorg-announce/2020-October/003061.html +sha256 f04add9a972ac334ea11d9d7eb4fc7f8883835da3e4859c9afa971efdf57fcc3 xcb-proto-1.14.1.tar.xz +sha512 140fbf48483bacc7f6b70fdcf76f9e4ff0e87df9cb3a071cea47d8fe4574407cdefcfbd674099014d297e5fc010748e71d8609fca4cc32e8b25c634f928b727d xcb-proto-1.14.1.tar.xz +# Locally computed +sha256 c5ffbfeaa501071ceeb97b7de2c0d703fdaa35de01c0fb6cbac1c28453a3e9fd COPYING diff --git a/package/x11r7/xcb-proto/xcb-proto.mk b/package/x11r7/xcb-proto/xcb-proto.mk new file mode 100644 index 00000000..64190c81 --- /dev/null +++ b/package/x11r7/xcb-proto/xcb-proto.mk @@ -0,0 +1,23 @@ +################################################################################ +# +# xcb-proto +# +################################################################################ + +XCB_PROTO_VERSION = 1.14.1 +XCB_PROTO_SOURCE = xcb-proto-$(XCB_PROTO_VERSION).tar.xz +XCB_PROTO_SITE = https://xorg.freedesktop.org/archive/individual/proto +XCB_PROTO_LICENSE = MIT +XCB_PROTO_LICENSE_FILES = COPYING + +XCB_PROTO_INSTALL_STAGING = YES + +XCB_PROTO_DEPENDENCIES = host-python3 +HOST_XCB_PROTO_DEPENDENCIES = host-python3 + +# Force detection of Buildroot host-python3 over system python +XCB_PROTO_CONF_OPTS += ac_cv_path_PYTHON=$(HOST_DIR)/bin/python3 +HOST_XCB_PROTO_CONF_OPTS += ac_cv_path_PYTHON=$(HOST_DIR)/bin/python3 + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/x11r7/xcb-util-cursor/Config.in b/package/x11r7/xcb-util-cursor/Config.in new file mode 100644 index 00000000..aa81615c --- /dev/null +++ b/package/x11r7/xcb-util-cursor/Config.in @@ -0,0 +1,19 @@ +config BR2_PACKAGE_XCB_UTIL_CURSOR + bool "xcb-util-cursor" + depends on BR2_PACKAGE_LIBXCB + select BR2_PACKAGE_XCB_UTIL + select BR2_PACKAGE_XCB_UTIL_IMAGE + select BR2_PACKAGE_XCB_UTIL_RENDERUTIL + help + The XCB util modules provides a number of libraries which + sit on top of libxcb, the core X protocol library, and some + of the extension libraries. These experimental libraries + provide convenience functions and interfaces which make the + raw X protocol more usable. Some of the libraries also + provide client-side code which is not strictly part of the X + protocol but which have traditionally been provided by Xlib. + + XCB util-cursor module provides the following libraries: + - cursor: port of libxcursor + + http://xcb.freedesktop.org/ diff --git a/package/x11r7/xcb-util-cursor/xcb-util-cursor.hash b/package/x11r7/xcb-util-cursor/xcb-util-cursor.hash new file mode 100644 index 00000000..1964624d --- /dev/null +++ b/package/x11r7/xcb-util-cursor/xcb-util-cursor.hash @@ -0,0 +1,4 @@ +# From https://lists.x.org/archives/xorg-announce/2016-May/002691.html +sha1 26562eb6d4151307f7b6a53453d360ecfc0563ac xcb-util-cursor-0.1.3.tar.bz2 +# Locally computed +sha256 0dde91ae1d443105dc9e13cbaed6674c36683b7095836ad9ddfce26be270aad5 COPYING diff --git a/package/x11r7/xcb-util-cursor/xcb-util-cursor.mk b/package/x11r7/xcb-util-cursor/xcb-util-cursor.mk new file mode 100644 index 00000000..07b37c5e --- /dev/null +++ b/package/x11r7/xcb-util-cursor/xcb-util-cursor.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xcb-util-cursor +# +################################################################################ + +XCB_UTIL_CURSOR_VERSION = 0.1.3 +XCB_UTIL_CURSOR_SITE = http://xcb.freedesktop.org/dist +XCB_UTIL_CURSOR_SOURCE = xcb-util-cursor-$(XCB_UTIL_CURSOR_VERSION).tar.bz2 +XCB_UTIL_CURSOR_LICENSE = MIT +XCB_UTIL_CURSOR_LICENSE_FILES = COPYING +XCB_UTIL_CURSOR_INSTALL_STAGING = YES +XCB_UTIL_CURSOR_DEPENDENCIES = xcb-util xcb-util-image xcb-util-renderutil + +$(eval $(autotools-package)) diff --git a/package/x11r7/xcb-util-image/Config.in b/package/x11r7/xcb-util-image/Config.in new file mode 100644 index 00000000..c8d7ef8a --- /dev/null +++ b/package/x11r7/xcb-util-image/Config.in @@ -0,0 +1,17 @@ +config BR2_PACKAGE_XCB_UTIL_IMAGE + bool "xcb-util-image" + select BR2_PACKAGE_XCB_UTIL + help + + The XCB util modules provides a number of libraries which + sit on top of libxcb, the core X protocol library, and some + of the extension libraries. These experimental libraries + provide convenience functions and interfaces which make the + raw X protocol more usable. Some of the libraries also + provide client-side code which is not strictly part of the X + protocol but which have traditionally been provided by Xlib. + + XCB util-image module provides the following library: + - image: Port of Xlib's XImage and XShmImage functions. + + http://xcb.freedesktop.org/ diff --git a/package/x11r7/xcb-util-image/xcb-util-image.hash b/package/x11r7/xcb-util-image/xcb-util-image.hash new file mode 100644 index 00000000..a9a2eaab --- /dev/null +++ b/package/x11r7/xcb-util-image/xcb-util-image.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2014-October/002489.html +sha256 2db96a37d78831d643538dd1b595d7d712e04bdccf8896a5e18ce0f398ea2ffc xcb-util-image-0.4.0.tar.bz2 +# License file, locally calculated +sha256 19672c6153d8c4870abe734fa4dd2197481a311f4788d02ad729be07e116b26b COPYING diff --git a/package/x11r7/xcb-util-image/xcb-util-image.mk b/package/x11r7/xcb-util-image/xcb-util-image.mk new file mode 100644 index 00000000..8ddb0be8 --- /dev/null +++ b/package/x11r7/xcb-util-image/xcb-util-image.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xcb-util-image +# +################################################################################ + +XCB_UTIL_IMAGE_VERSION = 0.4.0 +XCB_UTIL_IMAGE_SITE = http://xcb.freedesktop.org/dist +XCB_UTIL_IMAGE_SOURCE = xcb-util-image-$(XCB_UTIL_IMAGE_VERSION).tar.bz2 +XCB_UTIL_IMAGE_INSTALL_STAGING = YES +XCB_UTIL_IMAGE_LICENSE = MIT +XCB_UTIL_IMAGE_LICENSE_FILES = COPYING +XCB_UTIL_IMAGE_DEPENDENCIES = xcb-util + +$(eval $(autotools-package)) diff --git a/package/x11r7/xcb-util-keysyms/Config.in b/package/x11r7/xcb-util-keysyms/Config.in new file mode 100644 index 00000000..9ca2e0ef --- /dev/null +++ b/package/x11r7/xcb-util-keysyms/Config.in @@ -0,0 +1,17 @@ +config BR2_PACKAGE_XCB_UTIL_KEYSYMS + bool "xcb-util-keysyms" + select BR2_PACKAGE_LIBXCB + help + The XCB util modules provides a number of libraries which + sit on top of libxcb, the core X protocol library, and some + of the extension libraries. These experimental libraries + provide convenience functions and interfaces which make the + raw X protocol more usable. Some of the libraries also + provide client-side code which is not strictly part of the X + protocol but which have traditionally been provided by Xlib. + + XCB util-keysyms module provides the following library: + keysyms: Standard X key constants and conversion to/from + keycodes. + + http://xcb.freedesktop.org/ diff --git a/package/x11r7/xcb-util-keysyms/xcb-util-keysyms.hash b/package/x11r7/xcb-util-keysyms/xcb-util-keysyms.hash new file mode 100644 index 00000000..a25a263d --- /dev/null +++ b/package/x11r7/xcb-util-keysyms/xcb-util-keysyms.hash @@ -0,0 +1,2 @@ +# From http://lists.x.org/archives/xorg-announce/2014-October/002485.html +sha256 0ef8490ff1dede52b7de533158547f8b454b241aa3e4dcca369507f66f216dd9 xcb-util-keysyms-0.4.0.tar.bz2 diff --git a/package/x11r7/xcb-util-keysyms/xcb-util-keysyms.mk b/package/x11r7/xcb-util-keysyms/xcb-util-keysyms.mk new file mode 100644 index 00000000..9036b06f --- /dev/null +++ b/package/x11r7/xcb-util-keysyms/xcb-util-keysyms.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# xcb-util-keysyms +# +################################################################################ + +XCB_UTIL_KEYSYMS_VERSION = 0.4.0 +XCB_UTIL_KEYSYMS_SOURCE = xcb-util-keysyms-$(XCB_UTIL_KEYSYMS_VERSION).tar.bz2 +XCB_UTIL_KEYSYMS_SITE = http://xcb.freedesktop.org/dist + +# unfortunately, no license file +XCB_UTIL_KEYSYMS_LICENSE = MIT + +XCB_UTIL_KEYSYMS_INSTALL_STAGING = YES + +XCB_UTIL_KEYSYMS_DEPENDENCIES = host-pkgconf libxcb + +$(eval $(autotools-package)) diff --git a/package/x11r7/xcb-util-renderutil/Config.in b/package/x11r7/xcb-util-renderutil/Config.in new file mode 100644 index 00000000..088bb18f --- /dev/null +++ b/package/x11r7/xcb-util-renderutil/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_XCB_UTIL_RENDERUTIL + bool "xcb-util-renderutil" + depends on BR2_PACKAGE_LIBXCB # xcb-util + select BR2_PACKAGE_XCB_UTIL + help + The XCB util modules provides a number of libraries which + sit on top of libxcb, the core X protocol library, and some + of the extension libraries. These experimental libraries + provide convenience functions and interfaces which make the + raw X protocol more usable. Some of the libraries also + provide client-side code which is not strictly part of the X + protocol but which have traditionally been provided by Xlib. + + XCB util-renderutil module provides the following library: + - renderutil: Convenience functions for the Render + extension. + + http://xcb.freedesktop.org/ diff --git a/package/x11r7/xcb-util-renderutil/xcb-util-renderutil.hash b/package/x11r7/xcb-util-renderutil/xcb-util-renderutil.hash new file mode 100644 index 00000000..19ed9d46 --- /dev/null +++ b/package/x11r7/xcb-util-renderutil/xcb-util-renderutil.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2014-June/002446.html +sha256 c6e97e48fb1286d6394dddb1c1732f00227c70bd1bedb7d1acabefdd340bea5b xcb-util-renderutil-0.3.9.tar.bz2 +# Locally computed +sha256 271169dd66674e9c396697af0b4822d1c59ccd2342b7740864d667a02963068b COPYING diff --git a/package/x11r7/xcb-util-renderutil/xcb-util-renderutil.mk b/package/x11r7/xcb-util-renderutil/xcb-util-renderutil.mk new file mode 100644 index 00000000..9e6683bf --- /dev/null +++ b/package/x11r7/xcb-util-renderutil/xcb-util-renderutil.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xcb-util-renderutil +# +################################################################################ + +XCB_UTIL_RENDERUTIL_VERSION = 0.3.9 +XCB_UTIL_RENDERUTIL_SITE = http://xcb.freedesktop.org/dist +XCB_UTIL_RENDERUTIL_SOURCE = xcb-util-renderutil-$(XCB_UTIL_RENDERUTIL_VERSION).tar.bz2 +XCB_UTIL_RENDERUTIL_LICENSE = MIT +XCB_UTIL_RENDERUTIL_LICENSE_FILES = COPYING +XCB_UTIL_RENDERUTIL_INSTALL_STAGING = YES +XCB_UTIL_RENDERUTIL_DEPENDENCIES = xcb-util + +$(eval $(autotools-package)) diff --git a/package/x11r7/xcb-util-wm/Config.in b/package/x11r7/xcb-util-wm/Config.in new file mode 100644 index 00000000..26096008 --- /dev/null +++ b/package/x11r7/xcb-util-wm/Config.in @@ -0,0 +1,17 @@ +config BR2_PACKAGE_XCB_UTIL_WM + bool "xcb-util-wm" + select BR2_PACKAGE_LIBXCB + help + The XCB util modules provides a number of libraries which + sit on top of libxcb, the core X protocol library, and some + of the extension libraries. These experimental libraries + provide convenience functions and interfaces which make the + raw X protocol more usable. Some of the libraries also + provide client-side code which is not strictly part of the X + protocol but which have traditionally been provided by Xlib. + + XCB util-wm module provides the following libraries: + - ewmh: Both client and window-manager helpers for EWMH. + - icccm: Both client and window-manager helpers for ICCCM. + + http://xcb.freedesktop.org/ diff --git a/package/x11r7/xcb-util-wm/xcb-util-wm.hash b/package/x11r7/xcb-util-wm/xcb-util-wm.hash new file mode 100644 index 00000000..e31228fc --- /dev/null +++ b/package/x11r7/xcb-util-wm/xcb-util-wm.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2014-February/002401.html +sha256 28bf8179640eaa89276d2b0f1ce4285103d136be6c98262b6151aaee1d3c2a3f xcb-util-wm-0.4.1.tar.bz2 +# License file, locally calculated +sha256 12ab3559977a4b22ae3030b90c64a386e6ec51ab0e4eab1ff530f81a2639400a COPYING diff --git a/package/x11r7/xcb-util-wm/xcb-util-wm.mk b/package/x11r7/xcb-util-wm/xcb-util-wm.mk new file mode 100644 index 00000000..37df3fd9 --- /dev/null +++ b/package/x11r7/xcb-util-wm/xcb-util-wm.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xcb-util-wm +# +################################################################################ + +XCB_UTIL_WM_VERSION = 0.4.1 +XCB_UTIL_WM_SITE = http://xcb.freedesktop.org/dist +XCB_UTIL_WM_SOURCE = xcb-util-wm-$(XCB_UTIL_WM_VERSION).tar.bz2 +XCB_UTIL_WM_INSTALL_STAGING = YES +XCB_UTIL_WM_LICENSE = MIT +XCB_UTIL_WM_LICENSE_FILES = COPYING +XCB_UTIL_WM_DEPENDENCIES = libxcb + +$(eval $(autotools-package)) diff --git a/package/x11r7/xcb-util/Config.in b/package/x11r7/xcb-util/Config.in new file mode 100644 index 00000000..350afd06 --- /dev/null +++ b/package/x11r7/xcb-util/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_XCB_UTIL + bool "xcb-util" + depends on BR2_PACKAGE_LIBXCB + help + Libraries which sit on top of libxcb, the core X protocol + library, and some of the extension libraries. + + http://xcb.freedesktop.org/ diff --git a/package/x11r7/xcb-util/xcb-util.hash b/package/x11r7/xcb-util/xcb-util.hash new file mode 100644 index 00000000..c088a62b --- /dev/null +++ b/package/x11r7/xcb-util/xcb-util.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 46e49469cb3b594af1d33176cd7565def2be3fa8be4371d62271fabb5eae50e9 xcb-util-0.4.0.tar.bz2 +sha256 325b64f0b0284e08bbb7a78ae3e55c1edc2a7cd77f603225ae4b8ffc35423e37 COPYING diff --git a/package/x11r7/xcb-util/xcb-util.mk b/package/x11r7/xcb-util/xcb-util.mk new file mode 100644 index 00000000..bb73530f --- /dev/null +++ b/package/x11r7/xcb-util/xcb-util.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xcb-util +# +################################################################################ + +XCB_UTIL_VERSION = 0.4.0 +XCB_UTIL_SOURCE = xcb-util-$(XCB_UTIL_VERSION).tar.bz2 +XCB_UTIL_SITE = http://xcb.freedesktop.org/dist +XCB_UTIL_LICENSE = MIT +XCB_UTIL_LICENSE_FILES = COPYING +XCB_UTIL_INSTALL_STAGING = YES +XCB_UTIL_DEPENDENCIES = libxcb + +$(eval $(autotools-package)) 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 index 00000000..9cf351f2 --- /dev/null +++ b/package/x11r7/xcursor-transparent-theme/0001-fix-symlink.patch @@ -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 + +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/Config.in b/package/x11r7/xcursor-transparent-theme/Config.in new file mode 100644 index 00000000..8282db89 --- /dev/null +++ b/package/x11r7/xcursor-transparent-theme/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_XCURSOR_TRANSPARENT_THEME + bool "xcursor-transparent-theme" + select BR2_PACKAGE_XLIB_LIBXCURSOR + help + Completely transparent theme for hiding the X11 cursor. + + No upstream site. diff --git a/package/x11r7/xcursor-transparent-theme/index.theme b/package/x11r7/xcursor-transparent-theme/index.theme new file mode 100644 index 00000000..5300850f --- /dev/null +++ b/package/x11r7/xcursor-transparent-theme/index.theme @@ -0,0 +1,2 @@ +[Icon Theme] +Inherits=xcursor-transparent diff --git a/package/x11r7/xcursor-transparent-theme/xcursor-transparent-theme.hash b/package/x11r7/xcursor-transparent-theme/xcursor-transparent-theme.hash new file mode 100644 index 00000000..52d23076 --- /dev/null +++ b/package/x11r7/xcursor-transparent-theme/xcursor-transparent-theme.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 b26adf2d503d01299718390ae39dab4691a67220de09423be0364e9a060bf7e4 xcursor-transparent-theme-0.1.1.tar.gz +sha256 32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670 COPYING diff --git a/package/x11r7/xcursor-transparent-theme/xcursor-transparent-theme.mk b/package/x11r7/xcursor-transparent-theme/xcursor-transparent-theme.mk new file mode 100644 index 00000000..ddcc6ac9 --- /dev/null +++ b/package/x11r7/xcursor-transparent-theme/xcursor-transparent-theme.mk @@ -0,0 +1,20 @@ +################################################################################ +# +# xcursor-transparent-theme +# +################################################################################ + +XCURSOR_TRANSPARENT_THEME_VERSION = 0.1.1 +XCURSOR_TRANSPARENT_THEME_SITE = http://downloads.yoctoproject.org/releases/matchbox/utils +XCURSOR_TRANSPARENT_THEME_DEPENDENCIES = xlib_libXcursor host-xapp_xcursorgen +XCURSOR_TRANSPARENT_THEME_LICENSE = GPL-2.0 +XCURSOR_TRANSPARENT_THEME_LICENSE_FILES = COPYING + +define ICONS_DEFAULT_CONFIG_INSTALL + $(INSTALL) -m 0755 -D package/x11r7/xcursor-transparent-theme/index.theme \ + $(TARGET_DIR)/usr/share/icons/default/index.theme +endef + +XCURSOR_TRANSPARENT_THEME_POST_INSTALL_TARGET_HOOKS += ICONS_DEFAULT_CONFIG_INSTALL + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdata_xbitmaps/Config.in b/package/x11r7/xdata_xbitmaps/Config.in new file mode 100644 index 00000000..2308caec --- /dev/null +++ b/package/x11r7/xdata_xbitmaps/Config.in @@ -0,0 +1,4 @@ +config BR2_PACKAGE_XDATA_XBITMAPS + bool "xbitmaps" + help + No description available diff --git a/package/x11r7/xdata_xbitmaps/xdata_xbitmaps.hash b/package/x11r7/xdata_xbitmaps/xdata_xbitmaps.hash new file mode 100644 index 00000000..05d37288 --- /dev/null +++ b/package/x11r7/xdata_xbitmaps/xdata_xbitmaps.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-March/002881.html +md5 cedeef095918aca86da79a2934e03daf xbitmaps-1.1.2.tar.bz2 +sha1 1cb0e485a66280e9a64b48426140b8a0de9cf169 xbitmaps-1.1.2.tar.bz2 +sha256 b9f0c71563125937776c8f1f25174ae9685314cbd130fb4c2efce811981e07ee xbitmaps-1.1.2.tar.bz2 +sha512 eed5e2fce9fc6c532984e6ed1262e440591e311ca6c61a7fe7a5c877df84bfc2d7aff388fb9c894fc098785b8e5352f0bd7c918252247a040cf123874847450d xbitmaps-1.1.2.tar.bz2 +# Locally computed +sha256 e121ec6605558ee021674d33b1ab9306e16b9ea7d30453df42286556247be17a COPYING diff --git a/package/x11r7/xdata_xbitmaps/xdata_xbitmaps.mk b/package/x11r7/xdata_xbitmaps/xdata_xbitmaps.mk new file mode 100644 index 00000000..e9545aba --- /dev/null +++ b/package/x11r7/xdata_xbitmaps/xdata_xbitmaps.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xdata_xbitmaps +# +################################################################################ + +XDATA_XBITMAPS_VERSION = 1.1.2 +XDATA_XBITMAPS_SOURCE = xbitmaps-$(XDATA_XBITMAPS_VERSION).tar.bz2 +XDATA_XBITMAPS_SITE = http://xorg.freedesktop.org/releases/individual/data +XDATA_XBITMAPS_LICENSE = MIT +XDATA_XBITMAPS_LICENSE_FILES = COPYING + +XDATA_XBITMAPS_INSTALL_STAGING = YES + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdata_xcursor-themes/Config.in b/package/x11r7/xdata_xcursor-themes/Config.in new file mode 100644 index 00000000..78d10209 --- /dev/null +++ b/package/x11r7/xdata_xcursor-themes/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XDATA_XCURSOR_THEMES + bool "xdata_xcursor-themes" + select BR2_PACKAGE_XLIB_LIBXCURSOR + help + No description available diff --git a/package/x11r7/xdata_xcursor-themes/xdata_xcursor-themes.hash b/package/x11r7/xdata_xcursor-themes/xdata_xcursor-themes.hash new file mode 100644 index 00000000..dd8d2ad2 --- /dev/null +++ b/package/x11r7/xdata_xcursor-themes/xdata_xcursor-themes.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-February/002945.html +md5 aea14eabf40528ec4db18f1cfcf5c458 xcursor-themes-1.0.6.tar.bz2 +sha1 b56fd5bf5b1ada0532a85c27db0d296e392168c5 xcursor-themes-1.0.6.tar.bz2 +sha256 ee1ec574741293abcf66ac14ce7e74add7ac6be7deb8b38179ef010d22354999 xcursor-themes-1.0.6.tar.bz2 +sha512 2ad3586a5571a5ddc0001187362b54b839644916164834213af98e58698044aec4392dd6e1e42f1794fda85c8fedf259b09214a9636bd0e71a1629c710f198d3 xcursor-themes-1.0.6.tar.bz2 +# Locally computed +sha256 e437aed89c3440a9fe7e19968a3f2eeb97041ef6c9616837a3fd42d0874fc0e6 COPYING diff --git a/package/x11r7/xdata_xcursor-themes/xdata_xcursor-themes.mk b/package/x11r7/xdata_xcursor-themes/xdata_xcursor-themes.mk new file mode 100644 index 00000000..c3c5f388 --- /dev/null +++ b/package/x11r7/xdata_xcursor-themes/xdata_xcursor-themes.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# xdata_xcursor-themes +# +################################################################################ + +XDATA_XCURSOR_THEMES_VERSION = 1.0.6 +XDATA_XCURSOR_THEMES_SOURCE = xcursor-themes-$(XDATA_XCURSOR_THEMES_VERSION).tar.bz2 +XDATA_XCURSOR_THEMES_SITE = http://xorg.freedesktop.org/releases/individual/data +XDATA_XCURSOR_THEMES_LICENSE = MIT +XDATA_XCURSOR_THEMES_LICENSE_FILES = COPYING + +XDATA_XCURSOR_THEMES_INSTALL_STAGING = YES +XDATA_XCURSOR_THEMES_DEPENDENCIES = xlib_libXcursor host-xapp_xcursorgen + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-input-evdev/0001-build-get-rid-of-sdkdir.patch b/package/x11r7/xdriver_xf86-input-evdev/0001-build-get-rid-of-sdkdir.patch new file mode 100644 index 00000000..b3422954 --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-evdev/0001-build-get-rid-of-sdkdir.patch @@ -0,0 +1,87 @@ +From 1ad5e1593556f767150c2ca75176453bee4771e6 Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Sun, 23 Oct 2016 22:00:10 +0200 +Subject: [PATCH] build: get rid of sdkdir + +Use of sdkdir causes problems during cross-compilation, where the full +path is then appended to the DESTDIR, leading to host paths being +appended in the target: + https://bugs.busybox.net/show_bug.cgi?id=8696 + +Other drivers (e.g. keyboard) got rid of sdkdir. Do the same. + +Signed-off-by: "Yann E. MORIN" +--- + Makefile.am | 4 ---- + configure.ac | 9 --------- + include/Makefile.am | 5 ++++- + xorg-evdev.pc.in | 10 ++++++++-- + 4 files changed, 12 insertions(+), 16 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index 1cc3ea6..1ae042a 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -18,10 +18,6 @@ + # IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +- +-# Provide an sdk location that is writable by the evdev module +-DISTCHECK_CONFIGURE_FLAGS = --with-sdkdir='$${includedir}/xorg' +- + SUBDIRS = src man include + MAINTAINERCLEANFILES = ChangeLog INSTALL + +diff --git a/configure.ac b/configure.ac +index e4887a3..4adfa43 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -66,15 +66,6 @@ AC_ARG_WITH(xorg-conf-dir, + [xorgconfdir="$prefix/share/X11/xorg.conf.d"]) + AC_SUBST(xorgconfdir) + +-# X Server SDK location is required to install evdev header files +-# This location is also relayed in the xorg-evdev.pc file +-sdkdir=`$PKG_CONFIG --variable=sdkdir xorg-server` +- +-# Workaround overriding sdkdir to be able to create a tarball when user has no +-# write permission in sdkdir. See DISTCHECK_CONFIGURE_FLAGS in Makefile.am +-AC_ARG_WITH([sdkdir], [], [sdkdir="$withval"]) +-AC_SUBST([sdkdir]) +- + DRIVER_NAME=evdev + AC_SUBST([DRIVER_NAME]) + +diff --git a/include/Makefile.am b/include/Makefile.am +index 0e3fc1b..afc96ed 100644 +--- a/include/Makefile.am ++++ b/include/Makefile.am +@@ -1 +1,4 @@ +-sdk_HEADERS = evdev-properties.h ++# location formerly known as 'sdkdir': ++xorgincludedir = $(includedir)/xorg ++ ++xorginclude_HEADERS = evdev-properties.h +diff --git a/xorg-evdev.pc.in b/xorg-evdev.pc.in +index 20710a6..fcbf511 100644 +--- a/xorg-evdev.pc.in ++++ b/xorg-evdev.pc.in +@@ -1,6 +1,12 @@ +-sdkdir=@sdkdir@ ++prefix=@prefix@ ++exec_prefix=@exec_prefix@ ++libdir=@libdir@ ++includedir=@includedir@ ++datarootdir=@datarootdir@ ++moduledir=@moduledir@ ++sysconfigdir=@sysconfigdir@ + + Name: xorg-evdev + Description: X.Org evdev input driver. + Version: @PACKAGE_VERSION@ +-Cflags: -I${sdkdir} ++Cflags: -I${includedir}/xorg +-- +2.7.4 + diff --git a/package/x11r7/xdriver_xf86-input-evdev/Config.in b/package/x11r7/xdriver_xf86-input-evdev/Config.in new file mode 100644 index 00000000..fe4e451e --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-evdev/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_XDRIVER_XF86_INPUT_EVDEV + bool "xf86-input-evdev" + depends on BR2_PACKAGE_HAS_UDEV # libudev is configure dependency + select BR2_PACKAGE_LIBEVDEV + select BR2_PACKAGE_MTDEV + select BR2_PACKAGE_XORGPROTO + help + Generic Linux input driver + +comment "xf86-input-evdev requires udev to be enabled" + depends on !BR2_PACKAGE_HAS_UDEV diff --git a/package/x11r7/xdriver_xf86-input-evdev/xdriver_xf86-input-evdev.hash b/package/x11r7/xdriver_xf86-input-evdev/xdriver_xf86-input-evdev.hash new file mode 100644 index 00000000..eb4cb659 --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-evdev/xdriver_xf86-input-evdev.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-May/002898.html +md5 e8bd1edc6751f92e425cae7eba3c61eb xf86-input-evdev-2.10.6.tar.bz2 +sha1 660de292d5a40e2b8f385965c6a4e149c981ba59 xf86-input-evdev-2.10.6.tar.bz2 +sha256 8726073e81861bc7b2321e76272cbdbd33c7e1a121535a9827977265b9033ec0 xf86-input-evdev-2.10.6.tar.bz2 +sha512 560b0a6491d50a46913a5890a35c0367e59f550670993493bd9712d712a9747ddaa6fe5086daabf2fcafa24b0159383787eb273da4a2a60c089bfc0a77ad2ad1 xf86-input-evdev-2.10.6.tar.bz2 +# Locally computed +sha256 f6b9b4732932434cad03b29cb3151d20edcf7d6e5681f40ee3c47f03dbd92dc9 COPYING diff --git a/package/x11r7/xdriver_xf86-input-evdev/xdriver_xf86-input-evdev.mk b/package/x11r7/xdriver_xf86-input-evdev/xdriver_xf86-input-evdev.mk new file mode 100644 index 00000000..28923cb2 --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-evdev/xdriver_xf86-input-evdev.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xdriver_xf86-input-evdev +# +################################################################################ + +XDRIVER_XF86_INPUT_EVDEV_VERSION = 2.10.6 +XDRIVER_XF86_INPUT_EVDEV_SOURCE = xf86-input-evdev-$(XDRIVER_XF86_INPUT_EVDEV_VERSION).tar.bz2 +XDRIVER_XF86_INPUT_EVDEV_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_INPUT_EVDEV_LICENSE = MIT +XDRIVER_XF86_INPUT_EVDEV_LICENSE_FILES = COPYING +XDRIVER_XF86_INPUT_EVDEV_AUTORECONF = YES + +XDRIVER_XF86_INPUT_EVDEV_DEPENDENCIES = \ + host-pkgconf \ + libevdev \ + mtdev \ + xorgproto \ + xserver_xorg-server \ + udev + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-input-joystick/0001-build-get-rid-of-sdkdir.patch b/package/x11r7/xdriver_xf86-input-joystick/0001-build-get-rid-of-sdkdir.patch new file mode 100644 index 00000000..a611f153 --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-joystick/0001-build-get-rid-of-sdkdir.patch @@ -0,0 +1,78 @@ +From 2826691dcd01f470d30dc8eb3bbd24a96cd3a93c Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Sun, 23 Oct 2016 22:29:29 +0200 +Subject: [PATCH] build: get rid of sdkdir + +Use of sdkdir causes problems during cross-compilation, where the full +path is then appended to the DESTDIR, leading to host paths being +appended in the target: + https://bugs.busybox.net/show_bug.cgi?id=8696 + +Other drivers (e.g. keyboard) got rid of sdkdir. Do the same. + +Signed-off-by: "Yann E. MORIN" +--- + Makefile.am | 1 - + configure.ac | 9 --------- + include/Makefile.am | 5 ++++- + xorg-joystick.pc.in | 2 +- + 4 files changed, 5 insertions(+), 12 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index 13946b8..c1567ae 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -18,7 +18,6 @@ + # IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +-DISTCHECK_CONFIGURE_FLAGS = --with-sdkdir=\$${includedir}/xorg + SUBDIRS = src man config include + MAINTAINERCLEANFILES = ChangeLog INSTALL + +diff --git a/configure.ac b/configure.ac +index b5834a5..44b9d27 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -66,15 +66,6 @@ AC_ARG_WITH(xorg-module-dir, + inputdir=${moduledir}/input + AC_SUBST(inputdir) + +-# Define a configure option for an alternate X Server SDK Headers +-# X Server SDK location is required to install joystick header files +-AC_ARG_WITH(sdkdir, +- AS_HELP_STRING([--with-sdkdir=], +- [Xorg X Server sdk headers (default is autodetected)]), +- [sdkdir="$withval"], +- [sdkdir=`$PKG_CONFIG --variable=sdkdir xorg-server`]) +-AC_SUBST(sdkdir) +- + # Define a configure option to enable code debugging + AC_ARG_ENABLE(debug, AS_HELP_STRING([--disable-debug], + [Disable debugging code (default: enabled)]), +diff --git a/include/Makefile.am b/include/Makefile.am +index ed618c2..d656568 100644 +--- a/include/Makefile.am ++++ b/include/Makefile.am +@@ -18,4 +18,7 @@ + # IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +-sdk_HEADERS = joystick-properties.h ++# Location formerly known as 'sdkdir' ++xorgincludedir = $(includedir)/xorg ++ ++xorginclude_HEADERS = joystick-properties.h +diff --git a/xorg-joystick.pc.in b/xorg-joystick.pc.in +index 76bb92f..a5972c7 100644 +--- a/xorg-joystick.pc.in ++++ b/xorg-joystick.pc.in +@@ -4,4 +4,4 @@ includedir=@includedir@ + Name: xorg-joystick + Description: X.Org joystick input driver. + Version: @PACKAGE_VERSION@ +-Cflags: -I${includedir} ++Cflags: -I${includedir}/xorg +-- +2.7.4 + diff --git a/package/x11r7/xdriver_xf86-input-joystick/50-joystick.conf b/package/x11r7/xdriver_xf86-input-joystick/50-joystick.conf new file mode 100644 index 00000000..95a295ab --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-joystick/50-joystick.conf @@ -0,0 +1,6 @@ +Section "InputClass" + Identifier "joystick catchall" + MatchIsJoystick "on" + MatchDevicePath "/dev/input/event*" + Driver "joystick" +EndSection diff --git a/package/x11r7/xdriver_xf86-input-joystick/Config.in b/package/x11r7/xdriver_xf86-input-joystick/Config.in new file mode 100644 index 00000000..892d1a16 --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-joystick/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XDRIVER_XF86_INPUT_JOYSTICK + bool "xf86-input-joystick" + select BR2_PACKAGE_XORGPROTO + help + X.Org driver for joystick input devices diff --git a/package/x11r7/xdriver_xf86-input-joystick/xdriver_xf86-input-joystick.hash b/package/x11r7/xdriver_xf86-input-joystick/xdriver_xf86-input-joystick.hash new file mode 100644 index 00000000..d2384d6c --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-joystick/xdriver_xf86-input-joystick.hash @@ -0,0 +1,4 @@ +# From https://lists.x.org/archives/xorg-announce/2016-November/002742.html +sha256 9e7669ecf0f23b8e5dc39d5397cf28296f692aa4c0e4255f5e02816612c18eab xf86-input-joystick-1.6.3.tar.bz2 +# Locally calculated +sha256 460cf612147407317a3911ce03a215707d8d6d5f3e604a53fefa6e54974ad07e COPYING diff --git a/package/x11r7/xdriver_xf86-input-joystick/xdriver_xf86-input-joystick.mk b/package/x11r7/xdriver_xf86-input-joystick/xdriver_xf86-input-joystick.mk new file mode 100644 index 00000000..0ec4be5e --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-joystick/xdriver_xf86-input-joystick.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xdriver_xf86-input-joystick +# +################################################################################ + +XDRIVER_XF86_INPUT_JOYSTICK_VERSION = 1.6.3 +XDRIVER_XF86_INPUT_JOYSTICK_SOURCE = xf86-input-joystick-$(XDRIVER_XF86_INPUT_JOYSTICK_VERSION).tar.bz2 +XDRIVER_XF86_INPUT_JOYSTICK_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_INPUT_JOYSTICK_LICENSE = MIT +XDRIVER_XF86_INPUT_JOYSTICK_LICENSE_FILES = COPYING +XDRIVER_XF86_INPUT_JOYSTICK_DEPENDENCIES = xserver_xorg-server xorgproto +XDRIVER_XF86_INPUT_JOYSTICK_AUTORECONF = YES + +define XDRIVER_XF86_INPUT_JOYSTICK_CONF + $(INSTALL) -m 0644 -D \ + $(XDRIVER_XF86_INPUT_JOYSTICK_PKGDIR)/50-joystick.conf \ + $(TARGET_DIR)/usr/share/X11/xorg.conf.d/50-joystick.conf +endef +XDRIVER_XF86_INPUT_JOYSTICK_POST_INSTALL_TARGET_HOOKS += XDRIVER_XF86_INPUT_JOYSTICK_CONF + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-input-keyboard/Config.in b/package/x11r7/xdriver_xf86-input-keyboard/Config.in new file mode 100644 index 00000000..ee23033b --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-keyboard/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XDRIVER_XF86_INPUT_KEYBOARD + bool "xf86-input-keyboard" + select BR2_PACKAGE_XORGPROTO + help + Keyboard input driver diff --git a/package/x11r7/xdriver_xf86-input-keyboard/xdriver_xf86-input-keyboard.hash b/package/x11r7/xdriver_xf86-input-keyboard/xdriver_xf86-input-keyboard.hash new file mode 100644 index 00000000..66e2c3ed --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-keyboard/xdriver_xf86-input-keyboard.hash @@ -0,0 +1,4 @@ +# From https://lists.x.org/archives/xorg-announce/2016-November/002739.html +sha256 f7c900f21752683402992b288d5a2826de7a6c0c0abac2aadd7e8a409e170388 xf86-input-keyboard-1.9.0.tar.bz2 +# Locally calculated +sha256 b91b17c53724c79685e3025a38028b7d48c966fdd239e0efe2d98874d3c139a0 COPYING diff --git a/package/x11r7/xdriver_xf86-input-keyboard/xdriver_xf86-input-keyboard.mk b/package/x11r7/xdriver_xf86-input-keyboard/xdriver_xf86-input-keyboard.mk new file mode 100644 index 00000000..fb1e2896 --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-keyboard/xdriver_xf86-input-keyboard.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xdriver_xf86-input-keyboard +# +################################################################################ + +XDRIVER_XF86_INPUT_KEYBOARD_VERSION = 1.9.0 +XDRIVER_XF86_INPUT_KEYBOARD_SOURCE = xf86-input-keyboard-$(XDRIVER_XF86_INPUT_KEYBOARD_VERSION).tar.bz2 +XDRIVER_XF86_INPUT_KEYBOARD_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_INPUT_KEYBOARD_LICENSE = MIT +XDRIVER_XF86_INPUT_KEYBOARD_LICENSE_FILES = COPYING +XDRIVER_XF86_INPUT_KEYBOARD_DEPENDENCIES = xserver_xorg-server xorgproto +XDRIVER_XF86_INPUT_KEYBOARD_CONF_OPTS = --disable-selective-werror + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-input-libinput/0001-build-get-rid-of-sdkdir.patch b/package/x11r7/xdriver_xf86-input-libinput/0001-build-get-rid-of-sdkdir.patch new file mode 100644 index 00000000..2f9784c2 --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-libinput/0001-build-get-rid-of-sdkdir.patch @@ -0,0 +1,78 @@ +From 1b2cf6e6c2640e08166af36eee775542a45325af Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Sun, 23 Oct 2016 22:36:40 +0200 +Subject: [PATCH] build: get rid of sdkdir + +Use of sdkdir causes problems during cross-compilation, where the full +path is then appended to the DESTDIR, leading to host paths being +appended in the target: + https://bugs.busybox.net/show_bug.cgi?id=8696 + +Other drivers (e.g. keyboard) got rid of sdkdir. Do the same. + +Signed-off-by: "Yann E. MORIN" +--- + Makefile.am | 2 -- + configure.ac | 8 -------- + include/Makefile.am | 4 +++- + xorg-libinput.pc.in | 5 +++-- + 4 files changed, 6 insertions(+), 13 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index a447d61..7aa5523 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -19,8 +19,6 @@ + # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +-DISTCHECK_CONFIGURE_FLAGS = --with-sdkdir='$${includedir}/xorg' +- + SUBDIRS = src include man test + MAINTAINERCLEANFILES = ChangeLog INSTALL + +diff --git a/configure.ac b/configure.ac +index 9894817..fe198cb 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -63,14 +63,6 @@ AC_ARG_WITH(xorg-conf-dir, + [xorgconfdir='${prefix}/share/X11/xorg.conf.d']) + AC_SUBST(xorgconfdir) + +-# X Server SDK location is required to install header files +-sdkdir=`$PKG_CONFIG --variable=sdkdir xorg-server` +- +-# Workaround overriding sdkdir to be able to create a tarball when user has no +-# write permission in sdkdir. See DISTCHECK_CONFIGURE_FLAGS in Makefile.am +-AC_ARG_WITH([sdkdir], [], [sdkdir="$withval"]) +-AC_SUBST([sdkdir]) +- + DRIVER_NAME=libinput + AC_SUBST([DRIVER_NAME]) + +diff --git a/include/Makefile.am b/include/Makefile.am +index 0d52b9b..271ffac 100644 +--- a/include/Makefile.am ++++ b/include/Makefile.am +@@ -1 +1,3 @@ +-sdk_HEADERS = libinput-properties.h ++# Location formerly known as 'sdkdir' ++xorgincludedir = $(includedir)/xorg ++xorginclude_HEADERS = libinput-properties.h +diff --git a/xorg-libinput.pc.in b/xorg-libinput.pc.in +index ff98189..9c0f506 100644 +--- a/xorg-libinput.pc.in ++++ b/xorg-libinput.pc.in +@@ -1,6 +1,7 @@ +-sdkdir=@sdkdir@ ++prefix=@prefix@ ++includedir=@includedir@ + + Name: xorg-libinput + Description: X.Org libinput input driver. + Version: @PACKAGE_VERSION@ +-Cflags: -I${sdkdir} ++Cflags: -I${includedir}/xorg +-- +2.7.4 + diff --git a/package/x11r7/xdriver_xf86-input-libinput/Config.in b/package/x11r7/xdriver_xf86-input-libinput/Config.in new file mode 100644 index 00000000..f66196a5 --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-libinput/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_XDRIVER_XF86_INPUT_LIBINPUT + bool "xf86-input-libinput" + depends on BR2_PACKAGE_HAS_UDEV # libinput + select BR2_PACKAGE_LIBINPUT + select BR2_PACKAGE_XORGPROTO + help + This is an X driver based on libinput. It is a thin wrapper + around libinput, so while it does provide all features that + libinput supports it does little beyond. + +comment "xf86-input-libinput needs udev /dev management" + depends on !BR2_PACKAGE_HAS_UDEV diff --git a/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.hash b/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.hash new file mode 100644 index 00000000..51f0ce78 --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2020-May/003045.html +md5 11dcfa2cc39f790731a9545fcdeea717 xf86-input-libinput-0.30.0.tar.bz2 +sha1 b705d0280b4fa7ccf44b9ff3869f5d7846e26414 xf86-input-libinput-0.30.0.tar.bz2 +sha256 f9c7f9fd41ae14061e0e9c3bd45fa170e5e21027a2bc5810034e1e748db996c0 xf86-input-libinput-0.30.0.tar.bz2 +sha512 823f80f7d53866f2f06c1fb7b2d64111bf807329acaaeda4a09413cdb5f3e3235c1dd4f99183aae75adf5a01503e40e35b4449b31f977afd842b4723b062c380 xf86-input-libinput-0.30.0.tar.bz2 +# Locally computed +sha256 b808a8a077995380c6064bec41616f98546b0b2e79bb7f3d0247d290e275b396 COPYING diff --git a/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.mk b/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.mk new file mode 100644 index 00000000..64d972cf --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xdriver_xf86-input-libinput +# +################################################################################ + +XDRIVER_XF86_INPUT_LIBINPUT_VERSION = 0.30.0 +XDRIVER_XF86_INPUT_LIBINPUT_SOURCE = xf86-input-libinput-$(XDRIVER_XF86_INPUT_LIBINPUT_VERSION).tar.bz2 +XDRIVER_XF86_INPUT_LIBINPUT_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_INPUT_LIBINPUT_LICENSE = MIT +XDRIVER_XF86_INPUT_LIBINPUT_LICENSE_FILES = COPYING +XDRIVER_XF86_INPUT_LIBINPUT_DEPENDENCIES = libinput xserver_xorg-server xorgproto +XDRIVER_XF86_INPUT_LIBINPUT_AUTORECONF = YES + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-input-mouse/0001-build-get-rid-of-sdkdir.patch b/package/x11r7/xdriver_xf86-input-mouse/0001-build-get-rid-of-sdkdir.patch new file mode 100644 index 00000000..d5f97f98 --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-mouse/0001-build-get-rid-of-sdkdir.patch @@ -0,0 +1,81 @@ +From aef3d9bca4d77db833f71d50b1c84b16c69d7deb Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Sun, 23 Oct 2016 22:53:21 +0200 +Subject: [PATCH] build: get rid of sdkdir + +Use of sdkdir causes problems during cross-compilation, where the full +path is then appended to the DESTDIR, leading to host paths being +appended in the target: + https://bugs.busybox.net/show_bug.cgi?id=8696 + +Other drivers (e.g. keyboard) got rid of sdkdir. Do the same. + +Signed-off-by: "Yann E. MORIN" +--- + Makefile.am | 3 --- + configure.ac | 10 ---------- + include/Makefile.am | 4 +++- + xorg-mouse.pc.in | 3 +-- + 4 files changed, 4 insertions(+), 16 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index 7142485..efe66cb 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -34,9 +34,6 @@ ChangeLog: + + dist-hook: ChangeLog INSTALL + +-# Provide an sdk location that is writable by this module +-DISTCHECK_CONFIGURE_FLAGS = --with-sdkdir='$${includedir}/xorg' +- + if LINT + # Check source code with tools like lint & sparse + lint: +diff --git a/configure.ac b/configure.ac +index 15d9047..515681d 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -60,16 +60,6 @@ AC_ARG_WITH(xorg-module-dir, + inputdir=${moduledir}/input + AC_SUBST(inputdir) + +-# X Server SDK location is required to install xf86-mouse-properties.h +-# This location is also relayed in the xorg-mouse.pc file +-sdkdir=`$PKG_CONFIG --variable=sdkdir xorg-server` +- +-# Workaround overriding sdkdir to be able to create a tarball when user has no +-# write permission in sdkdir. See DISTCHECK_CONFIGURE_FLAGS in Makefile.am +-AC_ARG_WITH([sdkdir], [], [sdkdir="$withval"]) +-AC_SUBST([sdkdir]) +- +- + # Work out which OS mouse driver we need to build + case $host_os in + linux*) +diff --git a/include/Makefile.am b/include/Makefile.am +index 27ce0fb..2b85e4e 100644 +--- a/include/Makefile.am ++++ b/include/Makefile.am +@@ -1 +1,3 @@ +-sdk_HEADERS = xf86-mouse-properties.h ++# Location formerly known as 'sdkdir' ++xorgincludedir = $(includedir)/xorg ++xorginclude_HEADERS = xf86-mouse-properties.h +diff --git a/xorg-mouse.pc.in b/xorg-mouse.pc.in +index 57df596..8355e61 100644 +--- a/xorg-mouse.pc.in ++++ b/xorg-mouse.pc.in +@@ -1,6 +1,7 @@ prefix=@prefix@ +-sdkdir=@sdkdir@ ++prefix=@prefix@ ++includedir=@includedir@ + + Name: xorg-mouse + Description: X.Org mouse input driver for non-evdev OS'es + Version: @PACKAGE_VERSION@ +-Cflags: -I${sdkdir} ++Cflags: -I${includedir}/xorg +-- +2.7.4 + diff --git a/package/x11r7/xdriver_xf86-input-mouse/Config.in b/package/x11r7/xdriver_xf86-input-mouse/Config.in new file mode 100644 index 00000000..efa181e5 --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-mouse/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XDRIVER_XF86_INPUT_MOUSE + bool "xf86-input-mouse" + select BR2_PACKAGE_XORGPROTO + help + X.Org driver for mouse input devices diff --git a/package/x11r7/xdriver_xf86-input-mouse/xdriver_xf86-input-mouse.hash b/package/x11r7/xdriver_xf86-input-mouse/xdriver_xf86-input-mouse.hash new file mode 100644 index 00000000..551ff9d8 --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-mouse/xdriver_xf86-input-mouse.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-June/002903.html +md5 a2104693bbcfe1413397f7905eecd3dc xf86-input-mouse-1.9.3.tar.bz2 +sha1 b3982998808ba43117fc066c4ecc94ce67c5818e xf86-input-mouse-1.9.3.tar.bz2 +sha256 93ecb350604d05be98b7d4e5db3b8155a44890069a7d8d6b800c0bea79c85cc5 xf86-input-mouse-1.9.3.tar.bz2 +sha512 d99f5b4b1ef1aa4cbf1a92549e412f54f121bc804e4d6643248ad7ea18081b38b958bd289dc8476ebc0f6ef5f7424c2f2a8abcfaa30cae5378829549af6b148f xf86-input-mouse-1.9.3.tar.bz2 +# Locally computed +sha256 472ff645ead9bf3ffb48d42c596376ffc595897e0c0993a071a7ada0da1f4f10 COPYING diff --git a/package/x11r7/xdriver_xf86-input-mouse/xdriver_xf86-input-mouse.mk b/package/x11r7/xdriver_xf86-input-mouse/xdriver_xf86-input-mouse.mk new file mode 100644 index 00000000..3886fa7a --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-mouse/xdriver_xf86-input-mouse.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xdriver_xf86-input-mouse +# +################################################################################ + +XDRIVER_XF86_INPUT_MOUSE_VERSION = 1.9.3 +XDRIVER_XF86_INPUT_MOUSE_SOURCE = xf86-input-mouse-$(XDRIVER_XF86_INPUT_MOUSE_VERSION).tar.bz2 +XDRIVER_XF86_INPUT_MOUSE_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_INPUT_MOUSE_LICENSE = MIT +XDRIVER_XF86_INPUT_MOUSE_LICENSE_FILES = COPYING +XDRIVER_XF86_INPUT_MOUSE_DEPENDENCIES = xserver_xorg-server xorgproto +XDRIVER_XF86_INPUT_MOUSE_AUTORECONF = YES + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-input-synaptics/0001-build-get-rid-of-sdkdir.patch b/package/x11r7/xdriver_xf86-input-synaptics/0001-build-get-rid-of-sdkdir.patch new file mode 100644 index 00000000..62950b06 --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-synaptics/0001-build-get-rid-of-sdkdir.patch @@ -0,0 +1,88 @@ +From 231a35e99fee8aba23f18cce21dfb5fa8bef0c36 Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Sun, 23 Oct 2016 23:07:33 +0200 +Subject: [PATCH] build: get rid of sdkdir + +Use of sdkdir causes problems during cross-compilation, where the full +path is then appended to the DESTDIR, leading to host paths being +appended in the target: + https://bugs.busybox.net/show_bug.cgi?id=8696 + +Other drivers (e.g. keyboard) got rid of sdkdir. Do the same. + +Signed-off-by: "Yann E. MORIN" +--- + Makefile.am | 1 - + configure.ac | 9 --------- + include/Makefile.am | 4 +++- + xorg-synaptics.pc.in | 5 +++-- + 4 files changed, 6 insertions(+), 13 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index 678124c..c48c5c8 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -21,7 +21,6 @@ + # During distcheck, system locations (as provided by pkg-config) may + # not be writable; provide instead relative locations. + DISTCHECK_CONFIGURE_FLAGS = \ +- --with-sdkdir='$${includedir}/xorg' \ + --with-xorg-conf-dir='$${datadir}/X11/xorg.conf.d' + + SUBDIRS = include src man tools conf +diff --git a/configure.ac b/configure.ac +index 970dd5f..574353b 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -55,11 +55,6 @@ XORG_DRIVER_CHECK_EXT(RANDR, randrproto) + # Obtain compiler/linker options for the Synaptics driver dependencies + PKG_CHECK_MODULES(XORG, [inputproto >= 2.1.99.3] [xorg-server >= 1.12] xproto inputproto $REQUIRED_MODULES) + +-# X Server SDK location is required to install Synaptics header files +-# This location is also relayed in the xorg-synaptics.pc file +-sdkdir=`$PKG_CONFIG --variable=sdkdir xorg-server` +-AC_SUBST([sdkdir]) +- + # ----------------------------------------------------------------------------- + # Configuration options + # ----------------------------------------------------------------------------- +@@ -154,10 +149,6 @@ if test "x$have_libxtst" = "xyes" ; then + fi + # ----------------------------------------------------------------------------- + +-# Workaround overriding sdkdir to be able to create a tarball when user has no +-# write permission in sdkdir. See DISTCHECK_CONFIGURE_FLAGS in Makefile.am +-AC_ARG_WITH([sdkdir], [], [sdkdir="$withval"]) +- + AC_CONFIG_FILES([Makefile + src/Makefile + man/Makefile +diff --git a/include/Makefile.am b/include/Makefile.am +index 8234020..565868b 100644 +--- a/include/Makefile.am ++++ b/include/Makefile.am +@@ -18,4 +18,6 @@ + # IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +-sdk_HEADERS = synaptics-properties.h ++# Location formerly known as 'sdkdir' ++xorgincludedir = $(includedir)/xorg ++xorginclude_HEADERS = synaptics-properties.h +diff --git a/xorg-synaptics.pc.in b/xorg-synaptics.pc.in +index 159cfbf..68e0fbe 100644 +--- a/xorg-synaptics.pc.in ++++ b/xorg-synaptics.pc.in +@@ -1,6 +1,7 @@ +-sdkdir=@sdkdir@ ++prefix=@prefix@ ++includedir=@includedir@ + + Name: synaptics + Description: X.Org synaptics input driver. + Version: @PACKAGE_VERSION@ +-Cflags: -I${sdkdir} ++Cflags: -I${includedir}/xorg +-- +2.7.4 + diff --git a/package/x11r7/xdriver_xf86-input-synaptics/Config.in b/package/x11r7/xdriver_xf86-input-synaptics/Config.in new file mode 100644 index 00000000..b974265b --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-synaptics/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_XDRIVER_XF86_INPUT_SYNAPTICS + bool "xf86-input-synaptics" + select BR2_PACKAGE_LIBEVDEV + select BR2_PACKAGE_MTDEV + select BR2_PACKAGE_XORGPROTO + help + X.Org driver for synaptics input devices diff --git a/package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.hash b/package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.hash new file mode 100644 index 00000000..b482a1db --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-May/002899.html +md5 cfb79d3c975151f9bbf30b727c260cb9 xf86-input-synaptics-1.9.1.tar.bz2 +sha1 07eeef716820105cae959bbc3aa103e2fcfd0084 xf86-input-synaptics-1.9.1.tar.bz2 +sha256 7af83526eff1c76e8b9e1553b34245c203d029028d8044dd9dcf71eef1001576 xf86-input-synaptics-1.9.1.tar.bz2 +sha512 978eddd456aa7361047bc3d72e5127b24b13de29b0dddb6a0acc9f9da93931baa2b22fb5d1e6be164f629a11e5d97d753b835426435396b45b1af5eb8d546c3f xf86-input-synaptics-1.9.1.tar.bz2 +# Locally computed +sha256 e14dc9a27158cadaeea8bcc2c70069762f05adb29030a444336bfde268751dc7 COPYING diff --git a/package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.mk b/package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.mk new file mode 100644 index 00000000..c8ef98f8 --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xdriver_xf86-input-synaptics +# +################################################################################ + +XDRIVER_XF86_INPUT_SYNAPTICS_VERSION = 1.9.1 +XDRIVER_XF86_INPUT_SYNAPTICS_SOURCE = xf86-input-synaptics-$(XDRIVER_XF86_INPUT_SYNAPTICS_VERSION).tar.bz2 +XDRIVER_XF86_INPUT_SYNAPTICS_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_INPUT_SYNAPTICS_LICENSE = MIT +XDRIVER_XF86_INPUT_SYNAPTICS_LICENSE_FILES = COPYING +XDRIVER_XF86_INPUT_SYNAPTICS_DEPENDENCIES = libevdev xserver_xorg-server xorgproto mtdev +XDRIVER_XF86_INPUT_SYNAPTICS_AUTORECONF = YES + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-input-tslib/Config.in b/package/x11r7/xdriver_xf86-input-tslib/Config.in new file mode 100644 index 00000000..9205cba6 --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-tslib/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_XDRIVER_XF86_INPUT_TSLIB + bool "xf86-input-tslib" + select BR2_PACKAGE_XORGPROTO + select BR2_PACKAGE_TSLIB + help + Touch screen library input driver + + https://github.com/merge/xf86-input-tslib diff --git a/package/x11r7/xdriver_xf86-input-tslib/xdriver_xf86-input-tslib.hash b/package/x11r7/xdriver_xf86-input-tslib/xdriver_xf86-input-tslib.hash new file mode 100644 index 00000000..d2c1d8ed --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-tslib/xdriver_xf86-input-tslib.hash @@ -0,0 +1,5 @@ +# https://github.com/merge/xf86-input-tslib/releases/download/1.1.1/xf86-input-tslib-1.1.1.tar.bz2.sha256 +sha256 8b6a9f2ad73598a3619e66e252bd54b1792c4deba0213101fa4d272b5e9217ec xf86-input-tslib-1.1.1.tar.bz2 + +# Locally computed +sha256 edfc46c9b91499699fc54d39e986756a2dcce8a919c6066be177123441532856 COPYING diff --git a/package/x11r7/xdriver_xf86-input-tslib/xdriver_xf86-input-tslib.mk b/package/x11r7/xdriver_xf86-input-tslib/xdriver_xf86-input-tslib.mk new file mode 100644 index 00000000..f8944f35 --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-tslib/xdriver_xf86-input-tslib.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# xdriver_xf86-input-tslib +# +################################################################################ + +XDRIVER_XF86_INPUT_TSLIB_VERSION = 1.1.1 +XDRIVER_XF86_INPUT_TSLIB_SOURCE = xf86-input-tslib-$(XDRIVER_XF86_INPUT_TSLIB_VERSION).tar.bz2 +XDRIVER_XF86_INPUT_TSLIB_SITE = https://github.com/merge/xf86-input-tslib/releases/download/$(XDRIVER_XF86_INPUT_TSLIB_VERSION) +XDRIVER_XF86_INPUT_TSLIB_LICENSE = MIT +XDRIVER_XF86_INPUT_TSLIB_LICENSE_FILES = COPYING +XDRIVER_XF86_INPUT_TSLIB_DEPENDENCIES = \ + xserver_xorg-server \ + xorgproto \ + tslib + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-input-vmmouse/Config.in b/package/x11r7/xdriver_xf86-input-vmmouse/Config.in new file mode 100644 index 00000000..d77def02 --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-vmmouse/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XDRIVER_XF86_INPUT_VMMOUSE + bool "xf86-input-vmmouse" + depends on BR2_i386 || BR2_x86_64 + select BR2_PACKAGE_XORGPROTO + help + VMWare mouse input driver diff --git a/package/x11r7/xdriver_xf86-input-vmmouse/xdriver_xf86-input-vmmouse.hash b/package/x11r7/xdriver_xf86-input-vmmouse/xdriver_xf86-input-vmmouse.hash new file mode 100644 index 00000000..fd6221fa --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-vmmouse/xdriver_xf86-input-vmmouse.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2015-June/002616.html +sha256 0af558957ac1be1b2863712c2475de8f4d7f14921fd01ded2e2fde4921b19319 xf86-input-vmmouse-13.1.0.tar.bz2 +# Locally calculated +sha256 804737a1582428fdde4e2bfd1e9f3ca07971fc3bdce20ba2d06cc2bba6c84a9e COPYING diff --git a/package/x11r7/xdriver_xf86-input-vmmouse/xdriver_xf86-input-vmmouse.mk b/package/x11r7/xdriver_xf86-input-vmmouse/xdriver_xf86-input-vmmouse.mk new file mode 100644 index 00000000..b8c77de5 --- /dev/null +++ b/package/x11r7/xdriver_xf86-input-vmmouse/xdriver_xf86-input-vmmouse.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# xdriver_xf86-input-vmmouse +# +################################################################################ + +XDRIVER_XF86_INPUT_VMMOUSE_VERSION = 13.1.0 +XDRIVER_XF86_INPUT_VMMOUSE_SOURCE = xf86-input-vmmouse-$(XDRIVER_XF86_INPUT_VMMOUSE_VERSION).tar.bz2 +XDRIVER_XF86_INPUT_VMMOUSE_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_INPUT_VMMOUSE_LICENSE = MIT +XDRIVER_XF86_INPUT_VMMOUSE_LICENSE_FILES = COPYING +XDRIVER_XF86_INPUT_VMMOUSE_DEPENDENCIES = xserver_xorg-server xorgproto + +ifeq ($(BR2_PACKAGE_HAS_UDEV),y) +XDRIVER_XF86_INPUT_VMMOUSE_CONF_OPTS += --with-libudev +XDRIVER_XF86_INPUT_VMMOUSE_DEPENDENCIES += udev +else +XDRIVER_XF86_INPUT_VMMOUSE_CONF_OPTS += --without-libudev +endif + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-amdgpu/Config.in b/package/x11r7/xdriver_xf86-video-amdgpu/Config.in new file mode 100644 index 00000000..c42255f5 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-amdgpu/Config.in @@ -0,0 +1,17 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_AMDGPU + bool "xf86-video-amdgpu" + depends on BR2_USE_MMU # libdrm + depends on BR2_PACKAGE_MESA3D_DRI_DRIVER + depends on BR2_PACKAGE_MESA3D_OPENGL_EGL # gbm + select BR2_PACKAGE_LIBDRM + select BR2_PACKAGE_LIBDRM_AMDGPU + select BR2_PACKAGE_LIBEPOXY + select BR2_PACKAGE_XLIB_LIBXCOMPOSITE + select BR2_PACKAGE_XORGPROTO + help + AMD GPU video driver + +comment "xf86-video-amdgpu needs egl/opengl support from mesa3d" + depends on BR2_USE_MMU + depends on !BR2_PACKAGE_MESA3D_OPENGL_EGL || \ + !BR2_PACKAGE_MESA3D_DRI_DRIVER diff --git a/package/x11r7/xdriver_xf86-video-amdgpu/xdriver_xf86-video-amdgpu.hash b/package/x11r7/xdriver_xf86-video-amdgpu/xdriver_xf86-video-amdgpu.hash new file mode 100644 index 00000000..4bbfb0de --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-amdgpu/xdriver_xf86-video-amdgpu.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-October/003026.html +md5 55ad19b858e186a2cf4e91ed832c05e7 xf86-video-amdgpu-19.1.0.tar.bz2 +sha1 044a97ea2f36dd3d2d4844bb503dd4e2b2854d56 xf86-video-amdgpu-19.1.0.tar.bz2 +sha256 4f0ea4e0ae61995ac2b7c72433d31deab63b60c78763020aaa1b28696124fe5d xf86-video-amdgpu-19.1.0.tar.bz2 +sha512 ccdaa2378492da1a2f3d18fedacd1318c4708da534a8a959276a82730d5420619d83ad1ec8d7835c55655fe56123cd9bffb44e6223c5a97033c01f598af4a173 xf86-video-amdgpu-19.1.0.tar.bz2 +# Locally computed +sha256 58847c8e97190c401afa84b3f0b8b147379c876a184e99af2cb51bfd40ac8936 COPYING diff --git a/package/x11r7/xdriver_xf86-video-amdgpu/xdriver_xf86-video-amdgpu.mk b/package/x11r7/xdriver_xf86-video-amdgpu/xdriver_xf86-video-amdgpu.mk new file mode 100644 index 00000000..e7196956 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-amdgpu/xdriver_xf86-video-amdgpu.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# xdriver_xf86-video-amdgpu +# +################################################################################ + +XDRIVER_XF86_VIDEO_AMDGPU_VERSION = 19.1.0 +XDRIVER_XF86_VIDEO_AMDGPU_SOURCE = xf86-video-amdgpu-$(XDRIVER_XF86_VIDEO_AMDGPU_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_AMDGPU_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_AMDGPU_LICENSE = MIT +XDRIVER_XF86_VIDEO_AMDGPU_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_AMDGPU_DEPENDENCIES = \ + libdrm \ + xlib_libXcomposite \ + xorgproto \ + xserver_xorg-server + +# xdriver_xf86-video-amdgpu requires O_CLOEXEC +XDRIVER_XF86_VIDEO_AMDGPU_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -D_GNU_SOURCE" + +$(eval $(autotools-package)) 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 index 00000000..fa3e6859 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-ark/0001-mibstore.patch @@ -0,0 +1,40 @@ +From 3a3eb72baec46f48e6cf15a834271c3d3386deac Mon Sep 17 00:00:00 2001 +From: Gaetan Nadon +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 +Signed-off-by: Gaetan Nadon +--- +Fetch from: +http://cgit.freedesktop.org/xorg/driver/xf86-video-ark/commit/?id=3a3eb72baec46f48e6cf15a834271c3d3386deac + +Signed-off-by: Bernd Kuhls + +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/Config.in b/package/x11r7/xdriver_xf86-video-ark/Config.in new file mode 100644 index 00000000..e1219aff --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-ark/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_ARK + bool "xf86-video-ark" + select BR2_PACKAGE_XORGPROTO + help + X.Org driver for ark cards diff --git a/package/x11r7/xdriver_xf86-video-ark/xdriver_xf86-video-ark.hash b/package/x11r7/xdriver_xf86-video-ark/xdriver_xf86-video-ark.hash new file mode 100644 index 00000000..2e2e9536 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-ark/xdriver_xf86-video-ark.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2012-July/002007.html +sha256 c690e046f34a393aac1c8d9616b4790e93cda60a460b00b9597d322175dbe51e xf86-video-ark-0.7.5.tar.bz2 +# Locally calculated +sha256 8ba9850fb0ecd9033bb1d25c1be85625cb53ca56ce76b71f78f4a034f7310bda COPYING diff --git a/package/x11r7/xdriver_xf86-video-ark/xdriver_xf86-video-ark.mk b/package/x11r7/xdriver_xf86-video-ark/xdriver_xf86-video-ark.mk new file mode 100644 index 00000000..3f2a6360 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-ark/xdriver_xf86-video-ark.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xdriver_xf86-video-ark +# +################################################################################ + +XDRIVER_XF86_VIDEO_ARK_VERSION = 0.7.5 +XDRIVER_XF86_VIDEO_ARK_SOURCE = xf86-video-ark-$(XDRIVER_XF86_VIDEO_ARK_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_ARK_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_ARK_LICENSE = MIT +XDRIVER_XF86_VIDEO_ARK_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_ARK_DEPENDENCIES = xserver_xorg-server xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-ast/Config.in b/package/x11r7/xdriver_xf86-video-ast/Config.in new file mode 100644 index 00000000..2ebe8fc2 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-ast/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_AST + bool "xf86-video-ast" + select BR2_PACKAGE_XORGPROTO + help + No description available diff --git a/package/x11r7/xdriver_xf86-video-ast/xdriver_xf86-video-ast.hash b/package/x11r7/xdriver_xf86-video-ast/xdriver_xf86-video-ast.hash new file mode 100644 index 00000000..2988db98 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-ast/xdriver_xf86-video-ast.hash @@ -0,0 +1,4 @@ +# Locally computed +sha256 1edbbc55d47d3fd71dec99b15c2483e22738c642623a0fb86ef4a81a9067a2de xf86-video-ast-1.1.5.tar.bz2 +# Locally calculated +sha256 1cdd3d57e2fdcbd21b8a7b788ffbe6f809216a9bdd36b2225cff6c4b4404a170 COPYING diff --git a/package/x11r7/xdriver_xf86-video-ast/xdriver_xf86-video-ast.mk b/package/x11r7/xdriver_xf86-video-ast/xdriver_xf86-video-ast.mk new file mode 100644 index 00000000..b39bbf9a --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-ast/xdriver_xf86-video-ast.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xdriver_xf86-video-ast +# +################################################################################ + +XDRIVER_XF86_VIDEO_AST_VERSION = 1.1.5 +XDRIVER_XF86_VIDEO_AST_SOURCE = xf86-video-ast-$(XDRIVER_XF86_VIDEO_AST_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_AST_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_AST_LICENSE = MIT +XDRIVER_XF86_VIDEO_AST_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_AST_DEPENDENCIES = xorgproto xserver_xorg-server + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-ati/0001-Fix-link-failure-with-gcc-10.patch b/package/x11r7/xdriver_xf86-video-ati/0001-Fix-link-failure-with-gcc-10.patch new file mode 100644 index 00000000..b7a66c5c --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-ati/0001-Fix-link-failure-with-gcc-10.patch @@ -0,0 +1,35 @@ +From f223035f4ffcff2a9296d1e907a5193f8e8845a3 Mon Sep 17 00:00:00 2001 +From: Adam Jackson +Date: Tue, 4 Feb 2020 16:38:06 -0500 +Subject: [PATCH xf86-video-ati] Fix link failure with gcc 10 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Without the 'extern' this looks like a definition not just a +declaration, in every file that includes the header. gcc 10 is stricter +about this kind of multiple definition. + +Reviewed-by: Michel Dänzer +[backport from upstream: f223035f4ffcff2a9296d1e907a5193f8e8845a3] +Signed-off-by: Romain Naour +--- + src/drmmode_display.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/drmmode_display.h b/src/drmmode_display.h +index 96eaef0a..8cd8a0a6 100644 +--- a/src/drmmode_display.h ++++ b/src/drmmode_display.h +@@ -262,7 +262,7 @@ Bool drmmode_wait_vblank(xf86CrtcPtr crtc, drmVBlankSeqType type, + uint64_t *ust, uint32_t *result_seq); + + +-miPointerSpriteFuncRec drmmode_sprite_funcs; ++extern miPointerSpriteFuncRec drmmode_sprite_funcs; + + + #endif +-- +2.25.4 + diff --git a/package/x11r7/xdriver_xf86-video-ati/Config.in b/package/x11r7/xdriver_xf86-video-ati/Config.in new file mode 100644 index 00000000..1246014d --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-ati/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_ATI + bool "xf86-video-ati" + depends on BR2_i386 || BR2_x86_64 # DRI radeon r100 driver + depends on BR2_PACKAGE_MESA3D + select BR2_PACKAGE_LIBDRM + select BR2_PACKAGE_LIBDRM_RADEON + select BR2_PACKAGE_MESA3D_DRI_DRIVER_RADEON + select BR2_PACKAGE_XLIB_LIBXCOMPOSITE + select BR2_PACKAGE_XORGPROTO + help + ATI video driver + +comment "xf86-video-ati needs mesa3d" + depends on BR2_i386 || BR2_x86_64 + depends on !BR2_PACKAGE_MESA3D diff --git a/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.hash b/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.hash new file mode 100644 index 00000000..c6f8c53e --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-October/003027.html +md5 6e49d3c2839582af415ceded76e626e6 xf86-video-ati-19.1.0.tar.bz2 +sha1 aea1d11c05531b03f2eb67c6785cddf6d7f30e5f xf86-video-ati-19.1.0.tar.bz2 +sha256 659f5a1629eea5f5334d9b39b18e6807a63aa1efa33c1236d9cc53acbb223c49 xf86-video-ati-19.1.0.tar.bz2 +sha512 73a81f6c492daf2e89067fb52b3033dc0fe6841f109627ddca1aee54a45a738c8c134443753a2a2aaa2c131e1d560057ebc76351ff2304c16407df3ff568fcd6 xf86-video-ati-19.1.0.tar.bz2 +# Locally computed +sha256 58847c8e97190c401afa84b3f0b8b147379c876a184e99af2cb51bfd40ac8936 COPYING diff --git a/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.mk b/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.mk new file mode 100644 index 00000000..f7aeba8b --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.mk @@ -0,0 +1,27 @@ +################################################################################ +# +# xdriver_xf86-video-ati +# +################################################################################ + +XDRIVER_XF86_VIDEO_ATI_VERSION = 19.1.0 +XDRIVER_XF86_VIDEO_ATI_SOURCE = xf86-video-ati-$(XDRIVER_XF86_VIDEO_ATI_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_ATI_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_ATI_LICENSE = MIT +XDRIVER_XF86_VIDEO_ATI_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_ATI_DEPENDENCIES = \ + libdrm \ + xlib_libXcomposite \ + xorgproto \ + xserver_xorg-server + +ifeq ($(BR2_PACKAGE_HAS_LIBEGL)$(BR2_PACKAGE_HAS_LIBGL)$(BR2_PACKAGE_LIBEPOXY),yyy) +XDRIVER_XF86_VIDEO_ATI_CONF_OPTS = --enable-glamor +else +XDRIVER_XF86_VIDEO_ATI_CONF_OPTS = --disable-glamor +endif + +# xdriver_xf86-video-ati requires O_CLOEXEC +XDRIVER_XF86_VIDEO_ATI_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -D_GNU_SOURCE" + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-cirrus/Config.in b/package/x11r7/xdriver_xf86-video-cirrus/Config.in new file mode 100644 index 00000000..2987c3f0 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-cirrus/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_CIRRUS + bool "xf86-video-cirrus" + select BR2_PACKAGE_XORGPROTO + help + Cirrus Logic video driver diff --git a/package/x11r7/xdriver_xf86-video-cirrus/xdriver_xf86-video-cirrus.hash b/package/x11r7/xdriver_xf86-video-cirrus/xdriver_xf86-video-cirrus.hash new file mode 100644 index 00000000..0600bce1 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-cirrus/xdriver_xf86-video-cirrus.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2015-May/002600.html +sha256 edc87b20a55259126b5239b5c1ef913419eab7ded0ed12ae9ae989460d7351ab xf86-video-cirrus-1.5.3.tar.bz2 +# Locally calculated +sha256 a113cf02dcfa523593727790a17172080ac87d8de16e766bda4cbbe73dd8dc62 COPYING diff --git a/package/x11r7/xdriver_xf86-video-cirrus/xdriver_xf86-video-cirrus.mk b/package/x11r7/xdriver_xf86-video-cirrus/xdriver_xf86-video-cirrus.mk new file mode 100644 index 00000000..fa776a24 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-cirrus/xdriver_xf86-video-cirrus.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xdriver_xf86-video-cirrus +# +################################################################################ + +XDRIVER_XF86_VIDEO_CIRRUS_VERSION = 1.5.3 +XDRIVER_XF86_VIDEO_CIRRUS_SOURCE = xf86-video-cirrus-$(XDRIVER_XF86_VIDEO_CIRRUS_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_CIRRUS_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_CIRRUS_LICENSE = MIT +XDRIVER_XF86_VIDEO_CIRRUS_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_CIRRUS_DEPENDENCIES = xserver_xorg-server xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-dummy/Config.in b/package/x11r7/xdriver_xf86-video-dummy/Config.in new file mode 100644 index 00000000..58c70a84 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-dummy/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_DUMMY + bool "xf86-video-dummy" + select BR2_PACKAGE_XORGPROTO + help + X.Org driver for dummy cards diff --git a/package/x11r7/xdriver_xf86-video-dummy/xdriver_xf86-video-dummy.hash b/package/x11r7/xdriver_xf86-video-dummy/xdriver_xf86-video-dummy.hash new file mode 100644 index 00000000..3eac3840 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-dummy/xdriver_xf86-video-dummy.hash @@ -0,0 +1,4 @@ +# From https://lists.x.org/archives/xorg-announce/2016-December/002751.html +sha256 3712bb869307233491e4c570732d6073c0dc3d99adfdb9977396a3fdf84e95b9 xf86-video-dummy-0.3.8.tar.bz2 +# Locally calculated +sha256 e29aa81e74563d14e5633963107c030e74e8352ea7dafee1a9d7e19b7d0e887b COPYING diff --git a/package/x11r7/xdriver_xf86-video-dummy/xdriver_xf86-video-dummy.mk b/package/x11r7/xdriver_xf86-video-dummy/xdriver_xf86-video-dummy.mk new file mode 100644 index 00000000..3127f6cb --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-dummy/xdriver_xf86-video-dummy.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xdriver_xf86-video-dummy +# +################################################################################ + +XDRIVER_XF86_VIDEO_DUMMY_VERSION = 0.3.8 +XDRIVER_XF86_VIDEO_DUMMY_SOURCE = xf86-video-dummy-$(XDRIVER_XF86_VIDEO_DUMMY_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_DUMMY_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_DUMMY_LICENSE = MIT +XDRIVER_XF86_VIDEO_DUMMY_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_DUMMY_DEPENDENCIES = xserver_xorg-server xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-fbdev/Config.in b/package/x11r7/xdriver_xf86-video-fbdev/Config.in new file mode 100644 index 00000000..0ecba482 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-fbdev/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_FBDEV + bool "xf86-video-fbdev" + select BR2_PACKAGE_XORGPROTO + help + video driver for framebuffer device diff --git a/package/x11r7/xdriver_xf86-video-fbdev/xdriver_xf86-video-fbdev.hash b/package/x11r7/xdriver_xf86-video-fbdev/xdriver_xf86-video-fbdev.hash new file mode 100644 index 00000000..dd3a9c38 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-fbdev/xdriver_xf86-video-fbdev.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2013-September/002324.html +sha256 dcc3d85f378022180e437a9ec00a59b6cb7680ff79c40394d695060af2374699 xf86-video-fbdev-0.5.0.tar.bz2 +# Locally calculated +sha256 e437aed89c3440a9fe7e19968a3f2eeb97041ef6c9616837a3fd42d0874fc0e6 COPYING diff --git a/package/x11r7/xdriver_xf86-video-fbdev/xdriver_xf86-video-fbdev.mk b/package/x11r7/xdriver_xf86-video-fbdev/xdriver_xf86-video-fbdev.mk new file mode 100644 index 00000000..a480befd --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-fbdev/xdriver_xf86-video-fbdev.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xdriver_xf86-video-fbdev +# +################################################################################ + +XDRIVER_XF86_VIDEO_FBDEV_VERSION = 0.5.0 +XDRIVER_XF86_VIDEO_FBDEV_SOURCE = xf86-video-fbdev-$(XDRIVER_XF86_VIDEO_FBDEV_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_FBDEV_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_FBDEV_LICENSE = MIT +XDRIVER_XF86_VIDEO_FBDEV_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_FBDEV_DEPENDENCIES = xserver_xorg-server xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-fbturbo/0001-sunxi_x_g2d-drop-unused-dri2-include.patch b/package/x11r7/xdriver_xf86-video-fbturbo/0001-sunxi_x_g2d-drop-unused-dri2-include.patch new file mode 100644 index 00000000..8b4e817b --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-fbturbo/0001-sunxi_x_g2d-drop-unused-dri2-include.patch @@ -0,0 +1,28 @@ +From 232c5b6924652f65ef5c047754e84b87b5fc6ac8 Mon Sep 17 00:00:00 2001 +From: Peter Korsgaard +Date: Sat, 3 Oct 2015 19:01:38 +0200 +Subject: [PATCH] sunxi_x_g2d: drop unused dri2 include + +The driver doesn't use DRI for anything. + +[Upstream-status: submitted (https://github.com/ssvb/xf86-video-fbturbo/pull/45)] +Signed-off-by: Peter Korsgaard +--- + src/sunxi_x_g2d.c | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/src/sunxi_x_g2d.c b/src/sunxi_x_g2d.c +index d826027..8888abe 100644 +--- a/src/sunxi_x_g2d.c ++++ b/src/sunxi_x_g2d.c +@@ -31,7 +31,6 @@ + #include "xf86_OSproc.h" + #include "xf86.h" + #include "xf86drm.h" +-#include "dri2.h" + #include "damage.h" + #include "fb.h" + #include "gcstruct.h" +-- +2.1.4 + diff --git a/package/x11r7/xdriver_xf86-video-fbturbo/Config.in b/package/x11r7/xdriver_xf86-video-fbturbo/Config.in new file mode 100644 index 00000000..7acf93e2 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-fbturbo/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_FBTURBO + bool "xf86-video-fbturbo" + select BR2_PACKAGE_LIBDRM + select BR2_PACKAGE_PIXMAN + select BR2_PACKAGE_XORGPROTO + help + video driver, primarily optimized for the devices powered + by the Allwinner SoC (A10, A13, A20). It can use some of + the 2D/3D hardware acceleration features. + + https://github.com/ssvb/xf86-video-fbturbo diff --git a/package/x11r7/xdriver_xf86-video-fbturbo/xdriver_xf86-video-fbturbo.hash b/package/x11r7/xdriver_xf86-video-fbturbo/xdriver_xf86-video-fbturbo.hash new file mode 100644 index 00000000..4b3cf8dd --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-fbturbo/xdriver_xf86-video-fbturbo.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f xdriver_xf86-video-fbturbo-0.4.0.tar.gz +sha256 8333e3fa5b0f8d8aceca2f060d4eceeb6033cefed2301b03c3e92f6e3ebbffce COPYING diff --git a/package/x11r7/xdriver_xf86-video-fbturbo/xdriver_xf86-video-fbturbo.mk b/package/x11r7/xdriver_xf86-video-fbturbo/xdriver_xf86-video-fbturbo.mk new file mode 100644 index 00000000..049a2b5b --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-fbturbo/xdriver_xf86-video-fbturbo.mk @@ -0,0 +1,30 @@ +################################################################################ +# +# xdriver_xf86-video-fbturbo +# +################################################################################ + +XDRIVER_XF86_VIDEO_FBTURBO_VERSION = 0.4.0 +XDRIVER_XF86_VIDEO_FBTURBO_SITE = $(call github,ssvb,xf86-video-fbturbo,$(XDRIVER_XF86_VIDEO_FBTURBO_VERSION)) +XDRIVER_XF86_VIDEO_FBTURBO_LICENSE = MIT +XDRIVER_XF86_VIDEO_FBTURBO_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_FBTURBO_DEPENDENCIES = \ + xserver_xorg-server \ + libdrm \ + pixman \ + xorgproto + +ifeq ($(BR2_PACKAGE_LIBPCIACCESS),y) +XDRIVER_XF86_VIDEO_FBTURBO_DEPENDENCIES += libpciaccess +XDRIVER_XF86_VIDEO_FBTURBO_CONF_OPTS += --enable-pciaccess +else +XDRIVER_XF86_VIDEO_FBTURBO_CONF_OPTS += --disable-pciaccess +endif + +define XDRIVER_XF86_VIDEO_FBTURBO_INSTALL_CONF_FILE + $(INSTALL) -m 0644 -D $(@D)/xorg.conf $(TARGET_DIR)/etc/X11/xorg.conf +endef + +XDRIVER_XF86_VIDEO_FBTURBO_POST_INSTALL_TARGET_HOOKS += XDRIVER_XF86_VIDEO_FBTURBO_INSTALL_CONF_FILE + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-geode/Config.in b/package/x11r7/xdriver_xf86-video-geode/Config.in new file mode 100644 index 00000000..b432f2d4 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-geode/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_GEODE + bool "xf86-video-geode" + depends on BR2_i386 + select BR2_PACKAGE_XORGPROTO + help + video driver for geode device diff --git a/package/x11r7/xdriver_xf86-video-geode/xdriver_xf86-video-geode.hash b/package/x11r7/xdriver_xf86-video-geode/xdriver_xf86-video-geode.hash new file mode 100644 index 00000000..7a66c28b --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-geode/xdriver_xf86-video-geode.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 f497d0bfb09f36c72e3467e2d701f57f6b03ab8992c5d570e66582f714f84d64 xf86-video-geode-2.11.20.tar.bz2 +sha256 3994ef7cee54f0935a4b57b1c34efd904da567931dd9e1a2d9390d22c8332ea2 COPYING diff --git a/package/x11r7/xdriver_xf86-video-geode/xdriver_xf86-video-geode.mk b/package/x11r7/xdriver_xf86-video-geode/xdriver_xf86-video-geode.mk new file mode 100644 index 00000000..dbeae1aa --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-geode/xdriver_xf86-video-geode.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xdriver_xf86-video-geode +# +################################################################################ + +XDRIVER_XF86_VIDEO_GEODE_VERSION = 2.11.20 +XDRIVER_XF86_VIDEO_GEODE_SOURCE = xf86-video-geode-$(XDRIVER_XF86_VIDEO_GEODE_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_GEODE_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_GEODE_LICENSE = MIT +XDRIVER_XF86_VIDEO_GEODE_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_GEODE_DEPENDENCIES = xserver_xorg-server xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-glint/Config.in b/package/x11r7/xdriver_xf86-video-glint/Config.in new file mode 100644 index 00000000..c474f6c9 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-glint/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_GLINT + bool "xf86-video-glint" + depends on BR2_PACKAGE_MESA3D + select BR2_PACKAGE_LIBDRM + select BR2_PACKAGE_XORGPROTO + help + GLINT/Permedia video driver + +comment "xf86-video-glint needs mesa3d" + depends on !BR2_PACKAGE_MESA3D diff --git a/package/x11r7/xdriver_xf86-video-glint/xdriver_xf86-video-glint.hash b/package/x11r7/xdriver_xf86-video-glint/xdriver_xf86-video-glint.hash new file mode 100644 index 00000000..40474ebc --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-glint/xdriver_xf86-video-glint.hash @@ -0,0 +1,4 @@ +# From https://lists.x.org/archives/xorg-announce/2017-January/002759.html +sha256 852833ab2ea9ce519195dfd061a6c7aa5945a093cdc19546d1e9e69df7d577d2 xf86-video-glint-1.2.9.tar.bz2 +# Locally calculated +sha256 6ca8e1a7e1d491f3618d3f14df1be64dbc8adefae7bbaf11d4920240dfb12f6e COPYING diff --git a/package/x11r7/xdriver_xf86-video-glint/xdriver_xf86-video-glint.mk b/package/x11r7/xdriver_xf86-video-glint/xdriver_xf86-video-glint.mk new file mode 100644 index 00000000..fba00307 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-glint/xdriver_xf86-video-glint.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xdriver_xf86-video-glint +# +################################################################################ + +XDRIVER_XF86_VIDEO_GLINT_VERSION = 1.2.9 +XDRIVER_XF86_VIDEO_GLINT_SOURCE = xf86-video-glint-$(XDRIVER_XF86_VIDEO_GLINT_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_GLINT_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_GLINT_LICENSE = MIT +XDRIVER_XF86_VIDEO_GLINT_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_GLINT_DEPENDENCIES = xserver_xorg-server libdrm xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-i128/Config.in b/package/x11r7/xdriver_xf86-video-i128/Config.in new file mode 100644 index 00000000..4f4810cc --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-i128/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_I128 + bool "xf86-video-i128" + select BR2_PACKAGE_XORGPROTO + help + Number 9 I128 video driver diff --git a/package/x11r7/xdriver_xf86-video-i128/xdriver_xf86-video-i128.hash b/package/x11r7/xdriver_xf86-video-i128/xdriver_xf86-video-i128.hash new file mode 100644 index 00000000..325e754f --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-i128/xdriver_xf86-video-i128.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-December/002932.html +md5 a980f1b8532ccfe81932580bc4e0f2a0 xf86-video-i128-1.4.0.tar.bz2 +sha1 56d5b897b2695222c13e59d2ade74620a99e1011 xf86-video-i128-1.4.0.tar.bz2 +sha256 8f2c0a6bf5a169dad3fc07c6dd4537b492d0e44489e4a1297311e617c3bed0ea xf86-video-i128-1.4.0.tar.bz2 +sha512 d58baee3f20b3ad2ece6853da0ff20a6d54b984c6e3289bad2715cc003b277a0b44d20ded25cfc116400468df552390bdb5d80fbd3fb60861488ee5d027664b2 xf86-video-i128-1.4.0.tar.bz2 +# Locally computed +sha256 7677424d79633dbf255a81bd4e05dd621931b89997af33c31522269ec2ed391e COPYING diff --git a/package/x11r7/xdriver_xf86-video-i128/xdriver_xf86-video-i128.mk b/package/x11r7/xdriver_xf86-video-i128/xdriver_xf86-video-i128.mk new file mode 100644 index 00000000..e44deaf6 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-i128/xdriver_xf86-video-i128.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xdriver_xf86-video-i128 +# +################################################################################ + +XDRIVER_XF86_VIDEO_I128_VERSION = 1.4.0 +XDRIVER_XF86_VIDEO_I128_SOURCE = xf86-video-i128-$(XDRIVER_XF86_VIDEO_I128_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_I128_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_I128_LICENSE = MIT +XDRIVER_XF86_VIDEO_I128_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_I128_DEPENDENCIES = xserver_xorg-server xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-imx-viv/Config.in b/package/x11r7/xdriver_xf86-video-imx-viv/Config.in new file mode 100644 index 00000000..13cee14d --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-imx-viv/Config.in @@ -0,0 +1,40 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_IMX_VIV + bool "xf86-video-imx-viv" + depends on BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_X11 + depends on BR2_PACKAGE_IMX_GPU_G2D + depends on BR2_TOOLCHAIN_HAS_SYNC_1 # mesa3d + select BR2_PACKAGE_MESA3D # Needed in order to compile xorg with glx/dri + select BR2_PACKAGE_MESA3D_DRI_DRIVER + select BR2_PACKAGE_LIBDRM + select BR2_PACKAGE_XORGPROTO + help + X.Org driver for iMX6 GPU (Vivante) + + Notice EGL and GLes2 APIs are correctly supported. This + driver should also be able to provide Desktop OpenGL + implementation but, this feature seems broken since quite + some time. + + To use this driver, add correct configuration to your + /etc/X11/xorg.conf: + + Section "Device" + [...] + Driver "vivante" + Option "vivante_fbdev" "/dev/fbX" + EndSection + + Don't forget to load galcore.ko and create /dev/galcore + before using this driver (else, Xorg will exit with an + obscur message like "Segmentation fault at address 0xc"). + +comment "xf86-video-imx-viv depends on imx-gpu-viv with X11 output" + depends on BR2_arm + depends on !BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_X11 + depends on BR2_TOOLCHAIN_HAS_SYNC_1 + +comment "xf86-video-imx-viv depends on imx-gpu-g2d" + depends on BR2_arm + depends on !BR2_PACKAGE_IMX_GPU_G2D + depends on BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_X11 + depends on BR2_TOOLCHAIN_HAS_SYNC_1 diff --git a/package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.hash b/package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.hash new file mode 100644 index 00000000..5873b4b1 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 638a8aa8b64f860900d003527529689bc342d18ff5e41a9e1750884544898e67 xdriver_xf86-video-imx-viv-rel_imx_4.9.x_1.0.0_ga-br1.tar.gz +sha256 9d3e373f0440cc0c58853e963636a7c1ffda9308ec5f30ebe9adfb9c16a8a1e4 COPYING-MIT diff --git a/package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.mk b/package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.mk new file mode 100644 index 00000000..09134275 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.mk @@ -0,0 +1,35 @@ +################################################################################ +# +# xdriver_xf86-video-imx-viv +# +################################################################################ + +XDRIVER_XF86_VIDEO_IMX_VIV_VERSION = rel_imx_4.9.x_1.0.0_ga +XDRIVER_XF86_VIDEO_IMX_VIV_SITE = https://source.codeaurora.org/external/imx/xf86-video-imx-vivante +XDRIVER_XF86_VIDEO_IMX_VIV_SITE_METHOD = git +XDRIVER_XF86_VIDEO_IMX_VIV_DEPENDENCIES = imx-gpu-viv imx-gpu-g2d xserver_xorg-server \ + xorgproto libdrm +XDRIVER_XF86_VIDEO_IMX_VIV_LICENSE = MIT +XDRIVER_XF86_VIDEO_IMX_VIV_LICENSE_FILES = COPYING-MIT +XDRIVER_XF86_VIDEO_IMX_VIV_INSTALL_STAGING = YES +XDRIVER_XF86_VIDEO_IMX_VIV_MAKE_CMD = $(TARGET_CONFIGURE_OPTS) $(MAKE1) -C $(@D)/EXA/src -f makefile.linux + +define XDRIVER_XF86_VIDEO_IMX_VIV_BUILD_CMDS + $(XDRIVER_XF86_VIDEO_IMX_VIV_MAKE_CMD) sysroot=$(STAGING_DIR) \ + BUSID_HAS_NUMBER=1 BUILD_IN_YOCTO=1 XSERVER_GREATER_THAN_13=1 \ + CFLAGS="$(TARGET_CFLAGS)" +endef + +define XDRIVER_XF86_VIDEO_IMX_VIV_INSTALL_STAGING_CMDS + $(XDRIVER_XF86_VIDEO_IMX_VIV_MAKE_CMD) prefix=$(STAGING_DIR)/usr install + $(INSTALL) -D -m 644 $(@D)/EXA/src/vivante_gal/vivante_priv.h \ + $(STAGING_DIR)/usr/include/vivante_priv.h + $(INSTALL) -D -m 644 $(@D)/EXA/src/vivante_gal/vivante_gal.h \ + $(STAGING_DIR)/usr/include/vivante_gal.h +endef + +define XDRIVER_XF86_VIDEO_IMX_VIV_INSTALL_TARGET_CMDS + $(XDRIVER_XF86_VIDEO_IMX_VIV_MAKE_CMD) prefix=$(TARGET_DIR)/usr install +endef + +$(eval $(generic-package)) diff --git a/package/x11r7/xdriver_xf86-video-imx/0001-Update-to-newer-swap-macros.patch b/package/x11r7/xdriver_xf86-video-imx/0001-Update-to-newer-swap-macros.patch new file mode 100644 index 00000000..05be6b32 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-imx/0001-Update-to-newer-swap-macros.patch @@ -0,0 +1,65 @@ +From fc7f191a1a0f290a4e808dd8f9bd58ba1dbd2be4 Mon Sep 17 00:00:00 2001 +From: Otavio Salvador +Date: Sat, 29 Dec 2012 18:00:36 -0200 +Subject: [PATCH 1/2] ext: Update to newer swap macros + +The swap macros now use an internal temporary variable so we need to +adapt the code according. + +Upstream-Status: Pending + +Signed-off-by: Otavio Salvador +--- + src/imx_ext.c | 16 ++++++---------- + 1 file changed, 6 insertions(+), 10 deletions(-) + +diff --git a/src/imx_ext.c b/src/imx_ext.c +index f12469a..710cba4 100644 +--- a/src/imx_ext.c ++++ b/src/imx_ext.c +@@ -57,8 +57,6 @@ void imxExtInit() + static int + Proc_IMX_EXT_GetPixmapPhysAddr(ClientPtr client) + { +- int n; +- + REQUEST(xIMX_EXT_GetPixmapPhysAddrReq); + REQUEST_SIZE_MATCH(xIMX_EXT_GetPixmapPhysAddrReq); + +@@ -96,10 +94,10 @@ Proc_IMX_EXT_GetPixmapPhysAddr(ClientPtr client) + /* Check if any reply values need byte swapping */ + if (client->swapped) { + +- swaps(&rep.sequenceNumber, n); +- swapl(&rep.length, n); +- swapl(&rep.pixmapPhysAddr, n); +- swapl(&rep.pixmapPitch, n); ++ swaps(&rep.sequenceNumber); ++ swapl(&rep.length); ++ swapl(&rep.pixmapPhysAddr); ++ swapl(&rep.pixmapPitch); + } + + /* Reply to client */ +@@ -123,16 +121,14 @@ Proc_IMX_EXT_Dispatch(ClientPtr client) + static int + SProc_IMX_EXT_GetPixmapPhysAddr(ClientPtr client) + { +- int n; +- + REQUEST(xIMX_EXT_GetPixmapPhysAddrReq); + + /* Swap request message length and verify it is correct. */ +- swaps(&stuff->length, n); ++ swaps(&stuff->length); + REQUEST_SIZE_MATCH(xIMX_EXT_GetPixmapPhysAddrReq); + + /* Swap remaining request message parameters. */ +- swapl(&stuff->pixmap, n); ++ swapl(&stuff->pixmap); + + return Proc_IMX_EXT_GetPixmapPhysAddr(client); + } +-- +1.7.10.4 + diff --git a/package/x11r7/xdriver_xf86-video-imx/0002-Fix-error-unknown-type-name-uint.patch b/package/x11r7/xdriver_xf86-video-imx/0002-Fix-error-unknown-type-name-uint.patch new file mode 100644 index 00000000..6a2fcdf4 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-imx/0002-Fix-error-unknown-type-name-uint.patch @@ -0,0 +1,33 @@ +From ccdfce5e75ba707deacdd5808a8f3de8744848d0 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Eric=20B=C3=A9nard?= +Date: Tue, 5 Feb 2013 10:57:47 +0100 +Subject: [PATCH] Fix "error: unknown type name 'uint'" +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +In file included from imx_driver.c:33:0: +.../sysroots/imx53qsb/usr/src/kernel/include/linux/mxcfb.h:107:2: error: unknown type name 'uint' + +Upstream-Status: Pending + +Signed-off-by: Eric Bénard +--- + src/imx_driver.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/imx_driver.c b/src/imx_driver.c +index f4b3e38..4cf662d 100644 +--- a/src/imx_driver.c ++++ b/src/imx_driver.c +@@ -29,6 +29,7 @@ + #include + #include + #include ++#include + #include + #include + +-- +1.7.10.4 + diff --git a/package/x11r7/xdriver_xf86-video-imx/0003-support-glibc-2.20.patch b/package/x11r7/xdriver_xf86-video-imx/0003-support-glibc-2.20.patch new file mode 100644 index 00000000..3b1b84d1 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-imx/0003-support-glibc-2.20.patch @@ -0,0 +1,57 @@ +Fix build errors seen with glibc 2.20 + +/home/ubuntu/work/upstream/openembedded-core/build/tmp-glibc/sysroots/imx53qsb/usr/include/xorg/os.h:579:1: error: expected identifier or '(' before '__extension__' + strndup(const char *str, size_t n); + ^ + +Signed-off-by: Khem Raj +Upstream-Status: Pending +Index: xserver-xorg-video-imx-11.09.01/src/imx_accel.c +=================================================================== +--- xserver-xorg-video-imx-11.09.01.orig/src/imx_accel.c 2011-07-26 14:22:47.000000000 -0700 ++++ xserver-xorg-video-imx-11.09.01/src/imx_accel.c 2014-08-29 15:54:43.648070587 -0700 +@@ -21,6 +21,7 @@ + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ ++#include + + #include + #include "xf86.h" +Index: xserver-xorg-video-imx-11.09.01/src/imx_exa_offscreen.c +=================================================================== +--- xserver-xorg-video-imx-11.09.01.orig/src/imx_exa_offscreen.c 2014-08-29 15:26:31.992070587 -0700 ++++ xserver-xorg-video-imx-11.09.01/src/imx_exa_offscreen.c 2014-08-29 15:54:54.632070587 -0700 +@@ -53,7 +53,7 @@ + * When allocating, the contiguous block of areas with the minimum eviction + * cost is found and evicted in order to make room for the new allocation. + */ +- ++#include + + #include "xf86.h" + #include "exa.h" +Index: xserver-xorg-video-imx-11.09.01/src/imx_exa_z160.c +=================================================================== +--- xserver-xorg-video-imx-11.09.01.orig/src/imx_exa_z160.c 2014-08-29 15:26:31.992070587 -0700 ++++ xserver-xorg-video-imx-11.09.01/src/imx_exa_z160.c 2014-08-29 15:54:36.056070587 -0700 +@@ -21,6 +21,7 @@ + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ ++#include + + #include "xf86.h" + #include "xf86_OSproc.h" +Index: xserver-xorg-video-imx-11.09.01/src/imx_ext.c +=================================================================== +--- xserver-xorg-video-imx-11.09.01.orig/src/imx_ext.c 2014-08-29 15:26:32.064070587 -0700 ++++ xserver-xorg-video-imx-11.09.01/src/imx_ext.c 2014-08-29 15:55:18.048070587 -0700 +@@ -21,6 +21,7 @@ + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ ++#include + + #include + #include diff --git a/package/x11r7/xdriver_xf86-video-imx/0004-Make-video-API-forward-and-backward-compatible.patch b/package/x11r7/xdriver_xf86-video-imx/0004-Make-video-API-forward-and-backward-compatible.patch new file mode 100644 index 00000000..2ac6311f --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-imx/0004-Make-video-API-forward-and-backward-compatible.patch @@ -0,0 +1,787 @@ +From 5216cb0f14414b5451f58df48a36c1c62c035276 Mon Sep 17 00:00:00 2001 +From: Otavio Salvador +Date: Sat, 29 Dec 2012 18:02:11 -0200 +Subject: [PATCH] Make video API forward and backward compatible + +This updates the video API in a forward and backward compatible way +using the "compat-api.h" as used in Xorg maintained drivers. + +Upstream-Status: Pending + +Signed-off-by: Otavio Salvador +--- + src/compat-api.h | 106 +++++++++++++++++++++++++++++++++++++++++++++++ + src/imx_display.c | 22 +++++----- + src/imx_display.h | 8 ++-- + src/imx_driver.c | 60 ++++++++++++++------------- + src/imx_exa_offscreen.c | 12 +++--- + src/imx_exa_z160.c | 53 ++++++++++++------------ + src/imx_xv_ipu.c | 4 +- + 7 files changed, 188 insertions(+), 77 deletions(-) + create mode 100644 src/compat-api.h + +diff --git a/src/compat-api.h b/src/compat-api.h +new file mode 100644 +index 0000000..73ac8a2 +--- /dev/null ++++ b/src/compat-api.h +@@ -0,0 +1,106 @@ ++/* ++ * Copyright 2012 Red Hat, Inc. ++ * ++ * Permission is hereby granted, free of charge, to any person obtaining a ++ * copy of this software and associated documentation files (the "Software"), ++ * to deal in the Software without restriction, including without limitation ++ * the rights to use, copy, modify, merge, publish, distribute, sublicense, ++ * and/or sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following conditions: ++ * ++ * The above copyright notice and this permission notice (including the next ++ * paragraph) shall be included in all copies or substantial portions of the ++ * Software. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ++ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL ++ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER ++ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER ++ * DEALINGS IN THE SOFTWARE. ++ * ++ * Author: Dave Airlie ++ */ ++ ++/* this file provides API compat between server post 1.13 and pre it, ++ it should be reused inside as many drivers as possible */ ++#ifndef COMPAT_API_H ++#define COMPAT_API_H ++ ++#ifndef GLYPH_HAS_GLYPH_PICTURE_ACCESSOR ++#define GetGlyphPicture(g, s) GlyphPicture((g))[(s)->myNum] ++#define SetGlyphPicture(g, s, p) GlyphPicture((g))[(s)->myNum] = p ++#endif ++ ++#ifndef XF86_HAS_SCRN_CONV ++#define xf86ScreenToScrn(s) xf86Screens[(s)->myNum] ++#define xf86ScrnToScreen(s) screenInfo.screens[(s)->scrnIndex] ++#endif ++ ++#ifndef XF86_SCRN_INTERFACE ++ ++#define SCRN_ARG_TYPE int ++#define SCRN_INFO_PTR(arg1) ScrnInfoPtr pScrn = xf86Screens[(arg1)] ++ ++#define SCREEN_ARG_TYPE int ++#define SCREEN_PTR(arg1) ScreenPtr pScreen = screenInfo.screens[(arg1)] ++ ++#define SCREEN_INIT_ARGS_DECL int index, ScreenPtr pScreen, int argc, char **argv ++ ++#define BLOCKHANDLER_ARGS_DECL int arg, pointer blockData, pointer pTimeout, pointer pReadmask ++#define BLOCKHANDLER_ARGS arg, blockData, pTimeout, pReadmask ++ ++#define CLOSE_SCREEN_ARGS_DECL int scrnIndex, ScreenPtr pScreen ++#define CLOSE_SCREEN_ARGS scrnIndex, pScreen ++#define CLOSE_SCREEN_DECL_ScrnInfoPtr ScrnInfoPtr pScrn = xf86Screens[scrnIndex]; ++ ++#define FBDEVHWADJUSTFRAME_ARGS(x, y) scrnIndex, (x), (y), 0 ++ ++#define ADJUST_FRAME_ARGS_DECL int arg, int x, int y, int flags ++ ++#define SWITCH_MODE_ARGS_DECL int arg, DisplayModePtr mode, int flags ++ ++#define FREE_SCREEN_ARGS_DECL int arg, int flags ++#define FREE_SCREEN_ARGS(x) (x)->scrnIndex, 0 ++ ++#define VT_FUNC_ARGS_DECL int arg, int flags ++#define VT_FUNC_ARGS(flags) pScrn->scrnIndex, (flags) ++ ++#define ENABLE_DISABLE_FB_ACCESS_ARGS(pScrn, b) pScrn->scrnIndex, b ++ ++#define XF86_ENABLEDISABLEFB_ARG(x) ((x)->scrnIndex) ++#else ++#define SCRN_ARG_TYPE ScrnInfoPtr ++#define SCRN_INFO_PTR(arg1) ScrnInfoPtr pScrn = (arg1) ++ ++#define SCREEN_ARG_TYPE ScreenPtr ++#define SCREEN_PTR(arg1) ScreenPtr pScreen = (arg1) ++ ++#define SCREEN_INIT_ARGS_DECL ScreenPtr pScreen, int argc, char **argv ++ ++#define BLOCKHANDLER_ARGS_DECL ScreenPtr arg, pointer pTimeout, pointer pReadmask ++#define BLOCKHANDLER_ARGS arg, pTimeout, pReadmask ++ ++#define CLOSE_SCREEN_ARGS_DECL ScreenPtr pScreen ++#define CLOSE_SCREEN_ARGS pScreen ++#define CLOSE_SCREEN_DECL_ScrnInfoPtr ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; ++ ++#define FBDEVHWADJUSTFRAME_ARGS(x, y) pScrn, (x), (y) ++ ++#define ADJUST_FRAME_ARGS_DECL ScrnInfoPtr arg, int x, int y ++#define SWITCH_MODE_ARGS_DECL ScrnInfoPtr arg, DisplayModePtr mode ++ ++#define FREE_SCREEN_ARGS_DECL ScrnInfoPtr arg ++#define FREE_SCREEN_ARGS(x) (x) ++ ++#define VT_FUNC_ARGS_DECL ScrnInfoPtr arg ++#define VT_FUNC_ARGS(flags) pScrn ++ ++#define ENABLE_DISABLE_FB_ACCESS_ARGS(pScrn, b) pScrn, b ++ ++#define XF86_ENABLEDISABLEFB_ARG(x) (x) ++ ++#endif ++ ++#endif +diff --git a/src/imx_display.c b/src/imx_display.c +index fcb8195..e2dc36a 100644 +--- a/src/imx_display.c ++++ b/src/imx_display.c +@@ -42,6 +42,8 @@ + #include "imx.h" + #include "imx_display.h" + ++#include "compat-api.h" ++ + #include + + #if XORG_VERSION_CURRENT >= XORG_VERSION_NUMERIC(1,7,6,0,0) +@@ -1373,19 +1375,19 @@ imxDisplayPreInit(ScrnInfoPtr pScrn) + Bool + imxDisplayStartScreenInit(int scrnIndex, ScreenPtr pScreen) + { +- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); + ImxPtr fPtr = IMXPTR(pScrn); + + if (!xf86SetDesiredModes(pScrn)) { + +- xf86DrvMsg(scrnIndex, X_ERROR, "mode initialization failed\n"); ++ xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "mode initialization failed\n"); + return FALSE; + } + + #if 0 + if (!fbdevHWModeInit(pScrn, pScrn->currentMode)) { + +- xf86DrvMsg(scrnIndex, X_ERROR, "mode initialization failed\n"); ++ xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "mode initialization failed\n"); + return FALSE; + } + pScrn->displayWidth = +@@ -1463,29 +1465,29 @@ imxDisplayFinishScreenInit(int scrnIndex, ScreenPtr pScreen) + /* -------------------------------------------------------------------- */ + + Bool +-imxDisplaySwitchMode(int scrnIndex, DisplayModePtr mode, int flags) ++imxDisplaySwitchMode(SWITCH_MODE_ARGS_DECL) + { +- ScrnInfoPtr pScrn = xf86Screens[scrnIndex]; ++ SCRN_INFO_PTR(arg); + + return xf86SetSingleMode(pScrn, mode, RR_Rotate_0); + } + + void +-imxDisplayAdjustFrame(int scrnIndex, int x, int y, int flags) ++imxDisplayAdjustFrame(ADJUST_FRAME_ARGS_DECL) + { +-// fbdevHWAdjustFrame(scrnIndex, x, y, flags); ++// fbdevHWAdjustFrame(pScrn->scrnIndex, x, y, flags); + } + + Bool +-imxDisplayEnterVT(int scrnIndex, int flags) ++imxDisplayEnterVT(VT_FUNC_ARGS_DECL) + { +- ScrnInfoPtr pScrn = xf86Screens[scrnIndex]; ++ SCRN_INFO_PTR(arg); + + return xf86SetDesiredModes(pScrn); + } + + void +-imxDisplayLeaveVT(int scrnIndex, int flags) ++imxDisplayLeaveVT(VT_FUNC_ARGS_DECL) + { + } + +diff --git a/src/imx_display.h b/src/imx_display.h +index 4a5d5aa..3a3d43a 100644 +--- a/src/imx_display.h ++++ b/src/imx_display.h +@@ -59,16 +59,16 @@ imxDisplayValidMode(int scrnIndex, DisplayModePtr mode, + Bool verbose, int flags); + + extern Bool +-imxDisplaySwitchMode(int scrnIndex, DisplayModePtr mode, int flags); ++imxDisplaySwitchMode(SWITCH_MODE_ARGS_DECL); + + extern void +-imxDisplayAdjustFrame(int scrnIndex, int x, int y, int flags); ++imxDisplayAdjustFrame(ADJUST_FRAME_ARGS_DECL); + + extern Bool +-imxDisplayEnterVT(int scrnIndex, int flags); ++imxDisplayEnterVT(VT_FUNC_ARGS_DECL); + + extern void +-imxDisplayLeaveVT(int scrnIndex, int flags); ++imxDisplayLeaveVT(VT_FUNC_ARGS_DECL); + + extern Bool + imxDisplayChangeFrameBufferRotateEPDC(int scrnIndex, int fbRotate); +diff --git a/src/imx_driver.c b/src/imx_driver.c +index 178e36e..f4b3e38 100644 +--- a/src/imx_driver.c ++++ b/src/imx_driver.c +@@ -46,6 +46,8 @@ + #include "fb.h" + #include "fbdevhw.h" + ++#include "compat-api.h" ++ + #if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 6 + #include "xf86Resources.h" + #include "xf86RAC.h" +@@ -435,17 +437,17 @@ errorPreInit: + } + + static void +-imxFreeScreen(int scrnIndex, int flags) ++imxFreeScreen(FREE_SCREEN_ARGS_DECL) + { +- ScrnInfoPtr pScrn = xf86Screens[scrnIndex]; ++ SCRN_INFO_PTR(arg); + + imxFreeRec(pScrn); + } + + static Bool +-imxCloseScreen(int scrnIndex, ScreenPtr pScreen) ++imxCloseScreen(CLOSE_SCREEN_ARGS_DECL) + { +- ScrnInfoPtr pScrn = xf86Screens[scrnIndex]; ++ CLOSE_SCREEN_DECL_ScrnInfoPtr; + ImxPtr fPtr = IMXPTR(pScrn); + + fbdevHWRestore(pScrn); +@@ -453,7 +455,7 @@ imxCloseScreen(int scrnIndex, ScreenPtr pScreen) + pScrn->vtSema = FALSE; + + pScreen->CloseScreen = fPtr->saveCloseScreen; +- return (*pScreen->CloseScreen)(scrnIndex, pScreen); ++ return (*pScreen->CloseScreen)(CLOSE_SCREEN_ARGS); + } + + static int +@@ -488,9 +490,9 @@ LCM(a, b) + } + + static Bool +-imxScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) ++imxScreenInit(SCREEN_INIT_ARGS_DECL) + { +- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); + ImxPtr fPtr = IMXPTR(pScrn); + VisualPtr visual; + int init_picture = 0; +@@ -514,7 +516,7 @@ imxScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) + /* Map frame buffer memory */ + fPtr->fbMemoryBase = fbdevHWMapVidmem(pScrn); + if (NULL == fPtr->fbMemoryBase) { +- xf86DrvMsg(scrnIndex,X_ERROR,"mapping of video memory" ++ xf86DrvMsg(pScrn->scrnIndex,X_ERROR,"mapping of video memory" + " failed\n"); + return FALSE; + } +@@ -558,7 +560,7 @@ imxScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) + const int fbOffsetScreen2 = + IMX_ALIGN(fbMaxScreenSize, fbMaxAlignOffset); + fPtr->fbMemoryScreenReserve = fbMaxScreenSize; +- xf86DrvMsg(scrnIndex, X_INFO, ++ xf86DrvMsg(pScrn->scrnIndex, X_INFO, + "reserve %d bytes of frame buffer for screen\n", + fPtr->fbMemoryScreenReserve); + fPtr->fbMemoryStart2 = NULL; +@@ -568,12 +570,12 @@ imxScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) + + fPtr->fbMemoryScreenReserve += fbOffsetScreen2; + +- xf86DrvMsg(scrnIndex, X_INFO, ++ xf86DrvMsg(pScrn->scrnIndex, X_INFO, + "reserve same number of bytes for XRandR rotated screen at offset %d\n", + fbOffsetScreen2); + } + +- if (!imxDisplayStartScreenInit(scrnIndex, pScreen)) { ++ if (!imxDisplayStartScreenInit(pScrn->scrnIndex, pScreen)) { + + return FALSE; + } +@@ -582,7 +584,7 @@ imxScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) + miClearVisualTypes(); + if (pScrn->bitsPerPixel > 8) { + if (!miSetVisualTypes(pScrn->depth, TrueColorMask, pScrn->rgbBits, TrueColor)) { +- xf86DrvMsg(scrnIndex,X_ERROR,"visual type setup failed" ++ xf86DrvMsg(pScrn->scrnIndex,X_ERROR,"visual type setup failed" + " for %d bits per pixel [1]\n", + pScrn->bitsPerPixel); + return FALSE; +@@ -591,14 +593,14 @@ imxScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) + if (!miSetVisualTypes(pScrn->depth, + miGetDefaultVisualMask(pScrn->depth), + pScrn->rgbBits, pScrn->defaultVisual)) { +- xf86DrvMsg(scrnIndex,X_ERROR,"visual type setup failed" ++ xf86DrvMsg(pScrn->scrnIndex,X_ERROR,"visual type setup failed" + " for %d bits per pixel [2]\n", + pScrn->bitsPerPixel); + return FALSE; + } + } + if (!miSetPixmapDepths()) { +- xf86DrvMsg(scrnIndex,X_ERROR,"pixmap depth setup failed\n"); ++ xf86DrvMsg(pScrn->scrnIndex,X_ERROR,"pixmap depth setup failed\n"); + return FALSE; + } + +@@ -607,10 +609,10 @@ imxScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) + has a padding which is independent from the depth (controlfb) */ + pScrn->displayWidth = fbdevHWGetLineLength(pScrn) / + (pScrn->bitsPerPixel / 8); +- xf86DrvMsg(scrnIndex, X_INFO, "displayWidth = %d\n", pScrn->displayWidth); ++ xf86DrvMsg(pScrn->scrnIndex, X_INFO, "displayWidth = %d\n", pScrn->displayWidth); + + if (pScrn->displayWidth != pScrn->virtualX) { +- xf86DrvMsg(scrnIndex, X_INFO, ++ xf86DrvMsg(pScrn->scrnIndex, X_INFO, + "Pitch updated to %d after ModeInit\n", + pScrn->displayWidth); + } +@@ -633,7 +635,7 @@ imxScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) + init_picture = 1; + break; + default: +- xf86DrvMsg(scrnIndex, X_ERROR, ++ xf86DrvMsg(pScrn->scrnIndex, X_ERROR, + "internal error: invalid number of bits per" + " pixel (%d) encountered in" + " imxScreenInit()\n", pScrn->bitsPerPixel); +@@ -644,7 +646,7 @@ imxScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) + case FBDEVHW_INTERLEAVED_PLANES: + /* This should never happen ... + * we should check for this much much earlier ... */ +- xf86DrvMsg(scrnIndex, X_ERROR, ++ xf86DrvMsg(pScrn->scrnIndex, X_ERROR, + "internal error: interleaved planes are not yet " + "supported by the imx driver\n"); + ret = FALSE; +@@ -652,20 +654,20 @@ imxScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) + case FBDEVHW_TEXT: + /* This should never happen ... + * we should check for this much much earlier ... */ +- xf86DrvMsg(scrnIndex, X_ERROR, ++ xf86DrvMsg(pScrn->scrnIndex, X_ERROR, + "internal error: text mode is not supported by the " + "imx driver\n"); + ret = FALSE; + break; + case FBDEVHW_VGA_PLANES: + /* Not supported yet */ +- xf86DrvMsg(scrnIndex, X_ERROR, ++ xf86DrvMsg(pScrn->scrnIndex, X_ERROR, + "internal error: EGA/VGA Planes are not yet " + "supported by the imx driver\n"); + ret = FALSE; + break; + default: +- xf86DrvMsg(scrnIndex, X_ERROR, ++ xf86DrvMsg(pScrn->scrnIndex, X_ERROR, + "internal error: unrecognised hardware type (%d) " + "encountered in imxScreenInit()\n", type); + ret = FALSE; +@@ -699,7 +701,7 @@ imxScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) + /* INIT ACCELERATION BEFORE INIT FOR BACKING STORE & SOFTWARE CURSOR */ + if (fPtr->useAccel) { + +- if (!imxExaZ160Setup(scrnIndex, pScreen)) { ++ if (!imxExaZ160Setup(pScrn->scrnIndex, pScreen)) { + + fPtr->useAccel = FALSE; + } +@@ -731,29 +733,29 @@ imxScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) + /* XXX It would be simpler to use miCreateDefColormap() in all cases. */ + case FBDEVHW_PACKED_PIXELS: + if (!miCreateDefColormap(pScreen)) { +- xf86DrvMsg(scrnIndex, X_ERROR, ++ xf86DrvMsg(pScrn->scrnIndex, X_ERROR, + "internal error: miCreateDefColormap failed " + "in imxScreenInit()\n"); + return FALSE; + } + break; + case FBDEVHW_INTERLEAVED_PLANES: +- xf86DrvMsg(scrnIndex, X_ERROR, ++ xf86DrvMsg(pScrn->scrnIndex, X_ERROR, + "internal error: interleaved planes are not yet " + "supported by the imx driver\n"); + return FALSE; + case FBDEVHW_TEXT: +- xf86DrvMsg(scrnIndex, X_ERROR, ++ xf86DrvMsg(pScrn->scrnIndex, X_ERROR, + "internal error: text mode is not supported by " + "the imx driver\n"); + return FALSE; + case FBDEVHW_VGA_PLANES: +- xf86DrvMsg(scrnIndex, X_ERROR, ++ xf86DrvMsg(pScrn->scrnIndex, X_ERROR, + "internal error: EGA/VGA planes are not yet " + "supported by the imx driver\n"); + return FALSE; + default: +- xf86DrvMsg(scrnIndex, X_ERROR, ++ xf86DrvMsg(pScrn->scrnIndex, X_ERROR, + "internal error: unrecognised imx hardware type " + "(%d) encountered in imxScreenInit()\n", type); + return FALSE; +@@ -782,7 +784,7 @@ imxScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) + } + #endif + +- if (!imxDisplayFinishScreenInit(scrnIndex, pScreen)) { ++ if (!imxDisplayFinishScreenInit(pScrn->scrnIndex, pScreen)) { + return FALSE; + } + +@@ -810,7 +812,7 @@ IMXGetPixmapProperties( + } + + /* Access screen associated with this pixmap. */ +- ScrnInfoPtr pScrn = xf86Screens[pPixmap->drawable.pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pPixmap->drawable.pScreen); + + /* Check if the screen associated with this pixmap has IMX driver. */ + if (0 != strcmp(IMX_DRIVER_NAME, pScrn->driverName)) { +diff --git a/src/imx_exa_offscreen.c b/src/imx_exa_offscreen.c +index 3a5c24d..0fbe2fc 100644 +--- a/src/imx_exa_offscreen.c ++++ b/src/imx_exa_offscreen.c +@@ -79,7 +79,7 @@ static void + imxExaOffscreenValidate (ScreenPtr pScreen) + { + /* Access the driver specific data. */ +- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); + ImxPtr imxPtr = IMXPTR(pScrn); + ImxExaPtr imxExaPtr = IMXEXAPTR(imxPtr); + ExaOffscreenArea *prev = 0, *area; +@@ -135,7 +135,7 @@ imxExaOffscreenMerge (ImxExaPtr imxExaPtr, ExaOffscreenArea *area) + ExaOffscreenArea * + imxExaOffscreenFree (ScreenPtr pScreen, ExaOffscreenArea *area) + { +- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); + ImxPtr imxPtr = IMXPTR(pScrn); + ImxExaPtr imxExaPtr = IMXEXAPTR(imxPtr); + ExaOffscreenArea *next = area->next; +@@ -281,7 +281,7 @@ imxExaOffscreenAlloc (ScreenPtr pScreen, int size, int align, + pointer privData) + { + ExaOffscreenArea *area; +- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); + ImxPtr imxPtr = IMXPTR(pScrn); + ImxExaPtr imxExaPtr = IMXEXAPTR(imxPtr); + int real_size = 0, largest_avail = 0; +@@ -418,7 +418,7 @@ imxExaOffscreenSwapIn (ScreenPtr pScreen) + Bool + imxExaOffscreenInit (ScreenPtr pScreen) + { +- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); + ImxPtr imxPtr = IMXPTR(pScrn); + ImxExaPtr imxExaPtr = IMXEXAPTR(imxPtr); + ExaOffscreenArea *area; +@@ -453,7 +453,7 @@ imxExaOffscreenInit (ScreenPtr pScreen) + void + imxExaOffscreenFini (ScreenPtr pScreen) + { +- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); + ImxPtr imxPtr = IMXPTR(pScrn); + ImxExaPtr imxExaPtr = IMXEXAPTR(imxPtr); + ExaOffscreenArea *area; +@@ -472,7 +472,7 @@ imxExaOffscreenFini (ScreenPtr pScreen) + void + imxExaOffscreenSwapOut (ScreenPtr pScreen) + { +- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); + ImxPtr imxPtr = IMXPTR(pScrn); + ImxExaPtr imxExaPtr = IMXEXAPTR(imxPtr); + +diff --git a/src/imx_exa_z160.c b/src/imx_exa_z160.c +index fb718e0..3d0bc96 100644 +--- a/src/imx_exa_z160.c ++++ b/src/imx_exa_z160.c +@@ -32,6 +32,7 @@ + #include + #include + ++#include "compat-api.h" + + /* Set if handles pixmap allocation and migration, i.e, EXA_HANDLES_PIXMAPS */ + #define IMX_EXA_ENABLE_HANDLES_PIXMAPS \ +@@ -299,7 +300,7 @@ imxExaZ160GetPixmapAddress(PixmapPtr pPixmap) + return fPixmapPtr->ptr; + #else + /* Access screen associated with this pixmap. */ +- ScrnInfoPtr pScrn = xf86Screens[pPixmap->drawable.pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pPixmap->drawable.pScreen); + + /* Access driver specific data */ + ImxPtr imxPtr = IMXPTR(pScrn); +@@ -344,7 +345,7 @@ imxExaZ160GetPixmapProperties( + #else + + /* Access screen associated with this pixmap. */ +- ScrnInfoPtr pScrn = xf86Screens[pPixmap->drawable.pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pPixmap->drawable.pScreen); + + /* Make sure pixmap is in framebuffer */ + if (!exaDrawableIsOffscreen(&(pPixmap->drawable))) { +@@ -856,7 +857,7 @@ imxExaZ160SyncIfBusyPixmap(PixmapPtr pPixmap) + { + /* Access screen associated with this pixmap. */ + ScreenPtr pScreen = pPixmap->drawable.pScreen; +- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); + + /* Access driver specific data for screen. */ + ImxPtr imxPtr = IMXPTR(pScrn); +@@ -924,7 +925,7 @@ imxExaZ160CreatePixmap2(ScreenPtr pScreen, int width, int height, + } + + /* Access the driver specific data. */ +- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); + ImxPtr imxPtr = IMXPTR(pScrn); + ImxExaZ160Ptr fPtr = IMXEXAZ160PTR(imxPtr); + +@@ -1028,7 +1029,7 @@ imxExaZ160DestroyPixmap(ScreenPtr pScreen, void *driverPriv) + ImxExaPixmapPtr fPixmapPtr = (ImxExaPixmapPtr)driverPriv; + + /* Access the driver specific data. */ +- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); + ImxPtr imxPtr = IMXPTR(pScrn); + ImxExaZ160Ptr fPtr = IMXEXAZ160PTR(imxPtr); + +@@ -1068,7 +1069,7 @@ imxExaZ160ModifyPixmapHeader(PixmapPtr pPixmap, int width, int height, + } + + /* Access screen associated with this pixmap */ +- ScrnInfoPtr pScrn = xf86Screens[pPixmap->drawable.pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pPixmap->drawable.pScreen); + + /* Access driver specific data */ + ImxPtr imxPtr = IMXPTR(pScrn); +@@ -1194,7 +1195,7 @@ imxExaZ160TrackBusyPixmap(ImxExaZ160Ptr fPtr, PixmapPtr pPixmap) + static void + imxExaZ160WaitMarker(ScreenPtr pScreen, int marker) + { +- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); + + /* Access driver specific data associated with the screen. */ + ImxPtr imxPtr = IMXPTR(pScrn); +@@ -1249,7 +1250,7 @@ imxExaZ160PrepareSolid(PixmapPtr pPixmap, int alu, Pixel planemask, Pixel fg) + } + + /* Access screen associated with this pixmap */ +- ScrnInfoPtr pScrn = xf86Screens[pPixmap->drawable.pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pPixmap->drawable.pScreen); + + /* Access driver specific data */ + ImxPtr imxPtr = IMXPTR(pScrn); +@@ -1352,7 +1353,7 @@ static void + imxExaZ160Solid(PixmapPtr pPixmap, int x1, int y1, int x2, int y2) + { + /* Access screen associated with this pixmap */ +- ScrnInfoPtr pScrn = xf86Screens[pPixmap->drawable.pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pPixmap->drawable.pScreen); + + /* Access driver specific data */ + ImxPtr imxPtr = IMXPTR(pScrn); +@@ -1423,7 +1424,7 @@ static void + imxExaZ160DoneSolid(PixmapPtr pPixmap) + { + /* Access screen associated with this pixmap */ +- ScrnInfoPtr pScrn = xf86Screens[pPixmap->drawable.pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pPixmap->drawable.pScreen); + + /* Access driver specific data */ + ImxPtr imxPtr = IMXPTR(pScrn); +@@ -1485,7 +1486,7 @@ imxExaZ160PrepareCopy( + } + + /* Access the screen associated with this pixmap. */ +- ScrnInfoPtr pScrn = xf86Screens[pPixmapDst->drawable.pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pPixmapDst->drawable.pScreen); + + /* Access driver specific data */ + ImxPtr imxPtr = IMXPTR(pScrn); +@@ -1599,7 +1600,7 @@ static void + imxExaZ160Copy(PixmapPtr pPixmapDst, int srcX, int srcY, int dstX, int dstY, int width, int height) + { + /* Access screen associated with dst pixmap */ +- ScrnInfoPtr pScrn = xf86Screens[pPixmapDst->drawable.pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pPixmapDst->drawable.pScreen); + + /* Access driver specific data */ + ImxPtr imxPtr = IMXPTR(pScrn); +@@ -1661,7 +1662,7 @@ static void + imxExaZ160DoneCopy(PixmapPtr pPixmapDst) + { + /* Access screen associated with this pixmap */ +- ScrnInfoPtr pScrn = xf86Screens[pPixmapDst->drawable.pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pPixmapDst->drawable.pScreen); + + /* Access driver specific data */ + ImxPtr imxPtr = IMXPTR(pScrn); +@@ -1770,7 +1771,7 @@ imxExaZ160CheckComposite(int op, PicturePtr pPictureSrc, PicturePtr pPictureMask + } + + /* Access screen associated with dst pixmap (same screen as for src pixmap). */ +- ScrnInfoPtr pScrn = xf86Screens[pPixmapDst->drawable.pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pPixmapDst->drawable.pScreen); + + /* Check the number of entities, and fail if it isn't one. */ + if (pScrn->numEntities != 1) { +@@ -1987,7 +1988,7 @@ imxExaZ160PrepareComposite( + { + /* Access screen associated with dst pixmap. */ + /* Should be same screen as for src pixmap. */ +- ScrnInfoPtr pScrn = xf86Screens[pPixmapDst->drawable.pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pPixmapDst->drawable.pScreen); + + /* NOTE - many preconditions already verified in CheckComposite. */ + +@@ -2196,7 +2197,7 @@ imxExaZ160Composite( + int height) + { + /* Access screen associated with dst pixmap */ +- ScrnInfoPtr pScrn = xf86Screens[pPixmapDst->drawable.pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pPixmapDst->drawable.pScreen); + + /* Access driver specific data */ + ImxPtr imxPtr = IMXPTR(pScrn); +@@ -2275,7 +2276,7 @@ static void + imxExaZ160DoneComposite(PixmapPtr pPixmapDst) + { + /* Access screen associated with this pixmap */ +- ScrnInfoPtr pScrn = xf86Screens[pPixmapDst->drawable.pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pPixmapDst->drawable.pScreen); + + /* Access driver specific data */ + ImxPtr imxPtr = IMXPTR(pScrn); +@@ -2323,7 +2324,7 @@ imxExaZ160UploadToScreen( + + /* Access screen associated with this pixmap */ + ScreenPtr pScreen = pPixmapDst->drawable.pScreen; +- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); + + /* Access driver specific data */ + ImxPtr imxPtr = IMXPTR(pScrn); +@@ -2381,7 +2382,7 @@ imxExaZ160DownloadFromScreen( + + /* Access screen associated with this pixmap */ + ScreenPtr pScreen = pPixmapSrc->drawable.pScreen; +- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); + + /* Access driver specific data */ + ImxPtr imxPtr = IMXPTR(pScrn); +@@ -2412,9 +2413,9 @@ imxExaZ160DownloadFromScreen( + } + + Bool +-imxExaZ160CloseScreen(int scrnIndex, ScreenPtr pScreen) ++imxExaZ160CloseScreen(CLOSE_SCREEN_ARGS_DECL) + { +- ScrnInfoPtr pScrn = xf86Screens[scrnIndex]; ++ CLOSE_SCREEN_DECL_ScrnInfoPtr; + ImxPtr imxPtr = IMXPTR(pScrn); + + ImxExaZ160Ptr fPtr = IMXEXAZ160PTR(imxPtr); +@@ -2504,7 +2505,7 @@ imxExaZ160CloseScreen(int scrnIndex, ScreenPtr pScreen) + /* Install our CloseScreen function so that it gets called. */ + if (NULL != pScreen->CloseScreen) { + +- return (*pScreen->CloseScreen)(scrnIndex, pScreen); ++ return (*pScreen->CloseScreen)(CLOSE_SCREEN_ARGS); + } + + return TRUE; +@@ -2514,7 +2515,7 @@ Bool + imxExaZ160Setup(int scrnIndex, ScreenPtr pScreen) + { + /* Access the screen info and then private data structures. */ +- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; ++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); + ImxPtr imxPtr = IMXPTR(pScrn); + + /* Private data structure must not already be in use. */ +@@ -2582,7 +2583,7 @@ imxExaZ160Setup(int scrnIndex, ScreenPtr pScreen) + + xf86DrvMsg(pScrn->scrnIndex, X_ERROR, + "Initialize Z160 interfaces failed.\n"); +- imxExaZ160CloseScreen(scrnIndex, pScreen); ++ imxExaZ160CloseScreen(CLOSE_SCREEN_ARGS); + return FALSE; + } + +@@ -2592,7 +2593,7 @@ imxExaZ160Setup(int scrnIndex, ScreenPtr pScreen) + + xf86DrvMsg(pScrn->scrnIndex, X_ERROR, + "Allocate EXA driver structure.\n"); +- imxExaZ160CloseScreen(scrnIndex, pScreen); ++ imxExaZ160CloseScreen(CLOSE_SCREEN_ARGS); + return FALSE; + } + +@@ -2657,7 +2658,7 @@ imxExaZ160Setup(int scrnIndex, ScreenPtr pScreen) + if (!exaDriverInit(pScreen, exaDriverPtr)) { + + xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "EXA initialization failed.\n"); +- imxExaZ160CloseScreen(scrnIndex, pScreen); ++ imxExaZ160CloseScreen(CLOSE_SCREEN_ARGS); + return FALSE; + } + fPtr->imxExaRec.exaDriverPtr = exaDriverPtr; +diff --git a/src/imx_xv_ipu.c b/src/imx_xv_ipu.c +index a517742..fc8a827 100644 +--- a/src/imx_xv_ipu.c ++++ b/src/imx_xv_ipu.c +@@ -398,7 +398,7 @@ xf86XVFillKeyHelper1 (ScreenPtr pScreen, CARD32 key, RegionPtr clipboxes) + xRectangle *rects; + GCPtr gc; + +- if(!xf86Screens[pScreen->myNum]->vtSema) return; ++ if(!xf86ScreenToScrn(pScreen)->vtSema) return; + + gc = GetScratchGC(root->depth, pScreen); + pval[0] = key; +@@ -771,7 +771,7 @@ MXXVInitializeAdaptor + XF86VideoAdaptorPtr **pppAdaptor + ) + { +- ScreenPtr pScreen = screenInfo.screens[pScreenInfo->scrnIndex]; ++ ScreenPtr pScreen = xf86ScrnToScreen(pScreenInfo); + XF86VideoAdaptorPtr *ppAdaptor = NULL; + IMXPtr fPtr = IMXPTR(pScreenInfo); + int nAdaptor; +-- +1.7.10.4 + diff --git a/package/x11r7/xdriver_xf86-video-imx/0005-xf86-video-imxfb-fix-m4-hardcodded-paths.patch b/package/x11r7/xdriver_xf86-video-imx/0005-xf86-video-imxfb-fix-m4-hardcodded-paths.patch new file mode 100644 index 00000000..64af7732 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-imx/0005-xf86-video-imxfb-fix-m4-hardcodded-paths.patch @@ -0,0 +1,53 @@ +From 5b348e7be67957f4be6fcfa4942128c04f6db905 Mon Sep 17 00:00:00 2001 +From: Adrian Alonso +Date: Thu, 4 Aug 2011 14:24:26 -0500 +Subject: [PATCH] xf86-video-imxfb: fix m4 hardcodded paths + +* Fix m4 macros lookup location; remove /usr/share/aclocal path + +Signed-off-by: Adrian Alonso +--- + Makefile.am | 2 +- + Makefile.in | 2 +- + configure.ac | 2 +- + 3 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index 6752256..e205657 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -20,4 +20,4 @@ + + AUTOMAKE_OPTIONS = foreign + SUBDIRS = src +-ACLOCAL_AMFLAGS = -I /usr/share/aclocal ++ACLOCAL_AMFLAGS = -I m4 +diff --git a/Makefile.in b/Makefile.in +index 5c0ba0e..f829db7 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -243,7 +243,7 @@ top_builddir = @top_builddir@ + top_srcdir = @top_srcdir@ + AUTOMAKE_OPTIONS = foreign + SUBDIRS = src +-ACLOCAL_AMFLAGS = -I /usr/share/aclocal ++ACLOCAL_AMFLAGS = -I m4 + all: config.h + $(MAKE) $(AM_MAKEFLAGS) all-recursive + +diff --git a/configure.ac b/configure.ac +index a1ac73b..0078b86 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -29,7 +29,7 @@ AC_INIT([xf86-video-imx], + AC_CONFIG_SRCDIR([Makefile.am]) + AM_CONFIG_HEADER([config.h]) + AC_CONFIG_AUX_DIR(.) +-AC_CONFIG_MACRO_DIR([/usr/share/aclocal]) ++AC_CONFIG_MACRO_DIR([m4]) + + AM_INIT_AUTOMAKE([dist-bzip2]) + +-- +1.7.4.1 + diff --git a/package/x11r7/xdriver_xf86-video-imx/0006-xserver-1.14-compat.patch b/package/x11r7/xdriver_xf86-video-imx/0006-xserver-1.14-compat.patch new file mode 100644 index 00000000..14ccbbf9 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-imx/0006-xserver-1.14-compat.patch @@ -0,0 +1,34 @@ +Fix building using new Xorg 1.14 + +mibstore functions are no longer supported. This patch removes them +from this driver, following the pattern in +http://patches.openembedded.org/patch/46133/ + +This checkin shows when/where the changes to the X server were made +that deleted the header mibstore.h and mentions the reasons. +http://lists.x.org/archives/xorg-devel/2012-September/033575.html + +Upstream-Status: Pending + +Signed-off-by: Otavio Salvador + +Index: xserver-xorg-video-imx-11.09.01/src/imx_driver.c +=================================================================== +--- xserver-xorg-video-imx-11.09.01.orig/src/imx_driver.c ++++ xserver-xorg-video-imx-11.09.01/src/imx_driver.c +@@ -37,7 +37,6 @@ + #include "xf86_OSproc.h" + + #include "mipointer.h" +-#include "mibstore.h" + #include "micmap.h" + #include "colormapst.h" + #include "xf86cmap.h" +@@ -722,7 +721,6 @@ imxScreenInit(SCREEN_INIT_ARGS_DECL) + /* Initialize for X extensions. */ + imxExtInit(); + +- miInitializeBackingStore(pScreen); + xf86SetBackingStore(pScreen); + + /* software cursor */ diff --git a/package/x11r7/xdriver_xf86-video-imx/Config.in b/package/x11r7/xdriver_xf86-video-imx/Config.in new file mode 100644 index 00000000..410a4584 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-imx/Config.in @@ -0,0 +1,27 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_IMX + bool "xf86-video-imx" + depends on BR2_ARM_EABI # libz160 + depends on BR2_TOOLCHAIN_USES_GLIBC # libz160 + depends on BR2_LINUX_KERNEL # linux/mxcfb.h + depends on BR2_PACKAGE_GPU_AMD_BIN_MX51_OUTPUT_X11 + select BR2_PACKAGE_LIBZ160 + select BR2_PACKAGE_XORGPROTO + help + X.Org driver for iMX5 GPU + + To use this driver, add the correct configuration to your + /etc/X11/xorg.conf, as follows: + + Section "Device" + [...] + Driver "imx" + Option "fbdev" "/dev/fb0" + EndSection + +comment "xf86-video-imx needs an EABI toolchain w/ glibc" + depends on BR2_arm + depends on !BR2_ARM_EABI || !BR2_TOOLCHAIN_USES_GLIBC + +comment "xf86-video-imx needs gpu-amd-bin-mx51 with X11 output and a Linux kernel to be built" + depends on BR2_arm + depends on !BR2_LINUX_KERNEL || !BR2_PACKAGE_GPU_AMD_BIN_MX51_OUTPUT_X11 diff --git a/package/x11r7/xdriver_xf86-video-imx/xdriver_xf86-video-imx.hash b/package/x11r7/xdriver_xf86-video-imx/xdriver_xf86-video-imx.hash new file mode 100644 index 00000000..e2a36c55 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-imx/xdriver_xf86-video-imx.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 d7d85e9f13c6dd58addab89847f3a8a67f6382a54135c7978c9a95368af024d4 xserver-xorg-video-imx-11.09.01.tar.gz diff --git a/package/x11r7/xdriver_xf86-video-imx/xdriver_xf86-video-imx.mk b/package/x11r7/xdriver_xf86-video-imx/xdriver_xf86-video-imx.mk new file mode 100644 index 00000000..b80c6b77 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-imx/xdriver_xf86-video-imx.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xdriver_xf86-video-imx +# +################################################################################ + +XDRIVER_XF86_VIDEO_IMX_VERSION = 11.09.01 +XDRIVER_XF86_VIDEO_IMX_SOURCE = xserver-xorg-video-imx-$(XDRIVER_XF86_VIDEO_IMX_VERSION).tar.gz +XDRIVER_XF86_VIDEO_IMX_SITE = $(FREESCALE_IMX_SITE) +XDRIVER_XF86_VIDEO_IMX_DEPENDENCIES = linux libz160 xserver_xorg-server \ + xorgproto +XDRIVER_XF86_VIDEO_IMX_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -I$(LINUX_DIR)/include" + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-intel/Config.in b/package/x11r7/xdriver_xf86-video-intel/Config.in new file mode 100644 index 00000000..c4152b7c --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-intel/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_INTEL + bool "xf86-video-intel" + depends on (BR2_i386 || BR2_x86_64) + select BR2_PACKAGE_LIBPCIACCESS + select BR2_PACKAGE_LIBDRM + select BR2_PACKAGE_LIBDRM_INTEL + select BR2_PACKAGE_XLIB_LIBXRANDR + select BR2_PACKAGE_XORGPROTO + help + Intel video driver diff --git a/package/x11r7/xdriver_xf86-video-intel/xdriver_xf86-video-intel.hash b/package/x11r7/xdriver_xf86-video-intel/xdriver_xf86-video-intel.hash new file mode 100644 index 00000000..4e41bda1 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-intel/xdriver_xf86-video-intel.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 e121871de0396caff0349d761033aa4c0618d27b1ad5d79dab6c8246d9fb50d1 xdriver_xf86-video-intel-5ca3ac1a90af177eb111a965e9b4dd8a27cc58fc-br1.tar.gz +sha256 5808e89f4b9a30afc59f335bfa8219ecf2dacb89a81d16b322bc6d92993a48fa COPYING diff --git a/package/x11r7/xdriver_xf86-video-intel/xdriver_xf86-video-intel.mk b/package/x11r7/xdriver_xf86-video-intel/xdriver_xf86-video-intel.mk new file mode 100644 index 00000000..ac598cf0 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-intel/xdriver_xf86-video-intel.mk @@ -0,0 +1,41 @@ +################################################################################ +# +# xdriver_xf86-video-intel +# +################################################################################ + +XDRIVER_XF86_VIDEO_INTEL_VERSION = 5ca3ac1a90af177eb111a965e9b4dd8a27cc58fc +XDRIVER_XF86_VIDEO_INTEL_SITE = git://anongit.freedesktop.org/xorg/driver/xf86-video-intel +XDRIVER_XF86_VIDEO_INTEL_LICENSE = MIT +XDRIVER_XF86_VIDEO_INTEL_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_INTEL_AUTORECONF = YES + +# -D_GNU_SOURCE fixes a getline-related compile error in src/sna/kgem.c +# We force -O2 regardless of the optimization level chosen by the user, +# as compiling this package is known to be broken with -Os. +XDRIVER_XF86_VIDEO_INTEL_CONF_ENV = \ + CFLAGS="$(TARGET_CFLAGS) -D_GNU_SOURCE -O2" + +XDRIVER_XF86_VIDEO_INTEL_CONF_OPTS = \ + --disable-xvmc \ + --enable-sna \ + --disable-xaa \ + --disable-dga \ + --disable-async-swap + +XDRIVER_XF86_VIDEO_INTEL_DEPENDENCIES = \ + libdrm \ + libpciaccess \ + xlib_libXrandr \ + xorgproto \ + xserver_xorg-server + +# X.org server support for DRI depends on a Mesa3D DRI driver +ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER),y) +XDRIVER_XF86_VIDEO_INTEL_CONF_OPTS += \ + --enable-dri2 \ + --enable-dri3 \ + --enable-uxa +endif + +$(eval $(autotools-package)) 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 index 00000000..d2761760 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-mach64/0001-cross-compile.patch @@ -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/Config.in b/package/x11r7/xdriver_xf86-video-mach64/Config.in new file mode 100644 index 00000000..71c89dd2 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-mach64/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_MACH64 + bool "xf86-video-mach64" + select BR2_PACKAGE_XORGPROTO + help + mach64 video driver diff --git a/package/x11r7/xdriver_xf86-video-mach64/xdriver_xf86-video-mach64.hash b/package/x11r7/xdriver_xf86-video-mach64/xdriver_xf86-video-mach64.hash new file mode 100644 index 00000000..55acd746 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-mach64/xdriver_xf86-video-mach64.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-May/002896.html +md5 0e12f9a3b5659e1e27e03adc42b04d99 xf86-video-mach64-6.9.6.tar.bz2 +sha1 1fdf0c3488ab88cb46b563efee166a5d54a01932 xf86-video-mach64-6.9.6.tar.bz2 +sha256 7a0707c71bb522430f83bb5e9d9ee697e661e35534a3a2d10834f86b327a3c9c xf86-video-mach64-6.9.6.tar.bz2 +sha512 687f6ac60491b704d5c4788463763d2f4bf725611e10bd2163156963fe0a8fdbffe0a1b7c737eff131f01759e43b5ec3544a7dabe66a67e85b286dcb969da2f1 xf86-video-mach64-6.9.6.tar.bz2 +# Locally computed +sha256 a7d68021893bced0d709338a59a137c74b11e624880e110e4a2f14ccef475120 COPYING diff --git a/package/x11r7/xdriver_xf86-video-mach64/xdriver_xf86-video-mach64.mk b/package/x11r7/xdriver_xf86-video-mach64/xdriver_xf86-video-mach64.mk new file mode 100644 index 00000000..e6f8d747 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-mach64/xdriver_xf86-video-mach64.mk @@ -0,0 +1,19 @@ +################################################################################ +# +# xdriver_xf86-video-mach64 +# +################################################################################ + +XDRIVER_XF86_VIDEO_MACH64_VERSION = 6.9.6 +XDRIVER_XF86_VIDEO_MACH64_SOURCE = xf86-video-mach64-$(XDRIVER_XF86_VIDEO_MACH64_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_MACH64_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_MACH64_LICENSE = MIT +XDRIVER_XF86_VIDEO_MACH64_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_MACH64_AUTORECONF = YES +XDRIVER_XF86_VIDEO_MACH64_DEPENDENCIES = xserver_xorg-server xorgproto + +ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER),) +XDRIVER_XF86_VIDEO_MACH64_CONF_OPTS = --disable-dri +endif + +$(eval $(autotools-package)) 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 index 00000000..5707bd1b --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-mga/0001-misc-fixes.patch @@ -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/Config.in b/package/x11r7/xdriver_xf86-video-mga/Config.in new file mode 100644 index 00000000..15fb3b9f --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-mga/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_MGA + bool "xf86-video-mga" + depends on BR2_PACKAGE_MESA3D + select BR2_PACKAGE_LIBDRM + select BR2_PACKAGE_XORGPROTO + help + Matrox video driver + +comment "xf86-video-mga needs mesa3d" + depends on !BR2_PACKAGE_MESA3D diff --git a/package/x11r7/xdriver_xf86-video-mga/xdriver_xf86-video-mga.hash b/package/x11r7/xdriver_xf86-video-mga/xdriver_xf86-video-mga.hash new file mode 100644 index 00000000..218e52e1 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-mga/xdriver_xf86-video-mga.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-December/002933.html +md5 b8fc99b4adea8bfe80156b13df4b6c9c xf86-video-mga-2.0.0.tar.bz2 +sha1 833f2710a1fd7b3f2db3700b2ad055527da5033b xf86-video-mga-2.0.0.tar.bz2 +sha256 268946e1a13e9d80e4f724a0740df9e6e8c8bad37697fcbf456924e9fdbb5d79 xf86-video-mga-2.0.0.tar.bz2 +sha512 b92006486aef815ff4399f291d610c65d88c0b32a9dae97658c644715ff62b221b01495b5c7a2311745e26f699c1c1f753b81c7bf54cf75567af9f78ac015540 xf86-video-mga-2.0.0.tar.bz2 +# Locally computed +sha256 6c567575e381478c7616eedff3ea2ae5228a5b54fbdd22d4070ebae312fa085c COPYING diff --git a/package/x11r7/xdriver_xf86-video-mga/xdriver_xf86-video-mga.mk b/package/x11r7/xdriver_xf86-video-mga/xdriver_xf86-video-mga.mk new file mode 100644 index 00000000..2720848a --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-mga/xdriver_xf86-video-mga.mk @@ -0,0 +1,19 @@ +################################################################################ +# +# xdriver_xf86-video-mga +# +################################################################################ + +XDRIVER_XF86_VIDEO_MGA_VERSION = 2.0.0 +XDRIVER_XF86_VIDEO_MGA_SOURCE = xf86-video-mga-$(XDRIVER_XF86_VIDEO_MGA_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_MGA_SITE = http://xorg.freedesktop.org/archive/individual/driver +XDRIVER_XF86_VIDEO_MGA_LICENSE = MIT +XDRIVER_XF86_VIDEO_MGA_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_MGA_AUTORECONF = YES +XDRIVER_XF86_VIDEO_MGA_DEPENDENCIES = xserver_xorg-server libdrm xorgproto + +ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER),) +XDRIVER_XF86_VIDEO_MGA_CONF_OPTS = --disable-dri +endif + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-neomagic/Config.in b/package/x11r7/xdriver_xf86-video-neomagic/Config.in new file mode 100644 index 00000000..5f36a48f --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-neomagic/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_NEOMAGIC + bool "xf86-video-neomagic" + select BR2_PACKAGE_XORGPROTO + help + Neomagic video driver diff --git a/package/x11r7/xdriver_xf86-video-neomagic/xdriver_xf86-video-neomagic.hash b/package/x11r7/xdriver_xf86-video-neomagic/xdriver_xf86-video-neomagic.hash new file mode 100644 index 00000000..55996f5b --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-neomagic/xdriver_xf86-video-neomagic.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-December/002934.html +md5 349d5254d09eb46f2a1f151cd423b89a xf86-video-neomagic-1.3.0.tar.bz2 +sha1 6bccfa15ea05d5264120cd96ccf13687642e8f6d xf86-video-neomagic-1.3.0.tar.bz2 +sha256 93833950fae7757088eb6abb125e15e8c245e5e25681c19c3ad4213ec7319064 xf86-video-neomagic-1.3.0.tar.bz2 +sha512 25d019a2556e52aeb4e25942f444437a921e76d527c10ddd420f16aa7d85bf2b8a51612c382a2a7e3e407bb1e8d610d063101184eea0889c3e1a69bfb3b37735 xf86-video-neomagic-1.3.0.tar.bz2 +# Locally computed +sha256 95063ce9aa09850025dd317549ce688519079a8d3cf66ceb3d882cb2bafcced9 COPYING diff --git a/package/x11r7/xdriver_xf86-video-neomagic/xdriver_xf86-video-neomagic.mk b/package/x11r7/xdriver_xf86-video-neomagic/xdriver_xf86-video-neomagic.mk new file mode 100644 index 00000000..8dd2777f --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-neomagic/xdriver_xf86-video-neomagic.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xdriver_xf86-video-neomagic +# +################################################################################ + +XDRIVER_XF86_VIDEO_NEOMAGIC_VERSION = 1.3.0 +XDRIVER_XF86_VIDEO_NEOMAGIC_SOURCE = xf86-video-neomagic-$(XDRIVER_XF86_VIDEO_NEOMAGIC_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_NEOMAGIC_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_NEOMAGIC_LICENSE = MIT +XDRIVER_XF86_VIDEO_NEOMAGIC_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_NEOMAGIC_DEPENDENCIES = xserver_xorg-server xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-nouveau/Config.in b/package/x11r7/xdriver_xf86-video-nouveau/Config.in new file mode 100644 index 00000000..c9fd2e3d --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-nouveau/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_NOUVEAU + bool "xf86-video-nouveau" + depends on BR2_PACKAGE_MESA3D + select BR2_PACKAGE_MESA3D_DRI_DRIVER_NOUVEAU + select BR2_PACKAGE_LIBDRM + select BR2_PACKAGE_LIBDRM_NOUVEAU + select BR2_PACKAGE_XORGPROTO + help + Nouveau video driver + + http://nouveau.freedesktop.org + +comment "xf86-video-nouveau needs mesa3d" + depends on !BR2_PACKAGE_MESA3D diff --git a/package/x11r7/xdriver_xf86-video-nouveau/xdriver_xf86-video-nouveau.hash b/package/x11r7/xdriver_xf86-video-nouveau/xdriver_xf86-video-nouveau.hash new file mode 100644 index 00000000..b70728f9 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-nouveau/xdriver_xf86-video-nouveau.hash @@ -0,0 +1,7 @@ +# From https://lists.freedesktop.org/archives/nouveau/2019-January/032053.html +md5 ecd9be89d853301167e3d564c49f7a8e xf86-video-nouveau-1.0.16.tar.bz2 +sha1 a2d19439ceed315079207a62c6888a12e8489995 xf86-video-nouveau-1.0.16.tar.bz2 +sha256 304060806415579cdb5c1f71f1c54d11cacb431b5552b170decbc883ed43bf06 xf86-video-nouveau-1.0.16.tar.bz2 +sha512 41b7839c37372660968ab7da2bc3d9feef3cab4e994d05d4ba6e59071f0d1b1f8d7dcdbcb15a42a375a556d28dc067f9ffe45d73c1d121ad307d199107ade3e0 xf86-video-nouveau-1.0.16.tar.bz2 +# Locally computed +sha256 27d8cbdcde7a0bd062ce49cdf8c672201452a64e3e6823f09b1beffe2c4b8eff COPYING diff --git a/package/x11r7/xdriver_xf86-video-nouveau/xdriver_xf86-video-nouveau.mk b/package/x11r7/xdriver_xf86-video-nouveau/xdriver_xf86-video-nouveau.mk new file mode 100644 index 00000000..d85cbfe4 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-nouveau/xdriver_xf86-video-nouveau.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# xdriver_xf86-video-nouveau +# +################################################################################ + +XDRIVER_XF86_VIDEO_NOUVEAU_VERSION = 1.0.16 +XDRIVER_XF86_VIDEO_NOUVEAU_SOURCE = xf86-video-nouveau-$(XDRIVER_XF86_VIDEO_NOUVEAU_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_NOUVEAU_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_NOUVEAU_LICENSE = MIT +XDRIVER_XF86_VIDEO_NOUVEAU_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_NOUVEAU_DEPENDENCIES = \ + host-pkgconf \ + libdrm \ + xorgproto \ + xserver_xorg-server + +# xdriver_xf86-video-nouveau requires O_CLOEXEC +XDRIVER_XF86_VIDEO_NOUVEAU_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -D_GNU_SOURCE" + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-nv/Config.in b/package/x11r7/xdriver_xf86-video-nv/Config.in new file mode 100644 index 00000000..5ff8b798 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-nv/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_NV + bool "xf86-video-nv" + select BR2_PACKAGE_XORGPROTO + help + NVIDIA video driver diff --git a/package/x11r7/xdriver_xf86-video-nv/xdriver_xf86-video-nv.hash b/package/x11r7/xdriver_xf86-video-nv/xdriver_xf86-video-nv.hash new file mode 100644 index 00000000..e1835687 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-nv/xdriver_xf86-video-nv.hash @@ -0,0 +1,4 @@ +# From https://lists.x.org/archives/xorg-announce/2017-January/002761.html +sha256 1f98649e6ff0e8214b9d5dcac661f1d004be8e73823d8247b9c7025fd81db32d xf86-video-nv-2.1.21.tar.bz2 +# Locally calculated +sha256 10d10e1ec37594d481c3de8dda22a40b731ebd43be7ccd462baaa7394738a9f3 COPYING diff --git a/package/x11r7/xdriver_xf86-video-nv/xdriver_xf86-video-nv.mk b/package/x11r7/xdriver_xf86-video-nv/xdriver_xf86-video-nv.mk new file mode 100644 index 00000000..1e5fc26d --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-nv/xdriver_xf86-video-nv.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xdriver_xf86-video-nv +# +################################################################################ + +XDRIVER_XF86_VIDEO_NV_VERSION = 2.1.21 +XDRIVER_XF86_VIDEO_NV_SOURCE = xf86-video-nv-$(XDRIVER_XF86_VIDEO_NV_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_NV_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_NV_LICENSE = MIT +XDRIVER_XF86_VIDEO_NV_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_NV_DEPENDENCIES = xserver_xorg-server xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-openchrome/Config.in b/package/x11r7/xdriver_xf86-video-openchrome/Config.in new file mode 100644 index 00000000..a93d1437 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-openchrome/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_OPENCHROME + bool "xf86-video-openchrome" + depends on BR2_PACKAGE_MESA3D_DRI_DRIVER + select BR2_PACKAGE_LIBDRM + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXCOMPOSITE + select BR2_PACKAGE_XLIB_LIBXVMC + select BR2_PACKAGE_XORGPROTO + help + Openchrome, A free and Open Source video driver for the + VIA/S3G UniChrome and UniChrome Pro graphics chipsets. + + https://www.freedesktop.org/wiki/Openchrome/ + +comment "xf86-video-openchrome needs a DRI driver from mesa3d" + depends on !BR2_PACKAGE_MESA3D_DRI_DRIVER diff --git a/package/x11r7/xdriver_xf86-video-openchrome/xdriver_xf86-video-openchrome.hash b/package/x11r7/xdriver_xf86-video-openchrome/xdriver_xf86-video-openchrome.hash new file mode 100644 index 00000000..57cc9aca --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-openchrome/xdriver_xf86-video-openchrome.hash @@ -0,0 +1,6 @@ +# From https://lists.x.org/archives/xorg-announce/2017-March/002781.html +md5 c87f164739729b00f7e1a9934420c22d xf86-video-openchrome-0.6.0.tar.bz2 +sha1 2077181ded4d86e9cbe6d3e9b1245339692e848d xf86-video-openchrome-0.6.0.tar.bz2 +sha256 da2975c6379358de52c1257710c67eb59139a7f0a1cd28d00cc64cc3e1c02f75 xf86-video-openchrome-0.6.0.tar.bz2 +# Locally computed +sha256 1fde58bce5cff8c32e9a0a80bfa3e60213a2767954e30a367127d5afa2884ca2 COPYING diff --git a/package/x11r7/xdriver_xf86-video-openchrome/xdriver_xf86-video-openchrome.mk b/package/x11r7/xdriver_xf86-video-openchrome/xdriver_xf86-video-openchrome.mk new file mode 100644 index 00000000..db9e11f6 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-openchrome/xdriver_xf86-video-openchrome.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# xdriver_xf86-video-openchrome +# +################################################################################ + +XDRIVER_XF86_VIDEO_OPENCHROME_VERSION = 0.6.0 +XDRIVER_XF86_VIDEO_OPENCHROME_SOURCE = xf86-video-openchrome-$(XDRIVER_XF86_VIDEO_OPENCHROME_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_OPENCHROME_SITE = http://xorg.freedesktop.org/archive/individual/driver +XDRIVER_XF86_VIDEO_OPENCHROME_LICENSE = MIT +XDRIVER_XF86_VIDEO_OPENCHROME_LICENSE_FILES = COPYING + +XDRIVER_XF86_VIDEO_OPENCHROME_DEPENDENCIES = \ + xserver_xorg-server \ + libdrm \ + xlib_libX11 \ + xlib_libXcomposite \ + xlib_libXvMC \ + xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-qxl/Config.in b/package/x11r7/xdriver_xf86-video-qxl/Config.in new file mode 100644 index 00000000..40f61fd6 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-qxl/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_QXL + bool "xf86-video-qxl" + depends on (BR2_i386 || BR2_x86_64) + select BR2_PACKAGE_LIBDRM if BR2_PACKAGE_HAS_UDEV # for KMS + select BR2_PACKAGE_LIBPCIACCESS + select BR2_PACKAGE_SPICE_PROTOCOL + select BR2_PACKAGE_XLIB_LIBXFONT2 if !BR2_PACKAGE_XLIB_LIBXFONT + select BR2_PACKAGE_XORGPROTO + help + QEMU QXL paravirt video driver + + http://www.spice-space.org/page/XorgQXL diff --git a/package/x11r7/xdriver_xf86-video-qxl/xdriver_xf86-video-qxl.hash b/package/x11r7/xdriver_xf86-video-qxl/xdriver_xf86-video-qxl.hash new file mode 100644 index 00000000..fdf0cc43 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-qxl/xdriver_xf86-video-qxl.hash @@ -0,0 +1,4 @@ +# From https://lists.x.org/archives/xorg-announce/2016-December/002753.html +sha256 b18682e04503c6326f7bf7190f3ee50a3d4d69758a2a3cc9af102a6b3f114c92 xf86-video-qxl-0.1.5.tar.bz2 +# Locally calculated +sha256 83f3bf7be3fbf5e66174b8184bd837a6b44264f8e340126ea4d9e9ce956a1866 COPYING diff --git a/package/x11r7/xdriver_xf86-video-qxl/xdriver_xf86-video-qxl.mk b/package/x11r7/xdriver_xf86-video-qxl/xdriver_xf86-video-qxl.mk new file mode 100644 index 00000000..ffbac05e --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-qxl/xdriver_xf86-video-qxl.mk @@ -0,0 +1,37 @@ +################################################################################ +# +# xdriver_xf86-video-qxl +# +################################################################################ + +XDRIVER_XF86_VIDEO_QXL_VERSION = 0.1.5 +XDRIVER_XF86_VIDEO_QXL_SOURCE = xf86-video-qxl-$(XDRIVER_XF86_VIDEO_QXL_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_QXL_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_QXL_LICENSE = MIT +XDRIVER_XF86_VIDEO_QXL_LICENSE_FILES = COPYING + +XDRIVER_XF86_VIDEO_QXL_CONF_OPTS = \ + --enable-xspice=no + +XDRIVER_XF86_VIDEO_QXL_DEPENDENCIES = \ + libpciaccess \ + spice-protocol \ + xorgproto \ + xserver_xorg-server + +# configure doesn't look for drm headers in the appropiate place, so help it +# libdrm is only useful with udev for KMS +ifeq ($(BR2_PACKAGE_HAS_UDEV),y) +XDRIVER_XF86_VIDEO_QXL_CONF_ENV += REQUIRED_MODULES=libdrm +XDRIVER_XF86_VIDEO_QXL_DEPENDENCIES += libdrm +else +XDRIVER_XF86_VIDEO_QXL_CONF_OPTS += --disable-kms +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXFONT2),y) +XDRIVER_XF86_VIDEO_QXL_DEPENDENCIES += xlib_libXfont2 +else +XDRIVER_XF86_VIDEO_QXL_DEPENDENCIES += xlib_libXfont +endif + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-r128/Config.in b/package/x11r7/xdriver_xf86-video-r128/Config.in new file mode 100644 index 00000000..e1e2dd2f --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-r128/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_R128 + bool "xf86-video-r128" + select BR2_PACKAGE_XORGPROTO + help + R128 video driver diff --git a/package/x11r7/xdriver_xf86-video-r128/xdriver_xf86-video-r128.hash b/package/x11r7/xdriver_xf86-video-r128/xdriver_xf86-video-r128.hash new file mode 100644 index 00000000..eee28650 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-r128/xdriver_xf86-video-r128.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-October/002926.html +md5 105ebcfe1bac06fe84645ac3def91184 xf86-video-r128-6.12.0.tar.bz2 +sha1 7cfa41d386fa43b5d30299203e4845d8afba4899 xf86-video-r128-6.12.0.tar.bz2 +sha256 801c86882cbd2bbb3084d471dcc5cfee2c1754dcbfb4dc446676d58a6bd9e057 xf86-video-r128-6.12.0.tar.bz2 +sha512 0e667e2cfa8a87a00846361d86528c93754c403c812b66798953fa4c857b2143b2c4c44885da467e7f910d8cb910b69492cdcb6f25e2197bae6617364d152e38 xf86-video-r128-6.12.0.tar.bz2 +# Locally computed +sha256 69f7c71859dc8f51aabdbe7a9ee915a480933eb81658f8af2bf4c918e65afe8b COPYING diff --git a/package/x11r7/xdriver_xf86-video-r128/xdriver_xf86-video-r128.mk b/package/x11r7/xdriver_xf86-video-r128/xdriver_xf86-video-r128.mk new file mode 100644 index 00000000..455cfbad --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-r128/xdriver_xf86-video-r128.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# xdriver_xf86-video-r128 +# +################################################################################ + +XDRIVER_XF86_VIDEO_R128_VERSION = 6.12.0 +XDRIVER_XF86_VIDEO_R128_SOURCE = xf86-video-r128-$(XDRIVER_XF86_VIDEO_R128_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_R128_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_R128_LICENSE = MIT +XDRIVER_XF86_VIDEO_R128_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_R128_DEPENDENCIES = xserver_xorg-server xorgproto + +ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER),) +XDRIVER_XF86_VIDEO_R128_CONF_OPTS = --disable-dri +endif + +$(eval $(autotools-package)) 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 index 00000000..b9c296b6 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-savage/0001-cross-compile.patch @@ -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/0002-xorg-xserver120.patch b/package/x11r7/xdriver_xf86-video-savage/0002-xorg-xserver120.patch new file mode 100644 index 00000000..4c695960 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-savage/0002-xorg-xserver120.patch @@ -0,0 +1,23 @@ +Fix build with modular-xorg-server-1.20 + +Downloaded from +http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/x11/xf86-video-savage/patches/patch-src_savage__driver.c?rev=1.3&content-type=text/x-cvsweb-markup + +Patch was sent upstream by Thomas Klausner : +https://lists.x.org/archives/xorg-devel/2018-May/056952.html + +Signed-off-by: Bernd Kuhls + +--- a/src/savage_driver.c.orig 2017-01-17 22:43:40.000000000 +0000 ++++ b/src/savage_driver.c +@@ -2034,8 +2034,10 @@ static Bool SavagePreInit(ScrnInfoPtr pS + xf86DrvMsg(pScrn->scrnIndex, X_PROBED, "Detected current MCLK value of %1.3f MHz\n", + mclk / 1000.0); + ++#if 0 + pScrn->maxHValue = 2048 << 3; /* 11 bits of h_total 8-pixel units */ + pScrn->maxVValue = 2048; /* 11 bits of v_total */ ++#endif + pScrn->virtualX = pScrn->display->virtualX; + pScrn->virtualY = pScrn->display->virtualY; + diff --git a/package/x11r7/xdriver_xf86-video-savage/Config.in b/package/x11r7/xdriver_xf86-video-savage/Config.in new file mode 100644 index 00000000..bc6ca523 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-savage/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_SAVAGE + bool "xf86-video-savage" + depends on BR2_PACKAGE_MESA3D + select BR2_PACKAGE_LIBDRM + select BR2_PACKAGE_XORGPROTO + help + S3 Savage video driver + +comment "xf86-video-savage needs mesa3d" + depends on !BR2_PACKAGE_MESA3D diff --git a/package/x11r7/xdriver_xf86-video-savage/xdriver_xf86-video-savage.hash b/package/x11r7/xdriver_xf86-video-savage/xdriver_xf86-video-savage.hash new file mode 100644 index 00000000..661c8749 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-savage/xdriver_xf86-video-savage.hash @@ -0,0 +1,4 @@ +# From https://lists.x.org/archives/xorg-announce/2017-January/002760.html +sha256 2c93c4db1f71e725dda0caee5821253129d4b52d7aa0fd720593e7769bceec86 xf86-video-savage-2.3.9.tar.bz2 +# Locally calculated +sha256 611f4020815e3d5011a39a58f0958262715cd3becd9cb1ef14cc166fd84ec5a6 COPYING diff --git a/package/x11r7/xdriver_xf86-video-savage/xdriver_xf86-video-savage.mk b/package/x11r7/xdriver_xf86-video-savage/xdriver_xf86-video-savage.mk new file mode 100644 index 00000000..d7311aa9 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-savage/xdriver_xf86-video-savage.mk @@ -0,0 +1,19 @@ +################################################################################ +# +# xdriver_xf86-video-savage +# +################################################################################ + +XDRIVER_XF86_VIDEO_SAVAGE_VERSION = 2.3.9 +XDRIVER_XF86_VIDEO_SAVAGE_SOURCE = xf86-video-savage-$(XDRIVER_XF86_VIDEO_SAVAGE_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_SAVAGE_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_SAVAGE_LICENSE = MIT +XDRIVER_XF86_VIDEO_SAVAGE_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_SAVAGE_AUTORECONF = YES +XDRIVER_XF86_VIDEO_SAVAGE_DEPENDENCIES = xserver_xorg-server libdrm xorgproto + +ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER),) +XDRIVER_XF86_VIDEO_SAVAGE_CONF_OPTS = --disable-dri +endif + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-siliconmotion/Config.in b/package/x11r7/xdriver_xf86-video-siliconmotion/Config.in new file mode 100644 index 00000000..036a2f1c --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-siliconmotion/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_SILICONMOTION + bool "xf86-video-siliconmotion" + select BR2_PACKAGE_XORGPROTO + help + Silicon Motion video driver diff --git a/package/x11r7/xdriver_xf86-video-siliconmotion/xdriver_xf86-video-siliconmotion.hash b/package/x11r7/xdriver_xf86-video-siliconmotion/xdriver_xf86-video-siliconmotion.hash new file mode 100644 index 00000000..dc9a3503 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-siliconmotion/xdriver_xf86-video-siliconmotion.hash @@ -0,0 +1,4 @@ +# From https://lists.x.org/archives/xorg-announce/2017-January/002763.html +sha256 d0f3c691e71108d27a061beb62bf78b36ec35bd755905692734dd68cfb3359bc xf86-video-siliconmotion-1.7.9.tar.bz2 +# Locally calculated +sha256 e1e3ce7ce1f63fff96444206e09c8490ad7a4af7457c81ea6cdee4f1fee1f960 COPYING diff --git a/package/x11r7/xdriver_xf86-video-siliconmotion/xdriver_xf86-video-siliconmotion.mk b/package/x11r7/xdriver_xf86-video-siliconmotion/xdriver_xf86-video-siliconmotion.mk new file mode 100644 index 00000000..65fd8465 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-siliconmotion/xdriver_xf86-video-siliconmotion.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# xdriver_xf86-video-siliconmotion +# +################################################################################ + +XDRIVER_XF86_VIDEO_SILICONMOTION_VERSION = 1.7.9 +XDRIVER_XF86_VIDEO_SILICONMOTION_SOURCE = xf86-video-siliconmotion-$(XDRIVER_XF86_VIDEO_SILICONMOTION_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_SILICONMOTION_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_SILICONMOTION_LICENSE = MIT +XDRIVER_XF86_VIDEO_SILICONMOTION_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_SILICONMOTION_DEPENDENCIES = xserver_xorg-server xorgproto + +XDRIVER_XF86_VIDEO_SILICONMOTION_CONF_OPTS = --disable-selective-werror + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-sis/Config.in b/package/x11r7/xdriver_xf86-video-sis/Config.in new file mode 100644 index 00000000..db01cf2a --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-sis/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_SIS + bool "xf86-video-sis" + depends on BR2_PACKAGE_MESA3D + select BR2_PACKAGE_LIBDRM + select BR2_PACKAGE_XORGPROTO + help + SiS and XGI video driver + +comment "xf86-video-sis needs mesa3d" + depends on !BR2_PACKAGE_MESA3D diff --git a/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis.hash b/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis.hash new file mode 100644 index 00000000..f6709527 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-December/003033.html +md5 b8ec9c21758043b1480f11baec296f5d xf86-video-sis-0.12.0.tar.bz2 +sha1 d22f0d0081e222a62f9e788f5e73246c6d339f80 xf86-video-sis-0.12.0.tar.bz2 +sha256 119d3f17d53c862ec4bf891ed696a6f1d32cdf8bd11d944a9f0ad24625333a5b xf86-video-sis-0.12.0.tar.bz2 +sha512 5aa101e5217f15667f2c94f7a76f4afcf47717b61f5d206ce65efe35dc3f674ca294f98ca8586971c6467f31decdd94d8255ebfc7dc220fac0179afc61995952 xf86-video-sis-0.12.0.tar.bz2 +# Locally computed +sha256 e7958f9497a4daa3ae5aeaf885e4565520af2c540b6e4e04b52bf95d41d56c39 COPYING diff --git a/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis.mk b/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis.mk new file mode 100644 index 00000000..f96b0a9d --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# xdriver_xf86-video-sis +# +################################################################################ + +XDRIVER_XF86_VIDEO_SIS_VERSION = 0.12.0 +XDRIVER_XF86_VIDEO_SIS_SOURCE = xf86-video-sis-$(XDRIVER_XF86_VIDEO_SIS_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_SIS_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_SIS_LICENSE = MIT +XDRIVER_XF86_VIDEO_SIS_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_SIS_DEPENDENCIES = xserver_xorg-server libdrm xorgproto + +ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER),) +XDRIVER_XF86_VIDEO_SIS_CONF_OPTS += --disable-dri +endif + +$(eval $(autotools-package)) 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 index 00000000..e53591bb --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-tdfx/0001-cross.patch @@ -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/Config.in b/package/x11r7/xdriver_xf86-video-tdfx/Config.in new file mode 100644 index 00000000..959dc310 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-tdfx/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_TDFX + bool "xf86-video-tdfx" + depends on BR2_PACKAGE_MESA3D + select BR2_PACKAGE_LIBDRM + select BR2_PACKAGE_XORGPROTO + help + 3Dfx video driver + +comment "xf86-video-tdfx needs mesa3d" + depends on !BR2_PACKAGE_MESA3D diff --git a/package/x11r7/xdriver_xf86-video-tdfx/xdriver_xf86-video-tdfx.hash b/package/x11r7/xdriver_xf86-video-tdfx/xdriver_xf86-video-tdfx.hash new file mode 100644 index 00000000..5e9a88fb --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-tdfx/xdriver_xf86-video-tdfx.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-February/002944.html +md5 4697f0cc69ff1ff90bc770863c158d29 xf86-video-tdfx-1.5.0.tar.bz2 +sha1 8042dd0c2bc5a396b2cfeb5418b03059a089be25 xf86-video-tdfx-1.5.0.tar.bz2 +sha256 2f4580e1f66901dd578d6e1f73df8150fd4b8480eb0c9653d4c5d8e0f8e78561 xf86-video-tdfx-1.5.0.tar.bz2 +sha512 eca3359c7db56183a1cfcce7295e41ccc349005ee1cbcf75209f1e4e8e04e887ba511712ef35efc11c940713c8327b0b8ab8b6c86facf02062b3e84c0b1af5ff xf86-video-tdfx-1.5.0.tar.bz2 +# Locally computed +sha256 5bb3d3baff0b7bbef885215ca9c12a5be1a42c848c96601b699637557fbb41ec COPYING diff --git a/package/x11r7/xdriver_xf86-video-tdfx/xdriver_xf86-video-tdfx.mk b/package/x11r7/xdriver_xf86-video-tdfx/xdriver_xf86-video-tdfx.mk new file mode 100644 index 00000000..8975334f --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-tdfx/xdriver_xf86-video-tdfx.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xdriver_xf86-video-tdfx +# +################################################################################ + +XDRIVER_XF86_VIDEO_TDFX_VERSION = 1.5.0 +XDRIVER_XF86_VIDEO_TDFX_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_TDFX_SOURCE = xf86-video-tdfx-$(XDRIVER_XF86_VIDEO_TDFX_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_TDFX_LICENSE = MIT +XDRIVER_XF86_VIDEO_TDFX_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_TDFX_AUTORECONF = YES +XDRIVER_XF86_VIDEO_TDFX_DEPENDENCIES = \ + libdrm \ + xorgproto \ + xserver_xorg-server + +ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER),) +XDRIVER_XF86_VIDEO_TDFX_CONF_OPTS = --disable-dri +endif + +$(eval $(autotools-package)) 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 index 00000000..07bcd04f --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-tga/0001-mibstore.patch @@ -0,0 +1,47 @@ +From b7022db0559cd1b6cd3eb6b5abf6896a607b478d Mon Sep 17 00:00:00 2001 +From: Adam Jackson +Date: Tue, 25 Sep 2012 12:55:00 +0000 +Subject: Remove mibstore.h + +Signed-off-by: Adam Jackson +--- +Fetch from: +http://cgit.freedesktop.org/xorg/driver/xf86-video-tga/commit/?id=b7022db0559cd1b6cd3eb6b5abf6896a607b478d + +Signed-off-by: Bernd Kuhls + +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/Config.in b/package/x11r7/xdriver_xf86-video-tga/Config.in new file mode 100644 index 00000000..7c75661a --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-tga/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_TGA + bool "xf86-video-tga" + select BR2_PACKAGE_XORGPROTO + help + X.Org driver for tga cards diff --git a/package/x11r7/xdriver_xf86-video-tga/xdriver_xf86-video-tga.hash b/package/x11r7/xdriver_xf86-video-tga/xdriver_xf86-video-tga.hash new file mode 100644 index 00000000..4f8c1096 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-tga/xdriver_xf86-video-tga.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2012-July/002025.html +sha256 2023818000200eb50a59476e36d59b07a361b110e73b1d9cc526beb669306131 xf86-video-tga-1.2.2.tar.bz2 +# Locally calculated +sha256 92e36c6b7c99c8335e5823d53686e58ebd82ee8051a6360f60c8c0fb05745954 COPYING diff --git a/package/x11r7/xdriver_xf86-video-tga/xdriver_xf86-video-tga.mk b/package/x11r7/xdriver_xf86-video-tga/xdriver_xf86-video-tga.mk new file mode 100644 index 00000000..421b09be --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-tga/xdriver_xf86-video-tga.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xdriver_xf86-video-tga +# +################################################################################ + +XDRIVER_XF86_VIDEO_TGA_VERSION = 1.2.2 +XDRIVER_XF86_VIDEO_TGA_SOURCE = xf86-video-tga-$(XDRIVER_XF86_VIDEO_TGA_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_TGA_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_TGA_LICENSE = MIT +XDRIVER_XF86_VIDEO_TGA_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_TGA_DEPENDENCIES = xserver_xorg-server xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-trident/Config.in b/package/x11r7/xdriver_xf86-video-trident/Config.in new file mode 100644 index 00000000..ca7069c8 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-trident/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_TRIDENT + bool "xf86-video-trident" + select BR2_PACKAGE_XORGPROTO + help + Trident video driver diff --git a/package/x11r7/xdriver_xf86-video-trident/xdriver_xf86-video-trident.hash b/package/x11r7/xdriver_xf86-video-trident/xdriver_xf86-video-trident.hash new file mode 100644 index 00000000..8f47bac2 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-trident/xdriver_xf86-video-trident.hash @@ -0,0 +1,4 @@ +# From https://lists.x.org/archives/xorg-announce/2017-January/002762.html +sha256 9e5119d974c3e2221994542d35e3a0b3426a441869ddd6dd08a84f324856ac3f xf86-video-trident-1.3.8.tar.bz2 +# Locally calculated +sha256 4f065198c49eac1513b915bc4478152c21119f31a97919a6ea8f3e1d10133d15 COPYING diff --git a/package/x11r7/xdriver_xf86-video-trident/xdriver_xf86-video-trident.mk b/package/x11r7/xdriver_xf86-video-trident/xdriver_xf86-video-trident.mk new file mode 100644 index 00000000..20ec4bbc --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-trident/xdriver_xf86-video-trident.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xdriver_xf86-video-trident +# +################################################################################ + +XDRIVER_XF86_VIDEO_TRIDENT_VERSION = 1.3.8 +XDRIVER_XF86_VIDEO_TRIDENT_SOURCE = xf86-video-trident-$(XDRIVER_XF86_VIDEO_TRIDENT_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_TRIDENT_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_TRIDENT_LICENSE = MIT +XDRIVER_XF86_VIDEO_TRIDENT_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_TRIDENT_DEPENDENCIES = xserver_xorg-server xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-vesa/Config.in b/package/x11r7/xdriver_xf86-video-vesa/Config.in new file mode 100644 index 00000000..fb4e4e8e --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-vesa/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_VESA + bool "xf86-video-vesa" + select BR2_PACKAGE_XORGPROTO + help + Generic VESA video driver diff --git a/package/x11r7/xdriver_xf86-video-vesa/xdriver_xf86-video-vesa.hash b/package/x11r7/xdriver_xf86-video-vesa/xdriver_xf86-video-vesa.hash new file mode 100644 index 00000000..d179228a --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-vesa/xdriver_xf86-video-vesa.hash @@ -0,0 +1,5 @@ +# From https://lists.x.org/archives/xorg-announce/2020-September/003060.html +sha256 1f1624f3c73906801ad1bc98335a2cb5676a7a4d18e5374d9a1d18464e54c659 xf86-video-vesa-2.5.0.tar.bz2 +sha512 36fd921f54f33eb25966b5f9ea1e1b3e9009965c012c8b9c676686b472111719921b80cf62dafc746058878253e21f0ef341a2ff2d650df22ca1e35e81716a8b xf86-video-vesa-2.5.0.tar.bz2 +# Locally computed +sha256 bda49ba1e860501c20fd444423bc790f6da4f769561b69acc0cbe5abff9409b6 COPYING diff --git a/package/x11r7/xdriver_xf86-video-vesa/xdriver_xf86-video-vesa.mk b/package/x11r7/xdriver_xf86-video-vesa/xdriver_xf86-video-vesa.mk new file mode 100644 index 00000000..b08bab4e --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-vesa/xdriver_xf86-video-vesa.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xdriver_xf86-video-vesa +# +################################################################################ + +XDRIVER_XF86_VIDEO_VESA_VERSION = 2.5.0 +XDRIVER_XF86_VIDEO_VESA_SOURCE = xf86-video-vesa-$(XDRIVER_XF86_VIDEO_VESA_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_VESA_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_VESA_LICENSE = MIT +XDRIVER_XF86_VIDEO_VESA_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_VESA_DEPENDENCIES = xserver_xorg-server xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-vmware/Config.in b/package/x11r7/xdriver_xf86-video-vmware/Config.in new file mode 100644 index 00000000..6d937b47 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-vmware/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_VMWARE + bool "xf86-video-vmware" + depends on BR2_PACKAGE_MESA3D + depends on BR2_i386 || BR2_x86_64 + select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SVGA + select BR2_PACKAGE_XORGPROTO + help + VMware SVGA video driver + +comment "xf86-video-vmware needs mesa3d" + depends on !BR2_PACKAGE_MESA3D diff --git a/package/x11r7/xdriver_xf86-video-vmware/xdriver_xf86-video-vmware.hash b/package/x11r7/xdriver_xf86-video-vmware/xdriver_xf86-video-vmware.hash new file mode 100644 index 00000000..f07e0614 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-vmware/xdriver_xf86-video-vmware.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-May/002895.html +md5 08d66d062055080ff699ab4869726ea2 xf86-video-vmware-13.3.0.tar.bz2 +sha1 f01335fe6bdb507e749571bfcd69163aed97312a xf86-video-vmware-13.3.0.tar.bz2 +sha256 47971924659e51666a757269ad941a059ef5afe7a47b5101c174a6022ac4066c xf86-video-vmware-13.3.0.tar.bz2 +sha512 c318de893cae7b2b11e11c1b389ee47478b7c8d1f52c27099dbe453efec28f3e9da449217307a8c2251999eada66312f766996be1a6ead413b8b6dedc42c68ca xf86-video-vmware-13.3.0.tar.bz2 +# Locally computed +sha256 7e59b8ca2a161855a60561f27ada8dfdbb678733eacdb23423fff6d21f9ad43b COPYING diff --git a/package/x11r7/xdriver_xf86-video-vmware/xdriver_xf86-video-vmware.mk b/package/x11r7/xdriver_xf86-video-vmware/xdriver_xf86-video-vmware.mk new file mode 100644 index 00000000..5f0cb77b --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-vmware/xdriver_xf86-video-vmware.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# xdriver_xf86-video-vmware +# +################################################################################ + +XDRIVER_XF86_VIDEO_VMWARE_VERSION = 13.3.0 +XDRIVER_XF86_VIDEO_VMWARE_SOURCE = xf86-video-vmware-$(XDRIVER_XF86_VIDEO_VMWARE_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_VMWARE_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_VMWARE_LICENSE = MIT +XDRIVER_XF86_VIDEO_VMWARE_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_VMWARE_DEPENDENCIES = mesa3d xserver_xorg-server xorgproto + +ifeq ($(BR2_PACKAGE_HAS_UDEV),y) +XDRIVER_XF86_VIDEO_VMWARE_CONF_OPTS += --with-libudev +XDRIVER_XF86_VIDEO_VMWARE_DEPENDENCIES += udev +else +XDRIVER_XF86_VIDEO_VMWARE_CONF_OPTS += --without-libudev +endif + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-voodoo/Config.in b/package/x11r7/xdriver_xf86-video-voodoo/Config.in new file mode 100644 index 00000000..f4612120 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-voodoo/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_VOODOO + bool "xf86-video-voodoo" + select BR2_PACKAGE_XORGPROTO + help + Voodoo video driver diff --git a/package/x11r7/xdriver_xf86-video-voodoo/xdriver_xf86-video-voodoo.mk b/package/x11r7/xdriver_xf86-video-voodoo/xdriver_xf86-video-voodoo.mk new file mode 100644 index 00000000..d6deaa79 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-voodoo/xdriver_xf86-video-voodoo.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# xdriver_xf86-video-voodoo +# +################################################################################ + +XDRIVER_XF86_VIDEO_VOODOO_VERSION = 9172ae566a0e85313fc80ab62b4455393eefe593 +XDRIVER_XF86_VIDEO_VOODOO_SITE = git://anongit.freedesktop.org/xorg/driver/xf86-video-voodoo +XDRIVER_XF86_VIDEO_VOODOO_LICENSE = MIT +XDRIVER_XF86_VIDEO_VOODOO_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_VOODOO_AUTORECONF = YES +XDRIVER_XF86_VIDEO_VOODOO_DEPENDENCIES = xserver_xorg-server xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_encodings/Config.in b/package/x11r7/xfont_encodings/Config.in new file mode 100644 index 00000000..d771ffb9 --- /dev/null +++ b/package/x11r7/xfont_encodings/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_ENCODINGS + bool "encodings" + select BR2_PACKAGE_XUTIL_UTIL_MACROS + help + No description available diff --git a/package/x11r7/xfont_encodings/xfont_encodings.hash b/package/x11r7/xfont_encodings/xfont_encodings.hash new file mode 100644 index 00000000..30dc9276 --- /dev/null +++ b/package/x11r7/xfont_encodings/xfont_encodings.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-June/002998.html +md5 bbae4f247b88ccde0e85ed6a403da22a encodings-1.0.5.tar.bz2 +sha1 7ffec76dba1cfd5040c5b43ccfae930c83ddf92e encodings-1.0.5.tar.bz2 +sha256 bd96e16143a044b19e87f217cf6a3763a70c561d1076aad6f6d862ec41774a31 encodings-1.0.5.tar.bz2 +sha512 920e49f0b3545f181a1574ca3280ac9adef1e68fe27566c195dd7013f728d355c0d759132789357fcf8fa7391fcbe1e17edf2bd85aa5611df5a4d99740011008 encodings-1.0.5.tar.bz2 +# Locally computed +sha256 13b4a0f9431f0fdd6ee36ed386e0b7d1eb429c5cb88df73353896078cbb5a137 COPYING diff --git a/package/x11r7/xfont_encodings/xfont_encodings.mk b/package/x11r7/xfont_encodings/xfont_encodings.mk new file mode 100644 index 00000000..06d99738 --- /dev/null +++ b/package/x11r7/xfont_encodings/xfont_encodings.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# xfont_encodings +# +################################################################################ + +XFONT_ENCODINGS_VERSION = 1.0.5 +XFONT_ENCODINGS_SOURCE = encodings-$(XFONT_ENCODINGS_VERSION).tar.bz2 +XFONT_ENCODINGS_SITE = https://xorg.freedesktop.org/releases/individual/font +XFONT_ENCODINGS_LICENSE = Public Domain +XFONT_ENCODINGS_LICENSE_FILES = COPYING + +XFONT_ENCODINGS_DEPENDENCIES = host-xapp_mkfontscale host-pkgconf xutil_util-macros +HOST_XFONT_ENCODINGS_DEPENDENCIES = \ + host-xapp_mkfontscale host-pkgconf host-xutil_util-macros + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/x11r7/xfont_font-adobe-100dpi/Config.in b/package/x11r7/xfont_font-adobe-100dpi/Config.in new file mode 100644 index 00000000..766c06e7 --- /dev/null +++ b/package/x11r7/xfont_font-adobe-100dpi/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_ADOBE_100DPI + bool "font-adobe-100dpi" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-adobe-100dpi/xfont_font-adobe-100dpi.hash b/package/x11r7/xfont_font-adobe-100dpi/xfont_font-adobe-100dpi.hash new file mode 100644 index 00000000..514c9091 --- /dev/null +++ b/package/x11r7/xfont_font-adobe-100dpi/xfont_font-adobe-100dpi.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 b2c08433eab5cb202470aa9f779efefce8d9cab2534f34f3aa4a31d05671c054 font-adobe-100dpi-1.0.3.tar.bz2 +sha256 bf6d862672b4fcc86f3f38bc138ad44e52d52207dd8689b8d3701630fc331194 COPYING diff --git a/package/x11r7/xfont_font-adobe-100dpi/xfont_font-adobe-100dpi.mk b/package/x11r7/xfont_font-adobe-100dpi/xfont_font-adobe-100dpi.mk new file mode 100644 index 00000000..24187698 --- /dev/null +++ b/package/x11r7/xfont_font-adobe-100dpi/xfont_font-adobe-100dpi.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xfont_font-adobe-100dpi +# +################################################################################ + +XFONT_FONT_ADOBE_100DPI_VERSION = 1.0.3 +XFONT_FONT_ADOBE_100DPI_SOURCE = font-adobe-100dpi-$(XFONT_FONT_ADOBE_100DPI_VERSION).tar.bz2 +XFONT_FONT_ADOBE_100DPI_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_ADOBE_100DPI_LICENSE = MIT +XFONT_FONT_ADOBE_100DPI_LICENSE_FILES = COPYING + +XFONT_FONT_ADOBE_100DPI_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_ADOBE_100DPI_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_ADOBE_100DPI_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-adobe-75dpi/Config.in b/package/x11r7/xfont_font-adobe-75dpi/Config.in new file mode 100644 index 00000000..1d79f416 --- /dev/null +++ b/package/x11r7/xfont_font-adobe-75dpi/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_ADOBE_75DPI + bool "font-adobe-75dpi" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-adobe-75dpi/xfont_font-adobe-75dpi.hash b/package/x11r7/xfont_font-adobe-75dpi/xfont_font-adobe-75dpi.hash new file mode 100644 index 00000000..41ac96fc --- /dev/null +++ b/package/x11r7/xfont_font-adobe-75dpi/xfont_font-adobe-75dpi.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 c6024a1e4a1e65f413f994dd08b734efd393ce0a502eb465deb77b9a36db4d09 font-adobe-75dpi-1.0.3.tar.bz2 +sha256 bf6d862672b4fcc86f3f38bc138ad44e52d52207dd8689b8d3701630fc331194 COPYING diff --git a/package/x11r7/xfont_font-adobe-75dpi/xfont_font-adobe-75dpi.mk b/package/x11r7/xfont_font-adobe-75dpi/xfont_font-adobe-75dpi.mk new file mode 100644 index 00000000..90e94d27 --- /dev/null +++ b/package/x11r7/xfont_font-adobe-75dpi/xfont_font-adobe-75dpi.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xfont_font-adobe-75dpi +# +################################################################################ + +XFONT_FONT_ADOBE_75DPI_VERSION = 1.0.3 +XFONT_FONT_ADOBE_75DPI_SOURCE = font-adobe-75dpi-$(XFONT_FONT_ADOBE_75DPI_VERSION).tar.bz2 +XFONT_FONT_ADOBE_75DPI_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_ADOBE_75DPI_LICENSE = MIT +XFONT_FONT_ADOBE_75DPI_LICENSE_FILES = COPYING + +XFONT_FONT_ADOBE_75DPI_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_ADOBE_75DPI_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_ADOBE_75DPI_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-adobe-utopia-100dpi/Config.in b/package/x11r7/xfont_font-adobe-utopia-100dpi/Config.in new file mode 100644 index 00000000..a31ee5da --- /dev/null +++ b/package/x11r7/xfont_font-adobe-utopia-100dpi/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_ADOBE_UTOPIA_100DPI + bool "font-adobe-utopia-100dpi" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-adobe-utopia-100dpi/xfont_font-adobe-utopia-100dpi.hash b/package/x11r7/xfont_font-adobe-utopia-100dpi/xfont_font-adobe-utopia-100dpi.hash new file mode 100644 index 00000000..81498788 --- /dev/null +++ b/package/x11r7/xfont_font-adobe-utopia-100dpi/xfont_font-adobe-utopia-100dpi.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 d16f5e3f227cc6dd07a160a71f443559682dbc35f1c056a5385085aaec4fada5 font-adobe-utopia-100dpi-1.0.4.tar.bz2 +sha256 234c2a8109afa8034c787dbf69696a9bdd374914aadf937d2a103831d95c1867 COPYING diff --git a/package/x11r7/xfont_font-adobe-utopia-100dpi/xfont_font-adobe-utopia-100dpi.mk b/package/x11r7/xfont_font-adobe-utopia-100dpi/xfont_font-adobe-utopia-100dpi.mk new file mode 100644 index 00000000..83157f5c --- /dev/null +++ b/package/x11r7/xfont_font-adobe-utopia-100dpi/xfont_font-adobe-utopia-100dpi.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xfont_font-adobe-utopia-100dpi +# +################################################################################ + +XFONT_FONT_ADOBE_UTOPIA_100DPI_VERSION = 1.0.4 +XFONT_FONT_ADOBE_UTOPIA_100DPI_SOURCE = font-adobe-utopia-100dpi-$(XFONT_FONT_ADOBE_UTOPIA_100DPI_VERSION).tar.bz2 +XFONT_FONT_ADOBE_UTOPIA_100DPI_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_ADOBE_UTOPIA_100DPI_LICENSE = Adobe License (no modification allowed) +XFONT_FONT_ADOBE_UTOPIA_100DPI_LICENSE_FILES = COPYING + +XFONT_FONT_ADOBE_UTOPIA_100DPI_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_ADOBE_UTOPIA_100DPI_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_ADOBE_UTOPIA_100DPI_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-adobe-utopia-75dpi/Config.in b/package/x11r7/xfont_font-adobe-utopia-75dpi/Config.in new file mode 100644 index 00000000..22797230 --- /dev/null +++ b/package/x11r7/xfont_font-adobe-utopia-75dpi/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_ADOBE_UTOPIA_75DPI + bool "font-adobe-utopia-75dpi" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-adobe-utopia-75dpi/xfont_font-adobe-utopia-75dpi.hash b/package/x11r7/xfont_font-adobe-utopia-75dpi/xfont_font-adobe-utopia-75dpi.hash new file mode 100644 index 00000000..0b6e1af6 --- /dev/null +++ b/package/x11r7/xfont_font-adobe-utopia-75dpi/xfont_font-adobe-utopia-75dpi.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 8732719c61f3661c8bad63804ebfd54fc7de21ab848e9a26a19b1778ef8b5c94 font-adobe-utopia-75dpi-1.0.4.tar.bz2 +sha256 234c2a8109afa8034c787dbf69696a9bdd374914aadf937d2a103831d95c1867 COPYING diff --git a/package/x11r7/xfont_font-adobe-utopia-75dpi/xfont_font-adobe-utopia-75dpi.mk b/package/x11r7/xfont_font-adobe-utopia-75dpi/xfont_font-adobe-utopia-75dpi.mk new file mode 100644 index 00000000..ac3bf2e2 --- /dev/null +++ b/package/x11r7/xfont_font-adobe-utopia-75dpi/xfont_font-adobe-utopia-75dpi.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xfont_font-adobe-utopia-75dpi +# +################################################################################ + +XFONT_FONT_ADOBE_UTOPIA_75DPI_VERSION = 1.0.4 +XFONT_FONT_ADOBE_UTOPIA_75DPI_SOURCE = font-adobe-utopia-75dpi-$(XFONT_FONT_ADOBE_UTOPIA_75DPI_VERSION).tar.bz2 +XFONT_FONT_ADOBE_UTOPIA_75DPI_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_ADOBE_UTOPIA_75DPI_LICENSE = Adobe License (no modification allowed) +XFONT_FONT_ADOBE_UTOPIA_75DPI_LICENSE_FILES = COPYING + +XFONT_FONT_ADOBE_UTOPIA_75DPI_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_ADOBE_UTOPIA_75DPI_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_ADOBE_UTOPIA_75DPI_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-adobe-utopia-type1/Config.in b/package/x11r7/xfont_font-adobe-utopia-type1/Config.in new file mode 100644 index 00000000..60b631ed --- /dev/null +++ b/package/x11r7/xfont_font-adobe-utopia-type1/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_ADOBE_UTOPIA_TYPE1 + bool "font-adobe-utopia-type1" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-adobe-utopia-type1/xfont_font-adobe-utopia-type1.hash b/package/x11r7/xfont_font-adobe-utopia-type1/xfont_font-adobe-utopia-type1.hash new file mode 100644 index 00000000..514dd282 --- /dev/null +++ b/package/x11r7/xfont_font-adobe-utopia-type1/xfont_font-adobe-utopia-type1.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 979435105f897a70f8993fa02c8362160b0513366c2ab896965416f96dbb8077 font-adobe-utopia-type1-1.0.4.tar.bz2 +sha256 234c2a8109afa8034c787dbf69696a9bdd374914aadf937d2a103831d95c1867 COPYING diff --git a/package/x11r7/xfont_font-adobe-utopia-type1/xfont_font-adobe-utopia-type1.mk b/package/x11r7/xfont_font-adobe-utopia-type1/xfont_font-adobe-utopia-type1.mk new file mode 100644 index 00000000..9ec8f800 --- /dev/null +++ b/package/x11r7/xfont_font-adobe-utopia-type1/xfont_font-adobe-utopia-type1.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# xfont_font-adobe-utopia-type1 +# +################################################################################ + +XFONT_FONT_ADOBE_UTOPIA_TYPE1_VERSION = 1.0.4 +XFONT_FONT_ADOBE_UTOPIA_TYPE1_SOURCE = font-adobe-utopia-type1-$(XFONT_FONT_ADOBE_UTOPIA_TYPE1_VERSION).tar.bz2 +XFONT_FONT_ADOBE_UTOPIA_TYPE1_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_ADOBE_UTOPIA_TYPE1_LICENSE = Adobe License (no modification allowed) +XFONT_FONT_ADOBE_UTOPIA_TYPE1_LICENSE_FILES = COPYING + +XFONT_FONT_ADOBE_UTOPIA_TYPE1_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_ADOBE_UTOPIA_TYPE1_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_ADOBE_UTOPIA_TYPE1_DEPENDENCIES = xfont_font-util host-xfont_font-util host-xapp_mkfontscale host-xapp_bdftopcf + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-alias/Config.in b/package/x11r7/xfont_font-alias/Config.in new file mode 100644 index 00000000..b30e2221 --- /dev/null +++ b/package/x11r7/xfont_font-alias/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_ALIAS + bool "font-alias" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-alias/xfont_font-alias.hash b/package/x11r7/xfont_font-alias/xfont_font-alias.hash new file mode 100644 index 00000000..5390d1c1 --- /dev/null +++ b/package/x11r7/xfont_font-alias/xfont_font-alias.hash @@ -0,0 +1,5 @@ +# From https://lists.x.org/archives/xorg-announce/2020-August/003054.html +sha256 f3111ae8bf2e980f5f56af400e8eefe5fc9f4207f4a412ea79637fd66c945276 font-alias-1.0.4.tar.bz2 +sha512 c67ac2ee344a601fcc09471580214b30c3fd6acc4800702840de44f0733e6d18b3faeec2fa3f4e2314025cc1724d7d6796ebaf620398fe350710182fd2c4b07d font-alias-1.0.4.tar.bz2 +# locally computed +sha256 bdba5452fc080c0f1a56d66978ac4150d1d1a00a9cc0248bba4f0b76c80ad47e COPYING diff --git a/package/x11r7/xfont_font-alias/xfont_font-alias.mk b/package/x11r7/xfont_font-alias/xfont_font-alias.mk new file mode 100644 index 00000000..7f8e4b2e --- /dev/null +++ b/package/x11r7/xfont_font-alias/xfont_font-alias.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# xfont_font-alias +# +################################################################################ + +XFONT_FONT_ALIAS_VERSION = 1.0.4 +XFONT_FONT_ALIAS_SOURCE = font-alias-$(XFONT_FONT_ALIAS_VERSION).tar.bz2 +XFONT_FONT_ALIAS_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_ALIAS_LICENSE = MIT +XFONT_FONT_ALIAS_LICENSE_FILES = COPYING + +XFONT_FONT_ALIAS_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_ALIAS_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_ALIAS_DEPENDENCIES = xfont_font-util host-xfont_font-util host-xapp_mkfontscale host-xapp_bdftopcf + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-arabic-misc/Config.in b/package/x11r7/xfont_font-arabic-misc/Config.in new file mode 100644 index 00000000..1ec50901 --- /dev/null +++ b/package/x11r7/xfont_font-arabic-misc/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_ARABIC_MISC + bool "font-arabic-misc" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-arabic-misc/xfont_font-arabic-misc.hash b/package/x11r7/xfont_font-arabic-misc/xfont_font-arabic-misc.hash new file mode 100644 index 00000000..3c565450 --- /dev/null +++ b/package/x11r7/xfont_font-arabic-misc/xfont_font-arabic-misc.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 505d9b12a7093389e67a925dfda6346bde26d114c67f0cdca7aeda6e5d3344f4 font-arabic-misc-1.0.3.tar.bz2 +sha256 192b677a887c20f9671cc357cd5ea7bae586003d61c1f8f6e164e8f5530abf57 COPYING diff --git a/package/x11r7/xfont_font-arabic-misc/xfont_font-arabic-misc.mk b/package/x11r7/xfont_font-arabic-misc/xfont_font-arabic-misc.mk new file mode 100644 index 00000000..c867a602 --- /dev/null +++ b/package/x11r7/xfont_font-arabic-misc/xfont_font-arabic-misc.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xfont_font-arabic-misc +# +################################################################################ + +XFONT_FONT_ARABIC_MISC_VERSION = 1.0.3 +XFONT_FONT_ARABIC_MISC_SOURCE = font-arabic-misc-$(XFONT_FONT_ARABIC_MISC_VERSION).tar.bz2 +XFONT_FONT_ARABIC_MISC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_ARABIC_MISC_LICENSE = MIT +XFONT_FONT_ARABIC_MISC_LICENSE_FILES = COPYING + +XFONT_FONT_ARABIC_MISC_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_ARABIC_MISC_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_ARABIC_MISC_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-bh-100dpi/Config.in b/package/x11r7/xfont_font-bh-100dpi/Config.in new file mode 100644 index 00000000..3bfb0b8f --- /dev/null +++ b/package/x11r7/xfont_font-bh-100dpi/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_BH_100DPI + bool "font-bh-100dpi" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-bh-100dpi/xfont_font-bh-100dpi.hash b/package/x11r7/xfont_font-bh-100dpi/xfont_font-bh-100dpi.hash new file mode 100644 index 00000000..154d6eb2 --- /dev/null +++ b/package/x11r7/xfont_font-bh-100dpi/xfont_font-bh-100dpi.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 23c07162708e4b79eb33095c8bfa62c783717a9431254bbf44863734ea239481 font-bh-100dpi-1.0.3.tar.bz2 +sha256 888fd79d2c7e6332559d661c62f7a50f92fc5842e6ff0e0bd4c59b0083dabce9 COPYING diff --git a/package/x11r7/xfont_font-bh-100dpi/xfont_font-bh-100dpi.mk b/package/x11r7/xfont_font-bh-100dpi/xfont_font-bh-100dpi.mk new file mode 100644 index 00000000..cc157386 --- /dev/null +++ b/package/x11r7/xfont_font-bh-100dpi/xfont_font-bh-100dpi.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xfont_font-bh-100dpi +# +################################################################################ + +XFONT_FONT_BH_100DPI_VERSION = 1.0.3 +XFONT_FONT_BH_100DPI_SOURCE = font-bh-100dpi-$(XFONT_FONT_BH_100DPI_VERSION).tar.bz2 +XFONT_FONT_BH_100DPI_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_BH_100DPI_LICENSE = Bigelow & Holmes License (no modification) +XFONT_FONT_BH_100DPI_LICENSE_FILES = COPYING + +XFONT_FONT_BH_100DPI_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_BH_100DPI_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_BH_100DPI_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-bh-75dpi/Config.in b/package/x11r7/xfont_font-bh-75dpi/Config.in new file mode 100644 index 00000000..0fe93bb6 --- /dev/null +++ b/package/x11r7/xfont_font-bh-75dpi/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_BH_75DPI + bool "font-bh-75dpi" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-bh-75dpi/xfont_font-bh-75dpi.hash b/package/x11r7/xfont_font-bh-75dpi/xfont_font-bh-75dpi.hash new file mode 100644 index 00000000..0648e26d --- /dev/null +++ b/package/x11r7/xfont_font-bh-75dpi/xfont_font-bh-75dpi.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 3486aa51ac92c646a448fe899c5c3dae0024b1fef724d5100d52640d1cac721c font-bh-75dpi-1.0.3.tar.bz2 +sha256 888fd79d2c7e6332559d661c62f7a50f92fc5842e6ff0e0bd4c59b0083dabce9 COPYING diff --git a/package/x11r7/xfont_font-bh-75dpi/xfont_font-bh-75dpi.mk b/package/x11r7/xfont_font-bh-75dpi/xfont_font-bh-75dpi.mk new file mode 100644 index 00000000..788a76a2 --- /dev/null +++ b/package/x11r7/xfont_font-bh-75dpi/xfont_font-bh-75dpi.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xfont_font-bh-75dpi +# +################################################################################ + +XFONT_FONT_BH_75DPI_VERSION = 1.0.3 +XFONT_FONT_BH_75DPI_SOURCE = font-bh-75dpi-$(XFONT_FONT_BH_75DPI_VERSION).tar.bz2 +XFONT_FONT_BH_75DPI_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_BH_75DPI_LICENSE = Bigelow & Holmes License (no modification) +XFONT_FONT_BH_75DPI_LICENSE_FILES = COPYING + +XFONT_FONT_BH_75DPI_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_BH_75DPI_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_BH_75DPI_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/Config.in b/package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/Config.in new file mode 100644 index 00000000..0005cc11 --- /dev/null +++ b/package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_BH_LUCIDATYPEWRITER_100DPI + bool "font-bh-lucidatypewriter-100dpi" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/xfont_font-bh-lucidatypewriter-100dpi.hash b/package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/xfont_font-bh-lucidatypewriter-100dpi.hash new file mode 100644 index 00000000..439d5d26 --- /dev/null +++ b/package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/xfont_font-bh-lucidatypewriter-100dpi.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 62a83363c2536095fda49d260d21e0847675676e4e3415054064cbdffa641fbb font-bh-lucidatypewriter-100dpi-1.0.3.tar.bz2 +sha256 9428a98add4fada4c98e031ae0f29d27f8b15a2c8c6e8830591a4c18ea26a6cd COPYING diff --git a/package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/xfont_font-bh-lucidatypewriter-100dpi.mk b/package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/xfont_font-bh-lucidatypewriter-100dpi.mk new file mode 100644 index 00000000..2f055dda --- /dev/null +++ b/package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/xfont_font-bh-lucidatypewriter-100dpi.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xfont_font-bh-lucidatypewriter-100dpi +# +################################################################################ + +XFONT_FONT_BH_LUCIDATYPEWRITER_100DPI_VERSION = 1.0.3 +XFONT_FONT_BH_LUCIDATYPEWRITER_100DPI_SOURCE = font-bh-lucidatypewriter-100dpi-$(XFONT_FONT_BH_LUCIDATYPEWRITER_100DPI_VERSION).tar.bz2 +XFONT_FONT_BH_LUCIDATYPEWRITER_100DPI_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_BH_LUCIDATYPEWRITER_100DPI_LICENSE = Bigelow & Holmes License (no modification) +XFONT_FONT_BH_LUCIDATYPEWRITER_100DPI_LICENSE_FILES = COPYING + +XFONT_FONT_BH_LUCIDATYPEWRITER_100DPI_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_BH_LUCIDATYPEWRITER_100DPI_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_BH_LUCIDATYPEWRITER_100DPI_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/Config.in b/package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/Config.in new file mode 100644 index 00000000..60dfb952 --- /dev/null +++ b/package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_BH_LUCIDATYPEWRITER_75DPI + bool "font-bh-lucidatypewriter-75dpi" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/xfont_font-bh-lucidatypewriter-75dpi.hash b/package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/xfont_font-bh-lucidatypewriter-75dpi.hash new file mode 100644 index 00000000..ed8d8514 --- /dev/null +++ b/package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/xfont_font-bh-lucidatypewriter-75dpi.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 4ac16afbe205480cc5572e2977ea63488c543d05be0ea8e5a94c845a6eebcb31 font-bh-lucidatypewriter-75dpi-1.0.3.tar.bz2 +sha256 9428a98add4fada4c98e031ae0f29d27f8b15a2c8c6e8830591a4c18ea26a6cd COPYING diff --git a/package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/xfont_font-bh-lucidatypewriter-75dpi.mk b/package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/xfont_font-bh-lucidatypewriter-75dpi.mk new file mode 100644 index 00000000..4166b2d7 --- /dev/null +++ b/package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/xfont_font-bh-lucidatypewriter-75dpi.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xfont_font-bh-lucidatypewriter-75dpi +# +################################################################################ + +XFONT_FONT_BH_LUCIDATYPEWRITER_75DPI_VERSION = 1.0.3 +XFONT_FONT_BH_LUCIDATYPEWRITER_75DPI_SOURCE = font-bh-lucidatypewriter-75dpi-$(XFONT_FONT_BH_LUCIDATYPEWRITER_75DPI_VERSION).tar.bz2 +XFONT_FONT_BH_LUCIDATYPEWRITER_75DPI_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_BH_LUCIDATYPEWRITER_75DPI_LICENSE = Bigelow & Holmes License (no modification) +XFONT_FONT_BH_LUCIDATYPEWRITER_75DPI_LICENSE_FILES = COPYING + +XFONT_FONT_BH_LUCIDATYPEWRITER_75DPI_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_BH_LUCIDATYPEWRITER_75DPI_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_BH_LUCIDATYPEWRITER_75DPI_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-bh-ttf/Config.in b/package/x11r7/xfont_font-bh-ttf/Config.in new file mode 100644 index 00000000..d747989b --- /dev/null +++ b/package/x11r7/xfont_font-bh-ttf/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_BH_TTF + bool "font-bh-ttf" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-bh-ttf/xfont_font-bh-ttf.hash b/package/x11r7/xfont_font-bh-ttf/xfont_font-bh-ttf.hash new file mode 100644 index 00000000..05063726 --- /dev/null +++ b/package/x11r7/xfont_font-bh-ttf/xfont_font-bh-ttf.hash @@ -0,0 +1,4 @@ +# From http://lists.x.org/archives/xorg-announce/2010-November/001537.html +sha1 f42ebd527096011040a312e0f9cdf78d64177419 font-bh-ttf-1.0.3.tar.bz2 +# Locally computed +sha256 27d47d50006773f1c0bd97661252ae27bb8cfd6951f253bd9d3ef81ed1243934 COPYING diff --git a/package/x11r7/xfont_font-bh-ttf/xfont_font-bh-ttf.mk b/package/x11r7/xfont_font-bh-ttf/xfont_font-bh-ttf.mk new file mode 100644 index 00000000..e3ed2a6f --- /dev/null +++ b/package/x11r7/xfont_font-bh-ttf/xfont_font-bh-ttf.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# xfont_font-bh-ttf +# +################################################################################ + +XFONT_FONT_BH_TTF_VERSION = 1.0.3 +XFONT_FONT_BH_TTF_SOURCE = font-bh-ttf-$(XFONT_FONT_BH_TTF_VERSION).tar.bz2 +XFONT_FONT_BH_TTF_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_BH_TTF_LICENSE = Bigelow & Holmes License (no modification) +XFONT_FONT_BH_TTF_LICENSE_FILES = COPYING + +XFONT_FONT_BH_TTF_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_BH_TTF_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_BH_TTF_DEPENDENCIES = xfont_font-util host-xfont_font-util host-xapp_mkfontscale host-xapp_bdftopcf + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-bh-type1/Config.in b/package/x11r7/xfont_font-bh-type1/Config.in new file mode 100644 index 00000000..0a3ab186 --- /dev/null +++ b/package/x11r7/xfont_font-bh-type1/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_BH_TYPE1 + bool "font-bh-type1" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-bh-type1/xfont_font-bh-type1.hash b/package/x11r7/xfont_font-bh-type1/xfont_font-bh-type1.hash new file mode 100644 index 00000000..cb0387d9 --- /dev/null +++ b/package/x11r7/xfont_font-bh-type1/xfont_font-bh-type1.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 761455a297486f3927a85d919b5c948d1d324181d4bea6c95d542504b68a63c1 font-bh-type1-1.0.3.tar.bz2 +sha256 27d47d50006773f1c0bd97661252ae27bb8cfd6951f253bd9d3ef81ed1243934 COPYING diff --git a/package/x11r7/xfont_font-bh-type1/xfont_font-bh-type1.mk b/package/x11r7/xfont_font-bh-type1/xfont_font-bh-type1.mk new file mode 100644 index 00000000..244c91ff --- /dev/null +++ b/package/x11r7/xfont_font-bh-type1/xfont_font-bh-type1.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# xfont_font-bh-type1 +# +################################################################################ + +XFONT_FONT_BH_TYPE1_VERSION = 1.0.3 +XFONT_FONT_BH_TYPE1_SOURCE = font-bh-type1-$(XFONT_FONT_BH_TYPE1_VERSION).tar.bz2 +XFONT_FONT_BH_TYPE1_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_BH_TYPE1_LICENSE = Bigelow & Holmes License (no modification) +XFONT_FONT_BH_TYPE1_LICENSE_FILES = COPYING + +XFONT_FONT_BH_TYPE1_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_BH_TYPE1_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_BH_TYPE1_DEPENDENCIES = xfont_font-util host-xfont_font-util host-xapp_mkfontscale host-xapp_bdftopcf + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-bitstream-100dpi/Config.in b/package/x11r7/xfont_font-bitstream-100dpi/Config.in new file mode 100644 index 00000000..5363fae3 --- /dev/null +++ b/package/x11r7/xfont_font-bitstream-100dpi/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_BITSTREAM_100DPI + bool "font-bitstream-100dpi" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-bitstream-100dpi/xfont_font-bitstream-100dpi.hash b/package/x11r7/xfont_font-bitstream-100dpi/xfont_font-bitstream-100dpi.hash new file mode 100644 index 00000000..1cef17d4 --- /dev/null +++ b/package/x11r7/xfont_font-bitstream-100dpi/xfont_font-bitstream-100dpi.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 ebe0d7444e3d7c8da7642055ac2206f0190ee060700d99cd876f8fc9964cb6ce font-bitstream-100dpi-1.0.3.tar.bz2 +sha256 6faf32f092c2b92f3f99e0d63db9d802b11b4dd5aa0ce991f107a398d7f1ae80 COPYING diff --git a/package/x11r7/xfont_font-bitstream-100dpi/xfont_font-bitstream-100dpi.mk b/package/x11r7/xfont_font-bitstream-100dpi/xfont_font-bitstream-100dpi.mk new file mode 100644 index 00000000..90d9e5bb --- /dev/null +++ b/package/x11r7/xfont_font-bitstream-100dpi/xfont_font-bitstream-100dpi.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xfont_font-bitstream-100dpi +# +################################################################################ + +XFONT_FONT_BITSTREAM_100DPI_VERSION = 1.0.3 +XFONT_FONT_BITSTREAM_100DPI_SOURCE = font-bitstream-100dpi-$(XFONT_FONT_BITSTREAM_100DPI_VERSION).tar.bz2 +XFONT_FONT_BITSTREAM_100DPI_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_BITSTREAM_100DPI_LICENSE = MIT +XFONT_FONT_BITSTREAM_100DPI_LICENSE_FILES = COPYING + +XFONT_FONT_BITSTREAM_100DPI_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_BITSTREAM_100DPI_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_BITSTREAM_100DPI_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-bitstream-75dpi/Config.in b/package/x11r7/xfont_font-bitstream-75dpi/Config.in new file mode 100644 index 00000000..34a4a19e --- /dev/null +++ b/package/x11r7/xfont_font-bitstream-75dpi/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_BITSTREAM_75DPI + bool "font-bitstream-75dpi" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-bitstream-75dpi/xfont_font-bitstream-75dpi.hash b/package/x11r7/xfont_font-bitstream-75dpi/xfont_font-bitstream-75dpi.hash new file mode 100644 index 00000000..9973f1f4 --- /dev/null +++ b/package/x11r7/xfont_font-bitstream-75dpi/xfont_font-bitstream-75dpi.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 ba3f5e4610c07bd5859881660753ec6d75d179f26fc967aa776dbb3d5d5cf48e font-bitstream-75dpi-1.0.3.tar.bz2 +sha256 6faf32f092c2b92f3f99e0d63db9d802b11b4dd5aa0ce991f107a398d7f1ae80 COPYING diff --git a/package/x11r7/xfont_font-bitstream-75dpi/xfont_font-bitstream-75dpi.mk b/package/x11r7/xfont_font-bitstream-75dpi/xfont_font-bitstream-75dpi.mk new file mode 100644 index 00000000..deb99aa5 --- /dev/null +++ b/package/x11r7/xfont_font-bitstream-75dpi/xfont_font-bitstream-75dpi.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xfont_font-bitstream-75dpi +# +################################################################################ + +XFONT_FONT_BITSTREAM_75DPI_VERSION = 1.0.3 +XFONT_FONT_BITSTREAM_75DPI_SOURCE = font-bitstream-75dpi-$(XFONT_FONT_BITSTREAM_75DPI_VERSION).tar.bz2 +XFONT_FONT_BITSTREAM_75DPI_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_BITSTREAM_75DPI_LICENSE = MIT +XFONT_FONT_BITSTREAM_75DPI_LICENSE_FILES = COPYING + +XFONT_FONT_BITSTREAM_75DPI_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_BITSTREAM_75DPI_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_BITSTREAM_75DPI_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-bitstream-type1/Config.in b/package/x11r7/xfont_font-bitstream-type1/Config.in new file mode 100644 index 00000000..c8cbc908 --- /dev/null +++ b/package/x11r7/xfont_font-bitstream-type1/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_BITSTREAM_TYPE1 + bool "font-bitstream-type1" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-bitstream-type1/xfont_font-bitstream-type1.hash b/package/x11r7/xfont_font-bitstream-type1/xfont_font-bitstream-type1.hash new file mode 100644 index 00000000..81bb8fc7 --- /dev/null +++ b/package/x11r7/xfont_font-bitstream-type1/xfont_font-bitstream-type1.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 c6ea0569adad2c577f140328dc3302e729cb1b1ea90cd0025caf380625f8a688 font-bitstream-type1-1.0.3.tar.bz2 +sha256 ecad5afdbd1308634896744a4c962361e9eca73e7d9969bb3aad94533c66d046 COPYING diff --git a/package/x11r7/xfont_font-bitstream-type1/xfont_font-bitstream-type1.mk b/package/x11r7/xfont_font-bitstream-type1/xfont_font-bitstream-type1.mk new file mode 100644 index 00000000..640ce863 --- /dev/null +++ b/package/x11r7/xfont_font-bitstream-type1/xfont_font-bitstream-type1.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# xfont_font-bitstream-type1 +# +################################################################################ + +XFONT_FONT_BITSTREAM_TYPE1_VERSION = 1.0.3 +XFONT_FONT_BITSTREAM_TYPE1_SOURCE = font-bitstream-type1-$(XFONT_FONT_BITSTREAM_TYPE1_VERSION).tar.bz2 +XFONT_FONT_BITSTREAM_TYPE1_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_BITSTREAM_TYPE1_LICENSE = MIT +XFONT_FONT_BITSTREAM_TYPE1_LICENSE_FILES = COPYING + +XFONT_FONT_BITSTREAM_TYPE1_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_BITSTREAM_TYPE1_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_BITSTREAM_TYPE1_DEPENDENCIES = xfont_font-util host-xfont_font-util host-xapp_mkfontscale host-xapp_bdftopcf + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-cronyx-cyrillic/Config.in b/package/x11r7/xfont_font-cronyx-cyrillic/Config.in new file mode 100644 index 00000000..e92ab836 --- /dev/null +++ b/package/x11r7/xfont_font-cronyx-cyrillic/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_CRONYX_CYRILLIC + bool "font-cronyx-cyrillic" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-cronyx-cyrillic/xfont_font-cronyx-cyrillic.hash b/package/x11r7/xfont_font-cronyx-cyrillic/xfont_font-cronyx-cyrillic.hash new file mode 100644 index 00000000..893ba571 --- /dev/null +++ b/package/x11r7/xfont_font-cronyx-cyrillic/xfont_font-cronyx-cyrillic.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 6e8631936157677c77ba032b5c7b1fb3cb2ee872dbcea0444f12cd602cd9212a font-cronyx-cyrillic-1.0.3.tar.bz2 +sha256 857fa9f8d12bd7ce7fb235393d775dd5e0b5130fac7a88fdea9156d75b609402 COPYING diff --git a/package/x11r7/xfont_font-cronyx-cyrillic/xfont_font-cronyx-cyrillic.mk b/package/x11r7/xfont_font-cronyx-cyrillic/xfont_font-cronyx-cyrillic.mk new file mode 100644 index 00000000..caca639c --- /dev/null +++ b/package/x11r7/xfont_font-cronyx-cyrillic/xfont_font-cronyx-cyrillic.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xfont_font-cronyx-cyrillic +# +################################################################################ + +XFONT_FONT_CRONYX_CYRILLIC_VERSION = 1.0.3 +XFONT_FONT_CRONYX_CYRILLIC_SOURCE = font-cronyx-cyrillic-$(XFONT_FONT_CRONYX_CYRILLIC_VERSION).tar.bz2 +XFONT_FONT_CRONYX_CYRILLIC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_CRONYX_CYRILLIC_LICENSE = MIT +XFONT_FONT_CRONYX_CYRILLIC_LICENSE_FILES = COPYING + +XFONT_FONT_CRONYX_CYRILLIC_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_CRONYX_CYRILLIC_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_CRONYX_CYRILLIC_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-cursor-misc/Config.in b/package/x11r7/xfont_font-cursor-misc/Config.in new file mode 100644 index 00000000..0e10da6a --- /dev/null +++ b/package/x11r7/xfont_font-cursor-misc/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_CURSOR_MISC + bool "font-cursor-misc" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-cursor-misc/xfont_font-cursor-misc.hash b/package/x11r7/xfont_font-cursor-misc/xfont_font-cursor-misc.hash new file mode 100644 index 00000000..04565f8b --- /dev/null +++ b/package/x11r7/xfont_font-cursor-misc/xfont_font-cursor-misc.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 17363eb35eece2e08144da5f060c70103b59d0972b4f4d77fd84c9a7a2dba635 font-cursor-misc-1.0.3.tar.bz2 +sha256 c22415fb2144d7298e995dbeee2eb120822d653c61ae43c64fa0fda2cc3ca3a0 COPYING diff --git a/package/x11r7/xfont_font-cursor-misc/xfont_font-cursor-misc.mk b/package/x11r7/xfont_font-cursor-misc/xfont_font-cursor-misc.mk new file mode 100644 index 00000000..e7528030 --- /dev/null +++ b/package/x11r7/xfont_font-cursor-misc/xfont_font-cursor-misc.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xfont_font-cursor-misc +# +################################################################################ + +XFONT_FONT_CURSOR_MISC_VERSION = 1.0.3 +XFONT_FONT_CURSOR_MISC_SOURCE = font-cursor-misc-$(XFONT_FONT_CURSOR_MISC_VERSION).tar.bz2 +XFONT_FONT_CURSOR_MISC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_CURSOR_MISC_LICENSE = unencumbered +XFONT_FONT_CURSOR_MISC_LICENSE_FILES = COPYING + +XFONT_FONT_CURSOR_MISC_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_CURSOR_MISC_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_CURSOR_MISC_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-daewoo-misc/Config.in b/package/x11r7/xfont_font-daewoo-misc/Config.in new file mode 100644 index 00000000..cffe81de --- /dev/null +++ b/package/x11r7/xfont_font-daewoo-misc/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_DAEWOO_MISC + bool "font-daewoo-misc" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-daewoo-misc/xfont_font-daewoo-misc.hash b/package/x11r7/xfont_font-daewoo-misc/xfont_font-daewoo-misc.hash new file mode 100644 index 00000000..1b4ebe9d --- /dev/null +++ b/package/x11r7/xfont_font-daewoo-misc/xfont_font-daewoo-misc.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 bc65de70bee12698caa95b523d3b652c056347e17b68cc8b5d6bbdff235c4be8 font-daewoo-misc-1.0.3.tar.bz2 diff --git a/package/x11r7/xfont_font-daewoo-misc/xfont_font-daewoo-misc.mk b/package/x11r7/xfont_font-daewoo-misc/xfont_font-daewoo-misc.mk new file mode 100644 index 00000000..f5bd9413 --- /dev/null +++ b/package/x11r7/xfont_font-daewoo-misc/xfont_font-daewoo-misc.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# xfont_font-daewoo-misc +# +################################################################################ + +XFONT_FONT_DAEWOO_MISC_VERSION = 1.0.3 +XFONT_FONT_DAEWOO_MISC_SOURCE = font-daewoo-misc-$(XFONT_FONT_DAEWOO_MISC_VERSION).tar.bz2 +XFONT_FONT_DAEWOO_MISC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_DAEWOO_MISC_LICENSE_FILES = COPYING + +XFONT_FONT_DAEWOO_MISC_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_DAEWOO_MISC_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_DAEWOO_MISC_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-dec-misc/Config.in b/package/x11r7/xfont_font-dec-misc/Config.in new file mode 100644 index 00000000..a926d9f9 --- /dev/null +++ b/package/x11r7/xfont_font-dec-misc/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_DEC_MISC + bool "font-dec-misc" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-dec-misc/xfont_font-dec-misc.hash b/package/x11r7/xfont_font-dec-misc/xfont_font-dec-misc.hash new file mode 100644 index 00000000..34873fe3 --- /dev/null +++ b/package/x11r7/xfont_font-dec-misc/xfont_font-dec-misc.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 e19ddf8b5f8de914d81675358fdfe37762e9ce524887cc983adef34f2850ff7b font-dec-misc-1.0.3.tar.bz2 +sha256 bf4d44be4b5eb66c53bf5f7eb2d9d4817fb937788b37ed6ceda1876fdb964817 COPYING diff --git a/package/x11r7/xfont_font-dec-misc/xfont_font-dec-misc.mk b/package/x11r7/xfont_font-dec-misc/xfont_font-dec-misc.mk new file mode 100644 index 00000000..1642b413 --- /dev/null +++ b/package/x11r7/xfont_font-dec-misc/xfont_font-dec-misc.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xfont_font-dec-misc +# +################################################################################ + +XFONT_FONT_DEC_MISC_VERSION = 1.0.3 +XFONT_FONT_DEC_MISC_SOURCE = font-dec-misc-$(XFONT_FONT_DEC_MISC_VERSION).tar.bz2 +XFONT_FONT_DEC_MISC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_DEC_MISC_LICENSE = MIT +XFONT_FONT_DEC_MISC_LICENSE_FILES = COPYING + +XFONT_FONT_DEC_MISC_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_DEC_MISC_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_DEC_MISC_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-ibm-type1/Config.in b/package/x11r7/xfont_font-ibm-type1/Config.in new file mode 100644 index 00000000..d4ac1ae4 --- /dev/null +++ b/package/x11r7/xfont_font-ibm-type1/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_IBM_TYPE1 + bool "font-ibm-type1" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-ibm-type1/xfont_font-ibm-type1.hash b/package/x11r7/xfont_font-ibm-type1/xfont_font-ibm-type1.hash new file mode 100644 index 00000000..c5e8f4e4 --- /dev/null +++ b/package/x11r7/xfont_font-ibm-type1/xfont_font-ibm-type1.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 fddb28d3db5a07f4b4ca15388488a9680a10e1367a18f358f903b2a608a5d2df font-ibm-type1-1.0.3.tar.bz2 +sha256 fc0fd4df7ac7ac7f9b1ff3a221f28c52edea4506dc4c84f1869a3f4281360ca1 COPYING diff --git a/package/x11r7/xfont_font-ibm-type1/xfont_font-ibm-type1.mk b/package/x11r7/xfont_font-ibm-type1/xfont_font-ibm-type1.mk new file mode 100644 index 00000000..4d34998a --- /dev/null +++ b/package/x11r7/xfont_font-ibm-type1/xfont_font-ibm-type1.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# xfont_font-ibm-type1 +# +################################################################################ + +XFONT_FONT_IBM_TYPE1_VERSION = 1.0.3 +XFONT_FONT_IBM_TYPE1_SOURCE = font-ibm-type1-$(XFONT_FONT_IBM_TYPE1_VERSION).tar.bz2 +XFONT_FONT_IBM_TYPE1_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_IBM_TYPE1_LICENSE = IBM/MIT X Consortium Courier Typefont agreement (no modification) +XFONT_FONT_IBM_TYPE1_LICENSE_FILES = COPYING + +XFONT_FONT_IBM_TYPE1_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_IBM_TYPE1_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_IBM_TYPE1_DEPENDENCIES = xfont_font-util host-xfont_font-util host-xapp_mkfontscale host-xapp_bdftopcf + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-isas-misc/Config.in b/package/x11r7/xfont_font-isas-misc/Config.in new file mode 100644 index 00000000..4dddaf75 --- /dev/null +++ b/package/x11r7/xfont_font-isas-misc/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_ISAS_MISC + bool "font-isas-misc" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-isas-misc/xfont_font-isas-misc.hash b/package/x11r7/xfont_font-isas-misc/xfont_font-isas-misc.hash new file mode 100644 index 00000000..bc4a9e5b --- /dev/null +++ b/package/x11r7/xfont_font-isas-misc/xfont_font-isas-misc.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 5824ab4b485951107dd245b8f7717d2822f1a6dbf6cea98f1ac7f49905c0a867 font-isas-misc-1.0.3.tar.bz2 +sha256 32d5d082b8186051bbe75ea9cbedc646830217ca931b1b7a1e534a828c94e839 COPYING diff --git a/package/x11r7/xfont_font-isas-misc/xfont_font-isas-misc.mk b/package/x11r7/xfont_font-isas-misc/xfont_font-isas-misc.mk new file mode 100644 index 00000000..1393d67e --- /dev/null +++ b/package/x11r7/xfont_font-isas-misc/xfont_font-isas-misc.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xfont_font-isas-misc +# +################################################################################ + +XFONT_FONT_ISAS_MISC_VERSION = 1.0.3 +XFONT_FONT_ISAS_MISC_SOURCE = font-isas-misc-$(XFONT_FONT_ISAS_MISC_VERSION).tar.bz2 +XFONT_FONT_ISAS_MISC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_ISAS_MISC_LICENSE = MIT +XFONT_FONT_ISAS_MISC_LICENSE_FILES = COPYING + +XFONT_FONT_ISAS_MISC_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_ISAS_MISC_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_ISAS_MISC_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-jis-misc/Config.in b/package/x11r7/xfont_font-jis-misc/Config.in new file mode 100644 index 00000000..1874ad82 --- /dev/null +++ b/package/x11r7/xfont_font-jis-misc/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_JIS_MISC + bool "font-jis-misc" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-jis-misc/xfont_font-jis-misc.hash b/package/x11r7/xfont_font-jis-misc/xfont_font-jis-misc.hash new file mode 100644 index 00000000..c39db360 --- /dev/null +++ b/package/x11r7/xfont_font-jis-misc/xfont_font-jis-misc.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 2b18ce10b367ebafe95a17de799b6db9a24e2337188d124adaf68af05b1fac65 font-jis-misc-1.0.3.tar.bz2 diff --git a/package/x11r7/xfont_font-jis-misc/xfont_font-jis-misc.mk b/package/x11r7/xfont_font-jis-misc/xfont_font-jis-misc.mk new file mode 100644 index 00000000..78a5bbbf --- /dev/null +++ b/package/x11r7/xfont_font-jis-misc/xfont_font-jis-misc.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# xfont_font-jis-misc +# +################################################################################ + +XFONT_FONT_JIS_MISC_VERSION = 1.0.3 +XFONT_FONT_JIS_MISC_SOURCE = font-jis-misc-$(XFONT_FONT_JIS_MISC_VERSION).tar.bz2 +XFONT_FONT_JIS_MISC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_JIS_MISC_LICENSE_FILES = COPYING + +XFONT_FONT_JIS_MISC_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_JIS_MISC_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_JIS_MISC_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-micro-misc/Config.in b/package/x11r7/xfont_font-micro-misc/Config.in new file mode 100644 index 00000000..2062e16e --- /dev/null +++ b/package/x11r7/xfont_font-micro-misc/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_MICRO_MISC + bool "font-micro-misc" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-micro-misc/xfont_font-micro-misc.hash b/package/x11r7/xfont_font-micro-misc/xfont_font-micro-misc.hash new file mode 100644 index 00000000..ce0899b6 --- /dev/null +++ b/package/x11r7/xfont_font-micro-misc/xfont_font-micro-misc.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 9a3381c10f32d9511f0ad4179df395914c50779103c16cddf7017f5220ed8db6 font-micro-misc-1.0.3.tar.bz2 +sha256 1711d038bca0efb51b5114e902412019d1c21531882866b1a6908c6386268cfb COPYING diff --git a/package/x11r7/xfont_font-micro-misc/xfont_font-micro-misc.mk b/package/x11r7/xfont_font-micro-misc/xfont_font-micro-misc.mk new file mode 100644 index 00000000..b5da83f3 --- /dev/null +++ b/package/x11r7/xfont_font-micro-misc/xfont_font-micro-misc.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xfont_font-micro-misc +# +################################################################################ + +XFONT_FONT_MICRO_MISC_VERSION = 1.0.3 +XFONT_FONT_MICRO_MISC_SOURCE = font-micro-misc-$(XFONT_FONT_MICRO_MISC_VERSION).tar.bz2 +XFONT_FONT_MICRO_MISC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_MICRO_MISC_LICENSE = Public Domain +XFONT_FONT_MICRO_MISC_LICENSE_FILES = COPYING + +XFONT_FONT_MICRO_MISC_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_MICRO_MISC_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_MICRO_MISC_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-misc-cyrillic/Config.in b/package/x11r7/xfont_font-misc-cyrillic/Config.in new file mode 100644 index 00000000..58702c14 --- /dev/null +++ b/package/x11r7/xfont_font-misc-cyrillic/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_MISC_CYRILLIC + bool "font-misc-cyrillic" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-misc-cyrillic/xfont_font-misc-cyrillic.hash b/package/x11r7/xfont_font-misc-cyrillic/xfont_font-misc-cyrillic.hash new file mode 100644 index 00000000..5eb407f4 --- /dev/null +++ b/package/x11r7/xfont_font-misc-cyrillic/xfont_font-misc-cyrillic.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 e40fe3e3323c62b738550795457ad555c70c008aa91b5912dfd46f8e745f5e60 font-misc-cyrillic-1.0.3.tar.bz2 +sha256 8765722448e0ca6ce113d0406554c40224f74abfc005f4b2ef927567349f1529 COPYING diff --git a/package/x11r7/xfont_font-misc-cyrillic/xfont_font-misc-cyrillic.mk b/package/x11r7/xfont_font-misc-cyrillic/xfont_font-misc-cyrillic.mk new file mode 100644 index 00000000..8fa30ea3 --- /dev/null +++ b/package/x11r7/xfont_font-misc-cyrillic/xfont_font-misc-cyrillic.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xfont_font-misc-cyrillic +# +################################################################################ + +XFONT_FONT_MISC_CYRILLIC_VERSION = 1.0.3 +XFONT_FONT_MISC_CYRILLIC_SOURCE = font-misc-cyrillic-$(XFONT_FONT_MISC_CYRILLIC_VERSION).tar.bz2 +XFONT_FONT_MISC_CYRILLIC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_MISC_CYRILLIC_LICENSE = MIT / Public Domain +XFONT_FONT_MISC_CYRILLIC_LICENSE_FILES = COPYING + +XFONT_FONT_MISC_CYRILLIC_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_MISC_CYRILLIC_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_MISC_CYRILLIC_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-misc-ethiopic/Config.in b/package/x11r7/xfont_font-misc-ethiopic/Config.in new file mode 100644 index 00000000..af62ddc3 --- /dev/null +++ b/package/x11r7/xfont_font-misc-ethiopic/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_MISC_ETHIOPIC + bool "font-misc-ethiopic" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-misc-ethiopic/xfont_font-misc-ethiopic.hash b/package/x11r7/xfont_font-misc-ethiopic/xfont_font-misc-ethiopic.hash new file mode 100644 index 00000000..45cf4300 --- /dev/null +++ b/package/x11r7/xfont_font-misc-ethiopic/xfont_font-misc-ethiopic.hash @@ -0,0 +1,5 @@ +# From https://lists.x.org/archives/xorg-announce/2020-August/003055.html +sha256 698c0f6ddf9ca482250bdafa08293893148393bb9cb23e0a9ca313c6dbfc4ae0 font-misc-ethiopic-1.0.4.tar.bz2 +sha512 4fed9ff3782746898c56dac199e9ca89356f4967779937049b9ff4ffad202317c023859f92d44b371dfa5485d5368ccad648e64b12cde0ed21f7d4aee5affcd5 font-misc-ethiopic-1.0.4.tar.bz2 +# locally computed +sha256 94835f274f1ddad34f8fd3a06b2c493222a68e4094f4097000d101f22ee0d0d5 COPYING diff --git a/package/x11r7/xfont_font-misc-ethiopic/xfont_font-misc-ethiopic.mk b/package/x11r7/xfont_font-misc-ethiopic/xfont_font-misc-ethiopic.mk new file mode 100644 index 00000000..9ded4b6c --- /dev/null +++ b/package/x11r7/xfont_font-misc-ethiopic/xfont_font-misc-ethiopic.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# xfont_font-misc-ethiopic +# +################################################################################ + +XFONT_FONT_MISC_ETHIOPIC_VERSION = 1.0.4 +XFONT_FONT_MISC_ETHIOPIC_SOURCE = font-misc-ethiopic-$(XFONT_FONT_MISC_ETHIOPIC_VERSION).tar.bz2 +XFONT_FONT_MISC_ETHIOPIC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_MISC_ETHIOPIC_LICENSE = MIT +XFONT_FONT_MISC_ETHIOPIC_LICENSE_FILES = COPYING + +XFONT_FONT_MISC_ETHIOPIC_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_MISC_ETHIOPIC_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_MISC_ETHIOPIC_DEPENDENCIES = xfont_font-util host-xfont_font-util host-xapp_mkfontscale host-xapp_bdftopcf + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-misc-meltho/Config.in b/package/x11r7/xfont_font-misc-meltho/Config.in new file mode 100644 index 00000000..dd2d87d9 --- /dev/null +++ b/package/x11r7/xfont_font-misc-meltho/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_MISC_MELTHO + bool "font-misc-meltho" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-misc-meltho/xfont_font-misc-meltho.hash b/package/x11r7/xfont_font-misc-meltho/xfont_font-misc-meltho.hash new file mode 100644 index 00000000..92046c85 --- /dev/null +++ b/package/x11r7/xfont_font-misc-meltho/xfont_font-misc-meltho.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 3721323f13855cf7ca609115a1f7b182491e9b2b9c6e01eb1a2c7f8edd480791 font-misc-meltho-1.0.3.tar.bz2 +sha256 6a02b45e4877b9df8c1bdaa21e1e8fba86d85e3be4c90f2791183a501e0cbd25 COPYING diff --git a/package/x11r7/xfont_font-misc-meltho/xfont_font-misc-meltho.mk b/package/x11r7/xfont_font-misc-meltho/xfont_font-misc-meltho.mk new file mode 100644 index 00000000..ac4a71b7 --- /dev/null +++ b/package/x11r7/xfont_font-misc-meltho/xfont_font-misc-meltho.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# xfont_font-misc-meltho +# +################################################################################ + +XFONT_FONT_MISC_MELTHO_VERSION = 1.0.3 +XFONT_FONT_MISC_MELTHO_SOURCE = font-misc-meltho-$(XFONT_FONT_MISC_MELTHO_VERSION).tar.bz2 +XFONT_FONT_MISC_MELTHO_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_MISC_MELTHO_LICENSE = Meltho License +XFONT_FONT_MISC_MELTHO_LICENSE_FILES = COPYING + +XFONT_FONT_MISC_MELTHO_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_MISC_MELTHO_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_MISC_MELTHO_DEPENDENCIES = xfont_font-util host-xfont_font-util host-xapp_mkfontscale host-xapp_bdftopcf + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-misc-misc/Config.in b/package/x11r7/xfont_font-misc-misc/Config.in new file mode 100644 index 00000000..fc379a6e --- /dev/null +++ b/package/x11r7/xfont_font-misc-misc/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_MISC_MISC + bool "font-misc-misc" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-misc-misc/xfont_font-misc-misc.hash b/package/x11r7/xfont_font-misc-misc/xfont_font-misc-misc.hash new file mode 100644 index 00000000..78174242 --- /dev/null +++ b/package/x11r7/xfont_font-misc-misc/xfont_font-misc-misc.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 b8e77940e4e1769dc47ef1805918d8c9be37c708735832a07204258bacc11794 font-misc-misc-1.1.2.tar.bz2 +sha256 1711d038bca0efb51b5114e902412019d1c21531882866b1a6908c6386268cfb COPYING diff --git a/package/x11r7/xfont_font-misc-misc/xfont_font-misc-misc.mk b/package/x11r7/xfont_font-misc-misc/xfont_font-misc-misc.mk new file mode 100644 index 00000000..e03da6f1 --- /dev/null +++ b/package/x11r7/xfont_font-misc-misc/xfont_font-misc-misc.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xfont_font-misc-misc +# +################################################################################ + +XFONT_FONT_MISC_MISC_VERSION = 1.1.2 +XFONT_FONT_MISC_MISC_SOURCE = font-misc-misc-$(XFONT_FONT_MISC_MISC_VERSION).tar.bz2 +XFONT_FONT_MISC_MISC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_MISC_MISC_LICENSE = Public Domain +XFONT_FONT_MISC_MISC_LICENSE_FILES = COPYING + +XFONT_FONT_MISC_MISC_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_MISC_MISC_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_MISC_MISC_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-mutt-misc/Config.in b/package/x11r7/xfont_font-mutt-misc/Config.in new file mode 100644 index 00000000..563dc9f2 --- /dev/null +++ b/package/x11r7/xfont_font-mutt-misc/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_MUTT_MISC + bool "font-mutt-misc" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-mutt-misc/xfont_font-mutt-misc.hash b/package/x11r7/xfont_font-mutt-misc/xfont_font-mutt-misc.hash new file mode 100644 index 00000000..f6e8e9aa --- /dev/null +++ b/package/x11r7/xfont_font-mutt-misc/xfont_font-mutt-misc.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 bd5f7adb34367c197773a9801df5bce7b019664941900b2a31fbfe1ff2830f8f font-mutt-misc-1.0.3.tar.bz2 +sha256 81d42a6eeaf3ac2fcc1e1408fb6e2039d1162ca85d4abaf75e3daddcb250e4ff COPYING diff --git a/package/x11r7/xfont_font-mutt-misc/xfont_font-mutt-misc.mk b/package/x11r7/xfont_font-mutt-misc/xfont_font-mutt-misc.mk new file mode 100644 index 00000000..6fcaa5da --- /dev/null +++ b/package/x11r7/xfont_font-mutt-misc/xfont_font-mutt-misc.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xfont_font-mutt-misc +# +################################################################################ + +XFONT_FONT_MUTT_MISC_VERSION = 1.0.3 +XFONT_FONT_MUTT_MISC_SOURCE = font-mutt-misc-$(XFONT_FONT_MUTT_MISC_VERSION).tar.bz2 +XFONT_FONT_MUTT_MISC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_MUTT_MISC_LICENSE = MIT +XFONT_FONT_MUTT_MISC_LICENSE_FILES = COPYING + +XFONT_FONT_MUTT_MISC_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_MUTT_MISC_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_MUTT_MISC_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-schumacher-misc/Config.in b/package/x11r7/xfont_font-schumacher-misc/Config.in new file mode 100644 index 00000000..e30940a6 --- /dev/null +++ b/package/x11r7/xfont_font-schumacher-misc/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_SCHUMACHER_MISC + bool "font-schumacher-misc" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-schumacher-misc/xfont_font-schumacher-misc.hash b/package/x11r7/xfont_font-schumacher-misc/xfont_font-schumacher-misc.hash new file mode 100644 index 00000000..107493b2 --- /dev/null +++ b/package/x11r7/xfont_font-schumacher-misc/xfont_font-schumacher-misc.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 e444028656e0767e2eddc6d9aca462b16a2be75a47244dbc199b2c44eca87e5a font-schumacher-misc-1.1.2.tar.bz2 +sha256 4e2b9933887950acad3a780dce91c71770c8887f132bcd0c2ba6146cdc372407 COPYING diff --git a/package/x11r7/xfont_font-schumacher-misc/xfont_font-schumacher-misc.mk b/package/x11r7/xfont_font-schumacher-misc/xfont_font-schumacher-misc.mk new file mode 100644 index 00000000..e07569d4 --- /dev/null +++ b/package/x11r7/xfont_font-schumacher-misc/xfont_font-schumacher-misc.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xfont_font-schumacher-misc +# +################################################################################ + +XFONT_FONT_SCHUMACHER_MISC_VERSION = 1.1.2 +XFONT_FONT_SCHUMACHER_MISC_SOURCE = font-schumacher-misc-$(XFONT_FONT_SCHUMACHER_MISC_VERSION).tar.bz2 +XFONT_FONT_SCHUMACHER_MISC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_SCHUMACHER_MISC_LICENSE = MIT +XFONT_FONT_SCHUMACHER_MISC_LICENSE_FILES = COPYING + +XFONT_FONT_SCHUMACHER_MISC_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_SCHUMACHER_MISC_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_SCHUMACHER_MISC_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-screen-cyrillic/Config.in b/package/x11r7/xfont_font-screen-cyrillic/Config.in new file mode 100644 index 00000000..67f4ae6c --- /dev/null +++ b/package/x11r7/xfont_font-screen-cyrillic/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_SCREEN_CYRILLIC + bool "font-screen-cyrillic" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-screen-cyrillic/xfont_font-screen-cyrillic.hash b/package/x11r7/xfont_font-screen-cyrillic/xfont_font-screen-cyrillic.hash new file mode 100644 index 00000000..e8d3fa16 --- /dev/null +++ b/package/x11r7/xfont_font-screen-cyrillic/xfont_font-screen-cyrillic.hash @@ -0,0 +1,4 @@ +# From http://www.x.org/archive/current/src/everything/CHECKSUMS +sha256 824231e8dffe15299454e47259f29d98001c9cf8ad3d6b5171399e4d71705e79 font-screen-cyrillic-1.0.4.tar.bz2 +# Locally computed +sha256 5234cbcbdcc9865ce2b576b5f67e77e40ccdc1aa01e6528bea5a17784934b894 COPYING diff --git a/package/x11r7/xfont_font-screen-cyrillic/xfont_font-screen-cyrillic.mk b/package/x11r7/xfont_font-screen-cyrillic/xfont_font-screen-cyrillic.mk new file mode 100644 index 00000000..a254d4a7 --- /dev/null +++ b/package/x11r7/xfont_font-screen-cyrillic/xfont_font-screen-cyrillic.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xfont_font-screen-cyrillic +# +################################################################################ + +XFONT_FONT_SCREEN_CYRILLIC_VERSION = 1.0.4 +XFONT_FONT_SCREEN_CYRILLIC_SOURCE = font-screen-cyrillic-$(XFONT_FONT_SCREEN_CYRILLIC_VERSION).tar.bz2 +XFONT_FONT_SCREEN_CYRILLIC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_SCREEN_CYRILLIC_LICENSE = MIT +XFONT_FONT_SCREEN_CYRILLIC_LICENSE_FILES = COPYING + +XFONT_FONT_SCREEN_CYRILLIC_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_SCREEN_CYRILLIC_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_SCREEN_CYRILLIC_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-sony-misc/Config.in b/package/x11r7/xfont_font-sony-misc/Config.in new file mode 100644 index 00000000..df558c43 --- /dev/null +++ b/package/x11r7/xfont_font-sony-misc/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_SONY_MISC + bool "font-sony-misc" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-sony-misc/xfont_font-sony-misc.hash b/package/x11r7/xfont_font-sony-misc/xfont_font-sony-misc.hash new file mode 100644 index 00000000..80261ff3 --- /dev/null +++ b/package/x11r7/xfont_font-sony-misc/xfont_font-sony-misc.hash @@ -0,0 +1,4 @@ +# From http://www.x.org/archive/current/src/everything/CHECKSUMS +sha256 2043a326ba347c9da5ca1e9bc363e2521c3ea40b43b1f9662d333efd4867cff5 font-sony-misc-1.0.3.tar.bz2 +# Locally computed +sha256 8233ff7d7bc8b5b46cbba3f6cd0069d2ef875bd1b1e0090ca4145282aa096739 COPYING diff --git a/package/x11r7/xfont_font-sony-misc/xfont_font-sony-misc.mk b/package/x11r7/xfont_font-sony-misc/xfont_font-sony-misc.mk new file mode 100644 index 00000000..6e580fd9 --- /dev/null +++ b/package/x11r7/xfont_font-sony-misc/xfont_font-sony-misc.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xfont_font-sony-misc +# +################################################################################ + +XFONT_FONT_SONY_MISC_VERSION = 1.0.3 +XFONT_FONT_SONY_MISC_SOURCE = font-sony-misc-$(XFONT_FONT_SONY_MISC_VERSION).tar.bz2 +XFONT_FONT_SONY_MISC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_SONY_MISC_LICENSE = MIT +XFONT_FONT_SONY_MISC_LICENSE_FILES = COPYING + +XFONT_FONT_SONY_MISC_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_SONY_MISC_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_SONY_MISC_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-sun-misc/Config.in b/package/x11r7/xfont_font-sun-misc/Config.in new file mode 100644 index 00000000..accc764a --- /dev/null +++ b/package/x11r7/xfont_font-sun-misc/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_SUN_MISC + bool "font-sun-misc" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-sun-misc/xfont_font-sun-misc.hash b/package/x11r7/xfont_font-sun-misc/xfont_font-sun-misc.hash new file mode 100644 index 00000000..8b195c9f --- /dev/null +++ b/package/x11r7/xfont_font-sun-misc/xfont_font-sun-misc.hash @@ -0,0 +1,4 @@ +# From http://www.x.org/archive/current/src/everything/CHECKSUMS +sha256 481f4fcbbf7005658b080b3cf342c8c76de752e77f47958b2b383de73266d2e0 font-sun-misc-1.0.3.tar.bz2 +# Locally computed +sha256 dd6da1d39832ab2878c3304405c1c7883c6da292ffde262fca1785239534c40f COPYING diff --git a/package/x11r7/xfont_font-sun-misc/xfont_font-sun-misc.mk b/package/x11r7/xfont_font-sun-misc/xfont_font-sun-misc.mk new file mode 100644 index 00000000..737cfb5c --- /dev/null +++ b/package/x11r7/xfont_font-sun-misc/xfont_font-sun-misc.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xfont_font-sun-misc +# +################################################################################ + +XFONT_FONT_SUN_MISC_VERSION = 1.0.3 +XFONT_FONT_SUN_MISC_SOURCE = font-sun-misc-$(XFONT_FONT_SUN_MISC_VERSION).tar.bz2 +XFONT_FONT_SUN_MISC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_SUN_MISC_LICENSE = MIT +XFONT_FONT_SUN_MISC_LICENSE_FILES = COPYING + +XFONT_FONT_SUN_MISC_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_SUN_MISC_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_SUN_MISC_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-util/Config.in b/package/x11r7/xfont_font-util/Config.in new file mode 100644 index 00000000..4edeffdd --- /dev/null +++ b/package/x11r7/xfont_font-util/Config.in @@ -0,0 +1,4 @@ +config BR2_PACKAGE_XFONT_FONT_UTIL + bool "font-util" + help + No description available diff --git a/package/x11r7/xfont_font-util/xfont_font-util.hash b/package/x11r7/xfont_font-util/xfont_font-util.hash new file mode 100644 index 00000000..55beba89 --- /dev/null +++ b/package/x11r7/xfont_font-util/xfont_font-util.hash @@ -0,0 +1,8 @@ +# From https://lists.x.org/archives/xorg-announce/2019-August/003019.html +md5 3d6adb76fdd072db8c8fae41b40855e8 font-util-1.3.2.tar.bz2 +sha1 1b36275c174b64a9c16da5c902c91546789a67ef font-util-1.3.2.tar.bz2 +sha256 3ad880444123ac06a7238546fa38a2a6ad7f7e0cc3614de7e103863616522282 font-util-1.3.2.tar.bz2 +sha512 7cac529b12ae71185b89c72c1569b9826f52eeaecc1c76010338e7c42c4078ae339f18220b580bbd68fb5dc09df6ecf169a47c32e6104d8ee53bd443fa21d167 font-util-1.3.2.tar.bz2 + +# Locally calculated +sha256 ce16c3ee6f2a38db6870b66bdb54fce9dcf24acd1161840789e321f6faa1251c COPYING diff --git a/package/x11r7/xfont_font-util/xfont_font-util.mk b/package/x11r7/xfont_font-util/xfont_font-util.mk new file mode 100644 index 00000000..cd2ae81c --- /dev/null +++ b/package/x11r7/xfont_font-util/xfont_font-util.mk @@ -0,0 +1,19 @@ +################################################################################ +# +# xfont_font-util +# +################################################################################ + +XFONT_FONT_UTIL_VERSION = 1.3.2 +XFONT_FONT_UTIL_SOURCE = font-util-$(XFONT_FONT_UTIL_VERSION).tar.bz2 +XFONT_FONT_UTIL_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_UTIL_LICENSE = MIT/BSD-2-Clause +XFONT_FONT_UTIL_LICENSE_FILES = COPYING + +XFONT_FONT_UTIL_DEPENDENCIES = host-pkgconf +HOST_XFONT_FONT_UTIL_DEPENDENCIES = host-pkgconf +XFONT_FONT_UTIL_INSTALL_STAGING = YES +XFONT_FONT_UTIL_INSTALL_TARGET = NO + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/x11r7/xfont_font-winitzki-cyrillic/Config.in b/package/x11r7/xfont_font-winitzki-cyrillic/Config.in new file mode 100644 index 00000000..ccfb0802 --- /dev/null +++ b/package/x11r7/xfont_font-winitzki-cyrillic/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_WINITZKI_CYRILLIC + bool "font-winitzki-cyrillic" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-winitzki-cyrillic/xfont_font-winitzki-cyrillic.hash b/package/x11r7/xfont_font-winitzki-cyrillic/xfont_font-winitzki-cyrillic.hash new file mode 100644 index 00000000..283f6f9f --- /dev/null +++ b/package/x11r7/xfont_font-winitzki-cyrillic/xfont_font-winitzki-cyrillic.hash @@ -0,0 +1,4 @@ +# From http://www.x.org/archive/current/src/everything/CHECKSUMS +sha256 abd13b63d02fcaec488686c23683e5cf640b43bd32f8ca22eeae6f84df0a36a0 font-winitzki-cyrillic-1.0.3.tar.bz2 +# Locally computed +sha256 ca60a2aa1133e39e8c72a01af06cf0c927f5ddfe70d469d1535231100618095d COPYING diff --git a/package/x11r7/xfont_font-winitzki-cyrillic/xfont_font-winitzki-cyrillic.mk b/package/x11r7/xfont_font-winitzki-cyrillic/xfont_font-winitzki-cyrillic.mk new file mode 100644 index 00000000..e43cd115 --- /dev/null +++ b/package/x11r7/xfont_font-winitzki-cyrillic/xfont_font-winitzki-cyrillic.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xfont_font-winitzki-cyrillic +# +################################################################################ + +XFONT_FONT_WINITZKI_CYRILLIC_VERSION = 1.0.3 +XFONT_FONT_WINITZKI_CYRILLIC_SOURCE = font-winitzki-cyrillic-$(XFONT_FONT_WINITZKI_CYRILLIC_VERSION).tar.bz2 +XFONT_FONT_WINITZKI_CYRILLIC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_WINITZKI_CYRILLIC_LICENSE = Public Domain +XFONT_FONT_WINITZKI_CYRILLIC_LICENSE_FILES = COPYING + +XFONT_FONT_WINITZKI_CYRILLIC_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_WINITZKI_CYRILLIC_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_WINITZKI_CYRILLIC_DEPENDENCIES = \ + xfont_font-util \ + host-xfont_font-util \ + host-xapp_mkfontscale \ + host-xapp_bdftopcf \ + host-gzip + +$(eval $(autotools-package)) diff --git a/package/x11r7/xfont_font-xfree86-type1/Config.in b/package/x11r7/xfont_font-xfree86-type1/Config.in new file mode 100644 index 00000000..1a897b24 --- /dev/null +++ b/package/x11r7/xfont_font-xfree86-type1/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XFONT_FONT_XFREE86_TYPE1 + bool "font-xfree86-type1" + select BR2_PACKAGE_XFONT_FONT_UTIL + help + No description available diff --git a/package/x11r7/xfont_font-xfree86-type1/xfont_font-xfree86-type1.hash b/package/x11r7/xfont_font-xfree86-type1/xfont_font-xfree86-type1.hash new file mode 100644 index 00000000..640f5663 --- /dev/null +++ b/package/x11r7/xfont_font-xfree86-type1/xfont_font-xfree86-type1.hash @@ -0,0 +1,4 @@ +# From http://www.x.org/archive/current/src/everything/CHECKSUMS +sha256 caebf42aec7be7f3bd40e0f232d6f34881b853dc84acfcdf7458358701fbe34a font-xfree86-type1-1.0.4.tar.bz2 +# Locally computed +sha256 51e6bc6513b3fa94512d8dd570240498c878605f25292c3883d92fdfca18d0c6 COPYING diff --git a/package/x11r7/xfont_font-xfree86-type1/xfont_font-xfree86-type1.mk b/package/x11r7/xfont_font-xfree86-type1/xfont_font-xfree86-type1.mk new file mode 100644 index 00000000..a26fbc89 --- /dev/null +++ b/package/x11r7/xfont_font-xfree86-type1/xfont_font-xfree86-type1.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# xfont_font-xfree86-type1 +# +################################################################################ + +XFONT_FONT_XFREE86_TYPE1_VERSION = 1.0.4 +XFONT_FONT_XFREE86_TYPE1_SOURCE = font-xfree86-type1-$(XFONT_FONT_XFREE86_TYPE1_VERSION).tar.bz2 +XFONT_FONT_XFREE86_TYPE1_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_XFREE86_TYPE1_LICENSE = MIT +XFONT_FONT_XFREE86_TYPE1_LICENSE_FILES = COPYING + +XFONT_FONT_XFREE86_TYPE1_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install +XFONT_FONT_XFREE86_TYPE1_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install-data +XFONT_FONT_XFREE86_TYPE1_DEPENDENCIES = xfont_font-util host-xfont_font-util host-xapp_mkfontscale host-xapp_bdftopcf + +$(eval $(autotools-package)) diff --git a/package/x11r7/xkeyboard-config/Config.in b/package/x11r7/xkeyboard-config/Config.in new file mode 100644 index 00000000..17cfe738 --- /dev/null +++ b/package/x11r7/xkeyboard-config/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_XKEYBOARD_CONFIG + bool "xkeyboard-config" + # Runtime dependencies + select BR2_PACKAGE_XAPP_XKBCOMP if BR2_PACKAGE_XORG7 + select BR2_PACKAGE_XLIB_LIBX11 if BR2_PACKAGE_XORG7 + select BR2_PACKAGE_XORGPROTO if BR2_PACKAGE_XORG7 + help + keyboard configuration database for X + + https://gitlab.freedesktop.org/xkeyboard-config/xkeyboard-config diff --git a/package/x11r7/xkeyboard-config/xkeyboard-config.hash b/package/x11r7/xkeyboard-config/xkeyboard-config.hash new file mode 100644 index 00000000..3cbd1911 --- /dev/null +++ b/package/x11r7/xkeyboard-config/xkeyboard-config.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 da44181f2c8828789c720decf7d13acb3c3950e2a040af5132f50f04bb6aada3 xkeyboard-config-2.31.tar.bz2 +sha256 6ca90f4b67dced4062894d6d77f4cc39343df9e359fc12f5e5d3c89ef2a3ef6d COPYING diff --git a/package/x11r7/xkeyboard-config/xkeyboard-config.mk b/package/x11r7/xkeyboard-config/xkeyboard-config.mk new file mode 100644 index 00000000..f192836d --- /dev/null +++ b/package/x11r7/xkeyboard-config/xkeyboard-config.mk @@ -0,0 +1,23 @@ +################################################################################ +# +# xkeyboard-config +# +################################################################################ + +XKEYBOARD_CONFIG_VERSION = 2.31 +XKEYBOARD_CONFIG_SOURCE = xkeyboard-config-$(XKEYBOARD_CONFIG_VERSION).tar.bz2 +XKEYBOARD_CONFIG_SITE = https://www.x.org/releases/individual/data/xkeyboard-config +XKEYBOARD_CONFIG_LICENSE = MIT +XKEYBOARD_CONFIG_LICENSE_FILES = COPYING + +XKEYBOARD_CONFIG_DEPENDENCIES = \ + $(BR2_PYTHON3_HOST_DEPENDENCY) \ + host-gettext \ + host-xapp_xkbcomp + +# xkeyboard-config.pc +XKEYBOARD_CONFIG_INSTALL_STAGING = YES + +XKEYBOARD_CONFIG_CONF_OPTS = --disable-runtime-deps + +$(eval $(autotools-package)) diff --git a/package/x11r7/xlib_libFS/Config.in b/package/x11r7/xlib_libFS/Config.in new file mode 100644 index 00000000..6ff0bcc3 --- /dev/null +++ b/package/x11r7/xlib_libFS/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XLIB_LIBFS + bool "libFS" + select BR2_PACKAGE_XLIB_XTRANS + select BR2_PACKAGE_XORGPROTO + help + X.Org FS library diff --git a/package/x11r7/xlib_libFS/xlib_libFS.hash b/package/x11r7/xlib_libFS/xlib_libFS.hash new file mode 100644 index 00000000..c6f16857 --- /dev/null +++ b/package/x11r7/xlib_libFS/xlib_libFS.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-March/002970.html +md5 4e1196275aa743d6ebd3d3d5ec1dff9c libFS-1.0.8.tar.bz2 +sha1 70173cc15a7a55defb7b22b00a9387901acad634 libFS-1.0.8.tar.bz2 +sha256 c8e13727149b2ddfe40912027459b2522042e3844c5cd228c3300fe5eef6bd0f libFS-1.0.8.tar.bz2 +sha512 466198ae5c0b83e3579713d86ddfd0b039f5c5b511cf6d5dc0e9664ee2d40aec9e8929445c8e97394d85faf76a7cf2f81bddb13d23de7ce19919e3b1e36ba56f libFS-1.0.8.tar.bz2 +# Locally computed +sha256 5386724e7475b89394dd836b954a6688f875efab99e43e8eb7e8775f5b99a341 COPYING diff --git a/package/x11r7/xlib_libFS/xlib_libFS.mk b/package/x11r7/xlib_libFS/xlib_libFS.mk new file mode 100644 index 00000000..9d9aecb7 --- /dev/null +++ b/package/x11r7/xlib_libFS/xlib_libFS.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# xlib_libFS +# +################################################################################ + +XLIB_LIBFS_VERSION = 1.0.8 +XLIB_LIBFS_SOURCE = libFS-$(XLIB_LIBFS_VERSION).tar.bz2 +XLIB_LIBFS_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBFS_LICENSE = MIT +XLIB_LIBFS_LICENSE_FILES = COPYING +XLIB_LIBFS_CPE_ID_VENDOR = x +XLIB_LIBFS_CPE_ID_PRODUCT = libfs +XLIB_LIBFS_INSTALL_STAGING = YES +XLIB_LIBFS_DEPENDENCIES = xlib_xtrans xorgproto host-pkgconf +XLIB_LIBFS_CONF_OPTS = --disable-malloc0returnsnull + +$(eval $(autotools-package)) diff --git a/package/x11r7/xlib_libICE/Config.in b/package/x11r7/xlib_libICE/Config.in new file mode 100644 index 00000000..ccdd4003 --- /dev/null +++ b/package/x11r7/xlib_libICE/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XLIB_LIBICE + bool "libICE" + select BR2_PACKAGE_XLIB_XTRANS + select BR2_PACKAGE_XORGPROTO + help + X.Org ICE library diff --git a/package/x11r7/xlib_libICE/xlib_libICE.hash b/package/x11r7/xlib_libICE/xlib_libICE.hash new file mode 100644 index 00000000..426ada32 --- /dev/null +++ b/package/x11r7/xlib_libICE/xlib_libICE.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-July/003006.html +md5 76d77499ee7120a56566891ca2c0dbcf libICE-1.0.10.tar.bz2 +sha1 5b5eb125d4f43a3ab8153b0f850963ee6c982c24 libICE-1.0.10.tar.bz2 +sha256 6f86dce12cf4bcaf5c37dddd8b1b64ed2ddf1ef7b218f22b9942595fb747c348 libICE-1.0.10.tar.bz2 +sha512 2f1ef2c32c833c71894a08fa7e7ed53f301f6c7bd22485d71c12884d8e8b36b99f362ec886349dcc84d08edc81c8b2cea035320831d64974edeba021b433c468 libICE-1.0.10.tar.bz2 +# Locally computed +sha256 60105b7ea93cb07a67fee8443b092b727e3db7f0dff4fbe05bc6cd7747fb53c8 COPYING diff --git a/package/x11r7/xlib_libICE/xlib_libICE.mk b/package/x11r7/xlib_libICE/xlib_libICE.mk new file mode 100644 index 00000000..2b56aaab --- /dev/null +++ b/package/x11r7/xlib_libICE/xlib_libICE.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# xlib_libICE +# +################################################################################ + +XLIB_LIBICE_VERSION = 1.0.10 +XLIB_LIBICE_SOURCE = libICE-$(XLIB_LIBICE_VERSION).tar.bz2 +XLIB_LIBICE_SITE = https://xorg.freedesktop.org/archive/individual/lib +XLIB_LIBICE_LICENSE = MIT +XLIB_LIBICE_LICENSE_FILES = COPYING +XLIB_LIBICE_CPE_ID_VENDOR = freedesktop +XLIB_LIBICE_CPE_ID_PRODUCT = libice +XLIB_LIBICE_INSTALL_STAGING = YES +XLIB_LIBICE_DEPENDENCIES = xlib_xtrans xorgproto host-pkgconf + +$(eval $(autotools-package)) diff --git a/package/x11r7/xlib_libSM/Config.in b/package/x11r7/xlib_libSM/Config.in new file mode 100644 index 00000000..02ee2bd2 --- /dev/null +++ b/package/x11r7/xlib_libSM/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_XLIB_LIBSM + bool "libSM" + select BR2_PACKAGE_XLIB_LIBICE + select BR2_PACKAGE_XLIB_XTRANS + select BR2_PACKAGE_XORGPROTO + help + X.Org SM library diff --git a/package/x11r7/xlib_libSM/xlib_libSM.hash b/package/x11r7/xlib_libSM/xlib_libSM.hash new file mode 100644 index 00000000..1653dc6d --- /dev/null +++ b/package/x11r7/xlib_libSM/xlib_libSM.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-October/002922.html +md5 87c7fad1c1813517979184c8ccd76628 libSM-1.2.3.tar.bz2 +sha1 437d7b13fa2eba325df3a106f177df46ccec6546 libSM-1.2.3.tar.bz2 +sha256 2d264499dcb05f56438dee12a1b4b71d76736ce7ba7aa6efbf15ebb113769cbb libSM-1.2.3.tar.bz2 +sha512 74c42e27029db78475e62025b4711dbac5e22d2f8e8a24be98a1c31b03c0fc4afe859928f851800ea0b76854f12147900dc4f27bbfd3d8ea45daaaf24b70a903 libSM-1.2.3.tar.bz2 +# Locally computed +sha256 af7926a14d85ad367622688636e8c9c6f7807c8a6867536af1c530b5c262bfba COPYING diff --git a/package/x11r7/xlib_libSM/xlib_libSM.mk b/package/x11r7/xlib_libSM/xlib_libSM.mk new file mode 100644 index 00000000..708224e2 --- /dev/null +++ b/package/x11r7/xlib_libSM/xlib_libSM.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# xlib_libSM +# +################################################################################ + +XLIB_LIBSM_VERSION = 1.2.3 +XLIB_LIBSM_SOURCE = libSM-$(XLIB_LIBSM_VERSION).tar.bz2 +XLIB_LIBSM_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBSM_LICENSE = MIT +XLIB_LIBSM_LICENSE_FILES = COPYING +XLIB_LIBSM_INSTALL_STAGING = YES +XLIB_LIBSM_DEPENDENCIES = xlib_libICE xlib_xtrans xorgproto +XLIB_LIBSM_CONF_OPTS = --without-libuuid + +$(eval $(autotools-package)) diff --git a/package/x11r7/xlib_libX11/Config.in b/package/x11r7/xlib_libX11/Config.in new file mode 100644 index 00000000..d69c51b9 --- /dev/null +++ b/package/x11r7/xlib_libX11/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_XLIB_LIBX11 + bool "libX11" + select BR2_PACKAGE_LIBXCB + select BR2_PACKAGE_XUTIL_UTIL_MACROS + select BR2_PACKAGE_XLIB_XTRANS + select BR2_PACKAGE_XLIB_LIBXAU + select BR2_PACKAGE_XLIB_LIBXDMCP + select BR2_PACKAGE_XORGPROTO + help + X.Org X11 library diff --git a/package/x11r7/xlib_libX11/xlib_libX11.hash b/package/x11r7/xlib_libX11/xlib_libX11.hash new file mode 100644 index 00000000..7aeef334 --- /dev/null +++ b/package/x11r7/xlib_libX11/xlib_libX11.hash @@ -0,0 +1,6 @@ +# From https://lists.x.org/archives/xorg-announce/2021-June/003092.html +sha256 1cfa35e37aaabbe4792e9bb690468efefbfbf6b147d9c69d6f90d13c3092ea6c libX11-1.7.2.tar.bz2 +sha512 d01e5c1848c76218605e5af2d353de6b301a251555b52a38dbe930e6635d5e8a92d1486eb6d328ad5d42a5939e0d16868ffa19a75e5a7863d1a32e0d0727bdc7 libX11-1.7.2.tar.bz2 + +# Locally computed +sha256 2daec087a88e7c9b8082557cdeebad5bbb8155a4137472f0b22e269cd99d0c1e COPYING diff --git a/package/x11r7/xlib_libX11/xlib_libX11.mk b/package/x11r7/xlib_libX11/xlib_libX11.mk new file mode 100644 index 00000000..aa3ebf15 --- /dev/null +++ b/package/x11r7/xlib_libX11/xlib_libX11.mk @@ -0,0 +1,42 @@ +################################################################################ +# +# xlib_libX11 +# +################################################################################ + +XLIB_LIBX11_VERSION = 1.7.2 +XLIB_LIBX11_SOURCE = libX11-$(XLIB_LIBX11_VERSION).tar.bz2 +XLIB_LIBX11_SITE = https://xorg.freedesktop.org/archive/individual/lib +XLIB_LIBX11_LICENSE = MIT +XLIB_LIBX11_LICENSE_FILES = COPYING +XLIB_LIBX11_CPE_ID_VENDOR = x.org +XLIB_LIBX11_CPE_ID_PRODUCT = libx11 +XLIB_LIBX11_INSTALL_STAGING = YES +XLIB_LIBX11_DEPENDENCIES = \ + libxcb \ + xutil_util-macros \ + xlib_xtrans \ + xlib_libXau \ + xlib_libXdmcp \ + xorgproto \ + host-xorgproto + +HOST_XLIB_LIBX11_DEPENDENCIES = \ + host-libxcb \ + host-xutil_util-macros \ + host-xlib_xtrans \ + host-xlib_libXau \ + host-xlib_libXdmcp \ + host-xorgproto + +XLIB_LIBX11_CONF_OPTS = \ + --disable-malloc0returnsnull \ + --disable-specs \ + --without-perl + +HOST_XLIB_LIBX11_CONF_OPTS = \ + --disable-specs \ + --without-perl + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/x11r7/xlib_libXScrnSaver/Config.in b/package/x11r7/xlib_libXScrnSaver/Config.in new file mode 100644 index 00000000..05c96d74 --- /dev/null +++ b/package/x11r7/xlib_libXScrnSaver/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_XLIB_LIBXSCRNSAVER + bool "libXScrnSaver" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XORGPROTO + help + X.Org XScrnSaver library diff --git a/package/x11r7/xlib_libXScrnSaver/xlib_libXScrnSaver.hash b/package/x11r7/xlib_libXScrnSaver/xlib_libXScrnSaver.hash new file mode 100644 index 00000000..26684011 --- /dev/null +++ b/package/x11r7/xlib_libXScrnSaver/xlib_libXScrnSaver.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-July/002906.html +md5 eeea9d5af3e6c143d0ea1721d27a5e49 libXScrnSaver-1.2.3.tar.bz2 +sha1 70c791c5755a298ecf1a0823e239a24fa4b2b42f libXScrnSaver-1.2.3.tar.bz2 +sha256 f917075a1b7b5a38d67a8b0238eaab14acd2557679835b154cf2bca576e89bf8 libXScrnSaver-1.2.3.tar.bz2 +sha512 7ea628324a11b25ee82c7b11c6bf98f37de219354de51c1e29467b5de422669ba1ab121f3b9dc674093c8f3960e93c5d5428122f5539092f79bc8451c768354a libXScrnSaver-1.2.3.tar.bz2 +# Locally computed +sha256 5cf3e16f5dd753a4c0853e8227134ab65f5562d9ef89b1a2d7681f5c8ac9feb5 COPYING diff --git a/package/x11r7/xlib_libXScrnSaver/xlib_libXScrnSaver.mk b/package/x11r7/xlib_libXScrnSaver/xlib_libXScrnSaver.mk new file mode 100644 index 00000000..92abb902 --- /dev/null +++ b/package/x11r7/xlib_libXScrnSaver/xlib_libXScrnSaver.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# xlib_libXScrnSaver +# +################################################################################ + +XLIB_LIBXSCRNSAVER_VERSION = 1.2.3 +XLIB_LIBXSCRNSAVER_SOURCE = libXScrnSaver-$(XLIB_LIBXSCRNSAVER_VERSION).tar.bz2 +XLIB_LIBXSCRNSAVER_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXSCRNSAVER_LICENSE = MIT +XLIB_LIBXSCRNSAVER_LICENSE_FILES = COPYING +XLIB_LIBXSCRNSAVER_INSTALL_STAGING = YES +XLIB_LIBXSCRNSAVER_DEPENDENCIES = xlib_libX11 xlib_libXext xorgproto +XLIB_LIBXSCRNSAVER_CONF_OPTS = --disable-malloc0returnsnull + +$(eval $(autotools-package)) diff --git a/package/x11r7/xlib_libXau/Config.in b/package/x11r7/xlib_libXau/Config.in new file mode 100644 index 00000000..0323faa3 --- /dev/null +++ b/package/x11r7/xlib_libXau/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XLIB_LIBXAU + bool "libXau" + select BR2_PACKAGE_XORGPROTO + select BR2_PACKAGE_XUTIL_UTIL_MACROS + help + X.Org Xau library diff --git a/package/x11r7/xlib_libXau/xlib_libXau.hash b/package/x11r7/xlib_libXau/xlib_libXau.hash new file mode 100644 index 00000000..a78d7f0f --- /dev/null +++ b/package/x11r7/xlib_libXau/xlib_libXau.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-February/002942.html +md5 c5f16288f2da9f071b29111d68797480 libXau-1.0.9.tar.bz2 +sha1 ef9b1ad00f958c8b6e30a1bbc11fdfac311c9733 libXau-1.0.9.tar.bz2 +sha256 ccf8cbf0dbf676faa2ea0a6d64bcc3b6746064722b606c8c52917ed00dcb73ec libXau-1.0.9.tar.bz2 +sha512 3ca454ba466a807ea28b0f715066d73dc76ad312697b121d43e4d5766215052e9b7ffb8fe3ed3e496fa3f2a13f164ac692ff85cc428e26731b679f0f06a1d562 libXau-1.0.9.tar.bz2 +# Locally computed +sha256 56abe29bb1d9806a9e04fa9f80fed2c0f18027594df3f098148d814aef6bddfa COPYING diff --git a/package/x11r7/xlib_libXau/xlib_libXau.mk b/package/x11r7/xlib_libXau/xlib_libXau.mk new file mode 100644 index 00000000..bac10818 --- /dev/null +++ b/package/x11r7/xlib_libXau/xlib_libXau.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# xlib_libXau +# +################################################################################ + +XLIB_LIBXAU_VERSION = 1.0.9 +XLIB_LIBXAU_SOURCE = libXau-$(XLIB_LIBXAU_VERSION).tar.bz2 +XLIB_LIBXAU_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXAU_LICENSE = MIT +XLIB_LIBXAU_LICENSE_FILES = COPYING +XLIB_LIBXAU_INSTALL_STAGING = YES +XLIB_LIBXAU_DEPENDENCIES = host-pkgconf xutil_util-macros xorgproto +HOST_XLIB_LIBXAU_DEPENDENCIES = \ + host-pkgconf host-xutil_util-macros host-xorgproto + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/x11r7/xlib_libXaw/Config.in b/package/x11r7/xlib_libXaw/Config.in new file mode 100644 index 00000000..bda4ded2 --- /dev/null +++ b/package/x11r7/xlib_libXaw/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_XLIB_LIBXAW + bool "libXaw" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXT + select BR2_PACKAGE_XLIB_LIBXMU + select BR2_PACKAGE_XLIB_LIBXPM + select BR2_PACKAGE_XORGPROTO + help + X.Org Xaw library diff --git a/package/x11r7/xlib_libXaw/xlib_libXaw.hash b/package/x11r7/xlib_libXaw/xlib_libXaw.hash new file mode 100644 index 00000000..f289e661 --- /dev/null +++ b/package/x11r7/xlib_libXaw/xlib_libXaw.hash @@ -0,0 +1,6 @@ +# From https://lists.x.org/archives/xorg-announce/2021-March/003077.html +sha256 76aef98ea3df92615faec28004b5ce4e5c6855e716fa16de40c32030722a6f8e libXaw-1.0.14.tar.bz2 +sha512 29d1c151369523ae6cb418e636b0b7b39ccccc35462a0b394dbeb46d5b6d780badd2eb872a55d9fbba1ee1af034e76c0463f40f8d8a7be2c336d08b3b1bf81d4 libXaw-1.0.14.tar.bz2 + +# Locally calculated +sha256 9f5adb26952f93b3e4650285b94ec6c61a27aab5a21088bfb6694001be1b360d COPYING diff --git a/package/x11r7/xlib_libXaw/xlib_libXaw.mk b/package/x11r7/xlib_libXaw/xlib_libXaw.mk new file mode 100644 index 00000000..6b615a8d --- /dev/null +++ b/package/x11r7/xlib_libXaw/xlib_libXaw.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xlib_libXaw +# +################################################################################ + +XLIB_LIBXAW_VERSION = 1.0.14 +XLIB_LIBXAW_SOURCE = libXaw-$(XLIB_LIBXAW_VERSION).tar.bz2 +XLIB_LIBXAW_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXAW_LICENSE = MIT +XLIB_LIBXAW_LICENSE_FILES = COPYING +XLIB_LIBXAW_INSTALL_STAGING = YES +XLIB_LIBXAW_DEPENDENCIES = xlib_libX11 xlib_libXt xlib_libXmu xlib_libXpm xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xlib_libXcomposite/Config.in b/package/x11r7/xlib_libXcomposite/Config.in new file mode 100644 index 00000000..b417140a --- /dev/null +++ b/package/x11r7/xlib_libXcomposite/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_XLIB_LIBXCOMPOSITE + bool "libXcomposite" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XLIB_LIBXFIXES + select BR2_PACKAGE_XORGPROTO + help + X.Org Xcomposite library diff --git a/package/x11r7/xlib_libXcomposite/xlib_libXcomposite.hash b/package/x11r7/xlib_libXcomposite/xlib_libXcomposite.hash new file mode 100644 index 00000000..37e9c721 --- /dev/null +++ b/package/x11r7/xlib_libXcomposite/xlib_libXcomposite.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-March/002971.html +md5 3fa0841ea89024719b20cd702a9b54e0 libXcomposite-0.4.5.tar.bz2 +sha1 902631efb55a798c81086e5ff90b60349839db40 libXcomposite-0.4.5.tar.bz2 +sha256 b3218a2c15bab8035d16810df5b8251ffc7132ff3aa70651a1fba0bfe9634e8f libXcomposite-0.4.5.tar.bz2 +sha512 502fd51fd9097bb3ca72174ac5b25b9d3b1ff240d32c4765199df03d89337d94b4ddea49e90b177b370862430089d966ce9c38988337156352cfeae911c2d3d5 libXcomposite-0.4.5.tar.bz2 +# Locally computed +sha256 efa0219ed8485ac555c1a3fb82daf34539b2e0dcf4dadc99c01f1e39c69a4a68 COPYING diff --git a/package/x11r7/xlib_libXcomposite/xlib_libXcomposite.mk b/package/x11r7/xlib_libXcomposite/xlib_libXcomposite.mk new file mode 100644 index 00000000..80e94fe3 --- /dev/null +++ b/package/x11r7/xlib_libXcomposite/xlib_libXcomposite.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xlib_libXcomposite +# +################################################################################ + +XLIB_LIBXCOMPOSITE_VERSION = 0.4.5 +XLIB_LIBXCOMPOSITE_SOURCE = libXcomposite-$(XLIB_LIBXCOMPOSITE_VERSION).tar.bz2 +XLIB_LIBXCOMPOSITE_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXCOMPOSITE_LICENSE = MIT +XLIB_LIBXCOMPOSITE_LICENSE_FILES = COPYING +XLIB_LIBXCOMPOSITE_INSTALL_STAGING = YES +XLIB_LIBXCOMPOSITE_DEPENDENCIES = xlib_libX11 xlib_libXext xlib_libXfixes xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xlib_libXcursor/Config.in b/package/x11r7/xlib_libXcursor/Config.in new file mode 100644 index 00000000..0c70f959 --- /dev/null +++ b/package/x11r7/xlib_libXcursor/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_XLIB_LIBXCURSOR + bool "libXcursor" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXFIXES + select BR2_PACKAGE_XLIB_LIBXRENDER + select BR2_PACKAGE_XORGPROTO + help + X.Org Xcursor library diff --git a/package/x11r7/xlib_libXcursor/xlib_libXcursor.hash b/package/x11r7/xlib_libXcursor/xlib_libXcursor.hash new file mode 100644 index 00000000..3a12253d --- /dev/null +++ b/package/x11r7/xlib_libXcursor/xlib_libXcursor.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-March/002972.html +md5 9b9be0e289130fb820aedf67705fc549 libXcursor-1.2.0.tar.bz2 +sha1 cca0b34955d3c2f657f05a2a2c40f75353ddd912 libXcursor-1.2.0.tar.bz2 +sha256 3ad3e9f8251094af6fe8cb4afcf63e28df504d46bfa5a5529db74a505d628782 libXcursor-1.2.0.tar.bz2 +sha512 2b12d0fd17e311ce269dbba58588698885815eb07aa44d48525ed5cd9e5f379bb90138a792a191e2f74888ab10b3ca9a4f507f21de0984ed79748973ab927a03 libXcursor-1.2.0.tar.bz2 +# Locally computed +sha256 1f1588aff23eec0cb6bb9cfe02f8a75abbe43faf3d9b1eff54b7fbc42774b3ad COPYING diff --git a/package/x11r7/xlib_libXcursor/xlib_libXcursor.mk b/package/x11r7/xlib_libXcursor/xlib_libXcursor.mk new file mode 100644 index 00000000..79d99040 --- /dev/null +++ b/package/x11r7/xlib_libXcursor/xlib_libXcursor.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# xlib_libXcursor +# +################################################################################ + +XLIB_LIBXCURSOR_VERSION = 1.2.0 +XLIB_LIBXCURSOR_SOURCE = libXcursor-$(XLIB_LIBXCURSOR_VERSION).tar.bz2 +XLIB_LIBXCURSOR_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXCURSOR_LICENSE = MIT +XLIB_LIBXCURSOR_LICENSE_FILES = COPYING +XLIB_LIBXCURSOR_INSTALL_STAGING = YES +XLIB_LIBXCURSOR_CPE_ID_VENDOR = x +XLIB_LIBXCURSOR_CPE_ID_PRODUCT = libxcursor +XLIB_LIBXCURSOR_DEPENDENCIES = xlib_libX11 xlib_libXfixes xlib_libXrender xorgproto +HOST_XLIB_LIBXCURSOR_DEPENDENCIES = \ + host-xlib_libX11 host-xlib_libXfixes host-xlib_libXrender \ + host-xorgproto + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/x11r7/xlib_libXdamage/Config.in b/package/x11r7/xlib_libXdamage/Config.in new file mode 100644 index 00000000..d1a07dea --- /dev/null +++ b/package/x11r7/xlib_libXdamage/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_XLIB_LIBXDAMAGE + bool "libXdamage" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXFIXES + select BR2_PACKAGE_XORGPROTO + help + X.Org Xdamage library diff --git a/package/x11r7/xlib_libXdamage/xlib_libXdamage.hash b/package/x11r7/xlib_libXdamage/xlib_libXdamage.hash new file mode 100644 index 00000000..120d3e02 --- /dev/null +++ b/package/x11r7/xlib_libXdamage/xlib_libXdamage.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-March/002973.html +md5 e3f554267a7a04b042dc1f6352bd6d99 libXdamage-1.1.5.tar.bz2 +sha1 719ae6ab8c1b972c6386b654976c479255af5572 libXdamage-1.1.5.tar.bz2 +sha256 b734068643cac3b5f3d2c8279dd366b5bf28c7219d9e9d8717e1383995e0ea45 libXdamage-1.1.5.tar.bz2 +sha512 a3ca6cc33b1727f717a3e2aa5593f660508a81a47918a0aa949e9e8fba105e303fe5071983b48caac92feea0fe6e8e01620805e4d19b41f21f20d837b191c124 libXdamage-1.1.5.tar.bz2 +# Locally computed +sha256 33effe928634be12e668465c3935c5570ff2787b970b15d9243d69df42302c57 COPYING diff --git a/package/x11r7/xlib_libXdamage/xlib_libXdamage.mk b/package/x11r7/xlib_libXdamage/xlib_libXdamage.mk new file mode 100644 index 00000000..cc5493ff --- /dev/null +++ b/package/x11r7/xlib_libXdamage/xlib_libXdamage.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xlib_libXdamage +# +################################################################################ + +XLIB_LIBXDAMAGE_VERSION = 1.1.5 +XLIB_LIBXDAMAGE_SOURCE = libXdamage-$(XLIB_LIBXDAMAGE_VERSION).tar.bz2 +XLIB_LIBXDAMAGE_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXDAMAGE_LICENSE = MIT +XLIB_LIBXDAMAGE_LICENSE_FILES = COPYING +XLIB_LIBXDAMAGE_INSTALL_STAGING = YES +XLIB_LIBXDAMAGE_DEPENDENCIES = xlib_libX11 xlib_libXfixes xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xlib_libXdmcp/Config.in b/package/x11r7/xlib_libXdmcp/Config.in new file mode 100644 index 00000000..832822e9 --- /dev/null +++ b/package/x11r7/xlib_libXdmcp/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XLIB_LIBXDMCP + bool "libXdmcp" + select BR2_PACKAGE_XUTIL_UTIL_MACROS + select BR2_PACKAGE_XORGPROTO + help + X.Org Xdmcp library diff --git a/package/x11r7/xlib_libXdmcp/xlib_libXdmcp.hash b/package/x11r7/xlib_libXdmcp/xlib_libXdmcp.hash new file mode 100644 index 00000000..0dbea635 --- /dev/null +++ b/package/x11r7/xlib_libXdmcp/xlib_libXdmcp.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-March/002974.html +md5 115c5c12ecce0e749cd91d999a5fd160 libXdmcp-1.1.3.tar.bz2 +sha1 0a8f8a274f829331efb1e8e2027c38631b204dd0 libXdmcp-1.1.3.tar.bz2 +sha256 20523b44aaa513e17c009e873ad7bbc301507a3224c232610ce2e099011c6529 libXdmcp-1.1.3.tar.bz2 +sha512 cb1d4650f97d66e73acd2465ec7d757b9b797cce2f85e301860a44997a461837eea845ec9bd5b639ec5ca34c804f8bdd870697a5ce3f4e270b687c9ef74f25ec libXdmcp-1.1.3.tar.bz2 +# Locally computed +sha256 8a3c3f35b0dbcb60a4e242b9e4394a352a65bb27deb2938ea1e2e62a626e16e9 COPYING diff --git a/package/x11r7/xlib_libXdmcp/xlib_libXdmcp.mk b/package/x11r7/xlib_libXdmcp/xlib_libXdmcp.mk new file mode 100644 index 00000000..51db9908 --- /dev/null +++ b/package/x11r7/xlib_libXdmcp/xlib_libXdmcp.mk @@ -0,0 +1,19 @@ +################################################################################ +# +# xlib_libXdmcp +# +################################################################################ + +XLIB_LIBXDMCP_VERSION = 1.1.3 +XLIB_LIBXDMCP_SOURCE = libXdmcp-$(XLIB_LIBXDMCP_VERSION).tar.bz2 +XLIB_LIBXDMCP_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXDMCP_LICENSE = MIT +XLIB_LIBXDMCP_LICENSE_FILES = COPYING +XLIB_LIBXDMCP_CPE_ID_VENDOR = x.org +XLIB_LIBXDMCP_CPE_ID_PRODUCT = libxdmcp +XLIB_LIBXDMCP_INSTALL_STAGING = YES +XLIB_LIBXDMCP_DEPENDENCIES = xutil_util-macros xorgproto host-pkgconf +HOST_XLIB_LIBXDMCP_DEPENDENCIES = host-xutil_util-macros host-xorgproto host-pkgconf + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/x11r7/xlib_libXext/Config.in b/package/x11r7/xlib_libXext/Config.in new file mode 100644 index 00000000..58c9ce55 --- /dev/null +++ b/package/x11r7/xlib_libXext/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XLIB_LIBXEXT + bool "libXext" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XORGPROTO + help + X.Org Xext library diff --git a/package/x11r7/xlib_libXext/xlib_libXext.hash b/package/x11r7/xlib_libXext/xlib_libXext.hash new file mode 100644 index 00000000..45810d5d --- /dev/null +++ b/package/x11r7/xlib_libXext/xlib_libXext.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-March/002975.html +md5 f5b48bb76ba327cd2a8dc7a383532a95 libXext-1.3.4.tar.bz2 +sha1 14e2451162e8766173b5b14c73e94a22b1fcab55 libXext-1.3.4.tar.bz2 +sha256 59ad6fcce98deaecc14d39a672cf218ca37aba617c9a0f691cac3bcd28edf82b libXext-1.3.4.tar.bz2 +sha512 09146397d95f80c04701be1cc0a9c580ab5a085842ac31d17dfb6d4c2e42b4253b89cba695e54444e520be359883a76ffd02f42484c9e2ba2c33a5a40c29df4a libXext-1.3.4.tar.bz2 +# Locally computed +sha256 80767ac915f2f0f94de9efb15f0197a59b6f1e609cae85059f8703272dc3e146 COPYING diff --git a/package/x11r7/xlib_libXext/xlib_libXext.mk b/package/x11r7/xlib_libXext/xlib_libXext.mk new file mode 100644 index 00000000..6002e59e --- /dev/null +++ b/package/x11r7/xlib_libXext/xlib_libXext.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# xlib_libXext +# +################################################################################ + +XLIB_LIBXEXT_VERSION = 1.3.4 +XLIB_LIBXEXT_SOURCE = libXext-$(XLIB_LIBXEXT_VERSION).tar.bz2 +XLIB_LIBXEXT_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXEXT_LICENSE = MIT +XLIB_LIBXEXT_LICENSE_FILES = COPYING +XLIB_LIBXEXT_CPE_ID_VENDOR = x +XLIB_LIBXEXT_CPE_ID_PRODUCT = libxext +XLIB_LIBXEXT_INSTALL_STAGING = YES +XLIB_LIBXEXT_DEPENDENCIES = xlib_libX11 xorgproto +XLIB_LIBXEXT_CONF_OPTS = --disable-malloc0returnsnull + +$(eval $(autotools-package)) diff --git a/package/x11r7/xlib_libXfixes/Config.in b/package/x11r7/xlib_libXfixes/Config.in new file mode 100644 index 00000000..2c3b6684 --- /dev/null +++ b/package/x11r7/xlib_libXfixes/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XLIB_LIBXFIXES + bool "libXfixes" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XORGPROTO + help + X.Org Xfixes library diff --git a/package/x11r7/xlib_libXfixes/xlib_libXfixes.hash b/package/x11r7/xlib_libXfixes/xlib_libXfixes.hash new file mode 100644 index 00000000..d655be4f --- /dev/null +++ b/package/x11r7/xlib_libXfixes/xlib_libXfixes.hash @@ -0,0 +1,5 @@ +# From https://lists.x.org/archives/xorg-announce/2016-October/002722.html +sha256 de1cd33aff226e08cefd0e6759341c2c8e8c9faf8ce9ac6ec38d43e287b22ad6 libXfixes-5.0.3.tar.bz2 + +# Locally calculated +sha256 d64e671ffeb483d4543f98c842788ab34c77427e27d83d6b082065a4438d4885 COPYING diff --git a/package/x11r7/xlib_libXfixes/xlib_libXfixes.mk b/package/x11r7/xlib_libXfixes/xlib_libXfixes.mk new file mode 100644 index 00000000..6674cccb --- /dev/null +++ b/package/x11r7/xlib_libXfixes/xlib_libXfixes.mk @@ -0,0 +1,20 @@ +################################################################################ +# +# xlib_libXfixes +# +################################################################################ + +XLIB_LIBXFIXES_VERSION = 5.0.3 +XLIB_LIBXFIXES_SOURCE = libXfixes-$(XLIB_LIBXFIXES_VERSION).tar.bz2 +XLIB_LIBXFIXES_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXFIXES_LICENSE = MIT +XLIB_LIBXFIXES_LICENSE_FILES = COPYING +XLIB_LIBXFIXES_CPE_ID_VENDOR = x +XLIB_LIBXFIXES_CPE_ID_PRODUCT = libxfixes +XLIB_LIBXFIXES_INSTALL_STAGING = YES +XLIB_LIBXFIXES_DEPENDENCIES = xlib_libX11 xorgproto +HOST_XLIB_LIBXFIXES_DEPENDENCIES = \ + host-xlib_libX11 host-xorgproto + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/x11r7/xlib_libXfont/Config.in b/package/x11r7/xlib_libXfont/Config.in new file mode 100644 index 00000000..4658027d --- /dev/null +++ b/package/x11r7/xlib_libXfont/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_XLIB_LIBXFONT + bool "libXfont" + select BR2_PACKAGE_FREETYPE + select BR2_PACKAGE_XLIB_LIBFONTENC + select BR2_PACKAGE_XLIB_XTRANS + select BR2_PACKAGE_XFONT_ENCODINGS + select BR2_PACKAGE_XORGPROTO + help + X.Org Xfont library diff --git a/package/x11r7/xlib_libXfont/xlib_libXfont.hash b/package/x11r7/xlib_libXfont/xlib_libXfont.hash new file mode 100644 index 00000000..455d99ff --- /dev/null +++ b/package/x11r7/xlib_libXfont/xlib_libXfont.hash @@ -0,0 +1,8 @@ +# From https://lists.x.org/archives/xorg-announce/2017-November/002825.html +md5 16eaf156edd79b68038b6a7c44aa9e9b libXfont-1.5.4.tar.bz2 +sha1 9db050f63b9c4cb19e0dbb40575558ccb95719ca libXfont-1.5.4.tar.bz2 +sha256 1a7f7490774c87f2052d146d1e0e64518d32e6848184a18654e8d0bb57883242 libXfont-1.5.4.tar.bz2 +sha512 864edbaff45c44bd92bc4b06275c73fdf584a9b88bc523a297d4c75c01ca253f438463e929af70d753ddecfa648bb0b9bcf0ec72267db9f2b1704f7afa906cb3 libXfont-1.5.4.tar.bz2 + +# Locally calculated +sha256 97e413bb4962bbb5773085cd5405502bf1d4eadeaf98ff5be015eacacc840462 COPYING diff --git a/package/x11r7/xlib_libXfont/xlib_libXfont.mk b/package/x11r7/xlib_libXfont/xlib_libXfont.mk new file mode 100644 index 00000000..eeddfeeb --- /dev/null +++ b/package/x11r7/xlib_libXfont/xlib_libXfont.mk @@ -0,0 +1,42 @@ +################################################################################ +# +# xlib_libXfont +# +################################################################################ + +XLIB_LIBXFONT_VERSION = 1.5.4 +XLIB_LIBXFONT_SOURCE = libXfont-$(XLIB_LIBXFONT_VERSION).tar.bz2 +XLIB_LIBXFONT_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXFONT_LICENSE = MIT +XLIB_LIBXFONT_LICENSE_FILES = COPYING +XLIB_LIBXFONT_INSTALL_STAGING = YES + +XLIB_LIBXFONT_DEPENDENCIES = freetype xlib_libfontenc xlib_xtrans xorgproto + +HOST_XLIB_LIBXFONT_DEPENDENCIES = \ + host-freetype host-xlib_libfontenc host-xlib_xtrans \ + host-xorgproto + +XLIB_LIBXFONT_CONF_OPTS = --disable-devel-docs +HOST_XLIB_LIBXFONT_CONF_OPTS = --disable-devel-docs + +ifeq ($(BR2_microblaze),y) +# The microblaze toolchains don't define the __ELF__ preprocessor +# symbol even though they do use the elf format. LibXfont checks for +# this symbol to know if weak symbols are supported, and otherwise +# falls back to emulation code using dlopen - Causing linker issues +# for stuff using libXfont. +# Work around it by defining the symbol here as well. +XLIB_LIBXFONT_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -D__ELF__" +endif + +XLIB_LIBXFONT_CFLAGS = $(TARGET_CFLAGS) + +ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_85180),y) +XLIB_LIBXFONT_CFLAGS += -O0 +endif + +XLIB_LIBXFONT_CONF_ENV += CFLAGS="$(XLIB_LIBXFONT_CFLAGS)" + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/x11r7/xlib_libXfont2/0001-configure-define-HAVE_LIBBSD-when-libbsd-was-found.patch b/package/x11r7/xlib_libXfont2/0001-configure-define-HAVE_LIBBSD-when-libbsd-was-found.patch new file mode 100644 index 00000000..51e7225b --- /dev/null +++ b/package/x11r7/xlib_libXfont2/0001-configure-define-HAVE_LIBBSD-when-libbsd-was-found.patch @@ -0,0 +1,30 @@ +From 5fceeeb0d1cdccdb2870f65444f2965344f3b8b9 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Sat, 19 Oct 2019 09:32:41 +0200 +Subject: [PATCH] configure: define HAVE_LIBBSD when libbsd was found + +Patch sent upstream: +https://gitlab.freedesktop.org/xorg/lib/libxfont/merge_requests/6 + +Signed-off-by: Bernd Kuhls +--- + configure.ac | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/configure.ac b/configure.ac +index f507c28..cc7ca91 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -53,6 +53,9 @@ AC_CHECK_HEADERS([endian.h poll.h sys/poll.h]) + # Checks for library functions. + AC_CHECK_FUNCS([poll readlink]) + AC_SEARCH_LIBS([strlcat], [bsd]) ++if test "$ac_cv_search_strlcat" = "-lbsd"; then ++ AC_DEFINE(HAVE_LIBBSD,1,[Has libbsd]) ++fi + AC_CONFIG_LIBOBJ_DIR([src/util]) + AC_REPLACE_FUNCS([reallocarray strlcat strlcpy]) + +-- +2.20.1 + diff --git a/package/x11r7/xlib_libXfont2/Config.in b/package/x11r7/xlib_libXfont2/Config.in new file mode 100644 index 00000000..fc2ebfe2 --- /dev/null +++ b/package/x11r7/xlib_libXfont2/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_XLIB_LIBXFONT2 + bool "libXfont2" + select BR2_PACKAGE_FREETYPE + select BR2_PACKAGE_XLIB_LIBFONTENC + select BR2_PACKAGE_XLIB_XTRANS + select BR2_PACKAGE_XFONT_ENCODINGS + select BR2_PACKAGE_XORGPROTO + help + X.Org Xfont library diff --git a/package/x11r7/xlib_libXfont2/xlib_libXfont2.hash b/package/x11r7/xlib_libXfont2/xlib_libXfont2.hash new file mode 100644 index 00000000..634affdf --- /dev/null +++ b/package/x11r7/xlib_libXfont2/xlib_libXfont2.hash @@ -0,0 +1,8 @@ +# From https://lists.x.org/archives/xorg-announce/2019-September/003022.html +md5 00516bed7ec1453d56974560379fff2f libXfont2-2.0.4.tar.bz2 +sha1 9e00ae7589315656435efaf330128facad7c4a57 libXfont2-2.0.4.tar.bz2 +sha256 6d151b3368e5035efede4b6264c0fdc6662c1c99dbc2de425e3480cababc69e6 libXfont2-2.0.4.tar.bz2 +sha512 7cf6c58e520e48e24fc4f05fec760fcbeaaac0cedeed57dded262c855e1515cc34cd033222945a0b016f6857b83009fc2a6946c7d632c2f7bb0060f8e8a8a106 libXfont2-2.0.4.tar.bz2 + +# Locally calculated +sha256 97e413bb4962bbb5773085cd5405502bf1d4eadeaf98ff5be015eacacc840462 COPYING diff --git a/package/x11r7/xlib_libXfont2/xlib_libXfont2.mk b/package/x11r7/xlib_libXfont2/xlib_libXfont2.mk new file mode 100644 index 00000000..d2ff4ca7 --- /dev/null +++ b/package/x11r7/xlib_libXfont2/xlib_libXfont2.mk @@ -0,0 +1,47 @@ +################################################################################ +# +# xlib_libXfont2 +# +################################################################################ + +XLIB_LIBXFONT2_VERSION = 2.0.4 +XLIB_LIBXFONT2_SOURCE = libXfont2-$(XLIB_LIBXFONT2_VERSION).tar.bz2 +XLIB_LIBXFONT2_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXFONT2_LICENSE = MIT +XLIB_LIBXFONT2_LICENSE_FILES = COPYING +XLIB_LIBXFONT2_CPE_ID_VENDOR = x +XLIB_LIBXFONT2_CPE_ID_PRODUCT = libxfont +XLIB_LIBXFONT2_INSTALL_STAGING = YES +# 0001-configure-define-HAVE_LIBBSD-when-libbsd-was-found.patch +XLIB_LIBXFONT2_AUTORECONF = YES +XLIB_LIBXFONT2_DEPENDENCIES = \ + freetype \ + xlib_libfontenc \ + xlib_xtrans \ + xorgproto \ + xfont_encodings + +ifeq ($(BR2_PACKAGE_LIBBSD),y) +XLIB_LIBXFONT2_DEPENDENCIES += libbsd +endif + +HOST_XLIB_LIBXFONT2_DEPENDENCIES = \ + host-freetype \ + host-xlib_libfontenc \ + host-xlib_xtrans \ + host-xorgproto \ + host-xfont_encodings + +XLIB_LIBXFONT2_CONF_OPTS = --disable-devel-docs +HOST_XLIB_LIBXFONT2_CONF_OPTS = --disable-devel-docs + +XLIB_LIBXFONT2_CFLAGS = $(TARGET_CFLAGS) + +ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_85180),y) +XLIB_LIBXFONT2_CFLAGS += -O0 +endif + +XLIB_LIBXFONT2_CONF_ENV = CFLAGS="$(XLIB_LIBXFONT2_CFLAGS)" + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/x11r7/xlib_libXft/Config.in b/package/x11r7/xlib_libXft/Config.in new file mode 100644 index 00000000..84967a55 --- /dev/null +++ b/package/x11r7/xlib_libXft/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_XLIB_LIBXFT + bool "libXft" + select BR2_PACKAGE_FONTCONFIG + select BR2_PACKAGE_FREETYPE + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XLIB_LIBXRENDER + select BR2_PACKAGE_XORGPROTO + help + X.Org Xft library diff --git a/package/x11r7/xlib_libXft/xlib_libXft.hash b/package/x11r7/xlib_libXft/xlib_libXft.hash new file mode 100644 index 00000000..bd0838b4 --- /dev/null +++ b/package/x11r7/xlib_libXft/xlib_libXft.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-March/002976.html +md5 4a433c24627b4ff60a4dd403a0990796 libXft-2.3.3.tar.bz2 +sha1 48f543fe495f545df1794fa36a0a708558ae298c libXft-2.3.3.tar.bz2 +sha256 225c68e616dd29dbb27809e45e9eadf18e4d74c50be43020ef20015274529216 libXft-2.3.3.tar.bz2 +sha512 28fdaf3baa3b156a4a7fdd6e39c4d8026d7d21eaa9be27c9797c8d329dab691a1bc82ea6042f9d4729a9343d93787536fb7e4b606f722f33cbe608b2e79910e8 libXft-2.3.3.tar.bz2 +# Locally computed +sha256 7cda22286b1379b9b73df695f72cbad36595e65b039a5fbc5c89b69ecc44438c COPYING diff --git a/package/x11r7/xlib_libXft/xlib_libXft.mk b/package/x11r7/xlib_libXft/xlib_libXft.mk new file mode 100644 index 00000000..489cfe4c --- /dev/null +++ b/package/x11r7/xlib_libXft/xlib_libXft.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xlib_libXft +# +################################################################################ + +XLIB_LIBXFT_VERSION = 2.3.3 +XLIB_LIBXFT_SOURCE = libXft-$(XLIB_LIBXFT_VERSION).tar.bz2 +XLIB_LIBXFT_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXFT_LICENSE = MIT +XLIB_LIBXFT_LICENSE_FILES = COPYING +XLIB_LIBXFT_INSTALL_STAGING = YES +XLIB_LIBXFT_DEPENDENCIES = fontconfig freetype xlib_libX11 xlib_libXext xlib_libXrender xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xlib_libXi/Config.in b/package/x11r7/xlib_libXi/Config.in new file mode 100644 index 00000000..31313069 --- /dev/null +++ b/package/x11r7/xlib_libXi/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_XLIB_LIBXI + bool "libXi" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XLIB_LIBXFIXES + select BR2_PACKAGE_XORGPROTO + help + X.Org Xi library diff --git a/package/x11r7/xlib_libXi/xlib_libXi.hash b/package/x11r7/xlib_libXi/xlib_libXi.hash new file mode 100644 index 00000000..12356313 --- /dev/null +++ b/package/x11r7/xlib_libXi/xlib_libXi.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-June/002999.html +md5 62c4af0839072024b4b1c8cbe84216c7 libXi-1.7.10.tar.bz2 +sha1 79052e50ea07ce2431f8988a60553d9091d46207 libXi-1.7.10.tar.bz2 +sha256 36a30d8f6383a72e7ce060298b4b181fd298bc3a135c8e201b7ca847f5f81061 libXi-1.7.10.tar.bz2 +sha512 591f0860bf5904897587c4990d6c852f3729a212d1ef390362d41242440e078221877c31db2232d5cc81727fe97f4e194b077f7de917e251e60641bbd06ee218 libXi-1.7.10.tar.bz2 +# Locally computed +sha256 9392174bc86e291369fd2f61f3ed325962735a5f5c585ce8d7ebd365e2a5639f COPYING diff --git a/package/x11r7/xlib_libXi/xlib_libXi.mk b/package/x11r7/xlib_libXi/xlib_libXi.mk new file mode 100644 index 00000000..ad4cf5f9 --- /dev/null +++ b/package/x11r7/xlib_libXi/xlib_libXi.mk @@ -0,0 +1,24 @@ +################################################################################ +# +# xlib_libXi +# +################################################################################ + +XLIB_LIBXI_VERSION = 1.7.10 +XLIB_LIBXI_SOURCE = libXi-$(XLIB_LIBXI_VERSION).tar.bz2 +XLIB_LIBXI_SITE = https://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXI_LICENSE = MIT +XLIB_LIBXI_LICENSE_FILES = COPYING +XLIB_LIBXI_CPE_ID_VENDOR = x.org +XLIB_LIBXI_CPE_ID_PRODUCT = libxi +XLIB_LIBXI_INSTALL_STAGING = YES +XLIB_LIBXI_DEPENDENCIES = \ + host-pkgconf \ + xlib_libX11 \ + xlib_libXext \ + xlib_libXfixes \ + xorgproto + +XLIB_LIBXI_CONF_OPTS = --disable-malloc0returnsnull + +$(eval $(autotools-package)) diff --git a/package/x11r7/xlib_libXinerama/Config.in b/package/x11r7/xlib_libXinerama/Config.in new file mode 100644 index 00000000..f8ea9595 --- /dev/null +++ b/package/x11r7/xlib_libXinerama/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_XLIB_LIBXINERAMA + bool "libXinerama" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XORGPROTO + help + X.Org Xinerama library diff --git a/package/x11r7/xlib_libXinerama/xlib_libXinerama.hash b/package/x11r7/xlib_libXinerama/xlib_libXinerama.hash new file mode 100644 index 00000000..995181dd --- /dev/null +++ b/package/x11r7/xlib_libXinerama/xlib_libXinerama.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-July/002905.html +md5 0d5f826a197dae74da67af4a9ef35885 libXinerama-1.1.4.tar.bz2 +sha1 34a1d9908ffbd46805d2357c6b05f5e341a8dc7c libXinerama-1.1.4.tar.bz2 +sha256 0008dbd7ecf717e1e507eed1856ab0d9cf946d03201b85d5dcf61489bb02d720 libXinerama-1.1.4.tar.bz2 +sha512 cff777ad942614fbf6bc6d8529f399e62debf3ecbf6cc0694a94e38c022bf929ffd5636fb59f55533c394d89b23af3ea51fa5128927f12a85787e16239330f14 libXinerama-1.1.4.tar.bz2 +# Locally computed +sha256 f661fd883b6e980b3b118e0fbe230fbf10eef8d4d4a35931355f29ed647ddbe3 COPYING diff --git a/package/x11r7/xlib_libXinerama/xlib_libXinerama.mk b/package/x11r7/xlib_libXinerama/xlib_libXinerama.mk new file mode 100644 index 00000000..48e32d55 --- /dev/null +++ b/package/x11r7/xlib_libXinerama/xlib_libXinerama.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# xlib_libXinerama +# +################################################################################ + +XLIB_LIBXINERAMA_VERSION = 1.1.4 +XLIB_LIBXINERAMA_SOURCE = libXinerama-$(XLIB_LIBXINERAMA_VERSION).tar.bz2 +XLIB_LIBXINERAMA_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXINERAMA_LICENSE = MIT +XLIB_LIBXINERAMA_LICENSE_FILES = COPYING +XLIB_LIBXINERAMA_CPE_ID_VENDOR = x +XLIB_LIBXINERAMA_CPE_ID_PRODUCT = libxinerama +XLIB_LIBXINERAMA_INSTALL_STAGING = YES +XLIB_LIBXINERAMA_DEPENDENCIES = xlib_libX11 xlib_libXext xorgproto +XLIB_LIBXINERAMA_CONF_OPTS = --disable-malloc0returnsnull + +$(eval $(autotools-package)) diff --git a/package/x11r7/xlib_libXmu/Config.in b/package/x11r7/xlib_libXmu/Config.in new file mode 100644 index 00000000..b5889208 --- /dev/null +++ b/package/x11r7/xlib_libXmu/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_XLIB_LIBXMU + bool "libXmu" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XLIB_LIBXT + select BR2_PACKAGE_XORGPROTO + help + X.Org Xmu library diff --git a/package/x11r7/xlib_libXmu/xlib_libXmu.hash b/package/x11r7/xlib_libXmu/xlib_libXmu.hash new file mode 100644 index 00000000..8cad2389 --- /dev/null +++ b/package/x11r7/xlib_libXmu/xlib_libXmu.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-March/002978.html +md5 ac774cff8b493f566088a255dbf91201 libXmu-1.1.3.tar.bz2 +sha1 7ff54ce38379fb795aebed38f6be404ee0dfeec6 libXmu-1.1.3.tar.bz2 +sha256 9c343225e7c3dc0904f2122b562278da5fed639b1b5e880d25111561bac5b731 libXmu-1.1.3.tar.bz2 +sha512 8c6cc65b22aa031ad870dd92736681a068a0878a425a53dbed909943da1136c4a24034d467cfd3785c3a8d78f66850b69f1ebe1eb24aaf9bc176b1d171a5c762 libXmu-1.1.3.tar.bz2 +# Locally computed +sha256 e65a4a8bbf8b0dfd2439d6bc6d86df03e2b8e693b757593b25149e099aeb8ec4 COPYING diff --git a/package/x11r7/xlib_libXmu/xlib_libXmu.mk b/package/x11r7/xlib_libXmu/xlib_libXmu.mk new file mode 100644 index 00000000..3218e0ec --- /dev/null +++ b/package/x11r7/xlib_libXmu/xlib_libXmu.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xlib_libXmu +# +################################################################################ + +XLIB_LIBXMU_VERSION = 1.1.3 +XLIB_LIBXMU_SOURCE = libXmu-$(XLIB_LIBXMU_VERSION).tar.bz2 +XLIB_LIBXMU_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXMU_LICENSE = MIT +XLIB_LIBXMU_LICENSE_FILES = COPYING +XLIB_LIBXMU_INSTALL_STAGING = YES +XLIB_LIBXMU_DEPENDENCIES = xlib_libX11 xlib_libXext xlib_libXt xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xlib_libXpm/Config.in b/package/x11r7/xlib_libXpm/Config.in new file mode 100644 index 00000000..9a15d77d --- /dev/null +++ b/package/x11r7/xlib_libXpm/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_XLIB_LIBXPM + bool "libXpm" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XLIB_LIBXT + select BR2_PACKAGE_XORGPROTO + help + X.Org Xpm library diff --git a/package/x11r7/xlib_libXpm/xlib_libXpm.hash b/package/x11r7/xlib_libXpm/xlib_libXpm.hash new file mode 100644 index 00000000..c3aa695c --- /dev/null +++ b/package/x11r7/xlib_libXpm/xlib_libXpm.hash @@ -0,0 +1,8 @@ +# From https://lists.x.org/archives/xorg-announce/2019-December/003034.html +md5 6f0ecf8d103d528cfc803aa475137afa libXpm-3.5.13.tar.bz2 +sha1 38b1a2728adb49f4e255aba1530f51789815ffc4 libXpm-3.5.13.tar.bz2 +sha256 9cd1da57588b6cb71450eff2273ef6b657537a9ac4d02d0014228845b935ac25 libXpm-3.5.13.tar.bz2 +sha512 3b8f6e926272f39b1d95135c2274c00f5aaee1f9fb2ef79f71628df5edeb7ba20158819ef6a778101cc4092493a3b5b613c53634fdccadcc0fc85f0605e5e9a5 libXpm-3.5.13.tar.bz2 +# Locally calculated +sha256 ed3b06bb3b75a0954bd6837a96b41a4676f60dfeee647271613aadecc0fd596e COPYING +sha256 cbe4ced0abc8a32bea471204ae01038c202758ce4e772d3d329a341ffa761e71 COPYRIGHT diff --git a/package/x11r7/xlib_libXpm/xlib_libXpm.mk b/package/x11r7/xlib_libXpm/xlib_libXpm.mk new file mode 100644 index 00000000..7b645dc9 --- /dev/null +++ b/package/x11r7/xlib_libXpm/xlib_libXpm.mk @@ -0,0 +1,24 @@ +################################################################################ +# +# xlib_libXpm +# +################################################################################ + +XLIB_LIBXPM_VERSION = 3.5.13 +XLIB_LIBXPM_SOURCE = libXpm-$(XLIB_LIBXPM_VERSION).tar.bz2 +XLIB_LIBXPM_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXPM_LICENSE = MIT +XLIB_LIBXPM_LICENSE_FILES = COPYING COPYRIGHT +XLIB_LIBXPM_CPE_ID_VENDOR = libxpm_project +XLIB_LIBXPM_CPE_ID_PRODUCT = libxpm +XLIB_LIBXPM_INSTALL_STAGING = YES +XLIB_LIBXPM_DEPENDENCIES = xlib_libX11 xlib_libXext xlib_libXt xorgproto \ + $(if $(BR2_PACKAGE_LIBICONV),libiconv) \ + $(TARGET_NLS_DEPENDENCIES) +XLIB_LIBXPM_CONF_ENV = LIBS=$(TARGET_NLS_LIBS) + +ifeq ($(BR2_SYSTEM_ENABLE_NLS),) +XLIB_LIBXPM_CONF_ENV += ac_cv_search_gettext=no +endif + +$(eval $(autotools-package)) diff --git a/package/x11r7/xlib_libXrandr/Config.in b/package/x11r7/xlib_libXrandr/Config.in new file mode 100644 index 00000000..e019ca5e --- /dev/null +++ b/package/x11r7/xlib_libXrandr/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_XLIB_LIBXRANDR + bool "libXrandr" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XLIB_LIBXRENDER + select BR2_PACKAGE_XORGPROTO + help + X.Org Xrandr library diff --git a/package/x11r7/xlib_libXrandr/xlib_libXrandr.hash b/package/x11r7/xlib_libXrandr/xlib_libXrandr.hash new file mode 100644 index 00000000..ed536695 --- /dev/null +++ b/package/x11r7/xlib_libXrandr/xlib_libXrandr.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-March/002979.html +md5 18f3b20d522f45e4dadd34afb5bea048 libXrandr-1.5.2.tar.bz2 +sha1 7a1f6df239341b76fd59ebbe101d6f180adb43bb libXrandr-1.5.2.tar.bz2 +sha256 8aea0ebe403d62330bb741ed595b53741acf45033d3bda1792f1d4cc3daee023 libXrandr-1.5.2.tar.bz2 +sha512 fcd005f9839e7ef980607128a5d76d7b671cc2f5755949e03c569c500d7e987cb3f6932750ab8bf6e2c1086ec69dde09d5831f0c2098b9f9ad46be4f56db0d87 libXrandr-1.5.2.tar.bz2 +# Locally computed +sha256 73777e5be1cef2827d843e4b186803f050c66db472cf8076d88e2b5f71696e67 COPYING diff --git a/package/x11r7/xlib_libXrandr/xlib_libXrandr.mk b/package/x11r7/xlib_libXrandr/xlib_libXrandr.mk new file mode 100644 index 00000000..aa276133 --- /dev/null +++ b/package/x11r7/xlib_libXrandr/xlib_libXrandr.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# xlib_libXrandr +# +################################################################################ + +XLIB_LIBXRANDR_VERSION = 1.5.2 +XLIB_LIBXRANDR_SOURCE = libXrandr-$(XLIB_LIBXRANDR_VERSION).tar.bz2 +XLIB_LIBXRANDR_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXRANDR_LICENSE = MIT +XLIB_LIBXRANDR_LICENSE_FILES = COPYING +XLIB_LIBXRANDR_CPE_ID_VENDOR = x.org +XLIB_LIBXRANDR_CPE_ID_PRODUCT = libxrandr +XLIB_LIBXRANDR_INSTALL_STAGING = YES +XLIB_LIBXRANDR_DEPENDENCIES = xlib_libX11 xlib_libXext xlib_libXrender xorgproto +XLIB_LIBXRANDR_CONF_OPTS = --disable-malloc0returnsnull + +$(eval $(autotools-package)) diff --git a/package/x11r7/xlib_libXrender/Config.in b/package/x11r7/xlib_libXrender/Config.in new file mode 100644 index 00000000..4487ef1f --- /dev/null +++ b/package/x11r7/xlib_libXrender/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XLIB_LIBXRENDER + bool "libXrender" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XORGPROTO + help + X.Org Xrender library diff --git a/package/x11r7/xlib_libXrender/xlib_libXrender.hash b/package/x11r7/xlib_libXrender/xlib_libXrender.hash new file mode 100644 index 00000000..96981ad5 --- /dev/null +++ b/package/x11r7/xlib_libXrender/xlib_libXrender.hash @@ -0,0 +1,5 @@ +# From https://lists.x.org/archives/xorg-announce/2016-October/002725.html +sha256 c06d5979f86e64cabbde57c223938db0b939dff49fdb5a793a1d3d0396650949 libXrender-0.9.10.tar.bz2 + +# Locally calculated +sha256 bbe1db89c48816c48248796adac91defd8fbde1141b145f01511781ab87f29a1 COPYING diff --git a/package/x11r7/xlib_libXrender/xlib_libXrender.mk b/package/x11r7/xlib_libXrender/xlib_libXrender.mk new file mode 100644 index 00000000..0ef0ec48 --- /dev/null +++ b/package/x11r7/xlib_libXrender/xlib_libXrender.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xlib_libXrender +# +################################################################################ + +XLIB_LIBXRENDER_VERSION = 0.9.10 +XLIB_LIBXRENDER_SOURCE = libXrender-$(XLIB_LIBXRENDER_VERSION).tar.bz2 +XLIB_LIBXRENDER_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXRENDER_LICENSE = MIT +XLIB_LIBXRENDER_LICENSE_FILES = COPYING +XLIB_LIBXRENDER_CPE_ID_VENDOR = x.org +XLIB_LIBXRENDER_CPE_ID_PRODUCT = libxrender +XLIB_LIBXRENDER_INSTALL_STAGING = YES +XLIB_LIBXRENDER_DEPENDENCIES = xlib_libX11 xorgproto +HOST_XLIB_LIBXRENDER_DEPENDENCIES = \ + host-xlib_libX11 host-xorgproto + +XLIB_LIBXRENDER_CONF_OPTS = --disable-malloc0returnsnull + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/x11r7/xlib_libXres/Config.in b/package/x11r7/xlib_libXres/Config.in new file mode 100644 index 00000000..4e135ed3 --- /dev/null +++ b/package/x11r7/xlib_libXres/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_XLIB_LIBXRES + bool "libXres" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XORGPROTO + help + X.Org XRes library diff --git a/package/x11r7/xlib_libXres/xlib_libXres.hash b/package/x11r7/xlib_libXres/xlib_libXres.hash new file mode 100644 index 00000000..ee4823c1 --- /dev/null +++ b/package/x11r7/xlib_libXres/xlib_libXres.hash @@ -0,0 +1,8 @@ +# From https://lists.x.org/archives/xorg-announce/2017-October/002812.html +md5 5d6d443d1abc8e1f6fc1c57fb27729bb libXres-1.2.0.tar.bz2 +sha1 b6996ab05460a3b7311f02da23ddf117a5442fd9 libXres-1.2.0.tar.bz2 +sha256 ff75c1643488e64a7cfbced27486f0f944801319c84c18d3bd3da6bf28c812d4 libXres-1.2.0.tar.bz2 +sha512 8eb5a36b1f030eb4e27e676cc4befcc073da66a7bce2b39089314e1facb629d13b087bb53ca2c95fe5291857da7ff9f80c6ab28fb3e245eeb9e0344937900172 libXres-1.2.0.tar.bz2 + +# Locally calculated +sha256 0d7300168f85833ea2564835f66a61e036ede90b33e76c06a7b4078096fedbcc COPYING diff --git a/package/x11r7/xlib_libXres/xlib_libXres.mk b/package/x11r7/xlib_libXres/xlib_libXres.mk new file mode 100644 index 00000000..73c72f86 --- /dev/null +++ b/package/x11r7/xlib_libXres/xlib_libXres.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# xlib_libXres +# +################################################################################ + +XLIB_LIBXRES_VERSION = 1.2.0 +XLIB_LIBXRES_SOURCE = libXres-$(XLIB_LIBXRES_VERSION).tar.bz2 +XLIB_LIBXRES_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXRES_LICENSE = MIT +XLIB_LIBXRES_LICENSE_FILES = COPYING +XLIB_LIBXRES_CPE_ID_VENDOR = x +XLIB_LIBXRES_CPE_ID_PRODUCT = libxres +XLIB_LIBXRES_INSTALL_STAGING = YES +XLIB_LIBXRES_DEPENDENCIES = xlib_libX11 xlib_libXext xorgproto +XLIB_LIBXRES_CONF_OPTS = --disable-malloc0returnsnull + +$(eval $(autotools-package)) diff --git a/package/x11r7/xlib_libXt/Config.in b/package/x11r7/xlib_libXt/Config.in new file mode 100644 index 00000000..0f557808 --- /dev/null +++ b/package/x11r7/xlib_libXt/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_XLIB_LIBXT + bool "libXt" + select BR2_PACKAGE_XLIB_LIBSM + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XORGPROTO + select BR2_PACKAGE_XCB_PROTO + select BR2_PACKAGE_LIBXCB + help + X.Org Xt library diff --git a/package/x11r7/xlib_libXt/xlib_libXt.hash b/package/x11r7/xlib_libXt/xlib_libXt.hash new file mode 100644 index 00000000..dcd4853d --- /dev/null +++ b/package/x11r7/xlib_libXt/xlib_libXt.hash @@ -0,0 +1,5 @@ +# From https://lists.x.org/archives/xorg-announce/2021-January/003070.html +sha256 679cc08f1646dbd27f5e48ffe8dd49406102937109130caab02ca32c083a3d60 libXt-1.2.1.tar.bz2 +sha512 6877af61ba91eeed6b6f80471b84f354ad0ec0827249c7ee0a00c13508063fe8d2696dd400a4bdbc6ca2ff67cbe1317ad5ac24522fd96099dc56535e33ca052c libXt-1.2.1.tar.bz2 +# Locally calculated +sha256 a2866ccc0b1745149e4a2258d934314d40cbb43bd8318c6fa597f233995b0a81 COPYING diff --git a/package/x11r7/xlib_libXt/xlib_libXt.mk b/package/x11r7/xlib_libXt/xlib_libXt.mk new file mode 100644 index 00000000..9530262c --- /dev/null +++ b/package/x11r7/xlib_libXt/xlib_libXt.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# xlib_libXt +# +################################################################################ + +XLIB_LIBXT_VERSION = 1.2.1 +XLIB_LIBXT_SOURCE = libXt-$(XLIB_LIBXT_VERSION).tar.bz2 +XLIB_LIBXT_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXT_LICENSE = MIT +XLIB_LIBXT_LICENSE_FILES = COPYING +XLIB_LIBXT_INSTALL_STAGING = YES +XLIB_LIBXT_CPE_ID_VENDOR = x +XLIB_LIBXT_CPE_ID_PRODUCT = libxt +XLIB_LIBXT_DEPENDENCIES = xlib_libSM xlib_libX11 xorgproto xcb-proto libxcb host-xorgproto +XLIB_LIBXT_CONF_OPTS = --disable-malloc0returnsnull + +$(eval $(autotools-package)) diff --git a/package/x11r7/xlib_libXtst/Config.in b/package/x11r7/xlib_libXtst/Config.in new file mode 100644 index 00000000..2c7db224 --- /dev/null +++ b/package/x11r7/xlib_libXtst/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_XLIB_LIBXTST + bool "libXtst" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXI + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XORGPROTO + help + X.Org Xtst library diff --git a/package/x11r7/xlib_libXtst/xlib_libXtst.hash b/package/x11r7/xlib_libXtst/xlib_libXtst.hash new file mode 100644 index 00000000..f64a0185 --- /dev/null +++ b/package/x11r7/xlib_libXtst/xlib_libXtst.hash @@ -0,0 +1,4 @@ +# From https://lists.x.org/archives/xorg-announce/2016-October/002726.html +sha256 4655498a1b8e844e3d6f21f3b2c4e2b571effb5fd83199d428a6ba7ea4bf5204 libXtst-1.2.3.tar.bz2 +# Locally computed +sha256 940190489c7a0e5ae3d83fc4fcbd79e0cd1b765bf1a4efd408293c1ee0332ceb COPYING diff --git a/package/x11r7/xlib_libXtst/xlib_libXtst.mk b/package/x11r7/xlib_libXtst/xlib_libXtst.mk new file mode 100644 index 00000000..c79301e0 --- /dev/null +++ b/package/x11r7/xlib_libXtst/xlib_libXtst.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# xlib_libXtst +# +################################################################################ + +XLIB_LIBXTST_VERSION = 1.2.3 +XLIB_LIBXTST_SOURCE = libXtst-$(XLIB_LIBXTST_VERSION).tar.bz2 +XLIB_LIBXTST_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXTST_LICENSE = MIT +XLIB_LIBXTST_LICENSE_FILES = COPYING +XLIB_LIBXTST_INSTALL_STAGING = YES +XLIB_LIBXTST_CPE_ID_VENDOR = x +XLIB_LIBXTST_CPE_ID_PRODUCT = libxtst + +XLIB_LIBXTST_DEPENDENCIES = \ + xlib_libX11 \ + xlib_libXext \ + xlib_libXi \ + xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xlib_libXv/Config.in b/package/x11r7/xlib_libXv/Config.in new file mode 100644 index 00000000..d3e57445 --- /dev/null +++ b/package/x11r7/xlib_libXv/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_XLIB_LIBXV + bool "libXv" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XORGPROTO + help + X.Org Xv library diff --git a/package/x11r7/xlib_libXv/xlib_libXv.hash b/package/x11r7/xlib_libXv/xlib_libXv.hash new file mode 100644 index 00000000..ccc67270 --- /dev/null +++ b/package/x11r7/xlib_libXv/xlib_libXv.hash @@ -0,0 +1,5 @@ +# From https://lists.x.org/archives/xorg-announce/2016-October/002727.html +sha256 d26c13eac99ac4504c532e8e76a1c8e4bd526471eb8a0a4ff2a88db60cb0b088 libXv-1.0.11.tar.bz2 + +# Locally calculated +sha256 4fac4d581d00f11c459d68b7cb970f3d4e5a5bbfb53784d85f59a90076280301 COPYING diff --git a/package/x11r7/xlib_libXv/xlib_libXv.mk b/package/x11r7/xlib_libXv/xlib_libXv.mk new file mode 100644 index 00000000..1105b592 --- /dev/null +++ b/package/x11r7/xlib_libXv/xlib_libXv.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# xlib_libXv +# +################################################################################ + +XLIB_LIBXV_VERSION = 1.0.11 +XLIB_LIBXV_SOURCE = libXv-$(XLIB_LIBXV_VERSION).tar.bz2 +XLIB_LIBXV_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXV_LICENSE = ISC-like +XLIB_LIBXV_LICENSE_FILES = COPYING +XLIB_LIBXV_CPE_ID_VENDOR = x.org +XLIB_LIBXV_CPE_ID_PRODUCT = libxv +XLIB_LIBXV_INSTALL_STAGING = YES +XLIB_LIBXV_DEPENDENCIES = xlib_libX11 xlib_libXext xorgproto +XLIB_LIBXV_CONF_OPTS = --disable-malloc0returnsnull + +$(eval $(autotools-package)) diff --git a/package/x11r7/xlib_libXvMC/Config.in b/package/x11r7/xlib_libXvMC/Config.in new file mode 100644 index 00000000..5cc6ec76 --- /dev/null +++ b/package/x11r7/xlib_libXvMC/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_XLIB_LIBXVMC + bool "libXvMC" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XLIB_LIBXV + select BR2_PACKAGE_XORGPROTO + help + X.Org XvMC library diff --git a/package/x11r7/xlib_libXvMC/xlib_libXvMC.hash b/package/x11r7/xlib_libXvMC/xlib_libXvMC.hash new file mode 100644 index 00000000..be4ba751 --- /dev/null +++ b/package/x11r7/xlib_libXvMC/xlib_libXvMC.hash @@ -0,0 +1,8 @@ +# From https://lists.x.org/archives/xorg-announce/2019-September/003023.html +md5 3569ff7f3e26864d986d6a21147eaa58 libXvMC-1.0.12.tar.bz2 +sha1 4871f92a83faa86aff5c630a2d6016c67bf11b97 libXvMC-1.0.12.tar.bz2 +sha256 6b3da7977b3f7eaf4f0ac6470ab1e562298d82c4e79077765787963ab7966dcd libXvMC-1.0.12.tar.bz2 +sha512 62cb9a72b20af3b081d2d555a253b0e2b8b26b31f4fad10bd3e53bbf96e1663b61bd8df2b78b16f18218cd37cce0c9e6809ae16ded226b37a8b199e41b223955 libXvMC-1.0.12.tar.bz2 + +# Locally computed +sha256 b7c709df281675a07eb60a71c5fa2599d1ef538eb79ae7ad6e774b10e4a804c4 COPYING diff --git a/package/x11r7/xlib_libXvMC/xlib_libXvMC.mk b/package/x11r7/xlib_libXvMC/xlib_libXvMC.mk new file mode 100644 index 00000000..7980f174 --- /dev/null +++ b/package/x11r7/xlib_libXvMC/xlib_libXvMC.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# xlib_libXvMC +# +################################################################################ + +XLIB_LIBXVMC_VERSION = 1.0.12 +XLIB_LIBXVMC_SOURCE = libXvMC-$(XLIB_LIBXVMC_VERSION).tar.bz2 +XLIB_LIBXVMC_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXVMC_LICENSE = MIT +XLIB_LIBXVMC_LICENSE_FILES = COPYING +XLIB_LIBXVMC_CPE_ID_VENDOR = x.org +XLIB_LIBXVMC_CPE_ID_PRODUCT = libxvmc +XLIB_LIBXVMC_INSTALL_STAGING = YES +XLIB_LIBXVMC_DEPENDENCIES = xlib_libX11 xlib_libXext xlib_libXv xorgproto +XLIB_LIBXVMC_CONF_OPTS = --disable-malloc0returnsnull + +$(eval $(autotools-package)) diff --git a/package/x11r7/xlib_libXxf86dga/Config.in b/package/x11r7/xlib_libXxf86dga/Config.in new file mode 100644 index 00000000..918ea0f1 --- /dev/null +++ b/package/x11r7/xlib_libXxf86dga/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_XLIB_LIBXXF86DGA + bool "libXxf86dga" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XORGPROTO + help + X.Org Xxf86dga library diff --git a/package/x11r7/xlib_libXxf86dga/xlib_libXxf86dga.hash b/package/x11r7/xlib_libXxf86dga/xlib_libXxf86dga.hash new file mode 100644 index 00000000..f0172c34 --- /dev/null +++ b/package/x11r7/xlib_libXxf86dga/xlib_libXxf86dga.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-March/002982.html +md5 0ddeafc13b33086357cfa96fae41ee8e libXxf86dga-1.1.5.tar.bz2 +sha1 332ba80d1b3d06473f7bbfe1612e7c5b58fbdf69 libXxf86dga-1.1.5.tar.bz2 +sha256 2b98bc5f506c6140d4eddd3990842d30f5dae733b64f198a504f07461bdb7203 libXxf86dga-1.1.5.tar.bz2 +sha512 0e77c4003aeba737b10c17d55aeefa935fc57c4ba9e8f79a834f3f8c690d6a1d98f69ad707eded784346c1cf40c41829719d257283b5eae3207147fb4c79ed89 libXxf86dga-1.1.5.tar.bz2 +# Locally computed +sha256 dd27933ebc5c063128b158b085e4c442a36b0e6f704cf753116da119610191da COPYING diff --git a/package/x11r7/xlib_libXxf86dga/xlib_libXxf86dga.mk b/package/x11r7/xlib_libXxf86dga/xlib_libXxf86dga.mk new file mode 100644 index 00000000..a5173fbc --- /dev/null +++ b/package/x11r7/xlib_libXxf86dga/xlib_libXxf86dga.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# xlib_libXxf86dga +# +################################################################################ + +XLIB_LIBXXF86DGA_VERSION = 1.1.5 +XLIB_LIBXXF86DGA_SOURCE = libXxf86dga-$(XLIB_LIBXXF86DGA_VERSION).tar.bz2 +XLIB_LIBXXF86DGA_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXXF86DGA_LICENSE = MIT +XLIB_LIBXXF86DGA_LICENSE_FILES = COPYING +XLIB_LIBXXF86DGA_CPE_ID_VENDOR = x +XLIB_LIBXXF86DGA_CPE_ID_PRODUCT = libxxf86dga +XLIB_LIBXXF86DGA_INSTALL_STAGING = YES +XLIB_LIBXXF86DGA_DEPENDENCIES = xlib_libX11 xlib_libXext xorgproto +XLIB_LIBXXF86DGA_CONF_OPTS = --disable-malloc0returnsnull + +$(eval $(autotools-package)) diff --git a/package/x11r7/xlib_libXxf86vm/Config.in b/package/x11r7/xlib_libXxf86vm/Config.in new file mode 100644 index 00000000..c3b11f42 --- /dev/null +++ b/package/x11r7/xlib_libXxf86vm/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_XLIB_LIBXXF86VM + bool "libXxf86vm" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XORGPROTO + help + X.Org Xxf86vm library diff --git a/package/x11r7/xlib_libXxf86vm/xlib_libXxf86vm.hash b/package/x11r7/xlib_libXxf86vm/xlib_libXxf86vm.hash new file mode 100644 index 00000000..b55c55c8 --- /dev/null +++ b/package/x11r7/xlib_libXxf86vm/xlib_libXxf86vm.hash @@ -0,0 +1,6 @@ +# From http://lists.x.org/archives/xorg-announce/2015-February/002539.html +sha1 78ef18ca2be157131899e01c62679e247409a13f libXxf86vm-1.1.4.tar.bz2 +sha256 afee27f93c5f31c0ad582852c0fb36d50e4de7cd585fcf655e278a633d85cd57 libXxf86vm-1.1.4.tar.bz2 + +# Locally calculated +sha256 f3da8eaed19e27e4f67e6f076d4ebdb8d649e15a8ad33a415fb65a23de1b6689 COPYING diff --git a/package/x11r7/xlib_libXxf86vm/xlib_libXxf86vm.mk b/package/x11r7/xlib_libXxf86vm/xlib_libXxf86vm.mk new file mode 100644 index 00000000..8871bd50 --- /dev/null +++ b/package/x11r7/xlib_libXxf86vm/xlib_libXxf86vm.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# xlib_libXxf86vm +# +################################################################################ + +XLIB_LIBXXF86VM_VERSION = 1.1.4 +XLIB_LIBXXF86VM_SOURCE = libXxf86vm-$(XLIB_LIBXXF86VM_VERSION).tar.bz2 +XLIB_LIBXXF86VM_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXXF86VM_LICENSE = MIT +XLIB_LIBXXF86VM_LICENSE_FILES = COPYING +XLIB_LIBXXF86VM_CPE_ID_VENDOR = x +XLIB_LIBXXF86VM_CPE_ID_PRODUCT = libxxf86vm +XLIB_LIBXXF86VM_INSTALL_STAGING = YES +XLIB_LIBXXF86VM_DEPENDENCIES = xlib_libX11 xlib_libXext xorgproto +XLIB_LIBXXF86VM_CONF_OPTS = --disable-malloc0returnsnull + +$(eval $(autotools-package)) diff --git a/package/x11r7/xlib_libdmx/Config.in b/package/x11r7/xlib_libdmx/Config.in new file mode 100644 index 00000000..99cddb63 --- /dev/null +++ b/package/x11r7/xlib_libdmx/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_XLIB_LIBDMX + bool "libdmx" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XORGPROTO + help + X.Org dmx library diff --git a/package/x11r7/xlib_libdmx/xlib_libdmx.hash b/package/x11r7/xlib_libdmx/xlib_libdmx.hash new file mode 100644 index 00000000..1090e3c2 --- /dev/null +++ b/package/x11r7/xlib_libdmx/xlib_libdmx.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-May/002894.html +md5 d2f1f0ec68ac3932dd7f1d9aa0a7a11c libdmx-1.1.4.tar.bz2 +sha1 499e2540ca0e94ca858037865243c3c60908fd94 libdmx-1.1.4.tar.bz2 +sha256 253f90005d134fa7a209fbcbc5a3024335367c930adf0f3203e754cf32747243 libdmx-1.1.4.tar.bz2 +sha512 77aba6cadfd17db0cc7e1bc26f14d908223a0fdb135d46f86c3be34e3bc7e2f843f08d4d0ef773357e83b17122bffe56a0442d12908378c05a22177b10ae10e9 libdmx-1.1.4.tar.bz2 +# Locally computed +sha256 819e8dcd3dd2a44850c350331aa492230f86bccb0983dd739dec5ba36d7d2b8e COPYING diff --git a/package/x11r7/xlib_libdmx/xlib_libdmx.mk b/package/x11r7/xlib_libdmx/xlib_libdmx.mk new file mode 100644 index 00000000..429595b5 --- /dev/null +++ b/package/x11r7/xlib_libdmx/xlib_libdmx.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# xlib_libdmx +# +################################################################################ + +XLIB_LIBDMX_VERSION = 1.1.4 +XLIB_LIBDMX_SOURCE = libdmx-$(XLIB_LIBDMX_VERSION).tar.bz2 +XLIB_LIBDMX_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBDMX_LICENSE = MIT +XLIB_LIBDMX_LICENSE_FILES = COPYING +XLIB_LIBDMX_CPE_ID_VENDOR = x +XLIB_LIBDMX_CPE_ID_PRODUCT = libdmx +XLIB_LIBDMX_INSTALL_STAGING = YES +XLIB_LIBDMX_DEPENDENCIES = xlib_libX11 xlib_libXext xorgproto +XLIB_LIBDMX_CONF_OPTS = --disable-malloc0returnsnull + +$(eval $(autotools-package)) diff --git a/package/x11r7/xlib_libfontenc/Config.in b/package/x11r7/xlib_libfontenc/Config.in new file mode 100644 index 00000000..38cb8333 --- /dev/null +++ b/package/x11r7/xlib_libfontenc/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XLIB_LIBFONTENC + bool "libfontenc" + select BR2_PACKAGE_XORGPROTO + select BR2_PACKAGE_ZLIB + help + X.Org fontenc library diff --git a/package/x11r7/xlib_libfontenc/xlib_libfontenc.hash b/package/x11r7/xlib_libfontenc/xlib_libfontenc.hash new file mode 100644 index 00000000..de05fd27 --- /dev/null +++ b/package/x11r7/xlib_libfontenc/xlib_libfontenc.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-February/002956.html +md5 6447db6a689fb530c218f0f8328c3abc libfontenc-1.1.4.tar.bz2 +sha1 d4f232b0b07487b984e13422ce4130b61a8b9edb libfontenc-1.1.4.tar.bz2 +sha256 2cfcce810ddd48f2e5dc658d28c1808e86dcf303eaff16728b9aa3dbc0092079 libfontenc-1.1.4.tar.bz2 +sha512 76fa851d00113241f15fdd5b5bb7e927b8d8b9a82ce3fcb0678b8c7e32cb5e8d898c4bda1d60dafb7748145049d3240627ac34a2360c64e98a7a912ea7c30582 libfontenc-1.1.4.tar.bz2 +# Locally computed +sha256 a4dda7a643b517794bfa23dc9605da030055df38ac8a5b9e1905e690975a59c4 COPYING diff --git a/package/x11r7/xlib_libfontenc/xlib_libfontenc.mk b/package/x11r7/xlib_libfontenc/xlib_libfontenc.mk new file mode 100644 index 00000000..a55b90d6 --- /dev/null +++ b/package/x11r7/xlib_libfontenc/xlib_libfontenc.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# xlib_libfontenc +# +################################################################################ + +XLIB_LIBFONTENC_VERSION = 1.1.4 +XLIB_LIBFONTENC_SOURCE = libfontenc-$(XLIB_LIBFONTENC_VERSION).tar.bz2 +XLIB_LIBFONTENC_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBFONTENC_LICENSE = MIT +XLIB_LIBFONTENC_LICENSE_FILES = COPYING +XLIB_LIBFONTENC_INSTALL_STAGING = YES +XLIB_LIBFONTENC_DEPENDENCIES = zlib xorgproto host-pkgconf +HOST_XLIB_LIBFONTENC_DEPENDENCIES = host-zlib host-xorgproto host-pkgconf + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/x11r7/xlib_libxkbfile/Config.in b/package/x11r7/xlib_libxkbfile/Config.in new file mode 100644 index 00000000..0d7e4660 --- /dev/null +++ b/package/x11r7/xlib_libxkbfile/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_XLIB_LIBXKBFILE + bool "libxkbfile" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XORGPROTO + help + X.Org xkbfile library diff --git a/package/x11r7/xlib_libxkbfile/xlib_libxkbfile.hash b/package/x11r7/xlib_libxkbfile/xlib_libxkbfile.hash new file mode 100644 index 00000000..03e61bdc --- /dev/null +++ b/package/x11r7/xlib_libxkbfile/xlib_libxkbfile.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-March/002977.html +md5 dd7e1e946def674e78c0efbc5c7d5b3b libxkbfile-1.1.0.tar.bz2 +sha1 487f314b6dbc17e93d0fe1e3741392156a9ca895 libxkbfile-1.1.0.tar.bz2 +sha256 758dbdaa20add2db4902df0b1b7c936564b7376c02a0acd1f2a331bd334b38c7 libxkbfile-1.1.0.tar.bz2 +sha512 1c6a57564e916ccdc3df3c49b9f3589f701df0cec55112c12ddc35ac3ed556608c28fe98e5ba0ac1962e9a65ed1e90eb7e6169b564951bf55a7cf3499b745826 libxkbfile-1.1.0.tar.bz2 +# Locally computed +sha256 e1b3fdad8037ab3f986ef9caaa7c8da47d8d55875e680c7d6011f6c07363ea7c COPYING diff --git a/package/x11r7/xlib_libxkbfile/xlib_libxkbfile.mk b/package/x11r7/xlib_libxkbfile/xlib_libxkbfile.mk new file mode 100644 index 00000000..6b684966 --- /dev/null +++ b/package/x11r7/xlib_libxkbfile/xlib_libxkbfile.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# xlib_libxkbfile +# +################################################################################ + +XLIB_LIBXKBFILE_VERSION = 1.1.0 +XLIB_LIBXKBFILE_SOURCE = libxkbfile-$(XLIB_LIBXKBFILE_VERSION).tar.bz2 +XLIB_LIBXKBFILE_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXKBFILE_LICENSE = MIT +XLIB_LIBXKBFILE_LICENSE_FILES = COPYING +XLIB_LIBXKBFILE_INSTALL_STAGING = YES +XLIB_LIBXKBFILE_DEPENDENCIES = xlib_libX11 xorgproto +HOST_XLIB_LIBXKBFILE_DEPENDENCIES = host-xlib_libX11 host-xorgproto + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/x11r7/xlib_libxshmfence/Config.in b/package/x11r7/xlib_libxshmfence/Config.in new file mode 100644 index 00000000..7823bda7 --- /dev/null +++ b/package/x11r7/xlib_libxshmfence/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_XLIB_LIBXSHMFENCE + bool "libxshmfence" + # Due to use of SYS_futex - can be enabled again when upstream + # adds SYS_futex64 as an alternative + depends on !BR2_RISCV_32 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + select BR2_PACKAGE_XORGPROTO + help + X.Org shmfence library diff --git a/package/x11r7/xlib_libxshmfence/xlib_libxshmfence.hash b/package/x11r7/xlib_libxshmfence/xlib_libxshmfence.hash new file mode 100644 index 00000000..afdffb82 --- /dev/null +++ b/package/x11r7/xlib_libxshmfence/xlib_libxshmfence.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2018-February/002840.html +md5 42dda8016943dc12aff2c03a036e0937 libxshmfence-1.3.tar.bz2 +sha1 3472218fc0e8ee8183533d22dbcd4bbe90bf3ab8 libxshmfence-1.3.tar.bz2 +sha256 b884300d26a14961a076fbebc762a39831cb75f92bed5ccf9836345b459220c7 libxshmfence-1.3.tar.bz2 +sha512 c446e055f8fac62b9aa266132289a4cfc030282147974c45ce96d1768a98d1afb997470e58e4a68513174c404cbf373bdde2f0cd4b34abdbce1d89dd0b6fe2b7 libxshmfence-1.3.tar.bz2 +# Locally computed +sha256 64a579d1a0b3347301d87c94698a58ea7933d0ae6ca7e8fdd702fde2ea376301 COPYING diff --git a/package/x11r7/xlib_libxshmfence/xlib_libxshmfence.mk b/package/x11r7/xlib_libxshmfence/xlib_libxshmfence.mk new file mode 100644 index 00000000..605408ff --- /dev/null +++ b/package/x11r7/xlib_libxshmfence/xlib_libxshmfence.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xlib_libxshmfence +# +################################################################################ + +XLIB_LIBXSHMFENCE_VERSION = 1.3 +XLIB_LIBXSHMFENCE_SOURCE = libxshmfence-$(XLIB_LIBXSHMFENCE_VERSION).tar.bz2 +XLIB_LIBXSHMFENCE_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXSHMFENCE_LICENSE = MIT +XLIB_LIBXSHMFENCE_LICENSE_FILES = COPYING +XLIB_LIBXSHMFENCE_INSTALL_STAGING = YES +XLIB_LIBXSHMFENCE_DEPENDENCIES = host-pkgconf xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xlib_xtrans/Config.in b/package/x11r7/xlib_xtrans/Config.in new file mode 100644 index 00000000..7c8bae79 --- /dev/null +++ b/package/x11r7/xlib_xtrans/Config.in @@ -0,0 +1,4 @@ +config BR2_PACKAGE_XLIB_XTRANS + bool "xtrans" + help + X.Org xtrans library diff --git a/package/x11r7/xlib_xtrans/xlib_xtrans.hash b/package/x11r7/xlib_xtrans/xlib_xtrans.hash new file mode 100644 index 00000000..4e212c0f --- /dev/null +++ b/package/x11r7/xlib_xtrans/xlib_xtrans.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-March/002980.html +md5 ce2fb8100c6647ee81451ebe388b17ad xtrans-1.4.0.tar.bz2 +sha1 7c490026efb450798e02b040c05eba5212291c08 xtrans-1.4.0.tar.bz2 +sha256 377c4491593c417946efcd2c7600d1e62639f7a8bbca391887e2c4679807d773 xtrans-1.4.0.tar.bz2 +sha512 4fea89a3455c0e13321cbefa43340016dbb59bdd0dbdb5b796c1a6d2a6b1fd63cf1327b769ab426286b9c54b32ec764a50cd2b46228e4e43b841bda6b94de214 xtrans-1.4.0.tar.bz2 +# Locally computed +sha256 a9c96c832e00774266b492d4d41556f12a64f039ba3ef645c4b8c6010fcb8f2a COPYING diff --git a/package/x11r7/xlib_xtrans/xlib_xtrans.mk b/package/x11r7/xlib_xtrans/xlib_xtrans.mk new file mode 100644 index 00000000..88c9b57a --- /dev/null +++ b/package/x11r7/xlib_xtrans/xlib_xtrans.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# xlib_xtrans +# +################################################################################ + +XLIB_XTRANS_VERSION = 1.4.0 +XLIB_XTRANS_SOURCE = xtrans-$(XLIB_XTRANS_VERSION).tar.bz2 +XLIB_XTRANS_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_XTRANS_LICENSE = MIT +XLIB_XTRANS_LICENSE_FILES = COPYING +XLIB_XTRANS_INSTALL_STAGING = YES + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/x11r7/xorgproto/Config.in b/package/x11r7/xorgproto/Config.in new file mode 100644 index 00000000..af38eb43 --- /dev/null +++ b/package/x11r7/xorgproto/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XORGPROTO + bool "xorgproto" + help + This package combines the protocol headers, which were + formerly scattered in individual packages. diff --git a/package/x11r7/xorgproto/xorgproto.hash b/package/x11r7/xorgproto/xorgproto.hash new file mode 100644 index 00000000..fda42ac8 --- /dev/null +++ b/package/x11r7/xorgproto/xorgproto.hash @@ -0,0 +1,42 @@ +# From https://lists.x.org/archives/xorg-announce/2020-April/003042.html +md5 c29f4fa78f53b52b3efdc71ebd9506b6 xorgproto-2020.1.tar.bz2 +sha1 1cdab4e9ab796760ddb9582071328469a8eca08a xorgproto-2020.1.tar.bz2 +sha256 54a153f139035a376c075845dd058049177212da94d7a9707cf9468367b699d2 xorgproto-2020.1.tar.bz2 +sha512 2d10533e54987f293e1c8578aa742c38cf2fac8551db1d317cf5ee4a6a9600eced50f59c57c38b35dd210fe02d350294c967512f04cb9876d6c0c1f7e89cb199 xorgproto-2020.1.tar.bz2 +# Locally computed +sha256 aacd931f191b610902aee1e526090c2858aabc07969441fa2537ffd3e7049555 COPYING-applewmproto +sha256 dabc025f93129a0eb2d17f37c719dbe5ecbcb5bc8f7bc7f4ce89fe04576cc0c2 COPYING-bigreqsproto +sha256 ab587ca94282c1e60797ffe4a77aea195418387db20ec7e0c24cedf2c844f8c1 COPYING-compositeproto +sha256 f67a18cb46c4c203c5122b4a901cfcc3178b2a62f83f31ca5fef5bdca3966094 COPYING-damageproto +sha256 819e8dcd3dd2a44850c350331aa492230f86bccb0983dd739dec5ba36d7d2b8e COPYING-dmxproto +sha256 0c306691492c4d7a8cda1ec3847668b797887dddcd7e986b4c166ae27619af7d COPYING-dri2proto +sha256 64a579d1a0b3347301d87c94698a58ea7933d0ae6ca7e8fdd702fde2ea376301 COPYING-dri3proto +sha256 0aa43d03da3cedbd9882c0ded621b0d855353eb9e551f9eed940d75c8a0b03c1 COPYING-evieproto +sha256 65cb0b867b00fb27f066a37353713b265645b3301146562570d7638ed2ddd548 COPYING-fixesproto +sha256 1ab381e978bff63d68be2e4f235d51935f3f16f3ba3bebf83afa99a70c0484a2 COPYING-fontcacheproto +sha256 f4af05774b02ae149357cc26f7bf5ef1116c2e09373c2492081a3a1892c58417 COPYING-fontsproto +sha256 823deb4673d3f26aa8c90e704888299648f00be3262f9363eaeecedcd65b936d COPYING-glproto +sha256 5e083a2ace0215a6084c877c023a6079952ba803d692488203ba4269196debe3 COPYING-inputproto +sha256 d397a67d4b28e897bc5fce79b2b917df9905b54f961fc3ad1f49c7fe3803f92c COPYING-kbproto +sha256 7a5dd5d4c989c167da50f15879959f42bbda960e06d0a0aea7197f61fe1dc846 COPYING-lg3dproto +sha256 8442b5f22f2fb13017a4302a906e7dedc899267b41f613558970941120170128 COPYING-pmproto +sha256 64a579d1a0b3347301d87c94698a58ea7933d0ae6ca7e8fdd702fde2ea376301 COPYING-presentproto +sha256 6b890b118261694865988378dbba876bcd9caa1a421c5c0d626116948bc0ae35 COPYING-printproto +sha256 41c13dcd09147ed2440286f2fb8151df8ebee06deee4ed78ddf094601c216d3d COPYING-randrproto +sha256 ee10aee0f1697ffdbe870a39f037361d4f7136f2976bb7919a41b3f66407caee COPYING-recordproto +sha256 9e48921a94da36d7a69fe71809223ee0bb46370db9842dccdeeb55b5a9946872 COPYING-renderproto +sha256 403e7be948674530ad40669b1e3a31adeddb656502f3b0ef810d5d3cc35d0b52 COPYING-resourceproto +sha256 fcbd3c628bf4d28ee3e6032054bf44bbe58f3b1a944dad856a8d3eb6b37ea412 COPYING-scrnsaverproto +sha256 d6d3513f5a7099748dc387f54498d799380b45f8a444f13aa98aa45a860ae55b COPYING-trapproto +sha256 f8f49bbad61967ebc890fb79fff5bfb7cfc1c341aa8f8dee13eb3fb534040b47 COPYING-videoproto +sha256 eb183a00c61bb47992f096b6993ed7ec17518bea9c285fe87efff7f622cc6c12 COPYING-windowswmproto +sha256 da4a28570230228b9bd80a701c5d8752f8609394de2e0d46d26d978bd07610db COPYING-x11proto +sha256 5531d18cfcc944dab39991f63f182cbbce3fe493ba0c7cf08a25c0d01ee84482 COPYING-xcmiscproto +sha256 fb42146c6c06a200a9b121220eb692ff9101ba0fbd0b224b9e16a016c59ae86a COPYING-xextproto +sha256 3591964e01a9cdfc9cc4149a847a431a3f3d98328cc9e5864c7a7831b29c4058 COPYING-xf86bigfontproto +sha256 3591964e01a9cdfc9cc4149a847a431a3f3d98328cc9e5864c7a7831b29c4058 COPYING-xf86dgaproto +sha256 4a05d06752388d9db71ee1006f371d4fb2c316a821fc2fc272db90b3ef978334 COPYING-xf86driproto +sha256 3591964e01a9cdfc9cc4149a847a431a3f3d98328cc9e5864c7a7831b29c4058 COPYING-xf86miscproto +sha256 3591964e01a9cdfc9cc4149a847a431a3f3d98328cc9e5864c7a7831b29c4058 COPYING-xf86rushproto +sha256 942bb46a3503a708948491699171b00b9e0dfb47818d9268b160bccc5f51a4b9 COPYING-xf86vidmodeproto +sha256 b2d8cda803e900915ce10f0ba735ff2c033b39c7cc5a8a436667ca583d4066fa COPYING-xineramaproto diff --git a/package/x11r7/xorgproto/xorgproto.mk b/package/x11r7/xorgproto/xorgproto.mk new file mode 100644 index 00000000..1c9f320e --- /dev/null +++ b/package/x11r7/xorgproto/xorgproto.mk @@ -0,0 +1,54 @@ +################################################################################ +# +# xorgproto +# +################################################################################ + +XORGPROTO_VERSION = 2020.1 +XORGPROTO_SOURCE = xorgproto-$(XORGPROTO_VERSION).tar.bz2 +XORGPROTO_SITE = https://xorg.freedesktop.org/archive/individual/proto +XORGPROTO_LICENSE = MIT +XORGPROTO_LICENSE_FILES = \ + COPYING-applewmproto \ + COPYING-bigreqsproto \ + COPYING-compositeproto \ + COPYING-damageproto \ + COPYING-dmxproto \ + COPYING-dri2proto \ + COPYING-dri3proto \ + COPYING-evieproto \ + COPYING-fixesproto \ + COPYING-fontcacheproto \ + COPYING-fontsproto \ + COPYING-glproto \ + COPYING-inputproto \ + COPYING-kbproto \ + COPYING-lg3dproto \ + COPYING-pmproto \ + COPYING-presentproto \ + COPYING-printproto \ + COPYING-randrproto \ + COPYING-recordproto \ + COPYING-renderproto \ + COPYING-resourceproto \ + COPYING-scrnsaverproto \ + COPYING-trapproto \ + COPYING-videoproto \ + COPYING-windowswmproto \ + COPYING-x11proto \ + COPYING-xcmiscproto \ + COPYING-xextproto \ + COPYING-xf86bigfontproto \ + COPYING-xf86dgaproto \ + COPYING-xf86driproto \ + COPYING-xf86miscproto \ + COPYING-xf86rushproto \ + COPYING-xf86vidmodeproto \ + COPYING-xineramaproto +XORGPROTO_INSTALL_STAGING = YES +XORGPROTO_INSTALL_TARGET = NO +# xproxymngproto is needed by xfindproxy +XORGPROTO_CONF_OPTS += --enable-legacy + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/x11r7/xserver_xorg-server/0001-modesettings-needs-dri2.patch b/package/x11r7/xserver_xorg-server/0001-modesettings-needs-dri2.patch new file mode 100644 index 00000000..74917720 --- /dev/null +++ b/package/x11r7/xserver_xorg-server/0001-modesettings-needs-dri2.patch @@ -0,0 +1,20 @@ +Kernel modesettings support also depends on dri2, see +http://cgit.freedesktop.org/xorg/xserver/tree/hw/xfree86/drivers/modesetting/Makefile.am#n46 + +Patch sent upstream: https://gitlab.freedesktop.org/xorg/xserver/issues/479 + +[rebased for version 1.20.0] +Signed-off-by: Bernd Kuhls + +diff -uNr xorg-server-1.17.2.org/configure.ac xorg-server-1.17.2/configure.ac +--- xorg-server-1.17.2.org/configure.ac 2015-06-16 17:42:40.000000000 +0200 ++++ xorg-server-1.17.2/configure.ac 2015-08-08 10:44:59.702382624 +0200 +@@ -1962,7 +1962,7 @@ + XORG_SYS_LIBS="$XORG_SYS_LIBS $XORG_MODULES_LIBS" + fi + +- if test "x$DRM" = xyes; then ++ if test "x$DRM" = xyes -a "x$DRI2" = xyes; then + XORG_DRIVER_MODESETTING=yes + fi + diff --git a/package/x11r7/xserver_xorg-server/0002-include-misc.h-fix-uClibc-build.patch b/package/x11r7/xserver_xorg-server/0002-include-misc.h-fix-uClibc-build.patch new file mode 100644 index 00000000..562aa79f --- /dev/null +++ b/package/x11r7/xserver_xorg-server/0002-include-misc.h-fix-uClibc-build.patch @@ -0,0 +1,31 @@ +From 2e8fca00f5bdb02f2f59aaa428d1e9d808ab0e86 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Sat, 16 Jun 2018 19:20:16 +0200 +Subject: [PATCH] include/misc.h: fix uClibc build + +A similar fix was used for Dovecot: +https://www.dovecot.org/list/dovecot/2017-November/110019.html + +Signed-off-by: Bernd Kuhls +--- + include/misc.h | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/include/misc.h b/include/misc.h +index 14920c3c3..390e52b60 100644 +--- a/include/misc.h ++++ b/include/misc.h +@@ -185,6 +185,10 @@ typedef struct _xReq *xReqPtr; + #endif + #endif + ++#undef bswap_16 ++#undef bswap_32 ++#undef bswap_64 ++ + /** + * Calculate the number of bytes needed to hold bits. + * @param bits The minimum number of bits needed. +-- +2.17.1 + diff --git a/package/x11r7/xserver_xorg-server/0003-hw-xwayland-Makefile.am-fix-build-without-glx.patch b/package/x11r7/xserver_xorg-server/0003-hw-xwayland-Makefile.am-fix-build-without-glx.patch new file mode 100644 index 00000000..5f19a26d --- /dev/null +++ b/package/x11r7/xserver_xorg-server/0003-hw-xwayland-Makefile.am-fix-build-without-glx.patch @@ -0,0 +1,45 @@ +From b1d2a82d644518c1a75775244ac63be738aaf062 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Fri, 19 Apr 2019 10:19:50 +0200 +Subject: [PATCH] hw/xwayland/Makefile.am: fix build without glx + +Commit d8ec33fe0542141aed1d9016d2ecaf52da944b4b added libglxvnd.la to +Xwayland_LDFLAGS but GLX can be disabled through --disable-glx. +In this case, build fails on: + +make[3]: *** No rule to make target '../../glx/libglxvnd.la', needed by 'Xwayland'. Stop. +make[3]: *** Waiting for unfinished jobs.... + +Fixes: + - http://autobuild.buildroot.org/results/397f8098c57fc6c88aa12dc8d35ebb1b933d52ef + +Signed-off-by: Fabrice Fontaine +[Upstream status: +https://gitlab.freedesktop.org/xorg/xserver/merge_requests/173] +--- + hw/xwayland/Makefile.am | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/hw/xwayland/Makefile.am b/hw/xwayland/Makefile.am +index bc1cb8506..502879e2a 100644 +--- a/hw/xwayland/Makefile.am ++++ b/hw/xwayland/Makefile.am +@@ -21,10 +21,14 @@ Xwayland_SOURCES = \ + $(top_srcdir)/Xi/stubs.c \ + $(top_srcdir)/mi/miinitext.c + ++if GLX ++GLXVND_LIB = $(top_builddir)/glx/libglxvnd.la ++endif ++ + Xwayland_LDADD = \ + $(glamor_lib) \ + $(XWAYLAND_LIBS) \ +- $(top_builddir)/glx/libglxvnd.la \ ++ $(GLXVND_LIB) \ + $(XWAYLAND_SYS_LIBS) \ + $(top_builddir)/Xext/libXvidmode.la \ + $(XSERVER_SYS_LIBS) +-- +2.20.1 + diff --git a/package/x11r7/xserver_xorg-server/0004-hw-xfree86-common-xf86Init.c-fix-build-without-glx.patch b/package/x11r7/xserver_xorg-server/0004-hw-xfree86-common-xf86Init.c-fix-build-without-glx.patch new file mode 100644 index 00000000..de086fb6 --- /dev/null +++ b/package/x11r7/xserver_xorg-server/0004-hw-xfree86-common-xf86Init.c-fix-build-without-glx.patch @@ -0,0 +1,45 @@ +From 49456e0a37fac7bc9d1f01bc1519fb0d699956db Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Fri, 27 Dec 2019 23:33:37 +0100 +Subject: [PATCH] hw/xfree86/common/xf86Init.c: fix build without glx + +Since commit d8ec33fe0542141aed1d9016d2ecaf52da944b4b, an include on +glxvndabi.h has been added to hw/xfree86/common/xf86Init.c + +However, if glx is disabled through --disable-glx and GLX headers are +not installed in the build's environment, build fails on: + +In file included from xf86Init.c:81: +../../../include/glxvndabi.h:64:10: fatal error: GL/glxproto.h: No such file or directory + 64 | #include + | ^~~~~~~~~~~~~~~ + +Fix this failure by removing this include which does not seem to be +needed (an other option would have been to keep it under an ifdef GLXEXT +block) + +Fixes: + - http://autobuild.buildroot.org/results/de838a843f97673d1381a55fd4e9b07164693913 + +Signed-off-by: Fabrice Fontaine +[Retrieved from: +https://gitlab.freedesktop.org/xorg/xserver/commit/49456e0a37fac7bc9d1f01bc1519fb0d699956db] +--- + hw/xfree86/common/xf86Init.c | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/hw/xfree86/common/xf86Init.c b/hw/xfree86/common/xf86Init.c +index 0631c7237..e6fb11398 100644 +--- a/hw/xfree86/common/xf86Init.c ++++ b/hw/xfree86/common/xf86Init.c +@@ -78,7 +78,6 @@ + #include "xf86InPriv.h" + #include "picturestr.h" + #include "randrstr.h" +-#include "glxvndabi.h" + #include "xf86Bus.h" + #ifdef XSERVER_LIBPCIACCESS + #include "xf86VGAarbiter.h" +-- +2.24.1 + diff --git a/package/x11r7/xserver_xorg-server/0005-Fix-segfault-on-probing-a-non-PCI-platform-device-on.patch b/package/x11r7/xserver_xorg-server/0005-Fix-segfault-on-probing-a-non-PCI-platform-device-on.patch new file mode 100644 index 00000000..7802fd96 --- /dev/null +++ b/package/x11r7/xserver_xorg-server/0005-Fix-segfault-on-probing-a-non-PCI-platform-device-on.patch @@ -0,0 +1,33 @@ +From e50c85f4ebf559a3bac4817b41074c43d4691779 Mon Sep 17 00:00:00 2001 +From: Eric Anholt +Date: Fri, 26 Oct 2018 17:47:30 -0700 +Subject: [PATCH] Fix segfault on probing a non-PCI platform device on a system + with PCI. + +Some Broadcom set-top-box boards have PCI busses, but the GPU is still +probed through DT. We would dereference a null busid here in that +case. + +Signed-off-by: Eric Anholt +Backported from: e50c85f4ebf559a3bac4817b41074c43d4691779 +Signed-off-by: Joseph Kogut +--- + hw/xfree86/common/xf86platformBus.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/hw/xfree86/common/xf86platformBus.c b/hw/xfree86/common/xf86platformBus.c +index cef47da03..dadbac6c8 100644 +--- a/hw/xfree86/common/xf86platformBus.c ++++ b/hw/xfree86/common/xf86platformBus.c +@@ -289,7 +289,7 @@ xf86platformProbe(void) + for (i = 0; i < xf86_num_platform_devices; i++) { + char *busid = xf86_platform_odev_attributes(i)->busid; + +- if (pci && (strncmp(busid, "pci:", 4) == 0)) { ++ if (pci && busid && (strncmp(busid, "pci:", 4) == 0)) { + platform_find_pci_info(&xf86_platform_devices[i], busid); + } + +-- +2.24.1 + diff --git a/package/x11r7/xserver_xorg-server/Config.in b/package/x11r7/xserver_xorg-server/Config.in new file mode 100644 index 00000000..4dc15435 --- /dev/null +++ b/package/x11r7/xserver_xorg-server/Config.in @@ -0,0 +1,85 @@ +comment "xorg-server needs a glibc or uClibc toolchain" + depends on BR2_arm && BR2_TOOLCHAIN_USES_MUSL + +config BR2_PACKAGE_XSERVER_XORG_SERVER + bool "xorg-server" + depends on BR2_USE_MMU # fork() + # xserver uses inb/outb on arm, which aren't available with musl + depends on !(BR2_arm && BR2_TOOLCHAIN_USES_MUSL) + # We need a SHA1 implementation. If either openssl or + # libgcrypt are already part of the build, we'll use one of + # them, otherwise, use the small libsha1 library. + select BR2_PACKAGE_LIBSHA1 if (!BR2_PACKAGE_OPENSSL && !BR2_PACKAGE_LIBGCRYPT) + select BR2_PACKAGE_MCOOKIE + select BR2_PACKAGE_PIXMAN + select BR2_PACKAGE_XFONT_FONT_ALIAS if !BR2_PACKAGE_XSERVER_XORG_SERVER_BUILTIN_FONTS + select BR2_PACKAGE_XFONT_FONT_MISC_MISC if !BR2_PACKAGE_XSERVER_XORG_SERVER_BUILTIN_FONTS + select BR2_PACKAGE_XFONT_FONT_CURSOR_MISC if !BR2_PACKAGE_XSERVER_XORG_SERVER_BUILTIN_FONTS + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXAU + select BR2_PACKAGE_XLIB_LIBXCURSOR + select BR2_PACKAGE_XLIB_LIBXDAMAGE + select BR2_PACKAGE_XLIB_LIBXDMCP + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XLIB_LIBXFIXES + select BR2_PACKAGE_XLIB_LIBXFONT2 + select BR2_PACKAGE_XLIB_LIBXFT + select BR2_PACKAGE_XLIB_LIBXI + select BR2_PACKAGE_XLIB_LIBXINERAMA + select BR2_PACKAGE_XLIB_LIBXRANDR + select BR2_PACKAGE_XLIB_LIBXRENDER + select BR2_PACKAGE_XLIB_LIBXRES + select BR2_PACKAGE_XLIB_LIBXXF86VM + select BR2_PACKAGE_XLIB_LIBXKBFILE + select BR2_PACKAGE_XLIB_XTRANS + select BR2_PACKAGE_XDATA_XBITMAPS + select BR2_PACKAGE_XORGPROTO + select BR2_PACKAGE_XUTIL_UTIL_MACROS + select BR2_PACKAGE_XKEYBOARD_CONFIG + help + X.Org X server + + http://xorg.freedesktop.org + +if BR2_PACKAGE_XSERVER_XORG_SERVER + +choice + prompt "X Window System server type" + help + Select the X Window System server to use + +config BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR + bool "Modular X.org" + depends on BR2_INSTALL_LIBSTDCPP + select BR2_PACKAGE_LIBDRM + select BR2_PACKAGE_LIBPCIACCESS + select BR2_PACKAGE_XLIB_LIBXSHMFENCE if \ + (BR2_TOOLCHAIN_HAS_SYNC_4 && !BR2_RISCV_32) + help + This variant of the X.org server is the full-blown variant, + as used by desktop GNU/Linux distributions. The drivers (for + input and graphics) are built separately from the X.org + server (see the xdriver* packages). + +comment "Modular X.org needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP + +config BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE + bool "KDrive / TinyX" + help + This variant of the X.org server is a lightweight version + intended for embedded systems. The drivers (for input and + graphics) are built into the server. It is generally used + directly on top of the Linux framebuffer without DRM or + video card specific drivers. + +endchoice + +comment "Optional Servers" + +config BR2_PACKAGE_XSERVER_XORG_SERVER_XVFB + bool "Xvfb server" + help + Virtual frame buffer X server. + +endif diff --git a/package/x11r7/xserver_xorg-server/S40xorg b/package/x11r7/xserver_xorg-server/S40xorg new file mode 100644 index 00000000..215c0b7a --- /dev/null +++ b/package/x11r7/xserver_xorg-server/S40xorg @@ -0,0 +1,46 @@ +#!/bin/sh +# +# Starts Xorg +# + +BIN=/usr/bin/Xorg +PIDFILE=/var/run/xorg.pid + +# ":0.0 vt01" makes sure Xorg finds the correct terminal. +# -allowMouseOpenFail allows the server to start up even if the mouse device +# can't be opened or initialised. +# -noreset prevents a server reset when the last client connection is closed. +XORG_ARGS=":0.0 vt01 -s 0 -noreset -allowMouseOpenFail" + +start() { + printf "Starting Xorg: " + start-stop-daemon -S -q -b -m -p $PIDFILE --exec $BIN -- $XORG_ARGS + [ $? = 0 ] && sleep 3 && echo "OK" || echo "FAIL" +} + +stop() { + printf "Stopping Xorg: " + start-stop-daemon -K -q -p $PIDFILE + [ $? = 0 ] && echo "OK" || echo "FAIL" +} + +restart() { + stop + sleep 2 + start +} + +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart|reload) + restart + ;; + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac diff --git a/package/x11r7/xserver_xorg-server/xorg.service b/package/x11r7/xserver_xorg-server/xorg.service new file mode 100644 index 00000000..553d8b25 --- /dev/null +++ b/package/x11r7/xserver_xorg-server/xorg.service @@ -0,0 +1,11 @@ +[Unit] +Description=Xorg server +After=network.target + +[Service] +Type=simple +ExecStart=/usr/bin/Xorg :0.0 vt01 -s 0 -noreset -allowMouseOpenFail +Restart=always + +[Install] +WantedBy=graphical.target diff --git a/package/x11r7/xserver_xorg-server/xserver_xorg-server.hash b/package/x11r7/xserver_xorg-server/xserver_xorg-server.hash new file mode 100644 index 00000000..8eb56ba0 --- /dev/null +++ b/package/x11r7/xserver_xorg-server/xserver_xorg-server.hash @@ -0,0 +1,6 @@ +# From https://lists.x.org/archives/xorg-announce/2021-July/003100.html +sha256 40aa4e96a56a81a301f15a9b10e06a22700f12b42d9e0e453c7f11d354386300 xorg-server-1.20.13.tar.xz +sha512 4e0b7bd4e070dc52cb2c51c2056feb133de2c0487d359392ed63abba9702910cd2e2983e9415973d8d6e9672eac78be6f39202687fc56610877914ce722554b3 xorg-server-1.20.13.tar.xz + +# Locally calculated +sha256 4cc0447a22635c7b2f1a93fec4aa94f1970fadeb72a063de006b51cf4963a06f COPYING diff --git a/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk b/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk new file mode 100644 index 00000000..c326230b --- /dev/null +++ b/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk @@ -0,0 +1,198 @@ +################################################################################ +# +# xserver_xorg-server +# +################################################################################ + +XSERVER_XORG_SERVER_VERSION = 1.20.13 +XSERVER_XORG_SERVER_SOURCE = xorg-server-$(XSERVER_XORG_SERVER_VERSION).tar.xz +XSERVER_XORG_SERVER_SITE = https://xorg.freedesktop.org/archive/individual/xserver +XSERVER_XORG_SERVER_LICENSE = MIT +XSERVER_XORG_SERVER_LICENSE_FILES = COPYING +XSERVER_XORG_SERVER_INSTALL_STAGING = YES +# xfont_font-util is needed only for autoreconf +XSERVER_XORG_SERVER_AUTORECONF = YES +XSERVER_XORG_SERVER_DEPENDENCIES = \ + xfont_font-util \ + xutil_util-macros \ + xlib_libX11 \ + xlib_libXau \ + xlib_libXdmcp \ + xlib_libXext \ + xlib_libXfixes \ + xlib_libXfont2 \ + xlib_libXi \ + xlib_libXrender \ + xlib_libXres \ + xlib_libXft \ + xlib_libXcursor \ + xlib_libXinerama \ + xlib_libXrandr \ + xlib_libXdamage \ + xlib_libXxf86vm \ + xlib_libxkbfile \ + xlib_xtrans \ + xdata_xbitmaps \ + xorgproto \ + xkeyboard-config \ + pixman \ + mcookie \ + host-pkgconf + +# We force -O2 regardless of the optimization level chosen by the +# user, as the X.org server is known to trigger some compiler bugs at +# -Os on several architectures. +XSERVER_XORG_SERVER_CONF_OPTS = \ + --disable-config-hal \ + --enable-record \ + --disable-xnest \ + --disable-xephyr \ + --disable-dmx \ + --disable-unit-tests \ + --with-builder-addr=buildroot@buildroot.org \ + CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include/pixman-1 -O2" \ + --with-fontrootdir=/usr/share/fonts/X11/ \ + --$(if $(BR2_PACKAGE_XSERVER_XORG_SERVER_XVFB),en,dis)able-xvfb + +ifeq ($(BR2_PACKAGE_SYSTEMD),y) +XSERVER_XORG_SERVER_CONF_OPTS += \ + --with-systemd-daemon \ + --enable-systemd-logind +XSERVER_XORG_SERVER_DEPENDENCIES += \ + systemd +else +XSERVER_XORG_SERVER_CONF_OPTS += \ + --without-systemd-daemon \ + --disable-systemd-logind +endif + +# Xwayland support needs libdrm, libepoxy, wayland and libxcomposite +ifeq ($(BR2_PACKAGE_LIBDRM)$(BR2_PACKAGE_LIBEPOXY)$(BR2_PACKAGE_WAYLAND)$(BR2_PACKAGE_WAYLAND_PROTOCOLS)$(BR2_PACKAGE_XLIB_LIBXCOMPOSITE),yyyyy) +XSERVER_XORG_SERVER_CONF_OPTS += --enable-xwayland +XSERVER_XORG_SERVER_DEPENDENCIES += libdrm libepoxy wayland wayland-protocols xlib_libXcomposite +else +XSERVER_XORG_SERVER_CONF_OPTS += --disable-xwayland +endif + +ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR),y) +XSERVER_XORG_SERVER_CONF_OPTS += --enable-xorg +XSERVER_XORG_SERVER_DEPENDENCIES += libpciaccess +ifeq ($(BR2_PACKAGE_LIBDRM),y) +XSERVER_XORG_SERVER_DEPENDENCIES += libdrm +XSERVER_XORG_SERVER_CONF_OPTS += --enable-libdrm +else +XSERVER_XORG_SERVER_CONF_OPTS += --disable-libdrm +endif +else +XSERVER_XORG_SERVER_CONF_OPTS += --disable-xorg +endif + +ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE),y) +XSERVER_XORG_SERVER_CONF_OPTS += \ + --enable-kdrive \ + --disable-glx \ + --disable-dri + +else # modular +XSERVER_XORG_SERVER_CONF_OPTS += --disable-kdrive +endif + +ifeq ($(BR2_PACKAGE_HAS_LIBGL),y) +XSERVER_XORG_SERVER_CONF_OPTS += --enable-dri --enable-glx +XSERVER_XORG_SERVER_DEPENDENCIES += libgl +else +XSERVER_XORG_SERVER_CONF_OPTS += --disable-dri --disable-glx +endif + +# Optional packages +ifeq ($(BR2_PACKAGE_HAS_UDEV),y) +XSERVER_XORG_SERVER_DEPENDENCIES += udev +XSERVER_XORG_SERVER_CONF_OPTS += --enable-config-udev +# udev kms support depends on libdrm and dri2 +ifeq ($(BR2_PACKAGE_LIBDRM),y) +XSERVER_XORG_SERVER_CONF_OPTS += --enable-config-udev-kms +else +XSERVER_XORG_SERVER_CONF_OPTS += --disable-config-udev-kms +endif +endif + +ifeq ($(BR2_PACKAGE_DBUS),y) +XSERVER_XORG_SERVER_DEPENDENCIES += dbus +XSERVER_XORG_SERVER_CONF_OPTS += --enable-config-dbus +endif + +ifeq ($(BR2_PACKAGE_FREETYPE),y) +XSERVER_XORG_SERVER_DEPENDENCIES += freetype +endif + +ifeq ($(BR2_PACKAGE_LIBUNWIND),y) +XSERVER_XORG_SERVER_DEPENDENCIES += libunwind +XSERVER_XORG_SERVER_CONF_OPTS += --enable-libunwind +else +XSERVER_XORG_SERVER_CONF_OPTS += --disable-libunwind +endif + +ifneq ($(BR2_PACKAGE_XLIB_LIBXVMC),y) +XSERVER_XORG_SERVER_CONF_OPTS += --disable-xvmc +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXCOMPOSITE),y) +XSERVER_XORG_SERVER_DEPENDENCIES += xlib_libXcomposite +else +XSERVER_XORG_SERVER_CONF_OPTS += --disable-composite +endif + +ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR),y) +XSERVER_XORG_SERVER_CONF_OPTS += --enable-dri2 +ifeq ($(BR2_PACKAGE_XLIB_LIBXSHMFENCE),y) +XSERVER_XORG_SERVER_DEPENDENCIES += xlib_libxshmfence +XSERVER_XORG_SERVER_CONF_OPTS += --enable-dri3 +ifeq ($(BR2_PACKAGE_HAS_LIBEGL)$(BR2_PACKAGE_HAS_LIBGL)$(BR2_PACKAGE_LIBEPOXY),yyy) +XSERVER_XORG_SERVER_DEPENDENCIES += libepoxy +XSERVER_XORG_SERVER_CONF_OPTS += --enable-glamor +else +XSERVER_XORG_SERVER_CONF_OPTS += --disable-glamor +endif +else +XSERVER_XORG_SERVER_CONF_OPTS += --disable-dri3 --disable-glamor +endif +else +XSERVER_XORG_SERVER_CONF_OPTS += --disable-dri2 --disable-dri3 --disable-glamor +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXSCRNSAVER),y) +XSERVER_XORG_SERVER_DEPENDENCIES += xlib_libXScrnSaver +XSERVER_XORG_SERVER_CONF_OPTS += --enable-screensaver +else +XSERVER_XORG_SERVER_CONF_OPTS += --disable-screensaver +endif + +ifneq ($(BR2_PACKAGE_XLIB_LIBDMX),y) +XSERVER_XORG_SERVER_CONF_OPTS += --disable-dmx +endif + +ifeq ($(BR2_PACKAGE_OPENSSL),y) +XSERVER_XORG_SERVER_CONF_OPTS += --with-sha1=libcrypto +XSERVER_XORG_SERVER_DEPENDENCIES += openssl +else ifeq ($(BR2_PACKAGE_LIBGCRYPT),y) +XSERVER_XORG_SERVER_CONF_OPTS += --with-sha1=libgcrypt +XSERVER_XORG_SERVER_DEPENDENCIES += libgcrypt +else +XSERVER_XORG_SERVER_CONF_OPTS += --with-sha1=libsha1 +XSERVER_XORG_SERVER_DEPENDENCIES += libsha1 +endif + +define XSERVER_XORG_SERVER_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 0644 package/x11r7/xserver_xorg-server/xorg.service \ + $(TARGET_DIR)/usr/lib/systemd/system/xorg.service +endef + +# init script conflicts with S90nodm +ifneq ($(BR2_PACKAGE_NODM),y) +define XSERVER_XORG_SERVER_INSTALL_INIT_SYSV + $(INSTALL) -D -m 755 package/x11r7/xserver_xorg-server/S40xorg \ + $(TARGET_DIR)/etc/init.d/S40xorg +endef +endif + +$(eval $(autotools-package)) diff --git a/package/x11r7/xutil_makedepend/Config.in b/package/x11r7/xutil_makedepend/Config.in new file mode 100644 index 00000000..fdf2fb92 --- /dev/null +++ b/package/x11r7/xutil_makedepend/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_XUTIL_MAKEDEPEND + bool "makedepend" + select BR2_PACKAGE_XORGPROTO + help + No description available diff --git a/package/x11r7/xutil_makedepend/xutil_makedepend.hash b/package/x11r7/xutil_makedepend/xutil_makedepend.hash new file mode 100644 index 00000000..17986061 --- /dev/null +++ b/package/x11r7/xutil_makedepend/xutil_makedepend.hash @@ -0,0 +1,7 @@ +# From https://lists.x.org/archives/xorg-announce/2019-March/002985.html +md5 b2ca7f2f21f1c04a88b6a254c19c9b68 makedepend-1.0.6.tar.bz2 +sha1 3f321f7b570ec98f1fabc441267d29347a2e1456 makedepend-1.0.6.tar.bz2 +sha256 d558a52e8017d984ee59596a9582c8d699a1962391b632bec3bb6804bf4d501c makedepend-1.0.6.tar.bz2 +sha512 eb0e8ee8ab7515806d7d98a060cdcd392ec38e4225e5e05db26daa6651f185d0b764aab403edeea904d4d23211b1f7db20daeee6eafce8abe65225784ed0aa42 makedepend-1.0.6.tar.bz2 +# Locally computed +sha256 0530078db78c47ae978dc2bd77f4f427e6cd97df868672c95b1ef284113c8cb7 COPYING diff --git a/package/x11r7/xutil_makedepend/xutil_makedepend.mk b/package/x11r7/xutil_makedepend/xutil_makedepend.mk new file mode 100644 index 00000000..18f8eb1f --- /dev/null +++ b/package/x11r7/xutil_makedepend/xutil_makedepend.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# xutil_makedepend +# +################################################################################ + +XUTIL_MAKEDEPEND_VERSION = 1.0.6 +XUTIL_MAKEDEPEND_SOURCE = makedepend-$(XUTIL_MAKEDEPEND_VERSION).tar.bz2 +XUTIL_MAKEDEPEND_SITE = http://xorg.freedesktop.org/releases/individual/util +XUTIL_MAKEDEPEND_LICENSE = MIT +XUTIL_MAKEDEPEND_LICENSE_FILES = COPYING + +XUTIL_MAKEDEPEND_DEPENDENCIES = xorgproto host-pkgconf +HOST_XUTIL_MAKEDEPEND_DEPENDENCIES = host-xorgproto host-pkgconf + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/x11vnc/0001-Fix-build-on-32bit-arches-with-64bit-time_t.patch b/package/x11vnc/0001-Fix-build-on-32bit-arches-with-64bit-time_t.patch new file mode 100644 index 00000000..87dc3c99 --- /dev/null +++ b/package/x11vnc/0001-Fix-build-on-32bit-arches-with-64bit-time_t.patch @@ -0,0 +1,109 @@ +From daecf59cc8b294265666482a4766aaa3148c308b Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Sat, 30 Nov 2019 11:43:32 -0800 +Subject: [PATCH] Fix build on 32bit arches with 64bit time_t + +time element is deprecated on new input_event structure in kernel's +input.h [1] + +[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit?id=152194fe9c3f + +[Retrieved from: +https://github.com/LibVNC/x11vnc/commit/daecf59cc8b294265666482a4766aaa3148c308b] +Signed-off-by: Fabrice Fontaine +--- + src/uinput.c | 25 +++++++++++++++++++++---- + 1 file changed, 21 insertions(+), 4 deletions(-) + +diff --git a/src/uinput.c b/src/uinput.c +index 28fbad3..d71bcde 100644 +--- a/src/uinput.c ++++ b/src/uinput.c +@@ -54,6 +54,11 @@ so, delete this exception statement from your version. + #include + #include + ++#ifndef input_event_sec ++#define input_event_sec time.tv_sec ++#define input_event_usec time.tv_usec ++#endif ++ + #if !defined(EV_SYN) || !defined(SYN_REPORT) + #undef UINPUT_OK + #endif +@@ -710,6 +715,7 @@ void parse_uinput_str(char *in) { + static void ptr_move(int dx, int dy) { + #ifdef UINPUT_OK + struct input_event ev; ++ struct timeval tval; + int d = direct_rel_fd < 0 ? fd : direct_rel_fd; + + if (injectable && strchr(injectable, 'M') == NULL) { +@@ -720,7 +726,9 @@ static void ptr_move(int dx, int dy) { + + if (db) fprintf(stderr, "ptr_move(%d, %d) fd=%d\n", dx, dy, d); + +- gettimeofday(&ev.time, NULL); ++ gettimeofday(&tval, NULL); ++ ev.input_event_sec = tval.tv_sec; ++ ev.input_event_usec = tval.tv_usec; + ev.type = EV_REL; + ev.code = REL_Y; + ev.value = dy; +@@ -755,6 +763,7 @@ static void apply_tslib(int *x, int *y) { + static void ptr_abs(int x, int y, int p) { + #ifdef UINPUT_OK + struct input_event ev; ++ struct timeval tval; + int x0, y0; + int d = direct_abs_fd < 0 ? fd : direct_abs_fd; + +@@ -773,7 +782,9 @@ static void ptr_abs(int x, int y, int p) { + + if (db) fprintf(stderr, "ptr_abs(%d, %d => %d %d, p=%d) fd=%d\n", x0, y0, x, y, p, d); + +- gettimeofday(&ev.time, NULL); ++ gettimeofday(&tval, NULL); ++ ev.input_event_sec = tval.tv_sec; ++ ev.input_event_usec = tval.tv_usec; + ev.type = EV_ABS; + ev.code = ABS_Y; + ev.value = y; +@@ -950,6 +961,7 @@ if (0) {usleep(100*1000) ;} + static void button_click(int down, int btn) { + #ifdef UINPUT_OK + struct input_event ev; ++ struct timeval tval; + int d = direct_btn_fd < 0 ? fd : direct_btn_fd; + + if (injectable && strchr(injectable, 'B') == NULL) { +@@ -959,7 +971,9 @@ static void button_click(int down, int btn) { + if (db) fprintf(stderr, "button_click: btn %d %s fd=%d\n", btn, down ? "down" : "up", d); + + memset(&ev, 0, sizeof(ev)); +- gettimeofday(&ev.time, NULL); ++ gettimeofday(&tval, NULL); ++ ev.input_event_sec = tval.tv_sec; ++ ev.input_event_usec = tval.tv_usec; + ev.type = EV_KEY; + ev.value = down; + +@@ -1230,6 +1244,7 @@ void uinput_pointer_command(int mask, int x, int y, rfbClientPtr client) { + void uinput_key_command(int down, int keysym, rfbClientPtr client) { + #ifdef UINPUT_OK + struct input_event ev; ++ struct timeval tval; + int scancode; + allowed_input_t input; + int d = direct_key_fd < 0 ? fd : direct_key_fd; +@@ -1253,7 +1268,9 @@ void uinput_key_command(int down, int keysym, rfbClientPtr client) { + if (db) fprintf(stderr, "uinput_key_command: %d -> %d %s fd=%d\n", keysym, scancode, down ? "down" : "up", d); + + memset(&ev, 0, sizeof(ev)); +- gettimeofday(&ev.time, NULL); ++ gettimeofday(&tval, NULL); ++ ev.input_event_sec = tval.tv_sec; ++ ev.input_event_usec = tval.tv_usec; + ev.type = EV_KEY; + ev.code = (unsigned char) scancode; + ev.value = down; diff --git a/package/x11vnc/0002-scan-limit-access-to-shared-memory-segments-to-current-user.patch b/package/x11vnc/0002-scan-limit-access-to-shared-memory-segments-to-current-user.patch new file mode 100644 index 00000000..e4dbdf18 --- /dev/null +++ b/package/x11vnc/0002-scan-limit-access-to-shared-memory-segments-to-current-user.patch @@ -0,0 +1,25 @@ +From 69eeb9f7baa14ca03b16c9de821f9876def7a36a Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Gu=C3=A9nal=20DAVALAN?= +Date: Wed, 18 Nov 2020 08:40:45 +0100 +Subject: [PATCH] scan: limit access to shared memory segments to current user + +[Retrieved from: +https://github.com/LibVNC/x11vnc/commit/69eeb9f7baa14ca03b16c9de821f9876def7a36a] +Signed-off-by: Fabrice Fontaine +--- + src/scan.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/scan.c b/src/scan.c +index 43e00d2..12994d5 100644 +--- a/src/scan.c ++++ b/src/scan.c +@@ -320,7 +320,7 @@ static int shm_create(XShmSegmentInfo *shm, XImage **ximg_ptr, int w, int h, + + #if HAVE_XSHM + shm->shmid = shmget(IPC_PRIVATE, +- xim->bytes_per_line * xim->height, IPC_CREAT | 0777); ++ xim->bytes_per_line * xim->height, IPC_CREAT | 0600); + + if (shm->shmid == -1) { + rfbErr("shmget(%s) failed.\n", name); diff --git a/package/x11vnc/Config.in b/package/x11vnc/Config.in new file mode 100644 index 00000000..9e91a11a --- /dev/null +++ b/package/x11vnc/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_X11VNC + bool "x11vnc" + depends on BR2_PACKAGE_XORG7 + depends on BR2_USE_MMU # fork() + depends on !BR2_nios2 # libvncserver + select BR2_PACKAGE_LIBVNCSERVER + select BR2_PACKAGE_XLIB_LIBXT + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XLIB_LIBXTST + help + VNC server for X11 display + + http://www.karlrunge.com/x11vnc/ diff --git a/package/x11vnc/x11vnc.hash b/package/x11vnc/x11vnc.hash new file mode 100644 index 00000000..ca0b4896 --- /dev/null +++ b/package/x11vnc/x11vnc.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 885e5b5f5f25eec6f9e4a1e8be3d0ac71a686331ee1cfb442dba391111bd32bd x11vnc-0.9.16.tar.gz +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/x11vnc/x11vnc.mk b/package/x11vnc/x11vnc.mk new file mode 100644 index 00000000..1eda717c --- /dev/null +++ b/package/x11vnc/x11vnc.mk @@ -0,0 +1,70 @@ +################################################################################ +# +# x11vnc +# +################################################################################ + +X11VNC_VERSION = 0.9.16 +X11VNC_SITE = $(call github,LibVNC,x11vnc,$(X11VNC_VERSION)) +# sdl support is not used in x11vnc, but host include / library search paths +# leak in if host has sdl-config +X11VNC_CONF_OPTS = --without-sdl +X11VNC_DEPENDENCIES = xlib_libXt xlib_libXext xlib_libXtst libvncserver +X11VNC_LICENSE = GPL-2.0+ +X11VNC_LICENSE_FILES = COPYING +X11VNC_CPE_ID_VENDOR = x11vnc_project +# 0002-scan-limit-access-to-shared-memory-segments-to-current-user.patch +X11VNC_IGNORE_CVES += CVE-2020-29074 + +# Source coming from github, no configure included +X11VNC_AUTORECONF = YES + +ifeq ($(BR2_PACKAGE_AVAHI_DAEMON)$(BR2_PACKAGE_DBUS),yy) +X11VNC_DEPENDENCIES += avahi dbus +else +X11VNC_CONF_OPTS += --without-avahi +endif + +ifeq ($(BR2_PACKAGE_JPEG),y) +X11VNC_DEPENDENCIES += jpeg +else +X11VNC_CONF_OPTS += --without-jpeg +endif + +ifeq ($(BR2_PACKAGE_OPENSSL),y) +X11VNC_DEPENDENCIES += openssl +else +X11VNC_CONF_OPTS += --without-ssl --without-crypto +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXINERAMA),y) +X11VNC_DEPENDENCIES += xlib_libXinerama +else +X11VNC_CONF_OPTS += --without-xinerama +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXRANDR),y) +X11VNC_DEPENDENCIES += xlib_libXrandr +else +X11VNC_CONF_OPTS += --without-xrandr +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXFIXES),y) +X11VNC_DEPENDENCIES += xlib_libXfixes +else +X11VNC_CONF_OPTS += --without-xfixes +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXDAMAGE),y) +X11VNC_DEPENDENCIES += xlib_libXdamage +else +X11VNC_CONF_OPTS += --without-xdamage +endif + +ifeq ($(BR2_PACKAGE_ZLIB),y) +X11VNC_DEPENDENCIES += zlib +else +X11VNC_CONF_OPTS += --without-zlib +endif + +$(eval $(autotools-package)) diff --git a/package/x264/Config.in b/package/x264/Config.in new file mode 100644 index 00000000..be3ab3f3 --- /dev/null +++ b/package/x264/Config.in @@ -0,0 +1,19 @@ +config BR2_PACKAGE_X264 + bool "x264" + help + x264 is a free software library and application for + encoding video streams into the H.264/MPEG-4 AVC + compression format, and is released under the terms + of the GNU GPL. + + https://www.videolan.org/developers/x264.html + +if BR2_PACKAGE_X264 + +config BR2_PACKAGE_X264_CLI + bool "CLI" + help + Command-line tool to encode video streams into the + H.264/MPEG-4 AVC compression format. + +endif diff --git a/package/x264/x264.hash b/package/x264/x264.hash new file mode 100644 index 00000000..62f2409e --- /dev/null +++ b/package/x264/x264.hash @@ -0,0 +1,4 @@ +# Locally computed +sha256 0bb67d095513391e637b3b47e8efc3ba4603c3844f1b4c2690f4d36da7763055 x264-snapshot-20191217-2245.tar.bz2 +sha256 323f3552b6dc2658ae5a2001a9546f3dbd1ae389f61b814c9adc7e372b43330b x264-0.155.2917+git0a84d98.tar.gz +sha256 32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670 COPYING diff --git a/package/x264/x264.mk b/package/x264/x264.mk new file mode 100644 index 00000000..2a1f9f8c --- /dev/null +++ b/package/x264/x264.mk @@ -0,0 +1,70 @@ +################################################################################ +# +# x264 +# +################################################################################ + +X264_VERSION = 0.155.2917+git0a84d98 +X264_SITE = ftp://10.120.1.5/tmp/others +X264_SOURCE = x264-$(X264_VERSION).tar.gz +X264_LICENSE = GPL-2.0+ +X264_DEPENDENCIES = host-pkgconf +#X264_LICENSE_FILES = COPYING +X264_INSTALL_STAGING = YES +X264_CONF_OPTS = --disable-avs --disable-lavf --disable-swscale + +ifeq ($(BR2_i386)$(BR2_x86_64),y) +# nasm needed for assembly files +X264_DEPENDENCIES += host-nasm +X264_CONF_ENV += AS="$(HOST_DIR)/bin/nasm" +else ifeq ($(BR2_ARM_CPU_ARMV7A)$(BR2_aarch64),y) +# We need to pass gcc as AS, because the ARM assembly files have to be +# preprocessed +X264_CONF_ENV += AS="$(TARGET_CC)" +else +X264_CONF_OPTS += --disable-asm +endif + +ifeq ($(BR2_STATIC_LIBS),) +X264_CONF_OPTS += --enable-pic --enable-shared +endif + +ifeq ($(BR2_PACKAGE_X264_CLI),) +X264_CONF_OPTS += --disable-cli +endif + +ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),) +X264_CONF_OPTS += --disable-thread +endif + +# Even though the configure script is not generated by autoconf, x264 +# uses config.sub/config.guess, so we want up-to-date versions of +# them. +X264_POST_PATCH_HOOKS += UPDATE_CONFIG_HOOK + +# the configure script is not generated by autoconf +define X264_CONFIGURE_CMDS + (cd $(@D); $(TARGET_CONFIGURE_OPTS) $(X264_CONF_ENV) ./configure \ + --prefix=/usr \ + --host="$(GNU_TARGET_NAME)" \ + --cross-prefix="$(TARGET_CROSS)" \ + --disable-ffms \ + --enable-static \ + --disable-opencl \ + $(X264_CONF_OPTS) \ + ) +endef + +define X264_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) +endef + +define X264_INSTALL_STAGING_CMDS + $(TARGET_MAKE_ENV) $(MAKE) DESTDIR="$(STAGING_DIR)" -C $(@D) install +endef + +define X264_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) DESTDIR="$(TARGET_DIR)" -C $(@D) install +endef + +$(eval $(generic-package)) diff --git a/package/x265/0001-fix-gcc-options.patch b/package/x265/0001-fix-gcc-options.patch new file mode 100644 index 00000000..81518212 --- /dev/null +++ b/package/x265/0001-fix-gcc-options.patch @@ -0,0 +1,52 @@ +# HG changeset patch +# User Bertrand Jacquin +# Date 1444431941 -3600 +# Node ID 5c6d2a6f2f9a0534933cc999b3845be4344e1af0 +# Parent b6156a08b1def3584647f26096866c1a0c11e54a +build: Disable -march selection from CMakeLists.txt + +x32 arch as defined on https://sites.google.com/site/x32abi is neither +X86 nor X64, then forcing -march=i686 leads to build failure as wrong +-march is used. + +Forcing -march, -mfloat-abi and -mfpu for ARM is also wrong + +As a global sanity sake, disable all forced -march in CMakeLists + +Backported from upstream pull request: +https://bitbucket.org/multicoreware/x265/pull-requests/21 + +Signed-off-by: Bernd Kuhls + +diff -r 58dddcf01b7d source/CMakeLists.txt +--- a/source/CMakeLists.txt Mon Jan 23 09:50:33 2017 +0530 ++++ b/source/CMakeLists.txt Mon Jan 23 21:03:10 2017 +0100 +@@ -194,28 +194,6 @@ + if(NATIVE_BUILD) + if(INTEL_CXX) + add_definitions(-xhost) +- else() +- add_definitions(-march=native) +- endif() +- elseif(X86 AND NOT X64) +- string(FIND "${CMAKE_CXX_FLAGS}" "-march" marchPos) +- if(marchPos LESS "0") +- add_definitions(-march=i686) +- if(WIN32 AND NOT INTEL_CXX AND NOT CLANG AND +- CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 6.0 AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 7.0) +- add_definitions(-mpreferred-stack-boundary=2) +- endif() +- endif() +- endif() +- if(ARM AND CROSS_COMPILE_ARM) +- set(ARM_ARGS -march=armv6 -mfloat-abi=soft -mfpu=vfp -marm -fPIC) +- elseif(ARM) +- find_package(Neon) +- if(CPU_HAS_NEON) +- set(ARM_ARGS -mcpu=native -mfloat-abi=hard -mfpu=neon -marm -fPIC) +- add_definitions(-DHAVE_NEON) +- else() +- set(ARM_ARGS -mcpu=native -mfloat-abi=hard -mfpu=vfp -marm) + endif() + endif() + add_definitions(${ARM_ARGS}) diff --git a/package/x265/0002-arm-asm-primitives.patch b/package/x265/0002-arm-asm-primitives.patch new file mode 100644 index 00000000..e5004434 --- /dev/null +++ b/package/x265/0002-arm-asm-primitives.patch @@ -0,0 +1,354 @@ +Fixes "arm assembly fail to compile on 1.8" + +Downloaded from upstream bug report: +https://bitbucket.org/multicoreware/x265/issues/406 + +Signed-off-by: Bernd Kuhls + +--- ./source/common/arm/asm-primitives.cpp.orig 2018-05-21 02:33:10.000000000 -0600 ++++ ./source/common/arm/asm-primitives.cpp 2018-05-28 20:38:37.302378303 -0600 +@@ -48,77 +48,77 @@ void setupAssemblyPrimitives(EncoderPrim + p.ssim_4x4x2_core = PFX(ssim_4x4x2_core_neon); + + // addAvg +- p.pu[LUMA_4x4].addAvg = PFX(addAvg_4x4_neon); +- p.pu[LUMA_4x8].addAvg = PFX(addAvg_4x8_neon); +- p.pu[LUMA_4x16].addAvg = PFX(addAvg_4x16_neon); +- p.pu[LUMA_8x4].addAvg = PFX(addAvg_8x4_neon); +- p.pu[LUMA_8x8].addAvg = PFX(addAvg_8x8_neon); +- p.pu[LUMA_8x16].addAvg = PFX(addAvg_8x16_neon); +- p.pu[LUMA_8x32].addAvg = PFX(addAvg_8x32_neon); +- p.pu[LUMA_12x16].addAvg = PFX(addAvg_12x16_neon); +- p.pu[LUMA_16x4].addAvg = PFX(addAvg_16x4_neon); +- p.pu[LUMA_16x8].addAvg = PFX(addAvg_16x8_neon); +- p.pu[LUMA_16x12].addAvg = PFX(addAvg_16x12_neon); +- p.pu[LUMA_16x16].addAvg = PFX(addAvg_16x16_neon); +- p.pu[LUMA_16x32].addAvg = PFX(addAvg_16x32_neon); +- p.pu[LUMA_16x64].addAvg = PFX(addAvg_16x64_neon); +- p.pu[LUMA_24x32].addAvg = PFX(addAvg_24x32_neon); +- p.pu[LUMA_32x8].addAvg = PFX(addAvg_32x8_neon); +- p.pu[LUMA_32x16].addAvg = PFX(addAvg_32x16_neon); +- p.pu[LUMA_32x24].addAvg = PFX(addAvg_32x24_neon); +- p.pu[LUMA_32x32].addAvg = PFX(addAvg_32x32_neon); +- p.pu[LUMA_32x64].addAvg = PFX(addAvg_32x64_neon); +- p.pu[LUMA_48x64].addAvg = PFX(addAvg_48x64_neon); +- p.pu[LUMA_64x16].addAvg = PFX(addAvg_64x16_neon); +- p.pu[LUMA_64x32].addAvg = PFX(addAvg_64x32_neon); +- p.pu[LUMA_64x48].addAvg = PFX(addAvg_64x48_neon); +- p.pu[LUMA_64x64].addAvg = PFX(addAvg_64x64_neon); ++ p.pu[LUMA_4x4].addAvg[ALIGNED] = PFX(addAvg_4x4_neon); ++ p.pu[LUMA_4x8].addAvg[ALIGNED] = PFX(addAvg_4x8_neon); ++ p.pu[LUMA_4x16].addAvg[ALIGNED] = PFX(addAvg_4x16_neon); ++ p.pu[LUMA_8x4].addAvg[ALIGNED] = PFX(addAvg_8x4_neon); ++ p.pu[LUMA_8x8].addAvg[ALIGNED] = PFX(addAvg_8x8_neon); ++ p.pu[LUMA_8x16].addAvg[ALIGNED] = PFX(addAvg_8x16_neon); ++ p.pu[LUMA_8x32].addAvg[ALIGNED] = PFX(addAvg_8x32_neon); ++ p.pu[LUMA_12x16].addAvg[ALIGNED] = PFX(addAvg_12x16_neon); ++ p.pu[LUMA_16x4].addAvg[ALIGNED] = PFX(addAvg_16x4_neon); ++ p.pu[LUMA_16x8].addAvg[ALIGNED] = PFX(addAvg_16x8_neon); ++ p.pu[LUMA_16x12].addAvg[ALIGNED] = PFX(addAvg_16x12_neon); ++ p.pu[LUMA_16x16].addAvg[ALIGNED] = PFX(addAvg_16x16_neon); ++ p.pu[LUMA_16x32].addAvg[ALIGNED] = PFX(addAvg_16x32_neon); ++ p.pu[LUMA_16x64].addAvg[ALIGNED] = PFX(addAvg_16x64_neon); ++ p.pu[LUMA_24x32].addAvg[ALIGNED] = PFX(addAvg_24x32_neon); ++ p.pu[LUMA_32x8].addAvg[ALIGNED] = PFX(addAvg_32x8_neon); ++ p.pu[LUMA_32x16].addAvg[ALIGNED] = PFX(addAvg_32x16_neon); ++ p.pu[LUMA_32x24].addAvg[ALIGNED] = PFX(addAvg_32x24_neon); ++ p.pu[LUMA_32x32].addAvg[ALIGNED] = PFX(addAvg_32x32_neon); ++ p.pu[LUMA_32x64].addAvg[ALIGNED] = PFX(addAvg_32x64_neon); ++ p.pu[LUMA_48x64].addAvg[ALIGNED] = PFX(addAvg_48x64_neon); ++ p.pu[LUMA_64x16].addAvg[ALIGNED] = PFX(addAvg_64x16_neon); ++ p.pu[LUMA_64x32].addAvg[ALIGNED] = PFX(addAvg_64x32_neon); ++ p.pu[LUMA_64x48].addAvg[ALIGNED] = PFX(addAvg_64x48_neon); ++ p.pu[LUMA_64x64].addAvg[ALIGNED] = PFX(addAvg_64x64_neon); + + // chroma addAvg +- p.chroma[X265_CSP_I420].pu[CHROMA_420_4x2].addAvg = PFX(addAvg_4x2_neon); +- p.chroma[X265_CSP_I420].pu[CHROMA_420_4x4].addAvg = PFX(addAvg_4x4_neon); +- p.chroma[X265_CSP_I420].pu[CHROMA_420_4x8].addAvg = PFX(addAvg_4x8_neon); +- p.chroma[X265_CSP_I420].pu[CHROMA_420_4x16].addAvg = PFX(addAvg_4x16_neon); +- p.chroma[X265_CSP_I420].pu[CHROMA_420_6x8].addAvg = PFX(addAvg_6x8_neon); +- p.chroma[X265_CSP_I420].pu[CHROMA_420_8x2].addAvg = PFX(addAvg_8x2_neon); +- p.chroma[X265_CSP_I420].pu[CHROMA_420_8x4].addAvg = PFX(addAvg_8x4_neon); +- p.chroma[X265_CSP_I420].pu[CHROMA_420_8x6].addAvg = PFX(addAvg_8x6_neon); +- p.chroma[X265_CSP_I420].pu[CHROMA_420_8x8].addAvg = PFX(addAvg_8x8_neon); +- p.chroma[X265_CSP_I420].pu[CHROMA_420_8x16].addAvg = PFX(addAvg_8x16_neon); +- p.chroma[X265_CSP_I420].pu[CHROMA_420_8x32].addAvg = PFX(addAvg_8x32_neon); +- p.chroma[X265_CSP_I420].pu[CHROMA_420_12x16].addAvg = PFX(addAvg_12x16_neon); +- p.chroma[X265_CSP_I420].pu[CHROMA_420_16x4].addAvg = PFX(addAvg_16x4_neon); +- p.chroma[X265_CSP_I420].pu[CHROMA_420_16x8].addAvg = PFX(addAvg_16x8_neon); +- p.chroma[X265_CSP_I420].pu[CHROMA_420_16x12].addAvg = PFX(addAvg_16x12_neon); +- p.chroma[X265_CSP_I420].pu[CHROMA_420_16x16].addAvg = PFX(addAvg_16x16_neon); +- p.chroma[X265_CSP_I420].pu[CHROMA_420_16x32].addAvg = PFX(addAvg_16x32_neon); +- p.chroma[X265_CSP_I420].pu[CHROMA_420_24x32].addAvg = PFX(addAvg_24x32_neon); +- p.chroma[X265_CSP_I420].pu[CHROMA_420_32x8].addAvg = PFX(addAvg_32x8_neon); +- p.chroma[X265_CSP_I420].pu[CHROMA_420_32x16].addAvg = PFX(addAvg_32x16_neon); +- p.chroma[X265_CSP_I420].pu[CHROMA_420_32x24].addAvg = PFX(addAvg_32x24_neon); +- p.chroma[X265_CSP_I420].pu[CHROMA_420_32x32].addAvg = PFX(addAvg_32x32_neon); +- +- p.chroma[X265_CSP_I422].pu[CHROMA_422_4x8].addAvg = PFX(addAvg_4x8_neon); +- p.chroma[X265_CSP_I422].pu[CHROMA_422_4x16].addAvg = PFX(addAvg_4x16_neon); +- p.chroma[X265_CSP_I422].pu[CHROMA_422_4x32].addAvg = PFX(addAvg_4x32_neon); +- p.chroma[X265_CSP_I422].pu[CHROMA_422_6x16].addAvg = PFX(addAvg_6x16_neon); +- p.chroma[X265_CSP_I422].pu[CHROMA_422_8x4].addAvg = PFX(addAvg_8x4_neon); +- p.chroma[X265_CSP_I422].pu[CHROMA_422_8x8].addAvg = PFX(addAvg_8x8_neon); +- p.chroma[X265_CSP_I422].pu[CHROMA_422_8x12].addAvg = PFX(addAvg_8x12_neon); +- p.chroma[X265_CSP_I422].pu[CHROMA_422_8x16].addAvg = PFX(addAvg_8x16_neon); +- p.chroma[X265_CSP_I422].pu[CHROMA_422_8x32].addAvg = PFX(addAvg_8x32_neon); +- p.chroma[X265_CSP_I422].pu[CHROMA_422_8x64].addAvg = PFX(addAvg_8x64_neon); +- p.chroma[X265_CSP_I422].pu[CHROMA_422_12x32].addAvg = PFX(addAvg_12x32_neon); +- p.chroma[X265_CSP_I422].pu[CHROMA_422_16x8].addAvg = PFX(addAvg_16x8_neon); +- p.chroma[X265_CSP_I422].pu[CHROMA_422_16x16].addAvg = PFX(addAvg_16x16_neon); +- p.chroma[X265_CSP_I422].pu[CHROMA_422_16x24].addAvg = PFX(addAvg_16x24_neon); +- p.chroma[X265_CSP_I422].pu[CHROMA_422_16x32].addAvg = PFX(addAvg_16x32_neon); +- p.chroma[X265_CSP_I422].pu[CHROMA_422_16x64].addAvg = PFX(addAvg_16x64_neon); +- p.chroma[X265_CSP_I422].pu[CHROMA_422_24x64].addAvg = PFX(addAvg_24x64_neon); +- p.chroma[X265_CSP_I422].pu[CHROMA_422_32x16].addAvg = PFX(addAvg_32x16_neon); +- p.chroma[X265_CSP_I422].pu[CHROMA_422_32x32].addAvg = PFX(addAvg_32x32_neon); +- p.chroma[X265_CSP_I422].pu[CHROMA_422_32x48].addAvg = PFX(addAvg_32x48_neon); +- p.chroma[X265_CSP_I422].pu[CHROMA_422_32x64].addAvg = PFX(addAvg_32x64_neon); ++ p.chroma[X265_CSP_I420].pu[CHROMA_420_4x2].addAvg[ALIGNED] = PFX(addAvg_4x2_neon); ++ p.chroma[X265_CSP_I420].pu[CHROMA_420_4x4].addAvg[ALIGNED] = PFX(addAvg_4x4_neon); ++ p.chroma[X265_CSP_I420].pu[CHROMA_420_4x8].addAvg[ALIGNED] = PFX(addAvg_4x8_neon); ++ p.chroma[X265_CSP_I420].pu[CHROMA_420_4x16].addAvg[ALIGNED] = PFX(addAvg_4x16_neon); ++ p.chroma[X265_CSP_I420].pu[CHROMA_420_6x8].addAvg[ALIGNED] = PFX(addAvg_6x8_neon); ++ p.chroma[X265_CSP_I420].pu[CHROMA_420_8x2].addAvg[ALIGNED] = PFX(addAvg_8x2_neon); ++ p.chroma[X265_CSP_I420].pu[CHROMA_420_8x4].addAvg[ALIGNED] = PFX(addAvg_8x4_neon); ++ p.chroma[X265_CSP_I420].pu[CHROMA_420_8x6].addAvg[ALIGNED] = PFX(addAvg_8x6_neon); ++ p.chroma[X265_CSP_I420].pu[CHROMA_420_8x8].addAvg[ALIGNED] = PFX(addAvg_8x8_neon); ++ p.chroma[X265_CSP_I420].pu[CHROMA_420_8x16].addAvg[ALIGNED] = PFX(addAvg_8x16_neon); ++ p.chroma[X265_CSP_I420].pu[CHROMA_420_8x32].addAvg[ALIGNED] = PFX(addAvg_8x32_neon); ++ p.chroma[X265_CSP_I420].pu[CHROMA_420_12x16].addAvg[ALIGNED] = PFX(addAvg_12x16_neon); ++ p.chroma[X265_CSP_I420].pu[CHROMA_420_16x4].addAvg[ALIGNED] = PFX(addAvg_16x4_neon); ++ p.chroma[X265_CSP_I420].pu[CHROMA_420_16x8].addAvg[ALIGNED] = PFX(addAvg_16x8_neon); ++ p.chroma[X265_CSP_I420].pu[CHROMA_420_16x12].addAvg[ALIGNED] = PFX(addAvg_16x12_neon); ++ p.chroma[X265_CSP_I420].pu[CHROMA_420_16x16].addAvg[ALIGNED] = PFX(addAvg_16x16_neon); ++ p.chroma[X265_CSP_I420].pu[CHROMA_420_16x32].addAvg[ALIGNED] = PFX(addAvg_16x32_neon); ++ p.chroma[X265_CSP_I420].pu[CHROMA_420_24x32].addAvg[ALIGNED] = PFX(addAvg_24x32_neon); ++ p.chroma[X265_CSP_I420].pu[CHROMA_420_32x8].addAvg[ALIGNED] = PFX(addAvg_32x8_neon); ++ p.chroma[X265_CSP_I420].pu[CHROMA_420_32x16].addAvg[ALIGNED] = PFX(addAvg_32x16_neon); ++ p.chroma[X265_CSP_I420].pu[CHROMA_420_32x24].addAvg[ALIGNED] = PFX(addAvg_32x24_neon); ++ p.chroma[X265_CSP_I420].pu[CHROMA_420_32x32].addAvg[ALIGNED] = PFX(addAvg_32x32_neon); ++ ++ p.chroma[X265_CSP_I422].pu[CHROMA_422_4x8].addAvg[ALIGNED] = PFX(addAvg_4x8_neon); ++ p.chroma[X265_CSP_I422].pu[CHROMA_422_4x16].addAvg[ALIGNED] = PFX(addAvg_4x16_neon); ++ p.chroma[X265_CSP_I422].pu[CHROMA_422_4x32].addAvg[ALIGNED] = PFX(addAvg_4x32_neon); ++ p.chroma[X265_CSP_I422].pu[CHROMA_422_6x16].addAvg[ALIGNED] = PFX(addAvg_6x16_neon); ++ p.chroma[X265_CSP_I422].pu[CHROMA_422_8x4].addAvg[ALIGNED] = PFX(addAvg_8x4_neon); ++ p.chroma[X265_CSP_I422].pu[CHROMA_422_8x8].addAvg[ALIGNED] = PFX(addAvg_8x8_neon); ++ p.chroma[X265_CSP_I422].pu[CHROMA_422_8x12].addAvg[ALIGNED] = PFX(addAvg_8x12_neon); ++ p.chroma[X265_CSP_I422].pu[CHROMA_422_8x16].addAvg[ALIGNED] = PFX(addAvg_8x16_neon); ++ p.chroma[X265_CSP_I422].pu[CHROMA_422_8x32].addAvg[ALIGNED] = PFX(addAvg_8x32_neon); ++ p.chroma[X265_CSP_I422].pu[CHROMA_422_8x64].addAvg[ALIGNED] = PFX(addAvg_8x64_neon); ++ p.chroma[X265_CSP_I422].pu[CHROMA_422_12x32].addAvg[ALIGNED] = PFX(addAvg_12x32_neon); ++ p.chroma[X265_CSP_I422].pu[CHROMA_422_16x8].addAvg[ALIGNED] = PFX(addAvg_16x8_neon); ++ p.chroma[X265_CSP_I422].pu[CHROMA_422_16x16].addAvg[ALIGNED] = PFX(addAvg_16x16_neon); ++ p.chroma[X265_CSP_I422].pu[CHROMA_422_16x24].addAvg[ALIGNED] = PFX(addAvg_16x24_neon); ++ p.chroma[X265_CSP_I422].pu[CHROMA_422_16x32].addAvg[ALIGNED] = PFX(addAvg_16x32_neon); ++ p.chroma[X265_CSP_I422].pu[CHROMA_422_16x64].addAvg[ALIGNED] = PFX(addAvg_16x64_neon); ++ p.chroma[X265_CSP_I422].pu[CHROMA_422_24x64].addAvg[ALIGNED] = PFX(addAvg_24x64_neon); ++ p.chroma[X265_CSP_I422].pu[CHROMA_422_32x16].addAvg[ALIGNED] = PFX(addAvg_32x16_neon); ++ p.chroma[X265_CSP_I422].pu[CHROMA_422_32x32].addAvg[ALIGNED] = PFX(addAvg_32x32_neon); ++ p.chroma[X265_CSP_I422].pu[CHROMA_422_32x48].addAvg[ALIGNED] = PFX(addAvg_32x48_neon); ++ p.chroma[X265_CSP_I422].pu[CHROMA_422_32x64].addAvg[ALIGNED] = PFX(addAvg_32x64_neon); + + // quant + p.quant = PFX(quant_neon); +@@ -402,7 +402,7 @@ void setupAssemblyPrimitives(EncoderPrim + p.scale2D_64to32 = PFX(scale2D_64to32_neon); + + // scale1D_128to64 +- p.scale1D_128to64 = PFX(scale1D_128to64_neon); ++ p.scale1D_128to64[ALIGNED] = PFX(scale1D_128to64_neon); + + // copy_count + p.cu[BLOCK_4x4].copy_cnt = PFX(copy_cnt_4_neon); +@@ -411,37 +411,37 @@ void setupAssemblyPrimitives(EncoderPrim + p.cu[BLOCK_32x32].copy_cnt = PFX(copy_cnt_32_neon); + + // filterPixelToShort +- p.pu[LUMA_4x4].convert_p2s = PFX(filterPixelToShort_4x4_neon); +- p.pu[LUMA_4x8].convert_p2s = PFX(filterPixelToShort_4x8_neon); +- p.pu[LUMA_4x16].convert_p2s = PFX(filterPixelToShort_4x16_neon); +- p.pu[LUMA_8x4].convert_p2s = PFX(filterPixelToShort_8x4_neon); +- p.pu[LUMA_8x8].convert_p2s = PFX(filterPixelToShort_8x8_neon); +- p.pu[LUMA_8x16].convert_p2s = PFX(filterPixelToShort_8x16_neon); +- p.pu[LUMA_8x32].convert_p2s = PFX(filterPixelToShort_8x32_neon); +- p.pu[LUMA_12x16].convert_p2s = PFX(filterPixelToShort_12x16_neon); +- p.pu[LUMA_16x4].convert_p2s = PFX(filterPixelToShort_16x4_neon); +- p.pu[LUMA_16x8].convert_p2s = PFX(filterPixelToShort_16x8_neon); +- p.pu[LUMA_16x12].convert_p2s = PFX(filterPixelToShort_16x12_neon); +- p.pu[LUMA_16x16].convert_p2s = PFX(filterPixelToShort_16x16_neon); +- p.pu[LUMA_16x32].convert_p2s = PFX(filterPixelToShort_16x32_neon); +- p.pu[LUMA_16x64].convert_p2s = PFX(filterPixelToShort_16x64_neon); +- p.pu[LUMA_24x32].convert_p2s = PFX(filterPixelToShort_24x32_neon); +- p.pu[LUMA_32x8].convert_p2s = PFX(filterPixelToShort_32x8_neon); +- p.pu[LUMA_32x16].convert_p2s = PFX(filterPixelToShort_32x16_neon); +- p.pu[LUMA_32x24].convert_p2s = PFX(filterPixelToShort_32x24_neon); +- p.pu[LUMA_32x32].convert_p2s = PFX(filterPixelToShort_32x32_neon); +- p.pu[LUMA_32x64].convert_p2s = PFX(filterPixelToShort_32x64_neon); +- p.pu[LUMA_48x64].convert_p2s = PFX(filterPixelToShort_48x64_neon); +- p.pu[LUMA_64x16].convert_p2s = PFX(filterPixelToShort_64x16_neon); +- p.pu[LUMA_64x32].convert_p2s = PFX(filterPixelToShort_64x32_neon); +- p.pu[LUMA_64x48].convert_p2s = PFX(filterPixelToShort_64x48_neon); +- p.pu[LUMA_64x64].convert_p2s = PFX(filterPixelToShort_64x64_neon); ++ p.pu[LUMA_4x4].convert_p2s[ALIGNED] = PFX(filterPixelToShort_4x4_neon); ++ p.pu[LUMA_4x8].convert_p2s[ALIGNED] = PFX(filterPixelToShort_4x8_neon); ++ p.pu[LUMA_4x16].convert_p2s[ALIGNED] = PFX(filterPixelToShort_4x16_neon); ++ p.pu[LUMA_8x4].convert_p2s[ALIGNED] = PFX(filterPixelToShort_8x4_neon); ++ p.pu[LUMA_8x8].convert_p2s[ALIGNED] = PFX(filterPixelToShort_8x8_neon); ++ p.pu[LUMA_8x16].convert_p2s[ALIGNED] = PFX(filterPixelToShort_8x16_neon); ++ p.pu[LUMA_8x32].convert_p2s[ALIGNED] = PFX(filterPixelToShort_8x32_neon); ++ p.pu[LUMA_12x16].convert_p2s[ALIGNED] = PFX(filterPixelToShort_12x16_neon); ++ p.pu[LUMA_16x4].convert_p2s[ALIGNED] = PFX(filterPixelToShort_16x4_neon); ++ p.pu[LUMA_16x8].convert_p2s[ALIGNED] = PFX(filterPixelToShort_16x8_neon); ++ p.pu[LUMA_16x12].convert_p2s[ALIGNED] = PFX(filterPixelToShort_16x12_neon); ++ p.pu[LUMA_16x16].convert_p2s[ALIGNED] = PFX(filterPixelToShort_16x16_neon); ++ p.pu[LUMA_16x32].convert_p2s[ALIGNED] = PFX(filterPixelToShort_16x32_neon); ++ p.pu[LUMA_16x64].convert_p2s[ALIGNED] = PFX(filterPixelToShort_16x64_neon); ++ p.pu[LUMA_24x32].convert_p2s[ALIGNED] = PFX(filterPixelToShort_24x32_neon); ++ p.pu[LUMA_32x8].convert_p2s[ALIGNED] = PFX(filterPixelToShort_32x8_neon); ++ p.pu[LUMA_32x16].convert_p2s[ALIGNED] = PFX(filterPixelToShort_32x16_neon); ++ p.pu[LUMA_32x24].convert_p2s[ALIGNED] = PFX(filterPixelToShort_32x24_neon); ++ p.pu[LUMA_32x32].convert_p2s[ALIGNED] = PFX(filterPixelToShort_32x32_neon); ++ p.pu[LUMA_32x64].convert_p2s[ALIGNED] = PFX(filterPixelToShort_32x64_neon); ++ p.pu[LUMA_48x64].convert_p2s[ALIGNED] = PFX(filterPixelToShort_48x64_neon); ++ p.pu[LUMA_64x16].convert_p2s[ALIGNED] = PFX(filterPixelToShort_64x16_neon); ++ p.pu[LUMA_64x32].convert_p2s[ALIGNED] = PFX(filterPixelToShort_64x32_neon); ++ p.pu[LUMA_64x48].convert_p2s[ALIGNED] = PFX(filterPixelToShort_64x48_neon); ++ p.pu[LUMA_64x64].convert_p2s[ALIGNED] = PFX(filterPixelToShort_64x64_neon); + + // Block_fill +- p.cu[BLOCK_4x4].blockfill_s = PFX(blockfill_s_4x4_neon); +- p.cu[BLOCK_8x8].blockfill_s = PFX(blockfill_s_8x8_neon); +- p.cu[BLOCK_16x16].blockfill_s = PFX(blockfill_s_16x16_neon); +- p.cu[BLOCK_32x32].blockfill_s = PFX(blockfill_s_32x32_neon); ++ p.cu[BLOCK_4x4].blockfill_s[ALIGNED] = PFX(blockfill_s_4x4_neon); ++ p.cu[BLOCK_8x8].blockfill_s[ALIGNED] = PFX(blockfill_s_8x8_neon); ++ p.cu[BLOCK_16x16].blockfill_s[ALIGNED] = PFX(blockfill_s_16x16_neon); ++ p.cu[BLOCK_32x32].blockfill_s[ALIGNED] = PFX(blockfill_s_32x32_neon); + + // Blockcopy_ss + p.cu[BLOCK_4x4].copy_ss = PFX(blockcopy_ss_4x4_neon); +@@ -495,21 +495,21 @@ void setupAssemblyPrimitives(EncoderPrim + p.chroma[X265_CSP_I422].cu[BLOCK_422_32x64].copy_sp = PFX(blockcopy_sp_32x64_neon); + + // pixel_add_ps +- p.cu[BLOCK_4x4].add_ps = PFX(pixel_add_ps_4x4_neon); +- p.cu[BLOCK_8x8].add_ps = PFX(pixel_add_ps_8x8_neon); +- p.cu[BLOCK_16x16].add_ps = PFX(pixel_add_ps_16x16_neon); +- p.cu[BLOCK_32x32].add_ps = PFX(pixel_add_ps_32x32_neon); +- p.cu[BLOCK_64x64].add_ps = PFX(pixel_add_ps_64x64_neon); ++ p.cu[BLOCK_4x4].add_ps[ALIGNED] = PFX(pixel_add_ps_4x4_neon); ++ p.cu[BLOCK_8x8].add_ps[ALIGNED] = PFX(pixel_add_ps_8x8_neon); ++ p.cu[BLOCK_16x16].add_ps[ALIGNED] = PFX(pixel_add_ps_16x16_neon); ++ p.cu[BLOCK_32x32].add_ps[ALIGNED] = PFX(pixel_add_ps_32x32_neon); ++ p.cu[BLOCK_64x64].add_ps[ALIGNED] = PFX(pixel_add_ps_64x64_neon); + + // chroma add_ps +- p.chroma[X265_CSP_I420].cu[BLOCK_420_4x4].add_ps = PFX(pixel_add_ps_4x4_neon); +- p.chroma[X265_CSP_I420].cu[BLOCK_420_8x8].add_ps = PFX(pixel_add_ps_8x8_neon); +- p.chroma[X265_CSP_I420].cu[BLOCK_420_16x16].add_ps = PFX(pixel_add_ps_16x16_neon); +- p.chroma[X265_CSP_I420].cu[BLOCK_420_32x32].add_ps = PFX(pixel_add_ps_32x32_neon); +- p.chroma[X265_CSP_I422].cu[BLOCK_422_4x8].add_ps = PFX(pixel_add_ps_4x8_neon); +- p.chroma[X265_CSP_I422].cu[BLOCK_422_8x16].add_ps = PFX(pixel_add_ps_8x16_neon); +- p.chroma[X265_CSP_I422].cu[BLOCK_422_16x32].add_ps = PFX(pixel_add_ps_16x32_neon); +- p.chroma[X265_CSP_I422].cu[BLOCK_422_32x64].add_ps = PFX(pixel_add_ps_32x64_neon); ++ p.chroma[X265_CSP_I420].cu[BLOCK_420_4x4].add_ps[ALIGNED] = PFX(pixel_add_ps_4x4_neon); ++ p.chroma[X265_CSP_I420].cu[BLOCK_420_8x8].add_ps[ALIGNED] = PFX(pixel_add_ps_8x8_neon); ++ p.chroma[X265_CSP_I420].cu[BLOCK_420_16x16].add_ps[ALIGNED] = PFX(pixel_add_ps_16x16_neon); ++ p.chroma[X265_CSP_I420].cu[BLOCK_420_32x32].add_ps[ALIGNED] = PFX(pixel_add_ps_32x32_neon); ++ p.chroma[X265_CSP_I422].cu[BLOCK_422_4x8].add_ps[ALIGNED] = PFX(pixel_add_ps_4x8_neon); ++ p.chroma[X265_CSP_I422].cu[BLOCK_422_8x16].add_ps[ALIGNED] = PFX(pixel_add_ps_8x16_neon); ++ p.chroma[X265_CSP_I422].cu[BLOCK_422_16x32].add_ps[ALIGNED] = PFX(pixel_add_ps_16x32_neon); ++ p.chroma[X265_CSP_I422].cu[BLOCK_422_32x64].add_ps[ALIGNED] = PFX(pixel_add_ps_32x64_neon); + + // cpy2Dto1D_shr + p.cu[BLOCK_4x4].cpy2Dto1D_shr = PFX(cpy2Dto1D_shr_4x4_neon); +@@ -518,10 +518,10 @@ void setupAssemblyPrimitives(EncoderPrim + p.cu[BLOCK_32x32].cpy2Dto1D_shr = PFX(cpy2Dto1D_shr_32x32_neon); + + // ssd_s +- p.cu[BLOCK_4x4].ssd_s = PFX(pixel_ssd_s_4x4_neon); +- p.cu[BLOCK_8x8].ssd_s = PFX(pixel_ssd_s_8x8_neon); +- p.cu[BLOCK_16x16].ssd_s = PFX(pixel_ssd_s_16x16_neon); +- p.cu[BLOCK_32x32].ssd_s = PFX(pixel_ssd_s_32x32_neon); ++ p.cu[BLOCK_4x4].ssd_s[ALIGNED] = PFX(pixel_ssd_s_4x4_neon); ++ p.cu[BLOCK_8x8].ssd_s[ALIGNED] = PFX(pixel_ssd_s_8x8_neon); ++ p.cu[BLOCK_16x16].ssd_s[ALIGNED] = PFX(pixel_ssd_s_16x16_neon); ++ p.cu[BLOCK_32x32].ssd_s[ALIGNED] = PFX(pixel_ssd_s_32x32_neon); + + // sse_ss + p.cu[BLOCK_4x4].sse_ss = PFX(pixel_sse_ss_4x4_neon); +@@ -548,10 +548,10 @@ void setupAssemblyPrimitives(EncoderPrim + p.chroma[X265_CSP_I422].cu[BLOCK_422_32x64].sub_ps = PFX(pixel_sub_ps_32x64_neon); + + // calc_Residual +- p.cu[BLOCK_4x4].calcresidual = PFX(getResidual4_neon); +- p.cu[BLOCK_8x8].calcresidual = PFX(getResidual8_neon); +- p.cu[BLOCK_16x16].calcresidual = PFX(getResidual16_neon); +- p.cu[BLOCK_32x32].calcresidual = PFX(getResidual32_neon); ++ p.cu[BLOCK_4x4].calcresidual[ALIGNED] = PFX(getResidual4_neon); ++ p.cu[BLOCK_8x8].calcresidual[ALIGNED] = PFX(getResidual8_neon); ++ p.cu[BLOCK_16x16].calcresidual[ALIGNED] = PFX(getResidual16_neon); ++ p.cu[BLOCK_32x32].calcresidual[ALIGNED] = PFX(getResidual32_neon); + + // sse_pp + p.cu[BLOCK_4x4].sse_pp = PFX(pixel_sse_pp_4x4_neon); +@@ -722,31 +722,31 @@ void setupAssemblyPrimitives(EncoderPrim + p.pu[LUMA_64x64].sad_x4 = PFX(sad_x4_64x64_neon); + + // pixel_avg_pp +- p.pu[LUMA_4x4].pixelavg_pp = PFX(pixel_avg_pp_4x4_neon); +- p.pu[LUMA_4x8].pixelavg_pp = PFX(pixel_avg_pp_4x8_neon); +- p.pu[LUMA_4x16].pixelavg_pp = PFX(pixel_avg_pp_4x16_neon); +- p.pu[LUMA_8x4].pixelavg_pp = PFX(pixel_avg_pp_8x4_neon); +- p.pu[LUMA_8x8].pixelavg_pp = PFX(pixel_avg_pp_8x8_neon); +- p.pu[LUMA_8x16].pixelavg_pp = PFX(pixel_avg_pp_8x16_neon); +- p.pu[LUMA_8x32].pixelavg_pp = PFX(pixel_avg_pp_8x32_neon); +- p.pu[LUMA_12x16].pixelavg_pp = PFX(pixel_avg_pp_12x16_neon); +- p.pu[LUMA_16x4].pixelavg_pp = PFX(pixel_avg_pp_16x4_neon); +- p.pu[LUMA_16x8].pixelavg_pp = PFX(pixel_avg_pp_16x8_neon); +- p.pu[LUMA_16x12].pixelavg_pp = PFX(pixel_avg_pp_16x12_neon); +- p.pu[LUMA_16x16].pixelavg_pp = PFX(pixel_avg_pp_16x16_neon); +- p.pu[LUMA_16x32].pixelavg_pp = PFX(pixel_avg_pp_16x32_neon); +- p.pu[LUMA_16x64].pixelavg_pp = PFX(pixel_avg_pp_16x64_neon); +- p.pu[LUMA_24x32].pixelavg_pp = PFX(pixel_avg_pp_24x32_neon); +- p.pu[LUMA_32x8].pixelavg_pp = PFX(pixel_avg_pp_32x8_neon); +- p.pu[LUMA_32x16].pixelavg_pp = PFX(pixel_avg_pp_32x16_neon); +- p.pu[LUMA_32x24].pixelavg_pp = PFX(pixel_avg_pp_32x24_neon); +- p.pu[LUMA_32x32].pixelavg_pp = PFX(pixel_avg_pp_32x32_neon); +- p.pu[LUMA_32x64].pixelavg_pp = PFX(pixel_avg_pp_32x64_neon); +- p.pu[LUMA_48x64].pixelavg_pp = PFX(pixel_avg_pp_48x64_neon); +- p.pu[LUMA_64x16].pixelavg_pp = PFX(pixel_avg_pp_64x16_neon); +- p.pu[LUMA_64x32].pixelavg_pp = PFX(pixel_avg_pp_64x32_neon); +- p.pu[LUMA_64x48].pixelavg_pp = PFX(pixel_avg_pp_64x48_neon); +- p.pu[LUMA_64x64].pixelavg_pp = PFX(pixel_avg_pp_64x64_neon); ++ p.pu[LUMA_4x4].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_4x4_neon); ++ p.pu[LUMA_4x8].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_4x8_neon); ++ p.pu[LUMA_4x16].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_4x16_neon); ++ p.pu[LUMA_8x4].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_8x4_neon); ++ p.pu[LUMA_8x8].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_8x8_neon); ++ p.pu[LUMA_8x16].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_8x16_neon); ++ p.pu[LUMA_8x32].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_8x32_neon); ++ p.pu[LUMA_12x16].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_12x16_neon); ++ p.pu[LUMA_16x4].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_16x4_neon); ++ p.pu[LUMA_16x8].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_16x8_neon); ++ p.pu[LUMA_16x12].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_16x12_neon); ++ p.pu[LUMA_16x16].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_16x16_neon); ++ p.pu[LUMA_16x32].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_16x32_neon); ++ p.pu[LUMA_16x64].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_16x64_neon); ++ p.pu[LUMA_24x32].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_24x32_neon); ++ p.pu[LUMA_32x8].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_32x8_neon); ++ p.pu[LUMA_32x16].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_32x16_neon); ++ p.pu[LUMA_32x24].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_32x24_neon); ++ p.pu[LUMA_32x32].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_32x32_neon); ++ p.pu[LUMA_32x64].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_32x64_neon); ++ p.pu[LUMA_48x64].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_48x64_neon); ++ p.pu[LUMA_64x16].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_64x16_neon); ++ p.pu[LUMA_64x32].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_64x32_neon); ++ p.pu[LUMA_64x48].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_64x48_neon); ++ p.pu[LUMA_64x64].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_64x64_neon); + + // planecopy + p.planecopy_cp = PFX(pixel_planecopy_cp_neon); diff --git a/package/x265/Config.in b/package/x265/Config.in new file mode 100644 index 00000000..180931db --- /dev/null +++ b/package/x265/Config.in @@ -0,0 +1,29 @@ +config BR2_PACKAGE_X265 + bool "x265" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_STATIC_LIBS # dlfcn + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + help + x265 is an open source free software and library for + encoding video using the High Efficiency Video Coding + (HEVC/H.265) standard. x265 is offered under either the GNU + General Public License (GPL) 2 license or a commercial + license, similar to the x264 project. + + https://bitbucket.org/multicoreware/x265/wiki/Home + +if BR2_PACKAGE_X265 + +config BR2_PACKAGE_X265_CLI + bool "CLI" + help + Command-line tool to encode video streams into the + H.265/HEVC compression format. + +endif + +comment "x265 needs a toolchain w/ C++, threads, dynamic library" + depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || \ + !BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 diff --git a/package/x265/x265.hash b/package/x265/x265.hash new file mode 100644 index 00000000..3d70ac0c --- /dev/null +++ b/package/x265/x265.hash @@ -0,0 +1,5 @@ +# From https://mailman.videolan.org/pipermail/x265-devel/2020-February/012880.html +md5 0c8c747b59b5411dea8cf557554636c1 x265_3.3.tar.gz +# Locally generated +sha256 f26e148ed1f4dfb33fd1eb3ff5e60e08078d1b2017e88bcbb045b3fb58300b9c x265_3.3.tar.gz +sha256 d8afb1bcc7a2cfc603683b168d6987ef0a48e59e0da3693bf55c5d33b67e2b49 COPYING diff --git a/package/x265/x265.mk b/package/x265/x265.mk new file mode 100644 index 00000000..872753ee --- /dev/null +++ b/package/x265/x265.mk @@ -0,0 +1,39 @@ +################################################################################ +# +# x265 +# +################################################################################ + +X265_VERSION = 3.3 +X265_SOURCE = x265_$(X265_VERSION).tar.gz +X265_SITE = https://bitbucket.org/multicoreware/x265/downloads +X265_LICENSE = GPL-2.0+ +X265_LICENSE_FILES = COPYING +X265_CPE_ID_VENDOR = multicorewareinc +X265_SUBDIR = source +X265_INSTALL_STAGING = YES +X265_MAKE = $(MAKE1) + +ifeq ($(BR2_i386)$(BR2_x86_64),y) +X265_DEPENDENCIES += host-nasm +endif + +# disable altivec, it has build issues +# https://bitbucket.org/multicoreware/x265/issues/320/ +ifeq ($(BR2_powerpc64)$(BR2_powerpc64le),y) +X265_CONF_OPTS += -DENABLE_ALTIVEC=OFF +endif + +ifeq ($(BR2_SHARED_LIBS)$(BR2_SHARED_STATIC_LIBS),y) +X265_CONF_OPTS += -DENABLE_SHARED=ON -DENABLE_PIC=ON +else +X265_CONF_OPTS += -DENABLE_SHARED=OFF +endif + +ifeq ($(BR2_PACKAGE_X265_CLI),y) +X265_CONF_OPTS += -DENABLE_CLI=ON +else +X265_CONF_OPTS += -DENABLE_CLI=OFF +endif + +$(eval $(cmake-package)) diff --git a/package/xapian/Config.in b/package/xapian/Config.in new file mode 100644 index 00000000..5d54ed3a --- /dev/null +++ b/package/xapian/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_XAPIAN + bool "xapian" + depends on BR2_USE_MMU # fork() + depends on BR2_INSTALL_LIBSTDCPP + select BR2_PACKAGE_ZLIB + help + Xapian is an open Source search engine Library + It is a highly adaptable toolkit which allows developers + to easily add advanced indexing and search facilities to + their own applications. + It has built-in support for several families of weighting + models and supports a rich set of boolean query operators. + + https://xapian.org/ + +comment "xapian needs a toolchain w/ C++" + depends on BR2_USE_MMU + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/xapian/xapian.hash b/package/xapian/xapian.hash new file mode 100644 index 00000000..192032e6 --- /dev/null +++ b/package/xapian/xapian.hash @@ -0,0 +1,5 @@ +# From https://lists.xapian.org/pipermail/xapian-discuss/2021-January/009856.html +sha256 196ddbb4ad10450100f0991a599e4ed944cbad92e4a6fe813be6dce160244b77 xapian-core-1.4.18.tar.xz + +# locally computed +sha256 c38aee9e3c8c4d5d594ff548a1be05453023016d6286931f6512db215ec1fd42 COPYING diff --git a/package/xapian/xapian.mk b/package/xapian/xapian.mk new file mode 100644 index 00000000..4f40babc --- /dev/null +++ b/package/xapian/xapian.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# xapian +# +################################################################################ + +XAPIAN_VERSION = 1.4.18 +XAPIAN_SOURCE = xapian-core-$(XAPIAN_VERSION).tar.xz +XAPIAN_SITE = https://oligarchy.co.uk/xapian/$(XAPIAN_VERSION) +XAPIAN_LICENSE = GPL-2.0+ +XAPIAN_LICENSE_FILES = COPYING +XAPIAN_CPE_ID_VENDOR = xapian +XAPIAN_CPE_ID_PRODUCT = xapian-core +XAPIAN_INSTALL_STAGING = YES +XAPIAN_DEPENDENCIES = zlib + +$(eval $(autotools-package)) diff --git a/package/xavante/Config.in b/package/xavante/Config.in new file mode 100644 index 00000000..209ec2d2 --- /dev/null +++ b/package/xavante/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_XAVANTE + bool "xavante" + select BR2_PACKAGE_COPAS # runtime + select BR2_PACKAGE_LUAFILESYSTEM # runtime + select BR2_PACKAGE_LUASOCKET # runtime + help + Xavante is a Lua HTTP 1.1 Web server that uses a modular + architecture based on URI mapped handlers. Xavante currently + offers a file handler, a redirect handler and a WSAPI handler. + Those are used for general files, URI remapping and WSAPI + applications respectively. + + http://keplerproject.github.io/xavante diff --git a/package/xavante/xavante.hash b/package/xavante/xavante.hash new file mode 100644 index 00000000..b2e8633b --- /dev/null +++ b/package/xavante/xavante.hash @@ -0,0 +1,3 @@ +# computed by luarocks/buildroot +sha256 67c738f981e7d65d18c717f3acac59a37f95d5139c00fb0de5d3167262025273 xavante-2.4.0-1.src.rock +sha256 57b2c50f08bf500c969fe13500f217adb36582e4d8e75c9e2ed04191cb4a045c xavante-2.4.0/doc/us/license.html diff --git a/package/xavante/xavante.mk b/package/xavante/xavante.mk new file mode 100644 index 00000000..d962e7bc --- /dev/null +++ b/package/xavante/xavante.mk @@ -0,0 +1,11 @@ +################################################################################ +# +# xavante +# +################################################################################ + +XAVANTE_VERSION = 2.4.0-1 +XAVANTE_LICENSE = MIT +XAVANTE_LICENSE_FILES = $(XAVANTE_SUBDIR)/doc/us/license.html + +$(eval $(luarocks-package)) diff --git a/package/xdg-dbus-proxy/0001-Fix-musl-compilation-by-adding-TEMP_FAILURE_RETRY.patch b/package/xdg-dbus-proxy/0001-Fix-musl-compilation-by-adding-TEMP_FAILURE_RETRY.patch new file mode 100644 index 00000000..e531f589 --- /dev/null +++ b/package/xdg-dbus-proxy/0001-Fix-musl-compilation-by-adding-TEMP_FAILURE_RETRY.patch @@ -0,0 +1,36 @@ +From 645c45f0334bb1d6e31b5927cece5e446f129cbb Mon Sep 17 00:00:00 2001 +From: Danilo Spinella +Date: Sat, 7 Dec 2019 00:05:21 +0100 +Subject: [PATCH] Fix musl compilation by adding TEMP_FAILURE_RETRY + +Fetch from: https://github.com/flatpak/xdg-dbus-proxy/pull/13 +Upstream-Status: Accepted +Signed-off-by: Adrian Perez de Castro + +--- + dbus-proxy.c | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/dbus-proxy.c b/dbus-proxy.c +index 163df21..4b07931 100644 +--- a/dbus-proxy.c ++++ b/dbus-proxy.c +@@ -30,6 +30,15 @@ + #include + + #include "flatpak-proxy.h" ++// Taken from glibc unistd.h ++#ifndef TEMP_FAILURE_RETRY ++# define TEMP_FAILURE_RETRY(expression) \ ++ (__extension__ \ ++ ({ long int __result; \ ++ do __result = (long int) (expression); \ ++ while (__result == -1L && errno == EINTR); \ ++ __result; })) ++#endif + + static const char *argv0; + static GList *proxies; +-- +2.24.1 + diff --git a/package/xdg-dbus-proxy/Config.in b/package/xdg-dbus-proxy/Config.in new file mode 100644 index 00000000..94c144fa --- /dev/null +++ b/package/xdg-dbus-proxy/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_XDG_DBUS_PROXY + bool "xdg-dbus-proxy" + depends on BR2_USE_WCHAR # libglib2 -> gettext + depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 + depends on BR2_USE_MMU # libglib2 + select BR2_PACKAGE_LIBGLIB2 + help + Filtering proxy for D-Bus connections. + + https://github.com/flatpak/xdg-dbus-proxy + +comment "xdg-dbus-proxy needs a toolchain w/ wchar, threads" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/xdg-dbus-proxy/xdg-dbus-proxy.hash b/package/xdg-dbus-proxy/xdg-dbus-proxy.hash new file mode 100644 index 00000000..37bda784 --- /dev/null +++ b/package/xdg-dbus-proxy/xdg-dbus-proxy.hash @@ -0,0 +1,5 @@ +# From https://github.com/flatpak/xdg-dbus-proxy/releases/tag/0.1.2 +sha256 1749d6f9f46dcc9edc87725641cf56cf91dcad1b01707891ea0850c1000c520f xdg-dbus-proxy-0.1.2.tar.xz + +# Hash for license files: +sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING diff --git a/package/xdg-dbus-proxy/xdg-dbus-proxy.mk b/package/xdg-dbus-proxy/xdg-dbus-proxy.mk new file mode 100644 index 00000000..1b056c36 --- /dev/null +++ b/package/xdg-dbus-proxy/xdg-dbus-proxy.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# bubblewrap +# +################################################################################ + +XDG_DBUS_PROXY_VERSION = 0.1.2 +XDG_DBUS_PROXY_SITE = https://github.com/flatpak/xdg-dbus-proxy/releases/download/$(XDG_DBUS_PROXY_VERSION) +XDG_DBUS_PROXY_SOURCE = xdg-dbus-proxy-$(XDG_DBUS_PROXY_VERSION).tar.xz +XDG_DBUS_PROXY_DEPENDENCIES = host-pkgconf libglib2 + +XDG_DBUS_PROXY_LICENSE = LGPL-2.1+ +XDG_DBUS_PROXY_LICENSE_FILES = COPYING + +XDG_DBUS_PROXY_CONF_OPTS = --disable-man + +$(eval $(autotools-package)) diff --git a/package/xdotool/Config.in b/package/xdotool/Config.in new file mode 100644 index 00000000..4fb8a495 --- /dev/null +++ b/package/xdotool/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_XDOTOOL + bool "xdotool" + depends on BR2_PACKAGE_XORG7 + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_XLIB_LIBXTST + select BR2_PACKAGE_XLIB_LIBXINERAMA + select BR2_PACKAGE_LIBXKBCOMMON + select BR2_PACKAGE_XLIB_LIBX11 + help + Command-line X11 automation tool + + http://www.semicomplete.com/projects/xdotool diff --git a/package/xdotool/xdotool.hash b/package/xdotool/xdotool.hash new file mode 100644 index 00000000..b0d5a758 --- /dev/null +++ b/package/xdotool/xdotool.hash @@ -0,0 +1,3 @@ +# locally computed hash +sha256 ddafca1239075c203769c17a5a184587731e56fbe0438c09d08f8af1704e117a xdotool-3.20160805.1.tar.gz +sha256 129d156c35b1cb19350f3716129173c8c89e019c0497d9df073db5b801becef2 COPYRIGHT diff --git a/package/xdotool/xdotool.mk b/package/xdotool/xdotool.mk new file mode 100644 index 00000000..5c5603bd --- /dev/null +++ b/package/xdotool/xdotool.mk @@ -0,0 +1,24 @@ +################################################################################ +# +# xdotool +# +################################################################################ + +XDOTOOL_VERSION = 3.20160805.1 +XDOTOOL_SITE = $(call github,jordansissel,xdotool,v$(XDOTOOL_VERSION)) +XDOTOOL_LICENSE = BSD-3-Clause +XDOTOOL_LICENSE_FILES = COPYRIGHT +XDOTOOL_DEPENDENCIES = xlib_libXtst xlib_libXinerama libxkbcommon xlib_libX11 + +define XDOTOOL_BUILD_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) +endef + +# Avoid 'install' target to skip 'post-install' which runs ldconfig on host +define XDOTOOL_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) \ + pre-install installlib installprog installheader \ + PREFIX="$(TARGET_DIR)/usr" +endef + +$(eval $(generic-package)) diff --git a/package/xen/0001-9pfs-include-linux-limits.h-for-XATTR_SIZE_MAX.patch b/package/xen/0001-9pfs-include-linux-limits.h-for-XATTR_SIZE_MAX.patch new file mode 100644 index 00000000..b681b941 --- /dev/null +++ b/package/xen/0001-9pfs-include-linux-limits.h-for-XATTR_SIZE_MAX.patch @@ -0,0 +1,43 @@ +Message-Id: <07010a2ad79559c412949f0005dbe3cb03d8416e.1498504812.git.ps@pks.im> +From: Patrick Steinhardt +Date: Mon, 26 Jun 2017 21:20:45 +0200 +Subject: [PATCH] 9pfs: include for XATTR_SIZE_MAX + +The function `v9fs_xattrcreate` makes use of the define `XATTR_SIZE_MAX` +to reject attempts of creating xattrs with an invalid size, which is +defined in . On glibc-based systems, this header is +indirectly included via , , +, but on other platforms this is not guaranteed due +to not being part of the POSIX standard. One examples are systems based +on musl libc, which do not include the indirectly, +which leads to `XATTR_SIZE_MAX` being undefined. + +Fix this error by directly include . As the 9P fs code +is being Linux-based either way, we can simply do so without breaking +other platforms. This enables building 9pfs on musl-based systems. + +Signed-off-by: Patrick Steinhardt +[ Changes by AF + - Apply to the QEMU tree inside of Xen +] +Signed-off-by: Alistair Francis +--- +Upstream Status: Pending review and acceptance + + tools/qemu-xen/hw/9pfs/9p.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/tools/qemu-xen/hw/9pfs/9p.c b/tools/qemu-xen/hw/9pfs/9p.c +index 96d2683348..48cd558e96 100644 +--- a/tools/qemu-xen/hw/9pfs/9p.c ++++ b/tools/qemu-xen/hw/9pfs/9p.c +@@ -13,6 +13,7 @@ + + #include "qemu/osdep.h" + #include ++#include + #include "hw/virtio/virtio.h" + #include "qapi/error.h" + #include "qemu/error-report.h" +-- +2.13.2 diff --git a/package/xen/Config.in b/package/xen/Config.in new file mode 100644 index 00000000..af6acd35 --- /dev/null +++ b/package/xen/Config.in @@ -0,0 +1,43 @@ +config BR2_PACKAGE_XEN + bool "xen" + # needs "dmb" on ARM, so ARM >= v7 + depends on BR2_ARM_CPU_ARMV7A || BR2_aarch64 + select BR2_PACKAGE_XEN_HYPERVISOR if !BR2_PACKAGE_XEN_TOOLS + help + This package builds the Xen hypervisor and toolstack. + + http://www.xenproject.org/ + +if BR2_PACKAGE_XEN + +config BR2_PACKAGE_XEN_HYPERVISOR + bool "Xen hypervisor" + help + The Xen binaries are avaliable in /usr/lib/xen/ See + http://wiki.xenproject.org/wiki/Getting_Started for using + the Xen hypervisor. + +config BR2_PACKAGE_XEN_TOOLS + bool "Xen tools" + depends on !BR2_STATIC_LIBS # dtc (libfdt) + depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 + depends on BR2_USE_WCHAR # libglib2 + select BR2_PACKAGE_DTC + select BR2_PACKAGE_LIBAIO + select BR2_PACKAGE_LIBGLIB2 + select BR2_PACKAGE_NCURSES + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_PIXMAN + select BR2_PACKAGE_SLIRP + select BR2_PACKAGE_UTIL_LINUX + select BR2_PACKAGE_UTIL_LINUX_LIBUUID + select BR2_PACKAGE_YAJL + select BR2_PACKAGE_ARGP_STANDALONE if !BR2_TOOLCHAIN_USES_GLIBC + help + The Xen tools can be accessed by the xl command. + +comment "xen tools need a toolchain w/ wchar, threads, dynamic library" + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \ + BR2_STATIC_LIBS + +endif diff --git a/package/xen/xen.hash b/package/xen/xen.hash new file mode 100644 index 00000000..fd0310c9 --- /dev/null +++ b/package/xen/xen.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 e35099a963070e3c9f425d1e36cbb1c40b7874ef449bfafd6688343783cb25ad xen-4.14.2.tar.gz +sha256 ecca9538e9d3f7e3c2bff827502f4495e2ef9e22c451298696ea08886b176c2c COPYING diff --git a/package/xen/xen.mk b/package/xen/xen.mk new file mode 100644 index 00000000..b84214ed --- /dev/null +++ b/package/xen/xen.mk @@ -0,0 +1,65 @@ +################################################################################ +# +# Xen +# +################################################################################ + +XEN_VERSION = 4.14.2 +XEN_SITE = https://downloads.xenproject.org/release/xen/$(XEN_VERSION) +XEN_LICENSE = GPL-2.0 +XEN_LICENSE_FILES = COPYING +XEN_CPE_ID_VENDOR = xen +XEN_CPE_ID_PREFIX = cpe:2.3:o +XEN_DEPENDENCIES = host-acpica host-python3 + +# Calculate XEN_ARCH +ifeq ($(ARCH),aarch64) +XEN_ARCH = arm64 +else ifeq ($(ARCH),arm) +XEN_ARCH = arm32 +endif + +XEN_CONF_OPTS = \ + --disable-golang \ + --disable-ocamltools \ + --with-initddir=/etc/init.d + +XEN_CONF_ENV = PYTHON=$(HOST_DIR)/bin/python3 +XEN_MAKE_ENV = \ + XEN_TARGET_ARCH=$(XEN_ARCH) \ + CROSS_COMPILE=$(TARGET_CROSS) \ + HOST_EXTRACFLAGS="-Wno-error" \ + XEN_HAS_CHECKPOLICY=n \ + $(TARGET_CONFIGURE_OPTS) + +ifeq ($(BR2_PACKAGE_XEN_HYPERVISOR),y) +XEN_MAKE_OPTS += dist-xen +XEN_INSTALL_IMAGES = YES +define XEN_INSTALL_IMAGES_CMDS + cp $(@D)/xen/xen $(BINARIES_DIR) +endef +else +XEN_CONF_OPTS += --disable-xen +endif + +ifeq ($(BR2_PACKAGE_XEN_TOOLS),y) +XEN_DEPENDENCIES += \ + dtc libaio libglib2 ncurses openssl pixman slirp util-linux yajl +ifeq ($(BR2_PACKAGE_ARGP_STANDALONE),y) +XEN_DEPENDENCIES += argp-standalone +endif +XEN_INSTALL_TARGET_OPTS += DESTDIR=$(TARGET_DIR) install-tools +XEN_MAKE_OPTS += dist-tools +XEN_CONF_OPTS += --with-extra-qemuu-configure-args="--disable-sdl --disable-opengl" + +define XEN_INSTALL_INIT_SYSV + mv $(TARGET_DIR)/etc/init.d/xencommons $(TARGET_DIR)/etc/init.d/S50xencommons + mv $(TARGET_DIR)/etc/init.d/xen-watchdog $(TARGET_DIR)/etc/init.d/S50xen-watchdog + mv $(TARGET_DIR)/etc/init.d/xendomains $(TARGET_DIR)/etc/init.d/S60xendomains +endef +else +XEN_INSTALL_TARGET = NO +XEN_CONF_OPTS += --disable-tools +endif + +$(eval $(autotools-package)) diff --git a/package/xenomai/3.0.10/0001-lib-boilerplate-iniparser-Allow-building-with-GCC-10-2-2020101.patch b/package/xenomai/3.0.10/0001-lib-boilerplate-iniparser-Allow-building-with-GCC-10-2-2020101.patch new file mode 100644 index 00000000..e4addea8 --- /dev/null +++ b/package/xenomai/3.0.10/0001-lib-boilerplate-iniparser-Allow-building-with-GCC-10-2-2020101.patch @@ -0,0 +1,1721 @@ +From 8acdbd718b7828b5d8903a6254b2fa198b866491 Mon Sep 17 00:00:00 2001 +From: Florian Bezdeka +Date: Thu, 12 Nov 2020 11:45:28 +0000 +Subject: [PATCH] lib/boilerplate/iniparser: Allow building with GCC 10.2 + 2020101 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Updating to upstream revision f858275f7f307eecba84c2f5429483f9f28007f8. +Upstream repository is located at [1]. + +The reason for updating was the following compiler error when trying +to compile with GCC 10.2 10.2.1 20201016. As it turned out the problem +was already addressed upstream: + +iniparser/iniparser.c: In function ‘iniparser_load’: +iniparser/iniparser.c:616:13: error: ‘sprintf’ arguments 3, 4 may +overlap destination object ‘buf’ [-Werror=restrict] + 616 | sprintf(tmp, "%s:%s", section, key); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +I reviewed especially the API changes. Most of them are cleanups only +but two things should be pointed out: + + - The type of the size field of struct _dictionary_ changed from int + to ssize_t. The only user of this struct is + lib/analogy/calibration.c which uses this structure for internal + things only. It is never exposed to any public API so updating is + OK and fully backward compatible. + + - dictionary_new changed its signature + from dictionary_new(int size) + to dictionary_new(size_t size). + This function is not part of any public API. So updating does not + break backward compatibility. + +[1] https://github.com/ndevilla/iniparser + +Signed-off-by: Florian Bezdeka +Signed-off-by: Jan Kiszka + +[Retrieved from: +https://gitlab.denx.de/Xenomai/xenomai/-/commit/8acdbd718b7828b5d8903a6254b2fa198b866491] +Signed-off-by: Fabrice Fontaine +--- + lib/boilerplate/iniparser/dictionary.c | 409 ++++++++++---------- + lib/boilerplate/iniparser/dictionary.h | 43 ++- + lib/boilerplate/iniparser/iniparser.c | 491 +++++++++++++++++-------- + lib/boilerplate/iniparser/iniparser.h | 131 +++++-- + 4 files changed, 646 insertions(+), 428 deletions(-) + +diff --git a/lib/boilerplate/iniparser/dictionary.c b/lib/boilerplate/iniparser/dictionary.c +index 5299b77ed..cb7ccd49e 100644 +--- a/lib/boilerplate/iniparser/dictionary.c ++++ b/lib/boilerplate/iniparser/dictionary.c +@@ -1,10 +1,8 @@ + /*-------------------------------------------------------------------------*/ + /** +- @file dictionary.c +- @author N. Devillard +- @date Sep 2007 +- @version $Revision: 1.27 $ +- @brief Implements a dictionary for string variables. ++ @file dictionary.c ++ @author N. Devillard ++ @brief Implements a dictionary for string variables. + + This module implements a simple dictionary object, i.e. a list + of string/string associations. This object is useful to store e.g. +@@ -12,12 +10,8 @@ + */ + /*--------------------------------------------------------------------------*/ + +-/* +- $Id: dictionary.c,v 1.27 2007-11-23 21:39:18 ndevilla Exp $ +- $Revision: 1.27 $ +-*/ + /*--------------------------------------------------------------------------- +- Includes ++ Includes + ---------------------------------------------------------------------------*/ + #include "dictionary.h" + +@@ -27,33 +21,18 @@ + #include + + /** Maximum value size for integers and doubles. */ +-#define MAXVALSZ 1024 ++#define MAXVALSZ 1024 + + /** Minimal allocated number of entries in a dictionary */ +-#define DICTMINSZ 128 ++#define DICTMINSZ 128 + + /** Invalid key token */ + #define DICT_INVALID_KEY ((char*)-1) + + /*--------------------------------------------------------------------------- +- Private functions ++ Private functions + ---------------------------------------------------------------------------*/ + +-/* Doubles the allocated size associated to a pointer */ +-/* 'size' is the current allocated size. */ +-static void * mem_double(void * ptr, int size) +-{ +- void * newptr ; +- +- newptr = calloc(2*size, 1); +- if (newptr==NULL) { +- return NULL ; +- } +- memcpy(newptr, ptr, size); +- free(ptr); +- return newptr ; +-} +- + /*-------------------------------------------------------------------------*/ + /** + @brief Duplicate a string +@@ -67,23 +46,68 @@ static void * mem_double(void * ptr, int size) + static char * xstrdup(const char * s) + { + char * t ; ++ size_t len ; + if (!s) + return NULL ; +- t = malloc(strlen(s)+1) ; ++ ++ len = strlen(s) + 1 ; ++ t = (char*) malloc(len) ; + if (t) { +- strcpy(t,s); ++ memcpy(t, s, len) ; + } + return t ; + } + ++/*-------------------------------------------------------------------------*/ ++/** ++ @brief Double the size of the dictionary ++ @param d Dictionary to grow ++ @return This function returns non-zero in case of failure ++ */ ++/*--------------------------------------------------------------------------*/ ++static int dictionary_grow(dictionary * d) ++{ ++ char ** new_val ; ++ char ** new_key ; ++ unsigned * new_hash ; ++ ++ new_val = (char**) calloc(d->size * 2, sizeof *d->val); ++ new_key = (char**) calloc(d->size * 2, sizeof *d->key); ++ new_hash = (unsigned*) calloc(d->size * 2, sizeof *d->hash); ++ if (!new_val || !new_key || !new_hash) { ++ /* An allocation failed, leave the dictionary unchanged */ ++ if (new_val) ++ free(new_val); ++ if (new_key) ++ free(new_key); ++ if (new_hash) ++ free(new_hash); ++ return -1 ; ++ } ++ /* Initialize the newly allocated space */ ++ memcpy(new_val, d->val, d->size * sizeof(char *)); ++ memcpy(new_key, d->key, d->size * sizeof(char *)); ++ memcpy(new_hash, d->hash, d->size * sizeof(unsigned)); ++ /* Delete previous data */ ++ free(d->val); ++ free(d->key); ++ free(d->hash); ++ /* Actually update the dictionary */ ++ d->size *= 2 ; ++ d->val = new_val; ++ d->key = new_key; ++ d->hash = new_hash; ++ return 0 ; ++} ++ + /*--------------------------------------------------------------------------- +- Function codes ++ Function codes + ---------------------------------------------------------------------------*/ + /*-------------------------------------------------------------------------*/ + /** +- @brief Compute the hash key for a string. +- @param key Character string to use for key. +- @return 1 unsigned int on at least 32 bits. ++ @brief Compute the hash key for a string. ++ @param key Character string to use for key. ++ @return 1 unsigned int on at least 32 bits. + + This hash function has been taken from an Article in Dr Dobbs Journal. + This is normally a collision-free function, distributing keys evenly. +@@ -93,84 +117,88 @@ static char * xstrdup(const char * s) + /*--------------------------------------------------------------------------*/ + unsigned dictionary_hash(const char * key) + { +- int len ; +- unsigned hash ; +- int i ; +- +- len = strlen(key); +- for (hash=0, i=0 ; i>6) ; +- } +- hash += (hash <<3); +- hash ^= (hash >>11); +- hash += (hash <<15); +- return hash ; ++ size_t len ; ++ unsigned hash ; ++ size_t i ; ++ ++ if (!key) ++ return 0 ; ++ ++ len = strlen(key); ++ for (hash=0, i=0 ; i>6) ; ++ } ++ hash += (hash <<3); ++ hash ^= (hash >>11); ++ hash += (hash <<15); ++ return hash ; + } + + /*-------------------------------------------------------------------------*/ + /** +- @brief Create a new dictionary object. +- @param size Optional initial size of the dictionary. +- @return 1 newly allocated dictionary objet. ++ @brief Create a new dictionary object. ++ @param size Optional initial size of the dictionary. ++ @return 1 newly allocated dictionary objet. + + This function allocates a new dictionary object of given size and returns + it. If you do not know in advance (roughly) the number of entries in the + dictionary, give size=0. + */ +-/*--------------------------------------------------------------------------*/ +-dictionary * dictionary_new(int size) ++/*-------------------------------------------------------------------------*/ ++dictionary * dictionary_new(size_t size) + { +- dictionary * d ; +- +- /* If no size was specified, allocate space for DICTMINSZ */ +- if (sizesize = size ; +- d->val = (char **)calloc(size, sizeof(char*)); +- d->key = (char **)calloc(size, sizeof(char*)); +- d->hash = (unsigned int *)calloc(size, sizeof(unsigned)); +- return d ; ++ dictionary * d ; ++ ++ /* If no size was specified, allocate space for DICTMINSZ */ ++ if (sizesize = size ; ++ d->val = (char**) calloc(size, sizeof *d->val); ++ d->key = (char**) calloc(size, sizeof *d->key); ++ d->hash = (unsigned*) calloc(size, sizeof *d->hash); ++ } ++ return d ; + } + + /*-------------------------------------------------------------------------*/ + /** +- @brief Delete a dictionary object +- @param d dictionary object to deallocate. +- @return void ++ @brief Delete a dictionary object ++ @param d dictionary object to deallocate. ++ @return void + + Deallocate a dictionary object and all memory associated to it. + */ + /*--------------------------------------------------------------------------*/ + void dictionary_del(dictionary * d) + { +- int i ; +- +- if (d==NULL) return ; +- for (i=0 ; isize ; i++) { +- if (d->key[i]!=NULL) +- free(d->key[i]); +- if (d->val[i]!=NULL) +- free(d->val[i]); +- } +- free(d->val); +- free(d->key); +- free(d->hash); +- free(d); +- return ; ++ ssize_t i ; ++ ++ if (d==NULL) return ; ++ for (i=0 ; isize ; i++) { ++ if (d->key[i]!=NULL) ++ free(d->key[i]); ++ if (d->val[i]!=NULL) ++ free(d->val[i]); ++ } ++ free(d->val); ++ free(d->key); ++ free(d->hash); ++ free(d); ++ return ; + } + + /*-------------------------------------------------------------------------*/ + /** +- @brief Get a value from a dictionary. +- @param d dictionary object to search. +- @param key Key to look for in the dictionary. ++ @brief Get a value from a dictionary. ++ @param d dictionary object to search. ++ @param key Key to look for in the dictionary. + @param def Default value to return if key not found. +- @return 1 pointer to internally allocated character string. ++ @return 1 pointer to internally allocated character string. + + This function locates a key in a dictionary and returns a pointer to its + value, or the passed 'def' pointer if no such key can be found in +@@ -178,24 +206,24 @@ void dictionary_del(dictionary * d) + dictionary object, you should not try to free it or modify it. + */ + /*--------------------------------------------------------------------------*/ +-const char * dictionary_get(dictionary * d, const char * key, const char * def) ++const char * dictionary_get(const dictionary * d, const char * key, const char * def) + { +- unsigned hash ; +- int i ; ++ unsigned hash ; ++ ssize_t i ; + +- hash = dictionary_hash(key); +- for (i=0 ; isize ; i++) { ++ hash = dictionary_hash(key); ++ for (i=0 ; isize ; i++) { + if (d->key[i]==NULL) + continue ; + /* Compare hash */ +- if (hash==d->hash[i]) { ++ if (hash==d->hash[i]) { + /* Compare string, to avoid hash collisions */ + if (!strcmp(key, d->key[i])) { +- return d->val[i] ; +- } +- } +- } +- return def ; ++ return d->val[i] ; ++ } ++ } ++ } ++ return def ; + } + + /*-------------------------------------------------------------------------*/ +@@ -226,66 +254,57 @@ const char * dictionary_get(dictionary * d, const char * key, const char * def) + /*--------------------------------------------------------------------------*/ + int dictionary_set(dictionary * d, const char * key, const char * val) + { +- int i ; +- unsigned hash ; +- +- if (d==NULL || key==NULL) return -1 ; +- +- /* Compute hash for this key */ +- hash = dictionary_hash(key) ; +- /* Find if value is already in dictionary */ +- if (d->n>0) { +- for (i=0 ; isize ; i++) { ++ ssize_t i ; ++ unsigned hash ; ++ ++ if (d==NULL || key==NULL) return -1 ; ++ ++ /* Compute hash for this key */ ++ hash = dictionary_hash(key) ; ++ /* Find if value is already in dictionary */ ++ if (d->n>0) { ++ for (i=0 ; isize ; i++) { + if (d->key[i]==NULL) + continue ; +- if (hash==d->hash[i]) { /* Same hash value */ +- if (!strcmp(key, d->key[i])) { /* Same key */ +- /* Found a value: modify and return */ +- if (d->val[i]!=NULL) +- free(d->val[i]); +- d->val[i] = val ? xstrdup(val) : NULL ; ++ if (hash==d->hash[i]) { /* Same hash value */ ++ if (!strcmp(key, d->key[i])) { /* Same key */ ++ /* Found a value: modify and return */ ++ if (d->val[i]!=NULL) ++ free(d->val[i]); ++ d->val[i] = (val ? xstrdup(val) : NULL); + /* Value has been modified: return */ +- return 0 ; +- } +- } +- } +- } +- /* Add a new value */ +- /* See if dictionary needs to grow */ +- if (d->n==d->size) { +- +- /* Reached maximum size: reallocate dictionary */ +- d->val = (char **)mem_double(d->val, d->size * sizeof(char*)) ; +- d->key = (char **)mem_double(d->key, d->size * sizeof(char*)) ; +- d->hash = (unsigned int *)mem_double(d->hash, d->size * sizeof(unsigned)) ; +- if ((d->val==NULL) || (d->key==NULL) || (d->hash==NULL)) { +- /* Cannot grow dictionary */ +- return -1 ; ++ return 0 ; ++ } ++ } + } +- /* Double size */ +- d->size *= 2 ; +- } ++ } ++ /* Add a new value */ ++ /* See if dictionary needs to grow */ ++ if (d->n==d->size) { ++ /* Reached maximum size: reallocate dictionary */ ++ if (dictionary_grow(d) != 0) ++ return -1; ++ } + +- /* Insert key in the first empty slot */ +- for (i=0 ; isize ; i++) { +- if (d->key[i]==NULL) { +- /* Add key here */ +- break ; +- } ++ /* Insert key in the first empty slot. Start at d->n and wrap at ++ d->size. Because d->n < d->size this will necessarily ++ terminate. */ ++ for (i=d->n ; d->key[i] ; ) { ++ if(++i == d->size) i = 0; + } +- /* Copy key */ +- d->key[i] = xstrdup(key); +- d->val[i] = val ? xstrdup(val) : NULL ; +- d->hash[i] = hash; +- d->n ++ ; +- return 0 ; ++ /* Copy key */ ++ d->key[i] = xstrdup(key); ++ d->val[i] = (val ? xstrdup(val) : NULL) ; ++ d->hash[i] = hash; ++ d->n ++ ; ++ return 0 ; + } + + /*-------------------------------------------------------------------------*/ + /** +- @brief Delete a key in a dictionary +- @param d dictionary object to modify. +- @param key Key to remove. ++ @brief Delete a key in a dictionary ++ @param d dictionary object to modify. ++ @param key Key to remove. + @return void + + This function deletes a key in a dictionary. Nothing is done if the +@@ -294,26 +313,26 @@ int dictionary_set(dictionary * d, const char * key, const char * val) + /*--------------------------------------------------------------------------*/ + void dictionary_unset(dictionary * d, const char * key) + { +- unsigned hash ; +- int i ; ++ unsigned hash ; ++ ssize_t i ; + +- if (key == NULL) { +- return; +- } ++ if (key == NULL || d == NULL) { ++ return; ++ } + +- hash = dictionary_hash(key); +- for (i=0 ; isize ; i++) { ++ hash = dictionary_hash(key); ++ for (i=0 ; isize ; i++) { + if (d->key[i]==NULL) + continue ; + /* Compare hash */ +- if (hash==d->hash[i]) { ++ if (hash==d->hash[i]) { + /* Compare string, to avoid hash collisions */ + if (!strcmp(key, d->key[i])) { + /* Found key */ + break ; +- } +- } +- } ++ } ++ } ++ } + if (i>=d->size) + /* Key not found */ + return ; +@@ -331,75 +350,31 @@ void dictionary_unset(dictionary * d, const char * key) + + /*-------------------------------------------------------------------------*/ + /** +- @brief Dump a dictionary to an opened file pointer. +- @param d Dictionary to dump +- @param out Opened file pointer. +- @return void ++ @brief Dump a dictionary to an opened file pointer. ++ @param d Dictionary to dump ++ @param f Opened file pointer. ++ @return void + + Dumps a dictionary onto an opened file pointer. Key pairs are printed out + as @c [Key]=[Value], one per line. It is Ok to provide stdout or stderr as + output file pointers. + */ + /*--------------------------------------------------------------------------*/ +-void dictionary_dump(dictionary * d, FILE * out) ++void dictionary_dump(const dictionary * d, FILE * out) + { +- int i ; +- +- if (d==NULL || out==NULL) return ; +- if (d->n<1) { +- fprintf(out, "empty dictionary\n"); +- return ; +- } +- for (i=0 ; isize ; i++) { ++ ssize_t i ; ++ ++ if (d==NULL || out==NULL) return ; ++ if (d->n<1) { ++ fprintf(out, "empty dictionary\n"); ++ return ; ++ } ++ for (i=0 ; isize ; i++) { + if (d->key[i]) { + fprintf(out, "%20s\t[%s]\n", + d->key[i], + d->val[i] ? d->val[i] : "UNDEF"); + } +- } +- return ; +-} +- +- +-/* Test code */ +-#ifdef TESTDIC +-#define NVALS 20000 +-int main(int argc, char *argv[]) +-{ +- dictionary * d ; +- char * val ; +- int i ; +- char cval[90] ; +- +- /* Allocate dictionary */ +- printf("allocating...\n"); +- d = dictionary_new(0); +- +- /* Set values in dictionary */ +- printf("setting %d values...\n", NVALS); +- for (i=0 ; in != 0) { +- printf("error deleting values\n"); + } +- printf("deallocating...\n"); +- dictionary_del(d); +- return 0 ; ++ return ; + } +-#endif +-/* vim: set ts=4 et sw=4 tw=75 */ +diff --git a/lib/boilerplate/iniparser/dictionary.h b/lib/boilerplate/iniparser/dictionary.h +index fa4dcb727..d04b6ce71 100644 +--- a/lib/boilerplate/iniparser/dictionary.h ++++ b/lib/boilerplate/iniparser/dictionary.h +@@ -3,8 +3,6 @@ + /** + @file dictionary.h + @author N. Devillard +- @date Sep 2007 +- @version $Revision: 1.12 $ + @brief Implements a dictionary for string variables. + + This module implements a simple dictionary object, i.e. a list +@@ -13,18 +11,11 @@ + */ + /*--------------------------------------------------------------------------*/ + +-/* +- $Id: dictionary.h,v 1.12 2007-11-23 21:37:00 ndevilla Exp $ +- $Author: ndevilla $ +- $Date: 2007-11-23 21:37:00 $ +- $Revision: 1.12 $ +-*/ +- + #ifndef _DICTIONARY_H_ + #define _DICTIONARY_H_ + + /*--------------------------------------------------------------------------- +- Includes ++ Includes + ---------------------------------------------------------------------------*/ + + #include +@@ -32,14 +23,18 @@ + #include + #include + ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + /*--------------------------------------------------------------------------- +- New types ++ New types + ---------------------------------------------------------------------------*/ + + + /*-------------------------------------------------------------------------*/ + /** +- @brief Dictionary object ++ @brief Dictionary object + + This object contains a list of string/string associations. Each + association is identified by a unique string key. Looking up values +@@ -48,16 +43,16 @@ + */ + /*-------------------------------------------------------------------------*/ + typedef struct _dictionary_ { +- int n ; /** Number of entries in dictionary */ +- int size ; /** Storage size */ +- char ** val ; /** List of string values */ +- char ** key ; /** List of string keys */ +- unsigned * hash ; /** List of hash values for keys */ ++ int n ; /** Number of entries in dictionary */ ++ ssize_t size ; /** Storage size */ ++ char ** val ; /** List of string values */ ++ char ** key ; /** List of string keys */ ++ unsigned * hash ; /** List of hash values for keys */ + } dictionary ; + + + /*--------------------------------------------------------------------------- +- Function prototypes ++ Function prototypes + ---------------------------------------------------------------------------*/ + + /*-------------------------------------------------------------------------*/ +@@ -85,7 +80,7 @@ unsigned dictionary_hash(const char * key); + dictionary, give size=0. + */ + /*--------------------------------------------------------------------------*/ +-dictionary * dictionary_new(int size); ++dictionary * dictionary_new(size_t size); + + /*-------------------------------------------------------------------------*/ + /** +@@ -112,7 +107,7 @@ void dictionary_del(dictionary * vd); + dictionary object, you should not try to free it or modify it. + */ + /*--------------------------------------------------------------------------*/ +-const char * dictionary_get(dictionary * d, const char * key, const char * def); ++const char * dictionary_get(const dictionary * d, const char * key, const char * def); + + + /*-------------------------------------------------------------------------*/ +@@ -161,7 +156,7 @@ void dictionary_unset(dictionary * d, const char * key); + /** + @brief Dump a dictionary to an opened file pointer. + @param d Dictionary to dump +- @param out Opened file pointer. ++ @param f Opened file pointer. + @return void + + Dumps a dictionary onto an opened file pointer. Key pairs are printed out +@@ -169,6 +164,10 @@ void dictionary_unset(dictionary * d, const char * key); + output file pointers. + */ + /*--------------------------------------------------------------------------*/ +-void dictionary_dump(dictionary * d, FILE * out); ++void dictionary_dump(const dictionary * d, FILE * out); ++ ++#ifdef __cplusplus ++} ++#endif + + #endif +diff --git a/lib/boilerplate/iniparser/iniparser.c b/lib/boilerplate/iniparser/iniparser.c +index 5b2094a00..f1d165896 100644 +--- a/lib/boilerplate/iniparser/iniparser.c ++++ b/lib/boilerplate/iniparser/iniparser.c +@@ -3,19 +3,12 @@ + /** + @file iniparser.c + @author N. Devillard +- @date Sep 2007 +- @version 3.0 + @brief Parser for ini files. + */ + /*--------------------------------------------------------------------------*/ +-/* +- $Id: iniparser.c,v 2.18 2008-01-03 18:35:39 ndevilla Exp $ +- $Revision: 2.18 $ +- $Date: 2008-01-03 18:35:39 $ +-*/ + /*---------------------------- Includes ------------------------------------*/ + #include +-#include ++#include + #include "iniparser.h" + + /*---------------------------- Defines -------------------------------------*/ +@@ -39,65 +32,115 @@ typedef enum _line_status_ { + + /*-------------------------------------------------------------------------*/ + /** +- @brief Convert a string to lowercase. +- @param s String to convert. +- @return ptr to statically allocated string. +- +- This function returns a pointer to a statically allocated string +- containing a lowercased version of the input string. Do not free +- or modify the returned string! Since the returned string is statically +- allocated, it will be modified at each function call (not re-entrant). ++ @brief Convert a string to lowercase. ++ @param in String to convert. ++ @param out Output buffer. ++ @param len Size of the out buffer. ++ @return ptr to the out buffer or NULL if an error occured. ++ ++ This function convert a string into lowercase. ++ At most len - 1 elements of the input string will be converted. + */ + /*--------------------------------------------------------------------------*/ +- +-static char strbuf[ASCIILINESZ+1]; +- +-static char * strlwc(const char * s) ++static const char * strlwc(const char * in, char *out, unsigned len) + { +- int i ; ++ unsigned i ; + +- if (s==NULL) return NULL ; +- memset(strbuf, 0, ASCIILINESZ+1); ++ if (in==NULL || out == NULL || len==0) return NULL ; + i=0 ; +- while (s[i] && i s) { ++ if (!isspace((int)*(last-1))) ++ break ; ++ last -- ; ++ } ++ *last = (char)0; ++ ++ memmove(dest,s,last - s + 1); ++ return last - s; ++} ++ ++/*-------------------------------------------------------------------------*/ ++/** ++ @brief Default error callback for iniparser: wraps `fprintf(stderr, ...)`. ++ */ ++/*--------------------------------------------------------------------------*/ ++static int default_error_callback(const char *format, ...) ++{ ++ int ret; ++ va_list argptr; ++ va_start(argptr, format); ++ ret = vfprintf(stderr, format, argptr); ++ va_end(argptr); ++ return ret; + } + ++static int (*iniparser_error_callback)(const char*, ...) = default_error_callback; ++ + /*-------------------------------------------------------------------------*/ + /** +- @brief Remove blanks at the beginning and the end of a string. +- @param s String to parse. +- @return ptr to statically allocated string. +- +- This function returns a pointer to a statically allocated string, +- which is identical to the input string, except that all blank +- characters at the end and the beg. of the string have been removed. +- Do not free or modify the returned string! Since the returned string +- is statically allocated, it will be modified at each function call +- (not re-entrant). ++ @brief Configure a function to receive the error messages. ++ @param errback Function to call. ++ ++ By default, the error will be printed on stderr. If a null pointer is passed ++ as errback the error callback will be switched back to default. + */ + /*--------------------------------------------------------------------------*/ +-static char * strstrip(const char * s) ++void iniparser_set_error_callback(int (*errback)(const char *, ...)) + { +- char * last ; +- +- if (s==NULL) return NULL ; +- +- while (isspace((int)*s) && *s) s++; +- memset(strbuf, 0, ASCIILINESZ+1); +- strcpy(strbuf, s); +- last = strbuf + strlen(strbuf); +- while (last > strbuf) { +- if (!isspace((int)*(last-1))) +- break ; +- last -- ; +- } +- *last = (char)0; +- return (char*)strbuf ; ++ if (errback) { ++ iniparser_error_callback = errback; ++ } else { ++ iniparser_error_callback = default_error_callback; ++ } + } + + /*-------------------------------------------------------------------------*/ +@@ -118,7 +161,7 @@ static char * strstrip(const char * s) + This function returns -1 in case of error. + */ + /*--------------------------------------------------------------------------*/ +-int iniparser_getnsec(dictionary * d) ++int iniparser_getnsec(const dictionary * d) + { + int i ; + int nsec ; +@@ -149,7 +192,7 @@ int iniparser_getnsec(dictionary * d) + This function returns NULL in case of error. + */ + /*--------------------------------------------------------------------------*/ +-const char * iniparser_getsecname(dictionary * d, int n) ++const char * iniparser_getsecname(const dictionary * d, int n) + { + int i ; + int foundsec ; +@@ -184,7 +227,7 @@ const char * iniparser_getsecname(dictionary * d, int n) + purposes mostly. + */ + /*--------------------------------------------------------------------------*/ +-void iniparser_dump(dictionary * d, FILE * f) ++void iniparser_dump(const dictionary * d, FILE * f) + { + int i ; + +@@ -212,13 +255,11 @@ void iniparser_dump(dictionary * d, FILE * f) + It is Ok to specify @c stderr or @c stdout as output files. + */ + /*--------------------------------------------------------------------------*/ +-void iniparser_dump_ini(dictionary * d, FILE * f) ++void iniparser_dump_ini(const dictionary * d, FILE * f) + { +- int i, j ; +- char keym[ASCIILINESZ+1]; +- int nsec ; +- const char * secname ; +- int seclen ; ++ int i ; ++ int nsec ; ++ const char * secname ; + + if (d==NULL || f==NULL) return ; + +@@ -234,24 +275,126 @@ void iniparser_dump_ini(dictionary * d, FILE * f) + } + for (i=0 ; isize ; j++) { +- if (d->key[j]==NULL) +- continue ; +- if (!strncmp(d->key[j], keym, seclen+1)) { +- fprintf(f, +- "%-30s = %s\n", +- d->key[j]+seclen+1, +- d->val[j] ? d->val[j] : ""); +- } ++ iniparser_dumpsection_ini(d, secname, f); ++ } ++ fprintf(f, "\n"); ++ return ; ++} ++ ++/*-------------------------------------------------------------------------*/ ++/** ++ @brief Save a dictionary section to a loadable ini file ++ @param d Dictionary to dump ++ @param s Section name of dictionary to dump ++ @param f Opened file pointer to dump to ++ @return void ++ ++ This function dumps a given section of a given dictionary into a loadable ini ++ file. It is Ok to specify @c stderr or @c stdout as output files. ++ */ ++/*--------------------------------------------------------------------------*/ ++void iniparser_dumpsection_ini(const dictionary * d, const char * s, FILE * f) ++{ ++ int j ; ++ char keym[ASCIILINESZ+1]; ++ int seclen ; ++ ++ if (d==NULL || f==NULL) return ; ++ if (! iniparser_find_entry(d, s)) return ; ++ ++ seclen = (int)strlen(s); ++ fprintf(f, "\n[%s]\n", s); ++ sprintf(keym, "%s:", s); ++ for (j=0 ; jsize ; j++) { ++ if (d->key[j]==NULL) ++ continue ; ++ if (!strncmp(d->key[j], keym, seclen+1)) { ++ fprintf(f, ++ "%-30s = %s\n", ++ d->key[j]+seclen+1, ++ d->val[j] ? d->val[j] : ""); + } + } + fprintf(f, "\n"); + return ; + } + ++/*-------------------------------------------------------------------------*/ ++/** ++ @brief Get the number of keys in a section of a dictionary. ++ @param d Dictionary to examine ++ @param s Section name of dictionary to examine ++ @return Number of keys in section ++ */ ++/*--------------------------------------------------------------------------*/ ++int iniparser_getsecnkeys(const dictionary * d, const char * s) ++{ ++ int seclen, nkeys ; ++ char keym[ASCIILINESZ+1]; ++ int j ; ++ ++ nkeys = 0; ++ ++ if (d==NULL) return nkeys; ++ if (! iniparser_find_entry(d, s)) return nkeys; ++ ++ seclen = (int)strlen(s); ++ strlwc(s, keym, sizeof(keym)); ++ keym[seclen] = ':'; ++ ++ for (j=0 ; jsize ; j++) { ++ if (d->key[j]==NULL) ++ continue ; ++ if (!strncmp(d->key[j], keym, seclen+1)) ++ nkeys++; ++ } ++ ++ return nkeys; ++ ++} ++ ++/*-------------------------------------------------------------------------*/ ++/** ++ @brief Get the number of keys in a section of a dictionary. ++ @param d Dictionary to examine ++ @param s Section name of dictionary to examine ++ @param keys Already allocated array to store the keys in ++ @return The pointer passed as `keys` argument or NULL in case of error ++ ++ This function queries a dictionary and finds all keys in a given section. ++ The keys argument should be an array of pointers which size has been ++ determined by calling `iniparser_getsecnkeys` function prior to this one. ++ ++ Each pointer in the returned char pointer-to-pointer is pointing to ++ a string allocated in the dictionary; do not free or modify them. ++ */ ++/*--------------------------------------------------------------------------*/ ++const char ** iniparser_getseckeys(const dictionary * d, const char * s, const char ** keys) ++{ ++ int i, j, seclen ; ++ char keym[ASCIILINESZ+1]; ++ ++ if (d==NULL || keys==NULL) return NULL; ++ if (! iniparser_find_entry(d, s)) return NULL; ++ ++ seclen = (int)strlen(s); ++ strlwc(s, keym, sizeof(keym)); ++ keym[seclen] = ':'; ++ ++ i = 0; ++ ++ for (j=0 ; jsize ; j++) { ++ if (d->key[j]==NULL) ++ continue ; ++ if (!strncmp(d->key[j], keym, seclen+1)) { ++ keys[i] = d->key[j]; ++ i++; ++ } ++ } ++ ++ return keys; ++} ++ + /*-------------------------------------------------------------------------*/ + /** + @brief Get the string associated to a key +@@ -267,24 +410,27 @@ void iniparser_dump_ini(dictionary * d, FILE * f) + the dictionary, do not free or modify it. + */ + /*--------------------------------------------------------------------------*/ +-const char * iniparser_getstring(dictionary * d, const char * key, const char * def) ++const char * iniparser_getstring(const dictionary * d, const char * key, const char * def) + { +- char * lc_key ; ++ const char * lc_key ; ++ const char * sval ; ++ char tmp_str[ASCIILINESZ+1]; + + if (d==NULL || key==NULL) + return def ; + +- lc_key = strlwc(key); +- return dictionary_get(d, lc_key, def); ++ lc_key = strlwc(key, tmp_str, sizeof(tmp_str)); ++ sval = dictionary_get(d, lc_key, def); ++ return sval ; + } + + /*-------------------------------------------------------------------------*/ + /** +- @brief Get the string associated to a key, convert to an int ++ @brief Get the string associated to a key, convert to an long int + @param d Dictionary to search + @param key Key string to look for + @param notfound Value to return in case of error +- @return integer ++ @return long integer + + This function queries a dictionary for a key. A key as read from an + ini file is given as "section:key". If the key cannot be found, +@@ -305,13 +451,46 @@ const char * iniparser_getstring(dictionary * d, const char * key, const char * + Credits: Thanks to A. Becker for suggesting strtol() + */ + /*--------------------------------------------------------------------------*/ +-int iniparser_getint(dictionary * d, const char * key, int notfound) ++long int iniparser_getlongint(const dictionary * d, const char * key, long int notfound) + { +- const char * str ; ++ const char * str ; + + str = iniparser_getstring(d, key, INI_INVALID_KEY); + if (str==INI_INVALID_KEY) return notfound ; +- return (int)strtol(str, NULL, 0); ++ return strtol(str, NULL, 0); ++} ++ ++ ++/*-------------------------------------------------------------------------*/ ++/** ++ @brief Get the string associated to a key, convert to an int ++ @param d Dictionary to search ++ @param key Key string to look for ++ @param notfound Value to return in case of error ++ @return integer ++ ++ This function queries a dictionary for a key. A key as read from an ++ ini file is given as "section:key". If the key cannot be found, ++ the notfound value is returned. ++ ++ Supported values for integers include the usual C notation ++ so decimal, octal (starting with 0) and hexadecimal (starting with 0x) ++ are supported. Examples: ++ ++ "42" -> 42 ++ "042" -> 34 (octal -> decimal) ++ "0x42" -> 66 (hexa -> decimal) ++ ++ Warning: the conversion may overflow in various ways. Conversion is ++ totally outsourced to strtol(), see the associated man page for overflow ++ handling. ++ ++ Credits: Thanks to A. Becker for suggesting strtol() ++ */ ++/*--------------------------------------------------------------------------*/ ++int iniparser_getint(const dictionary * d, const char * key, int notfound) ++{ ++ return (int)iniparser_getlongint(d, key, notfound); + } + + /*-------------------------------------------------------------------------*/ +@@ -327,9 +506,9 @@ int iniparser_getint(dictionary * d, const char * key, int notfound) + the notfound value is returned. + */ + /*--------------------------------------------------------------------------*/ +-double iniparser_getdouble(dictionary * d, const char * key, double notfound) ++double iniparser_getdouble(const dictionary * d, const char * key, double notfound) + { +- const char * str ; ++ const char * str ; + + str = iniparser_getstring(d, key, INI_INVALID_KEY); + if (str==INI_INVALID_KEY) return notfound ; +@@ -368,10 +547,10 @@ double iniparser_getdouble(dictionary * d, const char * key, double notfound) + necessarily have to be 0 or 1. + */ + /*--------------------------------------------------------------------------*/ +-int iniparser_getboolean(dictionary * d, const char * key, int notfound) ++int iniparser_getboolean(const dictionary * d, const char * key, int notfound) + { +- const char * c ; +- int ret ; ++ int ret ; ++ const char * c ; + + c = iniparser_getstring(d, key, INI_INVALID_KEY); + if (c==INI_INVALID_KEY) return notfound ; +@@ -397,10 +576,7 @@ int iniparser_getboolean(dictionary * d, const char * key, int notfound) + of querying for the presence of sections in a dictionary. + */ + /*--------------------------------------------------------------------------*/ +-int iniparser_find_entry( +- dictionary * ini, +- const char * entry +-) ++int iniparser_find_entry(const dictionary * ini, const char * entry) + { + int found=0 ; + if (iniparser_getstring(ini, entry, INI_INVALID_KEY)!=INI_INVALID_KEY) { +@@ -418,13 +594,14 @@ int iniparser_find_entry( + @return int 0 if Ok, -1 otherwise. + + If the given entry can be found in the dictionary, it is modified to +- contain the provided value. If it cannot be found, -1 is returned. ++ contain the provided value. If it cannot be found, the entry is created. + It is Ok to set val to NULL. + */ + /*--------------------------------------------------------------------------*/ + int iniparser_set(dictionary * ini, const char * entry, const char * val) + { +- return dictionary_set(ini, strlwc(entry), val) ; ++ char tmp_str[ASCIILINESZ+1]; ++ return dictionary_set(ini, strlwc(entry, tmp_str, sizeof(tmp_str)), val) ; + } + + /*-------------------------------------------------------------------------*/ +@@ -439,12 +616,13 @@ int iniparser_set(dictionary * ini, const char * entry, const char * val) + /*--------------------------------------------------------------------------*/ + void iniparser_unset(dictionary * ini, const char * entry) + { +- dictionary_unset(ini, strlwc(entry)); ++ char tmp_str[ASCIILINESZ+1]; ++ dictionary_unset(ini, strlwc(entry, tmp_str, sizeof(tmp_str))); + } + + /*-------------------------------------------------------------------------*/ + /** +- @brief Load a single line from an INI file ++ @brief Load a single line from an INI file + @param input_line Input line, may be concatenated multi-line input + @param section Output space to store section + @param key Output space to store key +@@ -457,34 +635,39 @@ static line_status iniparser_line( + char * section, + char * key, + char * value) +-{ ++{ + line_status sta ; +- char line[ASCIILINESZ+1]; +- int len ; ++ char * line = NULL; ++ size_t len ; + +- strcpy(line, strstrip(input_line)); +- len = (int)strlen(line); ++ line = xstrdup(input_line); ++ len = strstrip(line); + + sta = LINE_UNPROCESSED ; + if (len<1) { + /* Empty line */ + sta = LINE_EMPTY ; +- } else if (line[0]=='#') { ++ } else if (line[0]=='#' || line[0]==';') { + /* Comment line */ +- sta = LINE_COMMENT ; ++ sta = LINE_COMMENT ; + } else if (line[0]=='[' && line[len-1]==']') { + /* Section name */ + sscanf(line, "[%[^]]", section); +- strcpy(section, strstrip(section)); +- strcpy(section, strlwc(section)); ++ strstrip(section); ++ strlwc(section, section, len); + sta = LINE_SECTION ; + } else if (sscanf (line, "%[^=] = \"%[^\"]\"", key, value) == 2 +- || sscanf (line, "%[^=] = '%[^\']'", key, value) == 2 +- || sscanf (line, "%[^=] = %[^;#]", key, value) == 2) { +- /* Usual key=value, with or without comments */ +- strcpy(key, strstrip(key)); +- strcpy(key, strlwc(key)); +- strcpy(value, strstrip(value)); ++ || sscanf (line, "%[^=] = '%[^\']'", key, value) == 2) { ++ /* Usual key=value with quotes, with or without comments */ ++ strstrip(key); ++ strlwc(key, key, len); ++ /* Don't strip spaces from values surrounded with quotes */ ++ sta = LINE_VALUE ; ++ } else if (sscanf (line, "%[^=] = %[^;#]", key, value) == 2) { ++ /* Usual key=value without quotes, with or without comments */ ++ strstrip(key); ++ strlwc(key, key, len); ++ strstrip(value); + /* + * sscanf cannot handle '' or "" as empty values + * this is done here +@@ -501,14 +684,16 @@ static line_status iniparser_line( + * key=; + * key=# + */ +- strcpy(key, strstrip(key)); +- strcpy(key, strlwc(key)); ++ strstrip(key); ++ strlwc(key, key, len); + value[0]=0 ; + sta = LINE_VALUE ; + } else { + /* Generate syntax error */ + sta = LINE_ERROR ; + } ++ ++ free(line); + return sta ; + } + +@@ -528,44 +713,33 @@ static line_status iniparser_line( + /*--------------------------------------------------------------------------*/ + dictionary * iniparser_load(const char * ininame) + { +- char *buf; + FILE * in ; + +- char *line; +- char *section; +- char *key; +- char *tmp; +- char *val; ++ char line [ASCIILINESZ+1] ; ++ char section [ASCIILINESZ+1] ; ++ char key [ASCIILINESZ+1] ; ++ char tmp [(ASCIILINESZ * 2) + 2] ; ++ char val [ASCIILINESZ+1] ; + + int last=0 ; + int len ; + int lineno=0 ; + int errs=0; +- int ret; ++ int mem_err=0; + + dictionary * dict ; + +- if ((in=fopen(ininame, "r"))==NULL) ++ if ((in=fopen(ininame, "r"))==NULL) { ++ iniparser_error_callback("iniparser: cannot open %s\n", ininame); + return NULL ; ++ } + + dict = dictionary_new(0) ; + if (!dict) { + fclose(in); +- errno = ENOMEM; + return NULL ; + } + +- buf = malloc((ASCIILINESZ+1) * 5); +- if (buf == NULL) { +- errno = -ENOMEM; +- return NULL; +- } +- line = buf; +- section = line + ASCIILINESZ + 1; +- key = section + ASCIILINESZ + 1; +- tmp = key + ASCIILINESZ + 1; +- val = tmp + ASCIILINESZ + 1; +- + memset(line, 0, ASCIILINESZ); + memset(section, 0, ASCIILINESZ); + memset(key, 0, ASCIILINESZ); +@@ -575,18 +749,16 @@ dictionary * iniparser_load(const char * ininame) + while (fgets(line+last, ASCIILINESZ-last, in)!=NULL) { + lineno++ ; + len = (int)strlen(line)-1; ++ if (len<=0) ++ continue; + /* Safety check against buffer overflows */ +- if (last > 0 && line[len]!='\n') { +-#if 0 +- warning(anon_scope, +- "iniparser: input line too long in %s (%d)\n", +- ininame, +- lineno); +-#endif ++ if (line[len]!='\n' && !feof(in)) { ++ iniparser_error_callback( ++ "iniparser: input line too long in %s (%d)\n", ++ ininame, ++ lineno); + dictionary_del(dict); + fclose(in); +- free(buf); +- errno = EINVAL; + return NULL ; + } + /* Get rid of \n and spaces at end of line */ +@@ -595,8 +767,11 @@ dictionary * iniparser_load(const char * ininame) + line[len]=0 ; + len-- ; + } ++ if (len < 0) { /* Line was entirely \n and/or spaces */ ++ len = 0; ++ } + /* Detect multi-line */ +- if (len >= 0 && line[len]=='\\') { ++ if (line[len]=='\\') { + /* Multi-line value */ + last=len ; + continue ; +@@ -609,24 +784,20 @@ dictionary * iniparser_load(const char * ininame) + break ; + + case LINE_SECTION: +- errs = dictionary_set(dict, section, NULL); ++ mem_err = dictionary_set(dict, section, NULL); + break ; + + case LINE_VALUE: + sprintf(tmp, "%s:%s", section, key); +- errs = dictionary_set(dict, tmp, val) ; ++ mem_err = dictionary_set(dict, tmp, val); + break ; + +- case LINE_ERROR: +-#if 0 +- printf("iniparser: syntax error in %s (%d):\n", +- ininame, +- lineno); +- printf( "-> %s\n", line); +- +-#endif +- +- ret = EINVAL; ++ case LINE_ERROR: ++ iniparser_error_callback( ++ "iniparser: syntax error in %s (%d):\n-> %s\n", ++ ininame, ++ lineno, ++ line); + errs++ ; + break; + +@@ -635,18 +806,16 @@ dictionary * iniparser_load(const char * ininame) + } + memset(line, 0, ASCIILINESZ); + last=0; +- if (errs<0) { +- ret = ENOMEM; ++ if (mem_err<0) { ++ iniparser_error_callback("iniparser: memory allocation failure\n"); + break ; + } + } +- fclose(in); +- free(buf); + if (errs) { + dictionary_del(dict); + dict = NULL ; +- errno = ret; + } ++ fclose(in); + return dict ; + } + +@@ -665,5 +834,3 @@ void iniparser_freedict(dictionary * d) + { + dictionary_del(d); + } +- +-/* vim: set ts=4 et sw=4 tw=75 */ +diff --git a/lib/boilerplate/iniparser/iniparser.h b/lib/boilerplate/iniparser/iniparser.h +index d454cef34..37ff7b71b 100644 +--- a/lib/boilerplate/iniparser/iniparser.h ++++ b/lib/boilerplate/iniparser/iniparser.h +@@ -3,22 +3,15 @@ + /** + @file iniparser.h + @author N. Devillard +- @date Sep 2007 +- @version 3.0 + @brief Parser for ini files. + */ + /*--------------------------------------------------------------------------*/ + +-/* +- $Id: iniparser.h,v 1.24 2007-11-23 21:38:19 ndevilla Exp $ +- $Revision: 1.24 $ +-*/ +- + #ifndef _INIPARSER_H_ + #define _INIPARSER_H_ + + /*--------------------------------------------------------------------------- +- Includes ++ Includes + ---------------------------------------------------------------------------*/ + + #include +@@ -34,12 +27,21 @@ + + #include "dictionary.h" + +-/*--------------------------------------------------------------------------- +- Macros +- ---------------------------------------------------------------------------*/ +-/** For backwards compatibility only */ +-#define iniparser_getstr(d, k) iniparser_getstring(d, k, NULL) +-#define iniparser_setstr iniparser_setstring ++#ifdef __cplusplus ++extern "C" { ++#endif ++ ++/*-------------------------------------------------------------------------*/ ++/** ++ @brief Configure a function to receive the error messages. ++ @param errback Function to call. ++ ++ By default, the error will be printed on stderr. If a null pointer is passed ++ as errback the error callback will be switched back to default. ++ */ ++/*--------------------------------------------------------------------------*/ ++ ++void iniparser_set_error_callback(int (*errback)(const char *, ...)); + + /*-------------------------------------------------------------------------*/ + /** +@@ -60,7 +62,7 @@ + */ + /*--------------------------------------------------------------------------*/ + +-int iniparser_getnsec(dictionary * d); ++int iniparser_getnsec(const dictionary * d); + + + /*-------------------------------------------------------------------------*/ +@@ -78,7 +80,7 @@ int iniparser_getnsec(dictionary * d); + */ + /*--------------------------------------------------------------------------*/ + +-const char * iniparser_getsecname(dictionary * d, int n); ++const char * iniparser_getsecname(const dictionary * d, int n); + + + /*-------------------------------------------------------------------------*/ +@@ -93,7 +95,22 @@ const char * iniparser_getsecname(dictionary * d, int n); + */ + /*--------------------------------------------------------------------------*/ + +-void iniparser_dump_ini(dictionary * d, FILE * f); ++void iniparser_dump_ini(const dictionary * d, FILE * f); ++ ++/*-------------------------------------------------------------------------*/ ++/** ++ @brief Save a dictionary section to a loadable ini file ++ @param d Dictionary to dump ++ @param s Section name of dictionary to dump ++ @param f Opened file pointer to dump to ++ @return void ++ ++ This function dumps a given section of a given dictionary into a loadable ini ++ file. It is Ok to specify @c stderr or @c stdout as output files. ++ */ ++/*--------------------------------------------------------------------------*/ ++ ++void iniparser_dumpsection_ini(const dictionary * d, const char * s, FILE * f); + + /*-------------------------------------------------------------------------*/ + /** +@@ -108,7 +125,36 @@ void iniparser_dump_ini(dictionary * d, FILE * f); + purposes mostly. + */ + /*--------------------------------------------------------------------------*/ +-void iniparser_dump(dictionary * d, FILE * f); ++void iniparser_dump(const dictionary * d, FILE * f); ++ ++/*-------------------------------------------------------------------------*/ ++/** ++ @brief Get the number of keys in a section of a dictionary. ++ @param d Dictionary to examine ++ @param s Section name of dictionary to examine ++ @return Number of keys in section ++ */ ++/*--------------------------------------------------------------------------*/ ++int iniparser_getsecnkeys(const dictionary * d, const char * s); ++ ++/*-------------------------------------------------------------------------*/ ++/** ++ @brief Get the number of keys in a section of a dictionary. ++ @param d Dictionary to examine ++ @param s Section name of dictionary to examine ++ @param keys Already allocated array to store the keys in ++ @return The pointer passed as `keys` argument or NULL in case of error ++ ++ This function queries a dictionary and finds all keys in a given section. ++ The keys argument should be an array of pointers which size has been ++ determined by calling `iniparser_getsecnkeys` function prior to this one. ++ ++ Each pointer in the returned char pointer-to-pointer is pointing to ++ a string allocated in the dictionary; do not free or modify them. ++ */ ++/*--------------------------------------------------------------------------*/ ++const char ** iniparser_getseckeys(const dictionary * d, const char * s, const char ** keys); ++ + + /*-------------------------------------------------------------------------*/ + /** +@@ -125,7 +171,7 @@ void iniparser_dump(dictionary * d, FILE * f); + the dictionary, do not free or modify it. + */ + /*--------------------------------------------------------------------------*/ +-const char * iniparser_getstring(dictionary * d, const char * key, const char * def); ++const char * iniparser_getstring(const dictionary * d, const char * key, const char * def); + + /*-------------------------------------------------------------------------*/ + /** +@@ -154,7 +200,35 @@ const char * iniparser_getstring(dictionary * d, const char * key, const char * + Credits: Thanks to A. Becker for suggesting strtol() + */ + /*--------------------------------------------------------------------------*/ +-int iniparser_getint(dictionary * d, const char * key, int notfound); ++int iniparser_getint(const dictionary * d, const char * key, int notfound); ++ ++/*-------------------------------------------------------------------------*/ ++/** ++ @brief Get the string associated to a key, convert to an long int ++ @param d Dictionary to search ++ @param key Key string to look for ++ @param notfound Value to return in case of error ++ @return integer ++ ++ This function queries a dictionary for a key. A key as read from an ++ ini file is given as "section:key". If the key cannot be found, ++ the notfound value is returned. ++ ++ Supported values for integers include the usual C notation ++ so decimal, octal (starting with 0) and hexadecimal (starting with 0x) ++ are supported. Examples: ++ ++ - "42" -> 42 ++ - "042" -> 34 (octal -> decimal) ++ - "0x42" -> 66 (hexa -> decimal) ++ ++ Warning: the conversion may overflow in various ways. Conversion is ++ totally outsourced to strtol(), see the associated man page for overflow ++ handling. ++ */ ++/*--------------------------------------------------------------------------*/ ++long int iniparser_getlongint(const dictionary * d, const char * key, long int notfound); ++ + + /*-------------------------------------------------------------------------*/ + /** +@@ -169,7 +243,7 @@ int iniparser_getint(dictionary * d, const char * key, int notfound); + the notfound value is returned. + */ + /*--------------------------------------------------------------------------*/ +-double iniparser_getdouble(dictionary * d, const char * key, double notfound); ++double iniparser_getdouble(const dictionary * d, const char * key, double notfound); + + /*-------------------------------------------------------------------------*/ + /** +@@ -203,7 +277,7 @@ double iniparser_getdouble(dictionary * d, const char * key, double notfound); + necessarily have to be 0 or 1. + */ + /*--------------------------------------------------------------------------*/ +-int iniparser_getboolean(dictionary * d, const char * key, int notfound); ++int iniparser_getboolean(const dictionary * d, const char * key, int notfound); + + + /*-------------------------------------------------------------------------*/ +@@ -212,17 +286,16 @@ int iniparser_getboolean(dictionary * d, const char * key, int notfound); + @param ini Dictionary to modify. + @param entry Entry to modify (entry name) + @param val New value to associate to the entry. +- @return int 0 if Ok, -1 otherwise. ++ @return int 0 if Ok, -1 otherwise. + + If the given entry can be found in the dictionary, it is modified to +- contain the provided value. If it cannot be found, -1 is returned. ++ contain the provided value. If it cannot be found, the entry is created. + It is Ok to set val to NULL. + */ + /*--------------------------------------------------------------------------*/ +-int iniparser_setstring(dictionary * ini, const char * entry, const char * val); +- + int iniparser_set(dictionary * ini, const char * entry, const char * val); + ++ + /*-------------------------------------------------------------------------*/ + /** + @brief Delete an entry in a dictionary +@@ -247,7 +320,7 @@ void iniparser_unset(dictionary * ini, const char * entry); + of querying for the presence of sections in a dictionary. + */ + /*--------------------------------------------------------------------------*/ +-int iniparser_find_entry(dictionary * ini, const char * entry) ; ++int iniparser_find_entry(const dictionary * ini, const char * entry) ; + + /*-------------------------------------------------------------------------*/ + /** +@@ -278,4 +351,8 @@ dictionary * iniparser_load(const char * ininame); + /*--------------------------------------------------------------------------*/ + void iniparser_freedict(dictionary * d); + ++#ifdef __cplusplus ++} ++#endif ++ + #endif +-- +GitLab + diff --git a/package/xenomai/Config.in b/package/xenomai/Config.in new file mode 100644 index 00000000..ec6d9e5d --- /dev/null +++ b/package/xenomai/Config.in @@ -0,0 +1,219 @@ +config BR2_PACKAGE_XENOMAI_COBALT_ARCH_SUPPORTS + bool + default y if BR2_i386 + default y if BR2_x86_64 + default y if BR2_powerpc + default y if BR2_arm && !BR2_ARM_CPU_ARMV7M && !BR2_ARM_CPU_ARMV8A + +comment "xenomai needs a glibc or uClibc toolchain w/ threads" + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_USES_MUSL + +config BR2_PACKAGE_XENOMAI + bool "Xenomai Userspace" + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on BR2_TOOLCHAIN_HAS_THREADS + # uses , __WORDSIZE and bits/local_lim.h + depends on !BR2_TOOLCHAIN_USES_MUSL + help + Real-Time Framework for Linux + http://www.xenomai.org + + Xenomai is split in two parts: a kernel part and an + userspace part. + + This package contains the userspace part, which consists + mainly in libraries to write userspace real-time programs + that interact with the in-kernel Xenomai real-time core. + + For those libraries to work, you need a Xenomai-enabled + kernel. This is possible in two ways: + - if you compile your kernel with Buildroot, you need to go + to Linux Kernel -> Linux Kernel Extensions to enable the + Xenomai extension. + - if you compile your kernel outside of Buildroot, you need + to make sure that it is Xenomai-enabled. + + Finally, if you are using a static /dev, make sure to + uncomment the Xenomai entries listed in + target/generic/device_table_dev.txt. + +if BR2_PACKAGE_XENOMAI + +choice + bool "Xenomai version" + help + Make sure that the selected version has a patch for your + selected Linux kernel. If it does not, download and select a + patch manually with BR2_LINUX_KERNEL_EXT_XENOMAI_ADEOS_PATCH, + in the Linux Kernel -> Linux Kernel Extensions menu. + +config BR2_PACKAGE_XENOMAI_LATEST_VERSION + bool "Latest version (3.0.10)" + +config BR2_PACKAGE_XENOMAI_CUSTOM_VERSION + bool "Custom version" + +config BR2_PACKAGE_XENOMAI_CUSTOM_TARBALL + bool "Custom tarball" + +config BR2_PACKAGE_XENOMAI_CUSTOM_GIT + bool "Custom Git repository" + +endchoice + +config BR2_PACKAGE_XENOMAI_REPOSITORY + string "URL of custom repository" + default "https://gitlab.denx.de/Xenomai/xenomai.git" + depends on BR2_PACKAGE_XENOMAI_CUSTOM_GIT + +config BR2_PACKAGE_XENOMAI_VERSION + string "Custom Xenomai version" if \ + !BR2_PACKAGE_XENOMAI_LATEST_VERSION && \ + !BR2_PACKAGE_XENOMAI_CUSTOM_TARBALL + default "3.0.10" if BR2_PACKAGE_XENOMAI_LATEST_VERSION + default "custom" if BR2_PACKAGE_XENOMAI_CUSTOM_TARBALL + +config BR2_PACKAGE_XENOMAI_CUSTOM_TARBALL_URL + string "URL of custom tarball" + depends on BR2_PACKAGE_XENOMAI_CUSTOM_TARBALL + +choice + prompt "Xenomai core" + default BR2_PACKAGE_XENOMAI_MERCURY + help + Select the Xenomai core: dual kernel (Cobalt) + or native Linux Kernel (Mercury). + +config BR2_PACKAGE_XENOMAI_MERCURY + bool "Mercury" + depends on !BR2_LINUX_KERNEL_EXT_XENOMAI + help + Select Mercury core for the Xenomai userspace. + You want to use it if you have the native Linux Kernel. + +config BR2_PACKAGE_XENOMAI_COBALT + bool "Cobalt" + depends on BR2_PACKAGE_XENOMAI_COBALT_ARCH_SUPPORTS + help + Select Cobalt core (dual kernel) for the Xenomai + userspace. Use this if you use a Xenomai-patched + Linux kernel. + + If you want to use Cobalt core, your kernel must have + the Adeos and Xenomai patches applied to it. You can + add these through the BR2_LINUX_KERNEL_EXT_XENOMAI option + in the Linux Kernel Extensions menu. +endchoice + +config BR2_PACKAGE_XENOMAI_ENABLE_SMP + bool "Enable SMP support" + default y + # SMP not supported below armv6 + depends on !BR2_ARM_CPU_ARMV4 && !BR2_ARM_CPU_ARMV5 + help + This option enables SMP support in Xenomai userspace. + + If this option is turned on while no SMP support is enabled + in the kernel, things will still work. However, if SMP is + enabled in the kernel but this option is not turned on, + Xenomai applications will complain with: + + feature mismatch: missing="smp/nosmp" + + Please refer to this troubleshooting guide for more + information: + + http://xenomai.org/troubleshooting-a-dual-kernel-configuration/#feature_mismatch_missing8221smpnosmp8221 + +config BR2_PACKAGE_XENOMAI_ENABLE_REGISTRY + bool "Enable registry" + depends on !BR2_STATIC_LIBS # libfuse + depends on BR2_TOOLCHAIN_HAS_THREADS # libfuse + depends on BR2_USE_MMU # libfuse + select BR2_PACKAGE_LIBFUSE + help + Xenomai APIs can export their internal state through a + pseudo-filesystem, whose files may be read to obtain + information about the existing real-time objects, such as + tasks, semaphores, message queues and so on. + +comment "registry needs a toolchain w/ threads, dynamic library" + depends on BR2_USE_MMU + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS + +config BR2_PACKAGE_XENOMAI_ENABLE_REGISTRY_PATH + string "Custom registry root path" + depends on BR2_PACKAGE_XENOMAI_ENABLE_REGISTRY + help + Specify the root path of the registry here. + To use the Xenomai default (currently: /var/run/xenomai), + leave this option empty. + +config BR2_PACKAGE_XENOMAI_ADDITIONAL_CONF_OPTS + string "Additional configure options" + help + Specify any additional options to pass to the configure + script here. See Xenomai documentation for details. + +config BR2_PACKAGE_XENOMAI_TESTSUITE + bool "Install testsuite" + help + This option allows to install the Xenomai test programs. + +config BR2_PACKAGE_XENOMAI_RTCAN + bool "RTCan utilities" + help + This option allows to install the Xenomai RT-CAN utilities. + +config BR2_PACKAGE_XENOMAI_ANALOGY + bool "Analogy libs and utils" + help + This option allows to install the Xenomai Analogy utilities + and libraries + +menu "Skin selection" + +config BR2_PACKAGE_XENOMAI_NATIVE_SKIN + bool "Alchemy (native) skin" + default y + help + This option allows to install the Alchemy Xenomai skin, + previously called 'native' + +config BR2_PACKAGE_XENOMAI_POSIX_SKIN + bool "POSIX skin" + default y + help + This option allows to install the POSIX Xenomai skin + +config BR2_PACKAGE_XENOMAI_PSOS_SKIN + bool "pSOS skin" + help + This option allows to install the pSOS Xenomai skin + +config BR2_PACKAGE_XENOMAI_RTAI_SKIN + bool "RTAI skin" + help + This option allows to install the RTAI Xenomai skin + +config BR2_PACKAGE_XENOMAI_UITRON_SKIN + bool "uITRON skin" + help + This option allows to install the uITRON Xenomai skin + +config BR2_PACKAGE_XENOMAI_VRTX_SKIN + bool "VRTX skin" + help + This option allows to install the VRTX Xenomai skin + +config BR2_PACKAGE_XENOMAI_VXWORKS_SKIN + bool "VxWorks skin" + help + This option allows to install the VxWorks Xenomai skin + +endmenu + +endif diff --git a/package/xenomai/xenomai.hash b/package/xenomai/xenomai.hash new file mode 100644 index 00000000..7a07f061 --- /dev/null +++ b/package/xenomai/xenomai.hash @@ -0,0 +1,17 @@ +# Locally computed; +sha256 080f893d6ab8e3065285fbb482695477a0502b9490dccd1f744cebaac94691e5 xenomai-3.0.10.tar.bz2 +sha256 d37ebe86bf618942dad958927c44403f9b02fbebb3071a4a08408ccbdab5290f debian/copyright +sha256 f3380321da72ff509bf6939aa80e6d02fd22268f5c705137b34c205b39bc63a0 include/COPYING +sha256 d6b6d8ed1b12309085caf1cf775ea4acdad3288c7f7d993c2502bd19c87e4764 kernel/cobalt/COPYING +sha256 d6b6d8ed1b12309085caf1cf775ea4acdad3288c7f7d993c2502bd19c87e4764 kernel/cobalt/posix/COPYING +sha256 9c90501baa30534ffed6b39eef413bd1727170ef691fd9768dc8644c3042df54 kernel/cobalt/rtdm/COPYING +sha256 eea173a556abac0370461e57e12aab266894ea6be3874c2be05fd87871f75449 lib/alchemy/COPYING +sha256 eea173a556abac0370461e57e12aab266894ea6be3874c2be05fd87871f75449 lib/analogy/COPYING +sha256 0519083691511d71408f8c9a2794fa2f6ad13a5eec00717f4572b54d18d6f9da lib/boilerplate/iniparser/LICENSE +sha256 eea173a556abac0370461e57e12aab266894ea6be3874c2be05fd87871f75449 lib/boilerplate/COPYING +sha256 eea173a556abac0370461e57e12aab266894ea6be3874c2be05fd87871f75449 lib/cobalt/COPYING +sha256 eea173a556abac0370461e57e12aab266894ea6be3874c2be05fd87871f75449 lib/copperplate/COPYING +sha256 eea173a556abac0370461e57e12aab266894ea6be3874c2be05fd87871f75449 lib/psos/COPYING +sha256 eea173a556abac0370461e57e12aab266894ea6be3874c2be05fd87871f75449 lib/smokey/COPYING +sha256 eea173a556abac0370461e57e12aab266894ea6be3874c2be05fd87871f75449 lib/trank/COPYING +sha256 eea173a556abac0370461e57e12aab266894ea6be3874c2be05fd87871f75449 lib/vxworks/COPYING diff --git a/package/xenomai/xenomai.mk b/package/xenomai/xenomai.mk new file mode 100644 index 00000000..7e3b1300 --- /dev/null +++ b/package/xenomai/xenomai.mk @@ -0,0 +1,161 @@ +################################################################################ +# +# xenomai +# +################################################################################ + +XENOMAI_VERSION = $(call qstrip,$(BR2_PACKAGE_XENOMAI_VERSION)) +ifeq ($(BR2_PACKAGE_XENOMAI_CUSTOM_TARBALL),y) +XENOMAI_TARBALL = $(call qstrip,$(BR2_PACKAGE_XENOMAI_CUSTOM_TARBALL_URL)) +XENOMAI_SOURCE = $(notdir $(XENOMAI_TARBALL)) +XENOMAI_SITE = $(patsubst %/,%,$(dir $(XENOMAI_TARBALL))) +else ifeq ($(BR2_PACKAGE_XENOMAI_CUSTOM_GIT),y) +XENOMAI_SITE = $(call qstrip,$(BR2_PACKAGE_XENOMAI_REPOSITORY)) +XENOMAI_SITE_METHOD = git +else +XENOMAI_SOURCE = xenomai-$(XENOMAI_VERSION).tar.bz2 +XENOMAI_SITE = http://xenomai.org/downloads/xenomai/stable +endif + +# Exclude all from the hash check, but the latest version. +ifeq ($(BR2_PACKAGE_XENOMAI)$(BR2_PACKAGE_XENOMAI_LATEST_VERSION),y) +BR_NO_CHECK_HASH_FOR += $(XENOMAI_SOURCE) +endif + +XENOMAI_LICENSE = GPL-2.0+ with exception (headers), LGPL-2.1+ (libraries), GPL-2.0+ (kernel), GFDL-1.2+ (docs), GPL-2.0 (ipipe patch, can driver) +# GFDL is not included but refers to gnu.org +XENOMAI_LICENSE_FILES = debian/copyright include/COPYING kernel/cobalt/COPYING \ + kernel/cobalt/posix/COPYING kernel/cobalt/rtdm/COPYING \ + lib/alchemy/COPYING lib/analogy/COPYING \ + lib/boilerplate/iniparser/LICENSE lib/boilerplate/COPYING \ + lib/cobalt/COPYING lib/copperplate/COPYING lib/psos/COPYING \ + lib/smokey/COPYING lib/trank/COPYING lib/vxworks/COPYING + +XENOMAI_DEPENDENCIES = host-pkgconf + +XENOMAI_INSTALL_STAGING = YES +XENOMAI_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) install-user +XENOMAI_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) install-user + +XENOMAI_CONF_OPTS += --includedir=/usr/include/xenomai/ + +ifeq ($(BR2_PACKAGE_XENOMAI_MERCURY),y) +XENOMAI_CONF_OPTS += --with-core=mercury +else +XENOMAI_CONF_OPTS += --with-core=cobalt +endif + +ifeq ($(BR2_PACKAGE_XENOMAI_ENABLE_SMP),y) +XENOMAI_CONF_OPTS += --enable-smp +else +XENOMAI_CONF_OPTS += --disable-smp +endif + +ifeq ($(BR2_PACKAGE_XENOMAI_ENABLE_REGISTRY),y) +XENOMAI_DEPENDENCIES += libfuse +XENOMAI_REGISTRY_PATH = $(call qstrip,$(BR2_PACKAGE_XENOMAI_ENABLE_REGISTRY_PATH)) +ifeq ($(XENOMAI_REGISTRY_PATH),) +XENOMAI_CONF_OPTS += --enable-registry +else +XENOMAI_CONF_OPTS += --enable-registry=$(XENOMAI_REGISTRY_PATH) +endif +else +XENOMAI_CONF_OPTS += --disable-registry +endif + +XENOMAI_CONF_OPTS += $(call qstrip,$(BR2_PACKAGE_XENOMAI_ADDITIONAL_CONF_OPTS)) + +# Some of these files may be desired by some users -- at that point specific +# config options need to be added to keep a particular set. +define XENOMAI_REMOVE_UNNEEDED_FILES + for i in xeno xeno-config xeno-info wrap-link.sh ; do \ + rm -f $(TARGET_DIR)/usr/bin/$$i ; \ + done + for i in cobalt modechk ; do \ + rm -f $(TARGET_DIR)/usr/lib/$$i.wrappers ; \ + done + for i in autotune corectl hdb rtnet nomaccfg rtcfg rtifconfig \ + rtiwconfig rtping rtroute tdmacfg rtps slackspot version; do \ + rm -f $(TARGET_DIR)/usr/sbin/$$i ; \ + done +endef + +XENOMAI_POST_INSTALL_TARGET_HOOKS += XENOMAI_REMOVE_UNNEEDED_FILES + +ifeq ($(BR2_PACKAGE_XENOMAI_TESTSUITE),) +define XENOMAI_REMOVE_TESTSUITE + rm -rf $(TARGET_DIR)/usr/share/xenomai/ + for i in clocktest gpiotest latency smokey spitest switchtest \ + xeno-test-run-wrapper dohell xeno-test-run xeno-test ; do \ + rm -f $(TARGET_DIR)/usr/bin/$$i ; \ + done + rm -rf $(TARGET_DIR)/usr/demo/ +endef + +XENOMAI_POST_INSTALL_TARGET_HOOKS += XENOMAI_REMOVE_TESTSUITE +endif + +ifeq ($(BR2_PACKAGE_XENOMAI_RTCAN),) +define XENOMAI_REMOVE_RTCAN_PROGS + for i in rtcanrecv rtcansend ; do \ + rm -f $(TARGET_DIR)/usr/bin/$$i ; \ + done + rm -f $(TARGET_DIR)/usr/sbin/rtcanconfig +endef + +XENOMAI_POST_INSTALL_TARGET_HOOKS += XENOMAI_REMOVE_RTCAN_PROGS +endif + +ifeq ($(BR2_PACKAGE_XENOMAI_ANALOGY),) +define XENOMAI_REMOVE_ANALOGY + for i in cmd_read cmd_write cmd_bits insn_read insn_write insn_bits \ + wf_generate ; do \ + rm -f $(TARGET_DIR)/usr/bin/$$i ; \ + done + for i in analogy_config analogy_calibrate ; do \ + rm -f $(TARGET_DIR)/usr/sbin/$$i ; \ + done + rm -f $(TARGET_DIR)/usr/lib/libanalogy.* +endef + +XENOMAI_POST_INSTALL_TARGET_HOOKS += XENOMAI_REMOVE_ANALOGY +endif + +XENOMAI_REMOVE_LIBS_LIST += $(if $(BR2_PACKAGE_XENOMAI_NATIVE_SKIN),,alchemy) +XENOMAI_REMOVE_LIBS_LIST += $(if $(BR2_PACKAGE_XENOMAI_POSIX_SKIN),,posix) +XENOMAI_REMOVE_LIBS_LIST += $(if $(BR2_PACKAGE_XENOMAI_PSOS_SKIN),,psos) +XENOMAI_REMOVE_LIBS_LIST += $(if $(BR2_PACKAGE_XENOMAI_RTAI_SKIN),,rtai) +XENOMAI_REMOVE_LIBS_LIST += $(if $(BR2_PACKAGE_XENOMAI_TESTSUITE),,smokey) +XENOMAI_REMOVE_LIBS_LIST += $(if $(BR2_PACKAGE_XENOMAI_UITRON_SKIN),,uitron) +XENOMAI_REMOVE_LIBS_LIST += $(if $(BR2_PACKAGE_XENOMAI_VXWORKS_SKIN),,vxworks) +XENOMAI_REMOVE_LIBS_LIST += $(if $(BR2_PACKAGE_XENOMAI_VRTX_SKIN),,vrtx) + +define XENOMAI_REMOVE_LIBS + for i in $(XENOMAI_REMOVE_LIBS_LIST) ; do \ + rm -f $(TARGET_DIR)/usr/lib/lib$$i.* ; \ + done +endef + +XENOMAI_POST_INSTALL_TARGET_HOOKS += XENOMAI_REMOVE_LIBS + +define XENOMAI_DEVICES + /dev/rtheap c 666 0 0 10 254 0 0 - + /dev/rtscope c 666 0 0 10 253 0 0 - + /dev/rtp c 666 0 0 150 0 0 1 32 +endef + +ifeq ($(BR2_PACKAGE_HAS_UDEV),y) +XENOMAI_DEPENDENCIES += udev + +define XENOMAI_INSTALL_UDEV_RULES + if test -d $(TARGET_DIR)/etc/udev/rules.d ; then \ + for f in $(@D)/kernel/cobalt/udev/*.rules ; do \ + cp $$f $(TARGET_DIR)/etc/udev/rules.d/ || exit 1 ; \ + done ; \ + fi; +endef + +XENOMAI_POST_INSTALL_TARGET_HOOKS += XENOMAI_INSTALL_UDEV_RULES +endif # udev + +$(eval $(autotools-package)) diff --git a/package/xerces/0001-fix-static-linking-with-curl.patch b/package/xerces/0001-fix-static-linking-with-curl.patch new file mode 100644 index 00000000..db38de79 --- /dev/null +++ b/package/xerces/0001-fix-static-linking-with-curl.patch @@ -0,0 +1,39 @@ +From 26e3f1440bbc75c704fc93ff43a2abbfbe4c0203 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Thu, 11 Oct 2018 22:56:50 +0200 +Subject: [PATCH] fix static linking with curl + +When curl is statically built with openssl support, xerces needs to +link with openssl libraries so use pkg_check_modules to get any +needed dependencies + +Fixes: + - http://autobuild.buildroot.org/results/29ca90fff2c8e38f2edf7240eca3aa3fe7397c45 + +Signed-off-by: Fabrice Fontaine +--- + cmake/XercesNetAccessorSelection.cmake | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/cmake/XercesNetAccessorSelection.cmake b/cmake/XercesNetAccessorSelection.cmake +index 7a63f1f6b..e90fcf034 100644 +--- a/cmake/XercesNetAccessorSelection.cmake ++++ b/cmake/XercesNetAccessorSelection.cmake +@@ -31,7 +31,13 @@ if(network) + + # Requires select() which is UNIX only + if(UNIX) +- find_package(CURL) ++ find_package(PkgConfig) ++ if (PkgConfig_FOUND) ++ pkg_check_modules(CURL libcurl) ++ if (NOT CURL_FOUND) ++ find_package(CURL) ++ endif() ++ endif() + if(CURL_FOUND) + list(APPEND netaccessors curl) + endif() +-- +2.17.1 + diff --git a/package/xerces/Config.in b/package/xerces/Config.in new file mode 100644 index 00000000..828b5dd2 --- /dev/null +++ b/package/xerces/Config.in @@ -0,0 +1,21 @@ +config BR2_PACKAGE_XERCES + bool "xerces-c++" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_USE_WCHAR + help + Xerces-C++ is a validating XML parser written in portable C++. + + http://xerces.apache.org/xerces-c/ + +if BR2_PACKAGE_XERCES + +config BR2_PACKAGE_XERCES_ENABLE_NETWORK + bool "Enable network support" + default y + help + Enable network support in xerces + +endif + +comment "xerces-c++ needs a toolchain w/ C++, wchar" + depends on !(BR2_INSTALL_LIBSTDCPP && BR2_USE_WCHAR) diff --git a/package/xerces/xerces.hash b/package/xerces/xerces.hash new file mode 100644 index 00000000..c75ce860 --- /dev/null +++ b/package/xerces/xerces.hash @@ -0,0 +1,5 @@ +# From http://www.apache.org/dist/xerces/c/3/sources/xerces-c-3.2.3.tar.xz.sha256 +sha256 12fc99a9fc1d1a79bd0e927b8b5637a576d6656f45b0d5e70ee3694d379cc149 xerces-c-3.2.3.tar.xz + +# Hash for license file +sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE diff --git a/package/xerces/xerces.mk b/package/xerces/xerces.mk new file mode 100644 index 00000000..a3e5361b --- /dev/null +++ b/package/xerces/xerces.mk @@ -0,0 +1,48 @@ +################################################################################ +# +# xerces +# +################################################################################ + +XERCES_VERSION = 3.2.3 +XERCES_SOURCE = xerces-c-$(XERCES_VERSION).tar.xz +XERCES_SITE = http://archive.apache.org/dist/xerces/c/3/sources +XERCES_LICENSE = Apache-2.0 +XERCES_LICENSE_FILES = LICENSE +XERCES_CPE_ID_VENDOR = apache +XERCES_CPE_ID_PRODUCT = xerces-c\+\+ +XERCES_INSTALL_STAGING = YES + +define XERCES_DISABLE_SAMPLES + $(SED) 's/add_subdirectory(samples)//' $(@D)/CMakeLists.txt +endef + +XERCES_POST_PATCH_HOOKS += XERCES_DISABLE_SAMPLES + +ifeq ($(BR2_PACKAGE_ICU),y) +XERCES_DEPENDENCIES += icu +endif + +ifeq ($(BR2_PACKAGE_LIBICONV),y) +XERCES_CONF_ENV += LIBS=-liconv +XERCES_DEPENDENCIES += libiconv +endif + +ifeq ($(BR2_PACKAGE_XERCES_ENABLE_NETWORK),y) +ifeq ($(BR2_PACKAGE_LIBCURL),y) +XERCES_CONF_OPTS += -Dnetwork-accessor=curl +XERCES_DEPENDENCIES += libcurl +else +XERCES_CONF_OPTS += -Dnetwork-accessor=socket +endif +else +XERCES_CONF_OPTS += -Dnetwork=OFF +endif + +ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y) +XERCES_CONF_OPTS += -Dthreads=ON +else +XERCES_CONF_OPTS += -Dthreads=OFF +endif + +$(eval $(cmake-package)) diff --git a/package/xfsprogs/0001-mdrestore-do-not-do-dynamic-linking-of-libtool-libra.patch b/package/xfsprogs/0001-mdrestore-do-not-do-dynamic-linking-of-libtool-libra.patch new file mode 100644 index 00000000..9030a2aa --- /dev/null +++ b/package/xfsprogs/0001-mdrestore-do-not-do-dynamic-linking-of-libtool-libra.patch @@ -0,0 +1,52 @@ +From d5cbb4f43cc9c30100fbf18a3e0d1fb95e1c1b0a Mon Sep 17 00:00:00 2001 +From: Vicente Olivert Riera +Date: Wed, 25 Nov 2015 10:50:00 +0000 +Subject: [PATCH] mdrestore, scrub: do not do dynamic linking of libtool + libraries + +As explained in commit ece49daeff1a3cad765e106d678c608925c9d768, use +-static-libtool-libs instead of -static to allow fallback to the dynamic +linking for libuuid only. Otherwise the build will fail like this: + +ld: attempted static link of dynamic object `/usr/lib/libuuid.so' + +Signed-off-by: Vicente Olivert Riera +[Sent upstream: https://www.spinics.net/lists/xfs/msg36149.html] +[baruch: update for v4.15.1; extend to include scrub] +Signed-off-by: Baruch Siach +[matt: update for v4.16.1; adjusted libunistring -> libicu] +Signed-off-by: Matt Weber +--- + mdrestore/Makefile | 2 +- + scrub/Makefile | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/mdrestore/Makefile b/mdrestore/Makefile +index 136ae716d691..75ff1bad78e9 100644 +--- a/mdrestore/Makefile ++++ b/mdrestore/Makefile +@@ -10,7 +10,7 @@ CFILES = xfs_mdrestore.c + + LLDLIBS = $(LIBXFS) $(LIBFROG) $(LIBRT) $(LIBPTHREAD) $(LIBUUID) + LTDEPENDENCIES = $(LIBXFS) $(LIBFROG) +-LLDFLAGS = -static ++LLDFLAGS = -static-libtool-libs + + default: depend $(LTCOMMAND) + +diff --git a/scrub/Makefile b/scrub/Makefile +index 063279400262..949f6fd8ba94 100644 +--- a/scrub/Makefile ++++ b/scrub/Makefile +@@ -70,7 +70,7 @@ xfs_scrub.c + + LLDLIBS += $(LIBHANDLE) $(LIBFROG) $(LIBPTHREAD) $(LIBICU_LIBS) $(LIBRT) + LTDEPENDENCIES += $(LIBHANDLE) $(LIBFROG) +-LLDFLAGS = -static ++LLDFLAGS = -static-libtool-libs + + ifeq ($(HAVE_MALLINFO),yes) + LCFLAGS += -DHAVE_MALLINFO +-- +2.16.2 + diff --git a/package/xfsprogs/0002-libxfs-do-not-try-to-run-the-crc32selftest.patch b/package/xfsprogs/0002-libxfs-do-not-try-to-run-the-crc32selftest.patch new file mode 100644 index 00000000..6778d069 --- /dev/null +++ b/package/xfsprogs/0002-libxfs-do-not-try-to-run-the-crc32selftest.patch @@ -0,0 +1,44 @@ +From 3a77dfc54271059dcac305384bf6ace34fe1f3d3 Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Sun, 18 Dec 2016 15:37:27 +0100 +Subject: [PATCH] libxfs: do not try to run the crc32selftest + +Even though the crc32selftest is natively compiled (because it is to be +executed), it fails in cross-compilation as the host may lack the +required headers, like uuid/uuid.h (e.g. in a minimal environment). + +Moreover, running the crc32selftest natively is completely wrong, +because it passing on the host does not mean it would still pass n the +target (because endianness or bitness or alignment differences). + +So, just disable running the crc32selftest altogether. + +Note that there's a remaining bug-in-hiding, because the crc32 table +generator is natively built, but with the target CFLAGS. + +Signed-off-by: "Yann E. MORIN" +Signed-off-by: "Fabrice Fontaine" +[Update for 4.18.0: crc32 has been moved from libxfs to libfrog] +--- + libxfs/Makefile | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/libfrog/Makefile b/libxfs/Makefile +index 62608bd..e021625 100644 +--- a/libfrog/Makefile ++++ b/libfrog/Makefile +@@ -112,9 +112,9 @@ LTLIBS = $(LIBPTHREAD) $(LIBRT) + # don't try linking xfs_repair with a debug libxfs. + DEBUG = -DNDEBUG + +-LDIRT = gen_crc32table crc32table.h crc32selftest ++LDIRT = gen_crc32table crc32table.h + +-default: crc32selftest ltdepend $(LTLIBRARY) ++default: ltdepend $(LTLIBRARY) + + crc32table.h: gen_crc32table.c + @echo " [CC] gen_crc32table" +-- +2.7.4 + diff --git a/package/xfsprogs/Config.in b/package/xfsprogs/Config.in new file mode 100644 index 00000000..b8e07cc8 --- /dev/null +++ b/package/xfsprogs/Config.in @@ -0,0 +1,16 @@ +comment "xfsprogs needs a toolchain w/ threads" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS + +config BR2_PACKAGE_XFSPROGS + bool "xfsprogs" + depends on BR2_USE_MMU # fork() + depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_INIH + select BR2_PACKAGE_UTIL_LINUX + select BR2_PACKAGE_UTIL_LINUX_LIBUUID + select BR2_PACKAGE_UTIL_LINUX_LIBBLKID + help + The XFS file system utilities and libraries + + http://xfs.org diff --git a/package/xfsprogs/xfsprogs.hash b/package/xfsprogs/xfsprogs.hash new file mode 100644 index 00000000..b379839e --- /dev/null +++ b/package/xfsprogs/xfsprogs.hash @@ -0,0 +1,6 @@ +# From https://www.kernel.org/pub/linux/utils/fs/xfs/xfsprogs/sha256sums.asc +sha256 e04017e46d43e4d54b9a560fd7cea922520f8f6ef882404969d20cd4e5c790e9 xfsprogs-5.10.0.tar.xz + +# Hash for license files +sha256 f6b78c087c3ebdf0f3c13415070dd480a3f35d8fc76f3d02180a407c1c812f79 LICENSES/GPL-2.0 +sha256 0b9a4febcdee6de55872501d5c1a8f5d8b0d1650cd4d5351995ceb22e889f8ca LICENSES/LGPL-2.1 diff --git a/package/xfsprogs/xfsprogs.mk b/package/xfsprogs/xfsprogs.mk new file mode 100644 index 00000000..71d02278 --- /dev/null +++ b/package/xfsprogs/xfsprogs.mk @@ -0,0 +1,32 @@ +################################################################################ +# +# xfsprogs +# +################################################################################ + +XFSPROGS_VERSION = 5.10.0 +XFSPROGS_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/fs/xfs/xfsprogs +XFSPROGS_SOURCE = xfsprogs-$(XFSPROGS_VERSION).tar.xz +XFSPROGS_LICENSE = GPL-2.0, GPL-2.0+, LGPL-2.1 (libhandle, few headers) +XFSPROGS_LICENSE_FILES = LICENSES/GPL-2.0 LICENSES/LGPL-2.1 + +XFSPROGS_DEPENDENCIES = inih util-linux + +XFSPROGS_CONF_ENV = ac_cv_header_aio_h=yes ac_cv_lib_rt_lio_listio=yes PLATFORM="linux" +XFSPROGS_CONF_OPTS = \ + --enable-lib64=no \ + --enable-gettext=no \ + INSTALL_USER=root \ + INSTALL_GROUP=root \ + --enable-static + +ifeq ($(BR2_PACKAGE_ICU),y) +XFSPROGS_DEPENDENCIES += icu +XFSPROGS_CONF_OPTS += --enable-libicu +else +XFSPROGS_CONF_OPTS += --disable-libicu +endif + +XFSPROGS_INSTALL_TARGET_OPTS = DIST_ROOT=$(TARGET_DIR) install + +$(eval $(autotools-package)) diff --git a/package/xinetd/0001-ar.patch b/package/xinetd/0001-ar.patch new file mode 100644 index 00000000..566f2f75 --- /dev/null +++ b/package/xinetd/0001-ar.patch @@ -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 + +--- 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 index 00000000..7a323eb6 --- /dev/null +++ b/package/xinetd/0002-destdir.patch @@ -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 + +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 index 00000000..6c32b729 --- /dev/null +++ b/package/xinetd/0003-rpc-fix.patch @@ -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 + +--- 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 index 00000000..e1cb48ac --- /dev/null +++ b/package/xinetd/0004-configure-rlim_t.patch @@ -0,0 +1,18 @@ +Have the configure script look for rlim_t in + +That's where POSIX says it should be. Some libcs will include its +definition via as well, but musl doesn't. + +Signed-off-by: Maarten ter Huurne + +--- 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 ++#include + #if STDC_HEADERS + #include + #endif diff --git a/package/xinetd/0005-CVE-2013-4342-xinetd-ignores-user-and-group-directiv.patch b/package/xinetd/0005-CVE-2013-4342-xinetd-ignores-user-and-group-directiv.patch new file mode 100644 index 00000000..bb2ee1fc --- /dev/null +++ b/package/xinetd/0005-CVE-2013-4342-xinetd-ignores-user-and-group-directiv.patch @@ -0,0 +1,29 @@ +From 91e2401a219121eae15244a6b25d2e79c1af5864 Mon Sep 17 00:00:00 2001 +From: Thomas Swan +Date: Wed, 2 Oct 2013 23:17:17 -0500 +Subject: [PATCH] CVE-2013-4342: xinetd: ignores user and group directives for + TCPMUX services + +Originally reported to Debian in 2005 and rediscovered , xinetd would execute TCPMUX services without dropping privilege to match the service configuration allowing the service to run with same privilege as the xinetd process (root). + +Signed-off-by: Peter Korsgaard +--- + xinetd/builtins.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/xinetd/builtins.c b/xinetd/builtins.c +index 3b85579..34a5bac 100644 +--- a/xinetd/builtins.c ++++ b/xinetd/builtins.c +@@ -617,7 +617,7 @@ static void tcpmux_handler( const struct server *serp ) + if( SC_IS_INTERNAL( scp ) ) { + SC_INTERNAL(scp, nserp); + } else { +- exec_server(nserp); ++ child_process(nserp); + } + } + +-- +2.20.1 + diff --git a/package/xinetd/Config.in b/package/xinetd/Config.in new file mode 100644 index 00000000..3bf3043d --- /dev/null +++ b/package/xinetd/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_XINETD + bool "xinetd" + depends on BR2_USE_MMU # fork() + help + xinetd is a secure replacement for inetd. It was originally + written by panos@cs.colorado.edu. + + http://www.xinetd.org diff --git a/package/xinetd/xinetd.hash b/package/xinetd/xinetd.hash new file mode 100644 index 00000000..ce5a93f5 --- /dev/null +++ b/package/xinetd/xinetd.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 620b25f4ab4d72fdf32b13797156ea40df2049f1c07e640177e5fec544e9a94c xinetd-2.3.15.tar.gz +sha256 2f3dd19831b1837f7360f80a7700a130c04a59e387d4359299d6df712308bbed COPYRIGHT diff --git a/package/xinetd/xinetd.mk b/package/xinetd/xinetd.mk new file mode 100644 index 00000000..f58c26f0 --- /dev/null +++ b/package/xinetd/xinetd.mk @@ -0,0 +1,38 @@ +################################################################################ +# +# xinetd +# +################################################################################ + +XINETD_VERSION = 2.3.15 +XINETD_SITE = \ + $(call github,xinetd-org,xinetd,xinetd-$(subst .,-,$(XINETD_VERSION))) +XINETD_LICENSE = xinetd license +XINETD_LICENSE_FILES = COPYRIGHT +XINETD_CPE_ID_VENDOR = xinetd + +# 0005-CVE-2013-4342-xinetd-ignores-user-and-group-directiv.patch +XINETD_IGNORE_CVES += CVE-2013-4342 + +XINETD_CFLAGS = $(TARGET_CFLAGS) + +# Three cases here: +# 1. We have libtirpc, use it by passing special flags +# 2. We have native RPC support, use it, no need to pass special +# flags (so this case 2 is implicit and not visible below) +# 3. We don't have RPC support, pass -DNO_RPC to disable it +ifeq ($(BR2_PACKAGE_LIBTIRPC),y) +XINETD_DEPENDENCIES += libtirpc host-pkgconf +XINETD_CFLAGS += "`$(PKG_CONFIG_HOST_BINARY) --cflags libtirpc`" +XINETD_LIBS += "`$(PKG_CONFIG_HOST_BINARY) --libs libtirpc`" +else ifeq ($(BR2_TOOLCHAIN_HAS_NATIVE_RPC),) +XINETD_CFLAGS += -DNO_RPC +endif + +XINETD_CONF_ENV += \ + CFLAGS="$(XINETD_CFLAGS)" \ + LIBS="$(XINETD_LIBS)" + +XINETD_MAKE_OPTS = AR="$(TARGET_AR)" + +$(eval $(autotools-package)) diff --git a/package/xl2tp/Config.in b/package/xl2tp/Config.in new file mode 100644 index 00000000..7e2d2f6e --- /dev/null +++ b/package/xl2tp/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_XL2TP + bool "xl2tp" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_LIBPCAP + help + Layer 2 Tunnelling Protocol (RFC2661). + + xl2tpd is an open source implementation of the L2TP tunneling + protocol. xl2tpd is forked from l2tpd and is maintained by + Xelerance Corporation. + + http://www.xelerance.com/software/xl2tpd/ diff --git a/package/xl2tp/xl2tp.hash b/package/xl2tp/xl2tp.hash new file mode 100644 index 00000000..471657f0 --- /dev/null +++ b/package/xl2tp/xl2tp.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 c28608b315adb25c8bf9579c1d6ab52ab47c4c43b68a5ab63c5d039196fd180f xl2tp-1.3.16.tar.gz +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE diff --git a/package/xl2tp/xl2tp.mk b/package/xl2tp/xl2tp.mk new file mode 100644 index 00000000..89ca65a7 --- /dev/null +++ b/package/xl2tp/xl2tp.mk @@ -0,0 +1,26 @@ +################################################################################ +# +# xl2tp +# +################################################################################ + +XL2TP_VERSION = 1.3.16 +XL2TP_SITE = $(call github,xelerance,xl2tpd,v$(XL2TP_VERSION)) +XL2TP_DEPENDENCIES = libpcap +XL2TP_LICENSE = GPL-2.0 +XL2TP_LICENSE_FILES = LICENSE + +ifeq ($(BR2_STATIC_LIBS),y) +XL2TP_LDLIBS = LDLIBS="`$(STAGING_DIR)/usr/bin/pcap-config --static --additional-libs`" +endif + +define XL2TP_BUILD_CMDS + $(SED) 's/ -O2 //' $(@D)/Makefile + $(TARGET_CONFIGURE_OPTS) $(MAKE) $(XL2TP_LDLIBS) -C $(@D) +endef + +define XL2TP_INSTALL_TARGET_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) DESTDIR=$(TARGET_DIR) PREFIX=/usr -C $(@D) install +endef + +$(eval $(generic-package)) diff --git a/package/xl2tp/xl2tpd b/package/xl2tp/xl2tpd new file mode 100755 index 00000000..36c12a23 --- /dev/null +++ b/package/xl2tp/xl2tpd @@ -0,0 +1,27 @@ +#!/bin/sh +# +PATH=/bin:/usr/bin:/sbin:/usr/sbin +DAEMON=/usr/sbin/xl2tpd +PIDFILE=/var/run/xl2tpd.pid + +test -f $DAEMON || exit 0 + +case "$1" in + start) + start-stop-daemon -S -p $PIDFILE -x $DAEMON -- -D & + ;; + stop) + start-stop-daemon -K -p $PIDFILE -x $DAEMON + ;; + restart|force-reload) + start-stop-daemon -K -p $PIDFILE -x $DAEMON + sleep 1 + start-stop-daemon -S -p $PIDFILE -x $DAEMON + ;; + *) + echo "Usage: /etc/init.d/xl2tdp {start|stop|restart|force-reload}" + exit 1 + ;; +esac + +exit 0 diff --git a/package/xmlstarlet/Config.in b/package/xmlstarlet/Config.in new file mode 100644 index 00000000..99762b87 --- /dev/null +++ b/package/xmlstarlet/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_XMLSTARLET + bool "xmlstarlet" + select BR2_PACKAGE_LIBXML2 + select BR2_PACKAGE_LIBXSLT + select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE + help + Command Line XML Toolkit + + http://xmlstar.sourceforge.net/ diff --git a/package/xmlstarlet/xmlstarlet.hash b/package/xmlstarlet/xmlstarlet.hash new file mode 100644 index 00000000..71911509 --- /dev/null +++ b/package/xmlstarlet/xmlstarlet.hash @@ -0,0 +1,5 @@ +# From https://sourceforge.net/projects/xmlstar/files/xmlstarlet/1.6.1/ +sha1 87bb104f546caca71b9540807c5b2738944cb219 xmlstarlet-1.6.1.tar.gz +md5 f3c5dfa3b1a2ee06cd57c255cc8b70a0 xmlstarlet-1.6.1.tar.gz +# Locally computed +sha256 6641cc5b00c1651fa22175f34efd01695e64a348b1ba07048538276f44866862 COPYING diff --git a/package/xmlstarlet/xmlstarlet.mk b/package/xmlstarlet/xmlstarlet.mk new file mode 100644 index 00000000..b79c3f56 --- /dev/null +++ b/package/xmlstarlet/xmlstarlet.mk @@ -0,0 +1,34 @@ +################################################################################ +# +# xmlstarlet +# +################################################################################ + +XMLSTARLET_VERSION = 1.6.1 +XMLSTARLET_SITE = http://downloads.sourceforge.net/project/xmlstar/xmlstarlet/$(XMLSTARLET_VERSION) +XMLSTARLET_LICENSE = MIT +XMLSTARLET_LICENSE_FILES = COPYING + +XMLSTARLET_DEPENDENCIES += libxml2 libxslt \ + $(if $(BR2_PACKAGE_LIBICONV),libiconv) + +XMLSTARLET_CONF_OPTS += \ + --with-libxml-prefix=$(STAGING_DIR)/usr \ + --with-libxslt-prefix=$(STAGING_DIR)/usr \ + --with-libiconv-prefix=$(STAGING_DIR)/usr + +ifeq ($(BR2_STATIC_LIBS),y) +XMLSTARLET_CONF_OPTS += --enable-static-libs +XMLSTARLET_CONF_ENV = LIBS="`$(PKG_CONFIG_HOST_BINARY) --libs libxml-2.0 libexslt`" +else +XMLSTARLET_CONF_OPTS += --disable-static-libs +endif + +HOST_XMLSTARLET_DEPENDENCIES += host-libxml2 host-libxslt + +HOST_XMLSTARLET_CONF_OPTS += \ + --with-libxml-prefix=$(HOST_DIR) \ + --with-libxslt-prefix=$(HOST_DIR) + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/xorcurses/Config.in b/package/xorcurses/Config.in new file mode 100644 index 00000000..6a94a2ee --- /dev/null +++ b/package/xorcurses/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_XORCURSES + bool "xorcurses" + select BR2_PACKAGE_NCURSES + help + XorCurses is a game remake of the 8-bit game 'Xor'. Your task + is to roam around a series of mazes where you have to collect + all blue masks before finding the exit. Note that the game + needs a terminal with colors, i.e. make sure that the TERM + environment variable is set to "linux" ("vt100" won't work). + + https://github.com/jwm-art-net/XorCurses/ diff --git a/package/xorcurses/xorcurses.hash b/package/xorcurses/xorcurses.hash new file mode 100644 index 00000000..549b5adf --- /dev/null +++ b/package/xorcurses/xorcurses.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 6c60a41b9a74ecd5f6ded337b9982e81eaf7b31a654a4a32b219e3a2ff638ae3 xorcurses-04b664826c5bd30dd483f6a5c8c189ef97e255da.tar.gz +sha256 8632a67e5a76be4cdf7fd0fc6509e21bd6c647183bd9d2325310d5098c652a3a README diff --git a/package/xorcurses/xorcurses.mk b/package/xorcurses/xorcurses.mk new file mode 100644 index 00000000..10b746f2 --- /dev/null +++ b/package/xorcurses/xorcurses.mk @@ -0,0 +1,27 @@ +################################################################################ +# +# xorcurses +# +################################################################################ + +XORCURSES_VERSION = 04b664826c5bd30dd483f6a5c8c189ef97e255da +XORCURSES_SITE = $(call github,jwm-art-net,XorCurses,$(XORCURSES_VERSION)) +XORCURSES_DEPENDENCIES = ncurses +XORCURSES_LICENSE = GPL-3.0 +XORCURSES_LICENSE_FILES = README + +define XORCURSES_BUILD_CMDS + $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) \ + CFLAGS="$(TARGET_CFLAGS) -std=gnu99 \ + -DDATADIR='\"/usr/share/xorcurses\"' \ + -DVERSION='\"$(XORCURSES_VERSION)\"'" +endef + +define XORCURSES_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/xorcurses $(TARGET_DIR)/usr/bin/xorcurses + mkdir -p $(TARGET_DIR)/usr/share/xorcurses/maps + $(INSTALL) -D -m 0644 $(@D)/maps/*.xcm \ + $(TARGET_DIR)/usr/share/xorcurses/maps/ +endef + +$(eval $(generic-package)) diff --git a/package/xorriso/Config.in b/package/xorriso/Config.in new file mode 100644 index 00000000..60b2642d --- /dev/null +++ b/package/xorriso/Config.in @@ -0,0 +1,22 @@ +config BR2_PACKAGE_XORRISO + bool "xorriso" + depends on BR2_USE_WCHAR + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE + help + xorriso copies file objects from POSIX compliant + filesystems into Rock Ridge enhanced ISO 9660 filesystems + and allows session-wise manipulation of such filesystems. + It can load the management information of existing ISO + images and it writes the session results to optical media + or to filesystem objects. + + Vice versa xorriso is able to copy file objects out of ISO + 9660 filesystems. + + https://www.gnu.org/software/xorriso + +comment "xorriso needs a toolchain w/ wchar, threads" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/xorriso/Config.in.host b/package/xorriso/Config.in.host new file mode 100644 index 00000000..2baa0437 --- /dev/null +++ b/package/xorriso/Config.in.host @@ -0,0 +1,14 @@ +config BR2_PACKAGE_HOST_XORRISO + bool "host xorriso" + help + xorriso copies file objects from POSIX compliant + filesystems into Rock Ridge enhanced ISO 9660 filesystems + and allows session-wise manipulation of such filesystems. + It can load the management information of existing ISO + images and it writes the session results to optical media + or to filesystem objects. + + Vice versa xorriso is able to copy file objects out of ISO + 9660 filesystems. + + https://www.gnu.org/software/xorriso diff --git a/package/xorriso/xorriso.hash b/package/xorriso/xorriso.hash new file mode 100644 index 00000000..faaeab5f --- /dev/null +++ b/package/xorriso/xorriso.hash @@ -0,0 +1,4 @@ +# Locally computed +sha256 3b69f5c93ae7c40c5bbe4a847fa3963f5efc9c565551622f77121c5792fc17e7 xorriso-1.5.2.tar.gz +sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING +sha256 72e99e72cd68f226415e5d898f3b38e24ae7991ed038ed72d789fff5b060f028 COPYRIGHT diff --git a/package/xorriso/xorriso.mk b/package/xorriso/xorriso.mk new file mode 100644 index 00000000..7b38f268 --- /dev/null +++ b/package/xorriso/xorriso.mk @@ -0,0 +1,77 @@ +################################################################################ +# +# xorriso +# +################################################################################ + +XORRISO_VERSION = 1.5.2 +XORRISO_SITE = $(BR2_GNU_MIRROR)/xorriso +XORRISO_LICENSE = GPL-3.0+ +XORRISO_LICENSE_FILES = COPYING COPYRIGHT + +# Disable everything until we actually need those features, and add the correct +# host libraries +HOST_XORRISO_CONF_OPTS = \ + --disable-xattr-h-pref-attr \ + --disable-zlib \ + --disable-libbz2 \ + --disable-libcdio \ + --disable-libreadline \ + --disable-libedit \ + --disable-libacl + +# libcdio doesn't make sense for Linux +# http://lists.gnu.org/archive/html/bug-xorriso/2017-04/msg00004.html +XORRISO_CONF_OPTS = --disable-libcdio + +# we need sys/xattr.h +XORRISO_CONF_OPTS += \ + --disable-xattr-h-pref-attr + +ifeq ($(BR2_PACKAGE_LIBICONV),y) +XORRISO_DEPENDENCIES += libiconv +endif + +ifeq ($(BR2_PACKAGE_READLINE),y) +XORRISO_DEPENDENCIES += readline +XORRISO_CONF_OPTS += --enable-libreadline +else +XORRISO_CONF_OPTS += --disable-libreadline +endif + +ifeq ($(BR2_PACKAGE_ACL),y) +XORRISO_DEPENDENCIES += acl +XORRISO_CONF_OPTS += --enable-libacl +else +XORRISO_CONF_OPTS += --disable-libacl +endif + +ifeq ($(BR2_PACKAGE_ATTR),y) +XORRISO_DEPENDENCIES += attr +XORRISO_CONF_OPTS += --enable-xattr +else +XORRISO_CONF_OPTS += --disable-xattr +endif + +ifeq ($(BR2_PACKAGE_ZLIB),y) +XORRISO_DEPENDENCIES += zlib +XORRISO_CONF_OPTS += --enable-zlib +else +XORRISO_CONF_OPTS += --disable-zlib +endif + +ifeq ($(BR2_PACKAGE_BZIP2),y) +XORRISO_DEPENDENCIES += bzip2 +XORRISO_CONF_OPTS += --enable-libbz2 +else +XORRISO_CONF_OPTS += --disable-libbz2 +endif + +ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y) +XORRISO_CONF_OPTS += --enable-jtethreads +else +XORRISO_CONF_OPTS += --disable-jtethreads +endif + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/xr819-xradio/Config.in b/package/xr819-xradio/Config.in new file mode 100644 index 00000000..9d7fa4b0 --- /dev/null +++ b/package/xr819-xradio/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_XR819_XRADIO + bool "xr819-xradio" + depends on BR2_LINUX_KERNEL + help + Wireless driver for SDIO WiFi chip XR819 + + https://github.com/fifteenhex/xradio + +comment "xr819-xradio driver needs a Linux kernel to be built" + depends on !BR2_LINUX_KERNEL diff --git a/package/xr819-xradio/xr819-xradio.hash b/package/xr819-xradio/xr819-xradio.hash new file mode 100644 index 00000000..efff92ab --- /dev/null +++ b/package/xr819-xradio/xr819-xradio.hash @@ -0,0 +1,4 @@ +# Locally computed +sha256 5900821a777b9008d7cf9b8128e0cb75a4623ecb608b45438e17c7a056cde1bf xr819-xradio-6bf0e2e21c80456e2a3d4ad1267caecde7165871.tar.gz +# Locally computed +sha256 db296f2f7f35bca3a174efb0eb392b3b17bd94b341851429a3dff411b1c2fc73 LICENSE diff --git a/package/xr819-xradio/xr819-xradio.mk b/package/xr819-xradio/xr819-xradio.mk new file mode 100644 index 00000000..c1fe3295 --- /dev/null +++ b/package/xr819-xradio/xr819-xradio.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# xr819-xradio +# +################################################################################ + +XR819_XRADIO_VERSION = 6bf0e2e21c80456e2a3d4ad1267caecde7165871 +XR819_XRADIO_SITE = $(call github,fifteenhex,xradio,$(XR819_XRADIO_VERSION)) +XR819_XRADIO_LICENSE = GPL-2.0 +XR819_XRADIO_LICENSE_FILES = LICENSE + +$(eval $(kernel-module)) +$(eval $(generic-package)) diff --git a/package/xscreensaver/Config.in b/package/xscreensaver/Config.in new file mode 100644 index 00000000..d773c699 --- /dev/null +++ b/package/xscreensaver/Config.in @@ -0,0 +1,34 @@ +config BR2_PACKAGE_XSCREENSAVER + bool "xscreensaver" + depends on BR2_PACKAGE_XORG7 + depends on BR2_INSTALL_LIBSTDCPP # libgtk2 -> pango + depends on BR2_TOOLCHAIN_HAS_THREADS # gdk-pixbuf, libgtk2 -> glib2 + depends on BR2_USE_WCHAR # gdk-pixbuf, libgtk2 -> glib2 + depends on BR2_USE_MMU # gdk-pixbuf, libgtk2 -> glib2 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libgtk2 -> pango -> harfbuzz + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # libgtk2 -> pango -> harfbuzz + select BR2_PACKAGE_GDK_PIXBUF + select BR2_PACKAGE_LIBGLU if BR2_PACKAGE_HAS_LIBGL + select BR2_PACKAGE_LIBGTK2 + select BR2_PACKAGE_LIBXML2 + select BR2_PACKAGE_JPEG + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXT + help + XScreenSaver is the standard screen saver collection shipped + on most Linux and Unix systems running the X11 Window + System. + + On X11 systems, XScreenSaver is two things: it is both a + large collection of screen savers; and it is also the + framework for blanking and locking the screen. + + http://www.jwz.org/xscreensaver/ + +comment "xscreensaver needs a toolchain w/ wchar, C++, threads, gcc >= 4.8" + depends on BR2_PACKAGE_XORG7 + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || \ + !BR2_USE_WCHAR diff --git a/package/xscreensaver/xscreensaver.hash b/package/xscreensaver/xscreensaver.hash new file mode 100644 index 00000000..26ecd8bb --- /dev/null +++ b/package/xscreensaver/xscreensaver.hash @@ -0,0 +1,4 @@ +# Locally calculated +sha256 7016df6736ba0126a68c1f35abcf411a695fe93bc01a18ebd9df46c9a9f4d50d xscreensaver-5.45.tar.gz +sha256 8a03451ba5c4c9af669b53e47e50c38c149b9e152d3d627809b962da7b760bbd hacks/screenhack.h +sha256 56db580415bb313a4a82c5e08f106304904d15d42faf8e6ab14b34e14e2087a5 hacks/glx/chessmodels.h diff --git a/package/xscreensaver/xscreensaver.mk b/package/xscreensaver/xscreensaver.mk new file mode 100644 index 00000000..c3c9ec89 --- /dev/null +++ b/package/xscreensaver/xscreensaver.mk @@ -0,0 +1,89 @@ +################################################################################ +# +# xscreensaver +# +################################################################################ + +XSCREENSAVER_VERSION = 5.45 +XSCREENSAVER_SITE = https://www.jwz.org/xscreensaver + +# N.B. GPL-2.0+ code (in the hacks/glx subdirectory) is not currently built. +XSCREENSAVER_LICENSE = MIT-like, GPL-2.0+ +XSCREENSAVER_LICENSE_FILES = hacks/screenhack.h hacks/glx/chessmodels.h +XSCREENSAVER_CPE_ID_VENDOR = xscreensaver_project + +XSCREENSAVER_DEPENDENCIES = \ + gdk-pixbuf \ + jpeg \ + libgtk2 \ + libxml2 \ + xlib_libX11 \ + xlib_libXt \ + $(TARGET_NLS_DEPENDENCIES) \ + host-intltool + +# otherwise we end up with host include/library dirs passed to the +# compiler/linker +XSCREENSAVER_CONF_OPTS = \ + --includedir=$(STAGING_DIR)/usr/include \ + --libdir=$(STAGING_DIR)/usr/lib + +ifeq ($(BR2_PACKAGE_HAS_LIBGL),y) +XSCREENSAVER_CONF_OPTS += --with-gl=yes +XSCREENSAVER_DEPENDENCIES += libgl libglu +else +XSCREENSAVER_CONF_OPTS += --with-gl=no +endif + +ifeq ($(BR2_PACKAGE_LIBPNG),y) +XSCREENSAVER_CONF_OPTS += --with-png=yes +XSCREENSAVER_DEPENDENCIES += libpng +else +XSCREENSAVER_CONF_OPTS += --with-png=no +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD),y) +XSCREENSAVER_CONF_OPTS += --with-systemd=yes +XSCREENSAVER_DEPENDENCIES += systemd +else +XSCREENSAVER_CONF_OPTS += --with-systemd=no +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXFT),y) +XSCREENSAVER_CONF_OPTS += --with-xft=yes +XSCREENSAVER_DEPENDENCIES += xlib_libXft +else +XSCREENSAVER_CONF_OPTS += --with-xft=no +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXI),y) +XSCREENSAVER_CONF_OPTS += --with-xinput-ext=yes +XSCREENSAVER_DEPENDENCIES += xlib_libXi +else +XSCREENSAVER_CONF_OPTS += --with-xinput-ext=no +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXINERAMA),y) +XSCREENSAVER_CONF_OPTS += --with-xinerama-ext=yes +XSCREENSAVER_DEPENDENCIES += xlib_libXinerama +else +XSCREENSAVER_CONF_OPTS += --with-xinerama-ext=no +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXRANDR),y) +XSCREENSAVER_CONF_OPTS += --with-randr-ext=yes +XSCREENSAVER_DEPENDENCIES += xlib_libXrandr +else +XSCREENSAVER_CONF_OPTS += --with-randr-ext=no +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXXF86VM),y) +XSCREENSAVER_CONF_OPTS += --with-xf86vmode-ext=yes +XSCREENSAVER_DEPENDENCIES += xlib_libXxf86vm +else +XSCREENSAVER_CONF_OPTS += --with-xf86vmode-ext=no +endif + +XSCREENSAVER_INSTALL_TARGET_OPTS = install_prefix="$(TARGET_DIR)" install + +$(eval $(autotools-package)) diff --git a/package/xtables-addons/Config.in b/package/xtables-addons/Config.in new file mode 100644 index 00000000..36a42c7e --- /dev/null +++ b/package/xtables-addons/Config.in @@ -0,0 +1,19 @@ +comment "xtables-addons needs a Linux kernel to be built" + depends on !BR2_LINUX_KERNEL + +comment "xtables-addons needs a toolchain w/ dynamic library, threads" + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS + +config BR2_PACKAGE_XTABLES_ADDONS + bool "xtables-addons" + depends on BR2_LINUX_KERNEL + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_STATIC_LIBS # extensions are .so + select BR2_PACKAGE_IPTABLES + select BR2_LINUX_NEEDS_MODULES # not using kernel-module infra + help + Xtables-addons is the successor to patch-o-matic(-ng). + Likewise, it contains extensions that were not, or are not + yet, accepted in the main kernel/iptables packages. + + https://inai.de/projects/xtables-addons/ diff --git a/package/xtables-addons/xtables-addons.hash b/package/xtables-addons/xtables-addons.hash new file mode 100644 index 00000000..2cfb9117 --- /dev/null +++ b/package/xtables-addons/xtables-addons.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 893c0c4ea09759cda1ab7e68f1281d125e59270f7b59e446204ce686c6a76d65 xtables-addons-3.13.tar.xz +sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 LICENSE diff --git a/package/xtables-addons/xtables-addons.mk b/package/xtables-addons/xtables-addons.mk new file mode 100644 index 00000000..55e1a5d0 --- /dev/null +++ b/package/xtables-addons/xtables-addons.mk @@ -0,0 +1,40 @@ +################################################################################ +# +# xtables-addons +# +################################################################################ + +XTABLES_ADDONS_VERSION = 3.13 +XTABLES_ADDONS_SOURCE = xtables-addons-$(XTABLES_ADDONS_VERSION).tar.xz +XTABLES_ADDONS_SITE = https://inai.de/files/xtables-addons +XTABLES_ADDONS_DEPENDENCIES = iptables linux host-pkgconf +XTABLES_ADDONS_LICENSE = GPL-2.0+ +XTABLES_ADDONS_LICENSE_FILES = LICENSE + +XTABLES_ADDONS_CONF_OPTS = \ + --with-kbuild="$(LINUX_DIR)" \ + --with-xtables="$(STAGING_DIR)/usr" \ + --with-xtlibdir="/usr/lib/xtables" + +# geoip helpers need perl with modules and unzip so disable +define XTABLES_DISABLE_GEOIP_HELPERS + $(SED) 's/ geoip//' $(@D)/Makefile.in +endef +XTABLES_ADDONS_POST_PATCH_HOOKS += XTABLES_DISABLE_GEOIP_HELPERS + +define XTABLES_ADDONS_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(LINUX_MAKE_FLAGS) +endef + +define XTABLES_ADDONS_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(LINUX_MAKE_FLAGS) DESTDIR="$(TARGET_DIR)" install +endef + +define XTABLES_ADDONS_LINUX_CONFIG_FIXUPS + $(call KCONFIG_ENABLE_OPT,CONFIG_NETFILTER_ADVANCED) + $(call KCONFIG_ENABLE_OPT,CONFIG_NF_CONNTRACK) + $(call KCONFIG_ENABLE_OPT,CONFIG_NF_CONNTRACK_MARK) + $(call KCONFIG_ENABLE_OPT,CONFIG_NF_NAT) +endef + +$(eval $(autotools-package)) diff --git a/package/xterm/Config.in b/package/xterm/Config.in new file mode 100644 index 00000000..eaa756a4 --- /dev/null +++ b/package/xterm/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_XTERM + bool "xterm" + depends on BR2_PACKAGE_XORG7 + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_NCURSES + select BR2_PACKAGE_XLIB_LIBXAW + help + xterm terminal emulator + + http://invisible-island.net/xterm/ diff --git a/package/xterm/xterm.hash b/package/xterm/xterm.hash new file mode 100644 index 00000000..d6d80ad9 --- /dev/null +++ b/package/xterm/xterm.hash @@ -0,0 +1,4 @@ +# Locally calculated after checking pgp signature +sha256 27f1a8b1c756e269fd5684e60802b545f0be9b36b8b5d6bdbc840c6b000dc51f xterm-367.tgz +# Locally calculated +sha256 dfb668cc977e24649500f3cc54de3e2b793928d210715a445ab1227930b07ba6 COPYING diff --git a/package/xterm/xterm.mk b/package/xterm/xterm.mk new file mode 100644 index 00000000..e09d350a --- /dev/null +++ b/package/xterm/xterm.mk @@ -0,0 +1,36 @@ +################################################################################ +# +# xterm +# +################################################################################ + +XTERM_VERSION = 367 +XTERM_SOURCE = xterm-$(XTERM_VERSION).tgz +XTERM_SITE = http://invisible-mirror.net/archives/xterm +XTERM_DEPENDENCIES = ncurses xlib_libXaw host-pkgconf +XTERM_LICENSE = MIT +XTERM_LICENSE_FILES = COPYING +XTERM_CPE_ID_VENDOR = invisible-island +XTERM_CONF_OPTS = --enable-256-color \ + --x-includes=$(STAGING_DIR)/usr/include \ + --x-libraries=$(STAGING_DIR)/usr/lib + +# Avoid freetype2 path poisoning by imake +XTERM_CONF_ENV = ac_cv_path_IMAKE="" + +ifeq ($(BR2_PACKAGE_XLIB_LIBXFT),y) +XTERM_DEPENDENCIES += xlib_libXft +XTERM_CONF_OPTS += --enable-freetype \ + --with-freetype-config=auto +else +XTERM_CONF_OPTS += --disable-freetype +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXINERAMA),y) +XTERM_DEPENDENCIES += xlib_libXinerama +XTERM_CONF_OPTS += --with-xinerama +else +XTERM_CONF_OPTS += --without-xinerama +endif + +$(eval $(autotools-package)) diff --git a/package/xutil_util-macros/Config.in b/package/xutil_util-macros/Config.in new file mode 100644 index 00000000..10b1a59a --- /dev/null +++ b/package/xutil_util-macros/Config.in @@ -0,0 +1,4 @@ +config BR2_PACKAGE_XUTIL_UTIL_MACROS + bool "util-macros" + help + No description available diff --git a/package/xutil_util-macros/xutil_util-macros.hash b/package/xutil_util-macros/xutil_util-macros.hash new file mode 100644 index 00000000..3f28743e --- /dev/null +++ b/package/xutil_util-macros/xutil_util-macros.hash @@ -0,0 +1,5 @@ +# From https://lists.x.org/archives/xorg-announce/2021-January/003069.html +sha256 0f812e6e9d2786ba8f54b960ee563c0663ddbe2434bf24ff193f5feab1f31971 util-macros-1.19.3.tar.bz2 +sha512 b9c7398a912c688a782eab5b1e0f6da2df11a430775c5c98fc3269f73a665de6eeb60d300a849e38d345714a6e51f74e9334cb6039767304cca4b93d823a53a2 util-macros-1.19.3.tar.bz2 +# Locally computed +sha256 489b630a75e3255485732eae3d50ff4d29d3feb66760bb3acb04f897e4d9e375 COPYING diff --git a/package/xutil_util-macros/xutil_util-macros.mk b/package/xutil_util-macros/xutil_util-macros.mk new file mode 100644 index 00000000..b0ce14ee --- /dev/null +++ b/package/xutil_util-macros/xutil_util-macros.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# xutil_util-macros +# +################################################################################ + +XUTIL_UTIL_MACROS_VERSION = 1.19.3 +XUTIL_UTIL_MACROS_SOURCE = util-macros-$(XUTIL_UTIL_MACROS_VERSION).tar.bz2 +XUTIL_UTIL_MACROS_SITE = http://xorg.freedesktop.org/releases/individual/util +XUTIL_UTIL_MACROS_LICENSE = MIT +XUTIL_UTIL_MACROS_LICENSE_FILES = COPYING + +XUTIL_UTIL_MACROS_INSTALL_STAGING = YES +XUTIL_UTIL_MACROS_INSTALL_TARGET = NO + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/xvisor/0001-fix-build-with-gcc-10.patch b/package/xvisor/0001-fix-build-with-gcc-10.patch new file mode 100644 index 00000000..a538558d --- /dev/null +++ b/package/xvisor/0001-fix-build-with-gcc-10.patch @@ -0,0 +1,64 @@ +From 8458abb357cd981f55d730ec2d74459a3042e571 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Tue, 6 Oct 2020 21:52:20 +0200 +Subject: [PATCH] fix build with gcc 10 + +Define variables in header files as extern to avoid the following build failure +with gcc 10 (which defaults to -fno-common): + +/home/giuliobenetti/autobuild/run/instance-3/output-1/host/bin/arm-buildroot-linux-gnueabihf-ld: +/home/giuliobenetti/autobuild/run/instance-3/output-1/build/xvisor-0.3.0/build/drivers/mmc/core/mmc.o:/home/giuliobenetti/autobuild/run/instance-3/output-1/build/xvisor-0.3.0/drivers/mmc/core/core.h:67: +multiple definition of `sdio_func_type'; +/home/giuliobenetti/autobuild/run/instance-3/output-1/build/xvisor-0.3.0/build/drivers/mmc/core/core.o:/home/giuliobenetti/autobuild/run/instance-3/output-1/build/xvisor-0.3.0/drivers/mmc/core/core.h:67: +first defined here + +Fixes: + - http://autobuild.buildroot.org/results/b6070c0721b33824e71833ce53423979980aa598 + +Signed-off-by: Fabrice Fontaine +[Upstream status: https://github.com/xvisor/xvisor/pull/125] +--- + drivers/mmc/core/core.h | 2 +- + emulators/display/drawfn.h | 10 +++++----- + 2 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/drivers/mmc/core/core.h b/drivers/mmc/core/core.h +index d75d135a..e2ca3141 100644 +--- a/drivers/mmc/core/core.h ++++ b/drivers/mmc/core/core.h +@@ -64,7 +64,7 @@ int mmc_go_idle(struct mmc_host *host); + * Note: Must be called with host->lock held. + */ + extern struct vmm_bus sdio_bus_type; +-struct vmm_device_type sdio_func_type; ++extern struct vmm_device_type sdio_func_type; + + int __sdio_attach(struct mmc_host *host); + +diff --git a/emulators/display/drawfn.h b/emulators/display/drawfn.h +index f9163cff..385deaf6 100644 +--- a/emulators/display/drawfn.h ++++ b/emulators/display/drawfn.h +@@ -69,14 +69,14 @@ typedef void (*drawfn)(struct vmm_surface *, + DRAWFN_ORDER_MAX * \ + DRAWFN_FORMAT_MAX) + +-drawfn drawfn_surface_fntable_8[DRAWFN_FNTABLE_SIZE]; ++extern drawfn drawfn_surface_fntable_8[DRAWFN_FNTABLE_SIZE]; + +-drawfn drawfn_surface_fntable_15[DRAWFN_FNTABLE_SIZE]; ++extern drawfn drawfn_surface_fntable_15[DRAWFN_FNTABLE_SIZE]; + +-drawfn drawfn_surface_fntable_16[DRAWFN_FNTABLE_SIZE]; ++extern drawfn drawfn_surface_fntable_16[DRAWFN_FNTABLE_SIZE]; + +-drawfn drawfn_surface_fntable_24[DRAWFN_FNTABLE_SIZE]; ++extern drawfn drawfn_surface_fntable_24[DRAWFN_FNTABLE_SIZE]; + +-drawfn drawfn_surface_fntable_32[DRAWFN_FNTABLE_SIZE]; ++extern drawfn drawfn_surface_fntable_32[DRAWFN_FNTABLE_SIZE]; + + #endif +-- +2.28.0 + diff --git a/package/xvisor/Config.in b/package/xvisor/Config.in new file mode 100644 index 00000000..eb7475b8 --- /dev/null +++ b/package/xvisor/Config.in @@ -0,0 +1,68 @@ +config BR2_PACKAGE_XVISOR_ARCH_SUPPORTS + bool + default y + depends on BR2_USE_MMU + depends on BR2_arm || BR2_aarch64 || BR2_x86_64 + depends on !BR2_ARM_CPU_ARMV4 && !BR2_ARM_CPU_ARMV7M + +menuconfig BR2_PACKAGE_XVISOR + bool "xvisor" + depends on BR2_PACKAGE_XVISOR_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + help + Xvisor is an open-source type-1 hypervisor, which aims at + providing a monolithic, light-weight, portable, and flexible + virtualization solution. + + http://www.xhypervisor.org/ + +if BR2_PACKAGE_XVISOR + +choice + prompt "Xvisor configuration" + default BR2_PACKAGE_XVISOR_USE_DEFCONFIG + +config BR2_PACKAGE_XVISOR_USE_DEFCONFIG + bool "Using an in-tree defconfig file" + +config BR2_PACKAGE_XVISOR_USE_CUSTOM_CONFIG + bool "Using a custom (def)config file" + +endchoice + +config BR2_PACKAGE_XVISOR_DEFCONFIG + string "Defconfig name" + default "generic-v5" if BR2_ARM_CPU_ARMV5 + default "generic-v6" if BR2_ARM_CPU_ARMV6 + default "generic-v7" if BR2_ARM_CPU_ARMV7A + default "generic-v8" if BR2_aarch64 + default "x86_64_generic" if BR2_x86_64 + depends on BR2_PACKAGE_XVISOR_USE_DEFCONFIG + help + Name of the Xvisor defconfig file to use, without the + trailing -defconfig. The defconfig is located in + arch//configs in the source tree. + +config BR2_PACKAGE_XVISOR_CUSTOM_CONFIG_FILE + string "Configuration file path" + depends on BR2_PACKAGE_XVISOR_USE_CUSTOM_CONFIG + help + Path to the Xvisor configuration file + +config BR2_PACKAGE_XVISOR_CREATE_UBOOT_IMAGE + bool "Create U-Boot image of Xvisor" + depends on BR2_arm + select BR2_PACKAGE_HOST_UBOOT_TOOLS + help + Create an image file of Xvisor loadable from Das U-Boot. + +config BR2_PACKAGE_XVISOR_BUILD_TEST_DTB + bool "Build test device-tree blobs" + help + Build test device-tree blobs for popular boards. + +endif + +comment "xvisor needs a toolchain w/ gcc >= 4.9" + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + depends on BR2_PACKAGE_XVISOR_ARCH_SUPPORTS diff --git a/package/xvisor/xvisor.hash b/package/xvisor/xvisor.hash new file mode 100644 index 00000000..6938e20e --- /dev/null +++ b/package/xvisor/xvisor.hash @@ -0,0 +1,3 @@ +# Locally generated +sha256 81660d26a0bc63979ba40872f10511df777185712eba2d0e19e816438388de05 xvisor-0.3.0.tar.xz +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/xvisor/xvisor.mk b/package/xvisor/xvisor.mk new file mode 100644 index 00000000..394ff7c8 --- /dev/null +++ b/package/xvisor/xvisor.mk @@ -0,0 +1,86 @@ +################################################################################ +# +# xvisor +# +################################################################################ + +XVISOR_VERSION = 0.3.0 +XVISOR_SOURCE = xvisor-$(XVISOR_VERSION).tar.xz +XVISOR_SITE = http://www.xhypervisor.org/tarball +XVISOR_LICENSE = GPL-2.0+ +XVISOR_LICENSE_FILES = COPYING +XVISOR_INSTALL_IMAGES = YES +XVISOR_INSTALL_TARGET = NO +XVISOR_DEPENDENCIES = host-bison host-dtc host-flex + +XVISOR_MAKE_TARGETS = all + +ifeq ($(BR2_PACKAGE_XVISOR_BUILD_TEST_DTB),y) +XVISOR_MAKE_TARGETS += dtbs +endif + +XVISOR_KCONFIG_DOTCONFIG = build/openconf/.config + +ifeq ($(BR2_PACKAGE_XVISOR_USE_DEFCONFIG),y) +XVISOR_KCONFIG_DEFCONFIG = $(call qstrip,$(BR2_PACKAGE_XVISOR_DEFCONFIG))-defconfig +else ifeq ($(BR2_PACKAGE_XVISOR_USE_CUSTOM_CONFIG),y) +XVISOR_KCONFIG_FILE = $(call qstrip,$(BR2_PACKAGE_XVISOR_CUSTOM_CONFIG_FILE)) +endif +XVISOR_KCONFIG_EDITORS = menuconfig + +ifeq ($(BR2_x86_64),y) +XVISOR_ARCH = x86 +else ifeq ($(BR2_arm)$(BR2_aarch64),y) +XVISOR_ARCH = arm +endif + +ifeq ($(BR2_PACKAGE_XVISOR)$(BR_BUILDING),yy) +ifeq ($(XVISOR_ARCH),) +$(error "Architecture not supported by XVisor") +endif +endif + +XVISOR_MAKE_ENV = \ + ARCH=$(XVISOR_ARCH) \ + CROSS_COMPILE=$(TARGET_CROSS) + +XVISOR_MAKE_OPTS = $(if $(VERBOSE),VERBOSE=1) + +define XVISOR_BUILD_CMDS + $(TARGET_MAKE_ENV) $(XVISOR_MAKE_ENV) $(MAKE) $(XVISOR_MAKE_OPTS) \ + -C $(@D) $(XVISOR_MAKE_TARGETS) +endef + +define XVISOR_INSTALL_IMAGES_CMDS + $(INSTALL) -m 0644 -D $(@D)/build/vmm.bin $(BINARIES_DIR)/vmm.bin +endef + +ifeq ($(BR2_PACKAGE_XVISOR_CREATE_UBOOT_IMAGE),y) +XVISOR_DEPENDENCIES += host-uboot-tools +define XVISOR_CREATE_UBOOT_IMAGE + $(MKIMAGE) -A $(MKIMAGE_ARCH) -O linux -T kernel -C none \ + -a 0x00008000 -e 0x00008000 \ + -n Xvisor -d $(BINARIES_DIR)/vmm.bin $(BINARIES_DIR)/uvmm.bin +endef +endif + +XVISOR_POST_INSTALL_IMAGES_HOOKS += XVISOR_CREATE_UBOOT_IMAGE + +# Checks to give errors that the user can understand +ifeq ($(BR_BUILDING),y) + +ifeq ($(BR2_PACKAGE_XVISOR_USE_DEFCONFIG),y) +ifeq ($(call qstrip,$(BR2_PACKAGE_XVISOR_DEFCONFIG)),) +$(error No Xvisor defconfig name specified, check your BR2_PACKAGE_XVISOR_DEFCONFIG setting) +endif +endif + +ifeq ($(BR2_PACKAGE_XVISOR_USE_CUSTOM_CONFIG),y) +ifeq ($(BR2_PACKAGE_XVISOR_CUSTOM_CONFIG_FILE),) +$(error No Xvisor configuration file specified, check your BR2_PACKAGE_XVISOR_CUSTOM_CONFIG_FILE setting) +endif +endif + +endif + +$(eval $(kconfig-package)) diff --git a/package/xvkbd/Config.in b/package/xvkbd/Config.in new file mode 100644 index 00000000..464a6ef7 --- /dev/null +++ b/package/xvkbd/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_XVKBD + bool "xvkbd" + depends on BR2_PACKAGE_XORG7 + select BR2_PACKAGE_XLIB_LIBICE + select BR2_PACKAGE_XLIB_LIBSM + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXAW + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XLIB_LIBXMU + select BR2_PACKAGE_XLIB_LIBXPM + select BR2_PACKAGE_XLIB_LIBXT + select BR2_PACKAGE_XLIB_LIBXTST + help + on-screen keyboard for X + + http://t-sato.in.coocan.jp/xvkbd diff --git a/package/xvkbd/xvkbd.hash b/package/xvkbd/xvkbd.hash new file mode 100644 index 00000000..8f13ab7c --- /dev/null +++ b/package/xvkbd/xvkbd.hash @@ -0,0 +1,4 @@ +# Locally calculated +sha256 952d07df0fe1e45286520b7c98b4fd00fd60dbf3e3e8ff61e12c259f76a3bef4 xvkbd-4.1.tar.gz +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING +sha256 5dada320d6b4fb7c76ef110a027b019feaf1149576acf7ac5cacf0d0dcdc3671 README diff --git a/package/xvkbd/xvkbd.mk b/package/xvkbd/xvkbd.mk new file mode 100644 index 00000000..f65c02bc --- /dev/null +++ b/package/xvkbd/xvkbd.mk @@ -0,0 +1,23 @@ +################################################################################ +# +# xvkbd +# +################################################################################ + +XVKBD_VERSION = 4.1 +XVKBD_SITE = http://t-sato.in.coocan.jp/xvkbd +XVKBD_LICENSE = GPL-2.0+ +XVKBD_LICENSE_FILES = COPYING README + +XVKBD_DEPENDENCIES = \ + xlib_libICE \ + xlib_libSM \ + xlib_libX11 \ + xlib_libXaw \ + xlib_libXext \ + xlib_libXmu \ + xlib_libXpm \ + xlib_libXt \ + xlib_libXtst + +$(eval $(autotools-package)) diff --git a/package/xxhash/Config.in b/package/xxhash/Config.in new file mode 100644 index 00000000..f2cccda2 --- /dev/null +++ b/package/xxhash/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_XXHASH + bool "xxhash" + help + xxHash is an extremely fast hash algorithm, running at RAM + speed limits. + + https://github.com/Cyan4973/xxHash diff --git a/package/xxhash/xxhash.hash b/package/xxhash/xxhash.hash new file mode 100644 index 00000000..feb50008 --- /dev/null +++ b/package/xxhash/xxhash.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 7054c3ebd169c97b64a92d7b994ab63c70dd53a06974f1f630ab782c28db0f4f xxhash-0.8.0.tar.gz +sha256 9da63520e9293d82c4b1613be5c84058cadb82b02f5972179bad13731d589910 LICENSE diff --git a/package/xxhash/xxhash.mk b/package/xxhash/xxhash.mk new file mode 100644 index 00000000..c2ddbbd6 --- /dev/null +++ b/package/xxhash/xxhash.mk @@ -0,0 +1,20 @@ +################################################################################ +# +# xxhash +# +################################################################################ + +XXHASH_VERSION = 0.8.0 +XXHASH_SITE = $(call github,Cyan4973,xxHash,v$(XXHASH_VERSION)) +XXHASH_LICENSE = BSD-2-Clause (library), GPL-2.0+ (xxhsum) +XXHASH_LICENSE_FILES = LICENSE + +define XXHASH_BUILD_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) xxhsum +endef + +define XXHASH_INSTALL_TARGET_CMDS + $(INSTALL) -m 0755 -D $(@D)/xxhsum $(TARGET_DIR)/usr/bin/xxhsum +endef + +$(eval $(generic-package)) diff --git a/package/xz/Config.in b/package/xz/Config.in new file mode 100644 index 00000000..687bd554 --- /dev/null +++ b/package/xz/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_XZ + bool "xz-utils" + help + XZ is the successor to the Lempel-Ziv/Markov-chain Algorithm + compression format, which provides memory-hungry but + powerful compression (often better than bzip2) and fast, + easy decompression. + + This package provides the command line tools for working + with XZ compression, including xz, unxz, xzcat, xzgrep, and + so on. They can also handle the older LZMA format, and if + invoked via appropriate symlinks will emulate the behavior + of the commands in the lzma package. + + https://tukaani.org/xz/ diff --git a/package/xz/xz.hash b/package/xz/xz.hash new file mode 100644 index 00000000..3dd0cbe4 --- /dev/null +++ b/package/xz/xz.hash @@ -0,0 +1,8 @@ +# Locally calculated after checking pgp signature +sha256 5117f930900b341493827d63aa910ff5e011e0b994197c3b71c08a20228a42df xz-5.2.5.tar.bz2 + +# Hash for license files +sha256 bcb02973ef6e87ea73d331b3a80df7748407f17efdb784b61b47e0e610d3bb5c COPYING +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING.GPLv2 +sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING.GPLv3 +sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LGPLv2.1 diff --git a/package/xz/xz.mk b/package/xz/xz.mk new file mode 100644 index 00000000..ffbae4c8 --- /dev/null +++ b/package/xz/xz.mk @@ -0,0 +1,28 @@ +################################################################################ +# +# xz +# +################################################################################ + +XZ_VERSION = 5.2.5 +XZ_SOURCE = xz-$(XZ_VERSION).tar.bz2 +XZ_SITE = https://tukaani.org/xz +XZ_INSTALL_STAGING = YES +XZ_CONF_ENV = ac_cv_prog_cc_c99='-std=gnu99' +XZ_LICENSE = Public Domain, GPL-2.0+, GPL-3.0+, LGPL-2.1+ +XZ_LICENSE_FILES = COPYING COPYING.GPLv2 COPYING.GPLv3 COPYING.LGPLv2.1 +XZ_CPE_ID_VENDOR = tukaani + +ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y) +XZ_CONF_OPTS = --enable-threads +else +XZ_CONF_OPTS = --disable-threads +endif + +# we are built before ccache +HOST_XZ_CONF_ENV = \ + CC="$(HOSTCC_NOCCACHE)" \ + CXX="$(HOSTCXX_NOCCACHE)" + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/yad/Config.in b/package/yad/Config.in new file mode 100644 index 00000000..300525ee --- /dev/null +++ b/package/yad/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_YAD + bool "yad" + depends on BR2_PACKAGE_XORG7 + depends on BR2_PACKAGE_LIBGTK2 || BR2_PACKAGE_LIBGTK3_X11 + help + YAD (yet another dialog) is a tool for create graphical + dialogs from shell scripts. + + http://sourceforge.net/projects/yad-dialog/ + +comment "yad needs libgtk2 or libgtk3 w/ X11 backend" + depends on BR2_PACKAGE_XORG7 + depends on !BR2_PACKAGE_LIBGTK2 && !BR2_PACKAGE_LIBGTK3_X11 diff --git a/package/yad/yad.hash b/package/yad/yad.hash new file mode 100644 index 00000000..1eee499c --- /dev/null +++ b/package/yad/yad.hash @@ -0,0 +1,6 @@ +# From http://sourceforge.net/projects/yad-dialog/files/ +md5 82d458a2e1695dd0709f71ad26109812 yad-0.40.0.tar.xz +sha1 4376eb42f8e38972124dc81e534cbdc9088109fb yad-0.40.0.tar.xz + +# Hash for license file +sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING diff --git a/package/yad/yad.mk b/package/yad/yad.mk new file mode 100644 index 00000000..15788efa --- /dev/null +++ b/package/yad/yad.mk @@ -0,0 +1,24 @@ +################################################################################ +# +# yad +# +################################################################################ + +YAD_VERSION = 0.40.0 +YAD_SOURCE = yad-$(YAD_VERSION).tar.xz +YAD_SITE = http://sourceforge.net/projects/yad-dialog/files +YAD_LICENSE = GPL-3.0 +YAD_LICENSE_FILES = COPYING +YAD_DEPENDENCIES = host-intltool host-pkgconf $(TARGET_NLS_DEPENDENCIES) +YAD_CONF_ENV = LIBS=$(TARGET_NLS_LIBS) +YAD_CONF_OPTS = --enable-html=no + +ifeq ($(BR2_PACKAGE_LIBGTK3_X11),y) +YAD_DEPENDENCIES += libgtk3 +YAD_CONF_OPTS += --with-gtk=gtk3 +else +YAD_DEPENDENCIES += libgtk2 +YAD_CONF_OPTS += --with-gtk=gtk2 +endif + +$(eval $(autotools-package)) diff --git a/package/yaffs2utils/yaffs2utils.hash b/package/yaffs2utils/yaffs2utils.hash new file mode 100644 index 00000000..547b55c5 --- /dev/null +++ b/package/yaffs2utils/yaffs2utils.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 9b0912bf683eb839b6e57c9255c83894c3b700d16489a49d319c54c1abf8f6d7 0.2.9.tar.gz +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/yaffs2utils/yaffs2utils.mk b/package/yaffs2utils/yaffs2utils.mk new file mode 100644 index 00000000..bcd5d6d6 --- /dev/null +++ b/package/yaffs2utils/yaffs2utils.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# yaffs2utils +# +################################################################################ + +YAFFS2UTILS_VERSION = 0.2.9 +YAFFS2UTILS_SOURCE = $(YAFFS2UTILS_VERSION).tar.gz +YAFFS2UTILS_SITE = https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/yaffs2utils +YAFFS2UTILS_LICENSE = GPL-2.0 +YAFFS2UTILS_LICENSE_FILES = COPYING + +define HOST_YAFFS2UTILS_BUILD_CMDS + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) +endef + +define HOST_YAFFS2UTILS_INSTALL_CMDS + mkdir -p $(HOST_DIR)/bin + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) INSTALLDIR=$(HOST_DIR)/bin install +endef + +$(eval $(host-generic-package)) diff --git a/package/yajl/0001-Let-the-shared-and-the-static-library-have-the-same-.patch b/package/yajl/0001-Let-the-shared-and-the-static-library-have-the-same-.patch new file mode 100644 index 00000000..0023a1da --- /dev/null +++ b/package/yajl/0001-Let-the-shared-and-the-static-library-have-the-same-.patch @@ -0,0 +1,34 @@ +From b08fe001e3d3f3564ef298e62342f07080807f7a Mon Sep 17 00:00:00 2001 +From: Vicente Olivert Riera +Date: Wed, 28 Oct 2015 15:45:10 +0000 +Subject: [PATCH] Let the shared and the static library have the same name +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The will be differentiated by the extension (.so or .a). + +Fetched from: +https://github.com/vriera/yajl/commit/6d09f11b8fd358cab0e31b965327e64a599f9ce9 + +Signed-off-by: Vicente Olivert Riera +Signed-off-by: Jörg Krause +--- + src/CMakeLists.txt | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 99cf9e9..1a900d3 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -36,6 +36,7 @@ SET (shareDir ${CMAKE_CURRENT_BINARY_DIR}/../${YAJL_DIST_NAME}/share/pkgconfig) + SET(LIBRARY_OUTPUT_PATH ${libDir}) + + ADD_LIBRARY(yajl_s STATIC ${SRCS} ${HDRS} ${PUB_HDRS}) ++SET_TARGET_PROPERTIES(yajl_s PROPERTIES OUTPUT_NAME yajl) + + ADD_LIBRARY(yajl SHARED ${SRCS} ${HDRS} ${PUB_HDRS}) + +-- +2.8.0 + 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 index 00000000..53decca6 --- /dev/null +++ b/package/yajl/0002-cmake-disable-shared-library-build-when-BUILD_SHARED.patch @@ -0,0 +1,49 @@ +From b3cddf92adacfe5ca40574afb3e323cc7cdebc5c Mon Sep 17 00:00:00 2001 +From: Maxime Hadjinlian +Date: Tue, 2 Feb 2016 15:46:09 +0100 +Subject: [PATCH] cmake: Add shared library conditonnal build + +When BUILD_SHARED_LIBS is off, you don't want to build the shared +library. + +Signed-off-by: Samuel Martin +--- + src/CMakeLists.txt | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 99cf9e9..9e9c77d 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 + +@@ -77,10 +79,12 @@ INCLUDE_DIRECTORIES(${incDir}/..) + + # 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 + RUNTIME DESTINATION lib${LIB_SUFFIX} + LIBRARY DESTINATION lib${LIB_SUFFIX} + ARCHIVE 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.7.0 + diff --git a/package/yajl/0003-Link-with-shared-libyajl-in-a-shared-build.patch b/package/yajl/0003-Link-with-shared-libyajl-in-a-shared-build.patch new file mode 100644 index 00000000..d3c91f2b --- /dev/null +++ b/package/yajl/0003-Link-with-shared-libyajl-in-a-shared-build.patch @@ -0,0 +1,127 @@ +From 425b25993ef58d07aa18c5d4938876a90e22c47a Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Sat, 9 Apr 2016 23:24:27 +0200 +Subject: [PATCH] Link with shared libyajl in a shared build +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Building yajl in a static context fails in a parallel build: + +[ 21%] Linking C executable gen-extra-close +[ 26%] Building C object src/CMakeFiles/yajl_s.dir/yajl_buf.c.o +/home/test/autobuild/instance-3/output/host/opt/ext-toolchain/bfin-uclinux/bfin-uclinux/bin/ld.real: cannot find -lyajl + +Fix this issue by linking against the shared libyail in a shared build. Apply +this fix also to all other build targets who are linking against the library. + +Upstream status: Pending +https://github.com/lloyd/yajl/pull/187 + +[Update: align with commit 302563539dacb284576a443401cdfd061eb2e1e8 and remove + linking with libm from test/api/CMakeLists.txt] +Signed-off-by: Jörg Krause +--- + example/CMakeLists.txt | 7 ++++++- + perf/CMakeLists.txt | 6 +++++- + reformatter/CMakeLists.txt | 6 +++++- + test/api/CMakeLists.txt | 6 +++++- + test/parsing/CMakeLists.txt | 6 +++++- + verify/CMakeLists.txt | 6 +++++- + 6 files changed, 31 insertions(+), 6 deletions(-) + +diff --git a/example/CMakeLists.txt b/example/CMakeLists.txt +index 0a7f622..8cfcef8 100644 +--- a/example/CMakeLists.txt ++++ b/example/CMakeLists.txt +@@ -20,4 +20,9 @@ LINK_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/../${YAJL_DIST_NAME}/lib) + + ADD_EXECUTABLE(parse_config ${SRCS}) + +-TARGET_LINK_LIBRARIES(parse_config yajl_s) ++IF(BUILD_SHARED_LIBS) ++ TARGET_LINK_LIBRARIES(parse_config yajl) ++ELSE() ++ TARGET_LINK_LIBRARIES(parse_config yajl_s) ++ENDIF() ++ +diff --git a/perf/CMakeLists.txt b/perf/CMakeLists.txt +index b438d7a..40ba363 100644 +--- a/perf/CMakeLists.txt ++++ b/perf/CMakeLists.txt +@@ -20,4 +20,8 @@ LINK_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/../${YAJL_DIST_NAME}/lib) + + ADD_EXECUTABLE(perftest ${SRCS}) + +-TARGET_LINK_LIBRARIES(perftest yajl_s) ++IF(BUILD_SHARED_LIBS) ++ TARGET_LINK_LIBRARIES(perftest yajl) ++ELSE() ++ TARGET_LINK_LIBRARIES(perftest yajl_s) ++ENDIF() +diff --git a/reformatter/CMakeLists.txt b/reformatter/CMakeLists.txt +index 52a9bee..7629094 100644 +--- a/reformatter/CMakeLists.txt ++++ b/reformatter/CMakeLists.txt +@@ -26,7 +26,11 @@ LINK_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/../${YAJL_DIST_NAME}/lib) + + ADD_EXECUTABLE(json_reformat ${SRCS}) + +-TARGET_LINK_LIBRARIES(json_reformat yajl_s) ++IF(BUILD_SHARED_LIBS) ++ TARGET_LINK_LIBRARIES(json_reformat yajl) ++ELSE() ++ TARGET_LINK_LIBRARIES(json_reformat yajl_s) ++ENDIF() + + # In some environments, we must explicitly link libm (like qnx, + # thanks @shahbag) +diff --git a/test/api/CMakeLists.txt b/test/api/CMakeLists.txt +index cd65a54..0c9debf 100644 +--- a/test/api/CMakeLists.txt ++++ b/test/api/CMakeLists.txt +@@ -21,5 +21,9 @@ LINK_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/../../${YAJL_DIST_NAME}/lib) + FOREACH (test ${TESTS}) + GET_FILENAME_COMPONENT(testProg ${test} NAME_WE) + ADD_EXECUTABLE(${testProg} ${test}) +- TARGET_LINK_LIBRARIES(${testProg} yajl) ++ IF(BUILD_SHARED_LIBS) ++ TARGET_LINK_LIBRARIES(${testProg} yajl) ++ ELSE() ++ TARGET_LINK_LIBRARIES(${testProg} yajl_s) ++ ENDIF() + ENDFOREACH() +diff --git a/test/parsing/CMakeLists.txt b/test/parsing/CMakeLists.txt +index c22a388..285f048 100644 +--- a/test/parsing/CMakeLists.txt ++++ b/test/parsing/CMakeLists.txt +@@ -20,4 +20,8 @@ LINK_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/../../${YAJL_DIST_NAME}/lib) + + ADD_EXECUTABLE(yajl_test ${SRCS}) + +-TARGET_LINK_LIBRARIES(yajl_test yajl_s) ++IF(BUILD_SHARED_LIBS) ++ TARGET_LINK_LIBRARIES(yajl_test yajl) ++ELSE() ++ TARGET_LINK_LIBRARIES(yajl_test yajl_s) ++ENDIF() +diff --git a/verify/CMakeLists.txt b/verify/CMakeLists.txt +index 967fca1..06cb2dc 100644 +--- a/verify/CMakeLists.txt ++++ b/verify/CMakeLists.txt +@@ -26,7 +26,11 @@ LINK_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/../${YAJL_DIST_NAME}/lib) + + ADD_EXECUTABLE(json_verify ${SRCS}) + +-TARGET_LINK_LIBRARIES(json_verify yajl_s) ++IF(BUILD_SHARED_LIBS) ++ TARGET_LINK_LIBRARIES(json_verify yajl) ++ELSE() ++ TARGET_LINK_LIBRARIES(json_verify yajl_s) ++ENDIF() + + # copy in the binary + GET_TARGET_PROPERTY(binPath json_verify LOCATION) +-- +2.8.0 + diff --git a/package/yajl/0004-Link-libyajl-_s-with-libm-when-isnan-is-not-brought-.patch b/package/yajl/0004-Link-libyajl-_s-with-libm-when-isnan-is-not-brought-.patch new file mode 100644 index 00000000..71cf2958 --- /dev/null +++ b/package/yajl/0004-Link-libyajl-_s-with-libm-when-isnan-is-not-brought-.patch @@ -0,0 +1,64 @@ +From b47f6a50925efb8c8707b1faed5561a4b66ffdb1 Mon Sep 17 00:00:00 2001 +From: Samuel Martin +Date: Sun, 24 Apr 2016 18:45:27 +0200 +Subject: [PATCH] Link libyajl{,_s} with libm when isnan is not brought by the + libc + +Check whether isnan is provided by the libc library, otherwise make sure +yajl libraries are link against libm. + +Note that setting libm as PUBLIC link libraries enable the transitivity +[1, 2]; therefore it will be automatically passed to target linking +against libyajl{,_s}. + +This patch also makes sure the link libraries will appear in the yajl.pc +file. + +[1] https://cmake.org/cmake/help/v3.5/command/target_link_libraries.html +[2] https://cmake.org/cmake/help/v3.5/manual/cmake-buildsystem.7.html#target-usage-requirements + +Signed-off-by: Samuel Martin +--- + src/CMakeLists.txt | 10 ++++++++++ + src/yajl.pc.cmake | 2 +- + 2 files changed, 11 insertions(+), 1 deletion(-) + +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index b487bfd..a88698f 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -35,11 +35,21 @@ SET (shareDir ${CMAKE_CURRENT_BINARY_DIR}/../${YAJL_DIST_NAME}/share/pkgconfig) + # set the output path for libraries + SET(LIBRARY_OUTPUT_PATH ${libDir}) + ++SET(yajl_lib_link) ++INCLUDE(CheckLibraryExists) ++CHECK_LIBRARY_EXISTS(c isnan "" HAVE_LIBC_ISNAN) ++ ++IF(NOT HAVE_LIBC_ISNAN) ++ LIST(APPEND yajl_lib_link "-lm") ++ENDIF(NOT HAVE_LIBC_ISNAN) ++ + ADD_LIBRARY(yajl_s STATIC ${SRCS} ${HDRS} ${PUB_HDRS}) + SET_TARGET_PROPERTIES(yajl_s PROPERTIES OUTPUT_NAME yajl) ++TARGET_LINK_LIBRARIES(yajl_s PUBLIC ${yajl_lib_link}) + + IF(BUILD_SHARED_LIBS) + ADD_LIBRARY(yajl SHARED ${SRCS} ${HDRS} ${PUB_HDRS}) ++TARGET_LINK_LIBRARIES(yajl PUBLIC ${yajl_lib_link}) + + #### setup shared library version number + SET_TARGET_PROPERTIES(yajl PROPERTIES +diff --git a/src/yajl.pc.cmake b/src/yajl.pc.cmake +index 6eaca14..4681dd4 100644 +--- a/src/yajl.pc.cmake ++++ b/src/yajl.pc.cmake +@@ -6,4 +6,4 @@ Name: Yet Another JSON Library + Description: A Portable JSON parsing and serialization library in ANSI C + Version: ${YAJL_MAJOR}.${YAJL_MINOR}.${YAJL_MICRO} + Cflags: -I${dollar}{includedir} +-Libs: -L${dollar}{libdir} -lyajl ++Libs: -L${dollar}{libdir} -lyajl ${yajl_lib_link} +-- +2.8.0 + diff --git a/package/yajl/Config.in b/package/yajl/Config.in new file mode 100644 index 00000000..be2c133f --- /dev/null +++ b/package/yajl/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_YAJL + bool "yajl" + help + Yet Another JSON Library. YAJL is a small event-driven + (SAX-style) JSON parser written in ANSI C, and a small + validating JSON generator. + + http://lloyd.github.com/yajl/ diff --git a/package/yajl/yajl.hash b/package/yajl/yajl.hash new file mode 100644 index 00000000..47b0986c --- /dev/null +++ b/package/yajl/yajl.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 3fb73364a5a30efe615046d07e6db9d09fd2b41c763c5f7d3bfb121cd5c5ac5a yajl-2.1.0.tar.gz +sha256 054bf2c11686c5442850b1da58ad592e3d1d2a236a362e67279b957f8e662f5a COPYING diff --git a/package/yajl/yajl.mk b/package/yajl/yajl.mk new file mode 100644 index 00000000..1fb16f50 --- /dev/null +++ b/package/yajl/yajl.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# yajl +# +################################################################################ + +YAJL_VERSION = 2.1.0 +YAJL_SITE = $(call github,lloyd,yajl,$(YAJL_VERSION)) +YAJL_INSTALL_STAGING = YES +YAJL_LICENSE = ISC +YAJL_LICENSE_FILES = COPYING + +$(eval $(cmake-package)) diff --git a/package/yaml-cpp/Config.in b/package/yaml-cpp/Config.in new file mode 100644 index 00000000..e02b85df --- /dev/null +++ b/package/yaml-cpp/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_YAML_CPP + bool "yaml-cpp" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # C++11 + help + yaml-cpp is a YAML parser and emitter in C++ matching + the YAML 1.2 spec. + + https://github.com/jbeder/yaml-cpp + +comment "yaml-cpp needs a toolchain w/ C++, gcc >= 4.7" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 diff --git a/package/yaml-cpp/yaml-cpp.hash b/package/yaml-cpp/yaml-cpp.hash new file mode 100644 index 00000000..2f7a6fc6 --- /dev/null +++ b/package/yaml-cpp/yaml-cpp.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 77ea1b90b3718aa0c324207cb29418f5bced2354c2e483a9523d98c3460af1ed yaml-cpp-0.6.3.tar.gz +sha256 aa6fcc27be034e41e21dd832f9175bfe694a48491d9e14ff0fa278e19ad14f1b LICENSE diff --git a/package/yaml-cpp/yaml-cpp.mk b/package/yaml-cpp/yaml-cpp.mk new file mode 100644 index 00000000..895072ec --- /dev/null +++ b/package/yaml-cpp/yaml-cpp.mk @@ -0,0 +1,25 @@ +################################################################################ +# +# yaml-cpp +# +################################################################################ + +YAML_CPP_VERSION = 0.6.3 +YAML_CPP_SITE = $(call github,jbeder,yaml-cpp,yaml-cpp-$(YAML_CPP_VERSION)) +YAML_CPP_INSTALL_STAGING = YES +YAML_CPP_LICENSE = MIT +YAML_CPP_LICENSE_FILES = LICENSE +YAML_CPP_CPE_ID_VENDOR = yaml-cpp_project + +# Disable testing and parse tools +YAML_CPP_CONF_OPTS += \ + -DYAML_CPP_BUILD_TESTS=OFF \ + -DYAML_CPP_BUILD_TOOLS=OFF + +ifeq ($(BR2_STATIC_LIBS),y) +YAML_CPP_CONF_OPTS += -DYAML_BUILD_SHARED_LIBS=OFF +else +YAML_CPP_CONF_OPTS += -DYAML_BUILD_SHARED_LIBS=ON +endif + +$(eval $(cmake-package)) diff --git a/package/yasm/Config.in b/package/yasm/Config.in new file mode 100644 index 00000000..2dc25aad --- /dev/null +++ b/package/yasm/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_YASM + bool "yasm" + depends on BR2_i386 || BR2_x86_64 + help + Yasm is a complete rewrite of the NASM-2.10.01 assembler. + It supports the x86 and AMD64 instruction sets, accepts NASM + and GAS assembler syntaxes and outputs binary, ELF32 and ELF64 + object formats. + + http://www.tortall.net/projects/yasm/ diff --git a/package/yasm/yasm.hash b/package/yasm/yasm.hash new file mode 100644 index 00000000..c343d32d --- /dev/null +++ b/package/yasm/yasm.hash @@ -0,0 +1,7 @@ +# Locally computed: +sha256 3dce6601b495f5b3d45b59f7d2492a340ee7e84b5beca17e48f862502bd5603f yasm-1.3.0.tar.gz +sha256 795f8d76eade6130129b680ac72ea81cb3e143467a65ea1f5f64946151d7fa20 COPYING +sha256 a84b45f23040624681ca6974ff48d8ef6b477a1cb51e4a1c842e49d00c231e0d BSD.txt +sha256 b7fd9b73ea99602016a326e0b62e6646060d18febdd065ceca8bb482208c3d88 Artistic.txt +sha256 e6d6a009505e345fe949e1310334fcb0747f28dae2856759de102ab66b722cb4 GNU_GPL-2.0 +sha256 1faefae1fe8838a2e48864df7d1376e421a50c551c5ae2f60c9f2093206e18a9 GNU_LGPL-2.0 diff --git a/package/yasm/yasm.mk b/package/yasm/yasm.mk new file mode 100644 index 00000000..b294bd3a --- /dev/null +++ b/package/yasm/yasm.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# yasm +# +################################################################################ + +YASM_VERSION = 1.3.0 +YASM_SITE = http://www.tortall.net/projects/yasm/releases +YASM_LICENSE = BSD-2-Clause, BSD-3-Clause, Artistic, GPL-2.0, LGPL-2.0 +YASM_LICENSE_FILES = COPYING BSD.txt Artistic.txt GNU_GPL-2.0 GNU_LGPL-2.0 + +# This sed prevents it compiling 2 programs (vsyasm and ytasm) +# that are only of use on Microsoft Windows. +define YASM_PRE_CONFIGURE_FIXUP + $(SED) 's#) ytasm.*#)#' $(@D)/Makefile.in +endef + +YASM_PRE_CONFIGURE_HOOKS += YASM_PRE_CONFIGURE_FIXUP +HOST_YASM_PRE_CONFIGURE_HOOKS += YASM_PRE_CONFIGURE_FIXUP + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/yavta/Config.in b/package/yavta/Config.in new file mode 100644 index 00000000..6a42a944 --- /dev/null +++ b/package/yavta/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_YAVTA + bool "yavta" + help + Yet Another V4L2 Test Application + + http://git.ideasonboard.org/yavta.git diff --git a/package/yavta/yavta.mk b/package/yavta/yavta.mk new file mode 100644 index 00000000..4e3d76e3 --- /dev/null +++ b/package/yavta/yavta.mk @@ -0,0 +1,20 @@ +################################################################################ +# +# yavta +# +################################################################################ + +YAVTA_VERSION = 82ff2efdb9787737b9f21b6f4759f077c827b238 +YAVTA_SITE = git://git.ideasonboard.org/yavta.git +YAVTA_LICENSE = GPL-2.0+ +YAVTA_LICENSE_FILES = COPYING.GPL + +define YAVTA_BUILD_CMDS + $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) +endef + +define YAVTA_INSTALL_TARGET_CMDS + $(INSTALL) -m 0755 -D $(@D)/yavta $(TARGET_DIR)/usr/bin/yavta +endef + +$(eval $(generic-package)) diff --git a/package/ympd/0001-only-c-language.patch b/package/ympd/0001-only-c-language.patch new file mode 100644 index 00000000..df5734c3 --- /dev/null +++ b/package/ympd/0001-only-c-language.patch @@ -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 + +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/0002-added-forward-declarations.patch b/package/ympd/0002-added-forward-declarations.patch new file mode 100644 index 00000000..90ee1eae --- /dev/null +++ b/package/ympd/0002-added-forward-declarations.patch @@ -0,0 +1,43 @@ +From 2268e0f0f372a61827b912155a1796490968b3ff Mon Sep 17 00:00:00 2001 +From: SuperBFG7 +Date: Tue, 2 Jun 2020 12:41:52 +0200 +Subject: [PATCH] added forward declarations + + +[Retrieved (and slightly updated to remove update of dirble_api_token) +from: +https://github.com/notandy/ympd/pull/191/commits/2268e0f0f372a61827b912155a1796490968b3ff] +Signed-off-by: Fabrice Fontaine +--- + src/mpd_client.c | 2 ++ + src/mpd_client.h | 6 ++++-- + 2 files changed, 6 insertions(+), 2 deletions(-) + +diff --git a/src/mpd_client.c b/src/mpd_client.c +index 2911e461..9f003ab0 100644 +--- a/src/mpd_client.c ++++ b/src/mpd_client.c +@@ -30,6 +30,8 @@ + + /* forward declaration */ + static int mpd_notify_callback(struct mg_connection *c, enum mg_event ev); ++char dirble_api_token[28]; ++struct t_mpd mpd; + + const char * mpd_cmd_strs[] = { + MPD_CMDS(GEN_STR) +diff --git a/src/mpd_client.h b/src/mpd_client.h +index 447dd563..9342c550 100644 +--- a/src/mpd_client.h ++++ b/src/mpd_client.h +@@ -96,6 +96,8 @@ struct t_mpd { + + int song_id; + unsigned queue_version; +-} mpd; ++}; ++ ++extern struct t_mpd mpd; + + struct t_mpd_client_session { + int song_id; diff --git a/package/ympd/Config.in b/package/ympd/Config.in new file mode 100644 index 00000000..0a1c2b2f --- /dev/null +++ b/package/ympd/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_YMPD + bool "ympd" + depends on BR2_USE_MMU # fork() + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_STATIC_LIBS + select BR2_PACKAGE_LIBMPDCLIENT + help + ympd, a standalone MPD Web GUI written in C, utilizing + Websockets and Bootstrap/JS + + https://www.ympd.org/ + +comment "ympd needs a toolchain w/ threads, dynamic library" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/ympd/ympd.hash b/package/ympd/ympd.hash new file mode 100644 index 00000000..1157267c --- /dev/null +++ b/package/ympd/ympd.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 d9f68920cd93d1cfa971e1d7b9162a2b1724909bc9753c1338cecb3688d234d5 ympd-1.3.0.tar.gz +sha256 e6d6a009505e345fe949e1310334fcb0747f28dae2856759de102ab66b722cb4 LICENSE diff --git a/package/ympd/ympd.mk b/package/ympd/ympd.mk new file mode 100644 index 00000000..027dc1ca --- /dev/null +++ b/package/ympd/ympd.mk @@ -0,0 +1,20 @@ +################################################################################ +# +# ympd +# +################################################################################ + +YMPD_VERSION = 1.3.0 +YMPD_SITE = $(call github,notandy,ympd,v$(YMPD_VERSION)) +YMPD_LICENSE = GPL-2.0 +YMPD_LICENSE_FILES = LICENSE +YMPD_DEPENDENCIES = libmpdclient + +ifeq ($(BR2_PACKAGE_OPENSSL),y) +YMPD_DEPENDENCIES += openssl +YMPD_CONF_OPTS += -DWITH_SSL=ON +else +YMPD_CONF_OPTS += -DWITH_SSL=OFF +endif + +$(eval $(cmake-package)) diff --git a/package/ytree/0001-fix-musl.patch b/package/ytree/0001-fix-musl.patch new file mode 100644 index 00000000..0a247446 --- /dev/null +++ b/package/ytree/0001-fix-musl.patch @@ -0,0 +1,26 @@ +Fix musl build + +Fixes + + match.c.text+0x9c): undefined reference to `re_comp' + match.c.text+0xca): undefined reference to `re_exec' + +by forcing to use the 'modern' regex methods implementation instead of +the obsolete re_comp/re_exec ([1]) one? + +[1] http://man7.org/linux/man-pages/man3/re_comp.3.html + +Signed-off-by: Bernd Kuhls + +diff -uNr ytree-1.99pl2.orig/match.c ytree-1.99pl2/match.c +--- ytree-1.99pl2.orig/match.c 2019-09-29 12:37:57.000000000 +0200 ++++ ytree-1.99pl2/match.c 2019-10-01 19:46:56.193815327 +0200 +@@ -10,7 +10,7 @@ + #include "ytree.h" + + #if defined( sun ) || defined( linux ) || defined( __NeXT__ ) || defined( OSF1 ) || defined( __OpenBSD__ ) || defined(__NetBSD__) || defined( __FreeBSD__ ) || defined( __GNU__ ) +-#define HAS_REGEX ++#define HAS_REGCOMP + #endif + + #ifdef linux diff --git a/package/ytree/Config.in b/package/ytree/Config.in new file mode 100644 index 00000000..3ac9283a --- /dev/null +++ b/package/ytree/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_YTREE + bool "ytree" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_NCURSES + help + Ytree - a (curses-based) file manager similar to DOS Xtree(tm) + + https://www.han.de/~werner/ytree.html diff --git a/package/ytree/ytree.hash b/package/ytree/ytree.hash new file mode 100644 index 00000000..17d0d24c --- /dev/null +++ b/package/ytree/ytree.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 583aa71552d1347e0eabe39a236fa5a174bf67dde98871853b9fe2a233bcaef1 ytree-2.03.tar.gz +sha256 eb6bf7204569b4fe8eaf9d4dffc57e44047c5efb5deba1b2d99069ddbc99d031 COPYING diff --git a/package/ytree/ytree.mk b/package/ytree/ytree.mk new file mode 100644 index 00000000..fdecc0b1 --- /dev/null +++ b/package/ytree/ytree.mk @@ -0,0 +1,31 @@ +################################################################################ +# +# ytree +# +################################################################################ + +YTREE_VERSION = 2.03 +YTREE_SITE = https://www.han.de/~werner +YTREE_LICENSE = GPL-2.0+ +YTREE_LICENSE_FILES = COPYING +YTREE_DEPENDENCIES = ncurses + +YTREE_CFLAGS = -DCOLOR_SUPPORT $(TARGET_CFLAGS) +YTREE_LDFLAGS = -lncurses $(TARGET_LDFLAGS) + +ifeq ($(BR2_PACKAGE_READLINE),y) +YTREE_DEPENDENCIES += host-pkgconf readline +YTREE_CFLAGS += -DREADLINE_SUPPORT +YTREE_LDFLAGS += `$(PKG_CONFIG_HOST_BINARY) --libs readline` +endif + +define YTREE_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) \ + CFLAGS="$(YTREE_CFLAGS)" LDFLAGS="$(YTREE_LDFLAGS)" +endef + +define YTREE_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR="$(TARGET_DIR)/usr" install +endef + +$(eval $(generic-package)) diff --git a/package/zbar/0001-zbarcam-zbarimg-get-rid-of-gettext-h.patch b/package/zbar/0001-zbarcam-zbarimg-get-rid-of-gettext-h.patch new file mode 100644 index 00000000..009fd5f9 --- /dev/null +++ b/package/zbar/0001-zbarcam-zbarimg-get-rid-of-gettext-h.patch @@ -0,0 +1,45 @@ +From a133aea7880bbb56d75535e534716d0e16a3b61a Mon Sep 17 00:00:00 2001 +From: Mauro Carvalho Chehab +Date: Tue, 28 Jul 2020 09:47:03 +0200 +Subject: [PATCH] zbarcam, zbarimg: get rid of gettext.h + +This doesn't seem to be needed at all for translations to +work. Also, gettext.h uses a different license. So, let's get +rid of it. + +Signed-off-by: Mauro Carvalho Chehab +[Retrieved (and updated to remove gettext.h which is not in the +tarball): +https://github.com/mchehab/zbar/commit/a133aea7880bbb56d75535e534716d0e16a3b61a] +Signed-off-by: Fabrice Fontaine +--- + zbar/gettext.h | 294 ---------------------------------------------- + zbarcam/zbarcam.c | 1 - + zbarimg/zbarimg.c | 1 - + 3 files changed, 296 deletions(-) + delete mode 100644 zbar/gettext.h + +diff --git a/zbarcam/zbarcam.c b/zbarcam/zbarcam.c +index f7ea281..ad30101 100644 +--- a/zbarcam/zbarcam.c ++++ b/zbarcam/zbarcam.c +@@ -35,7 +35,6 @@ + #include + + #ifdef ENABLE_NLS +-#include "../zbar/gettext.h" + # include + # define _(string) gettext(string) + #else +diff --git a/zbarimg/zbarimg.c b/zbarimg/zbarimg.c +index 0796fd8..d05d832 100644 +--- a/zbarimg/zbarimg.c ++++ b/zbarimg/zbarimg.c +@@ -40,7 +40,6 @@ + #include + + #ifdef ENABLE_NLS +-#include "../zbar/gettext.h" + # include + # define _(string) gettext(string) + #else diff --git a/package/zbar/0002-zbarcam-zbar-cam-img-.c-fix-build-with-musl.patch b/package/zbar/0002-zbarcam-zbar-cam-img-.c-fix-build-with-musl.patch new file mode 100644 index 00000000..fe62c164 --- /dev/null +++ b/package/zbar/0002-zbarcam-zbar-cam-img-.c-fix-build-with-musl.patch @@ -0,0 +1,55 @@ +From ecf90fcff066c06eda1fb931d08fadf5989ecb36 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sat, 29 Aug 2020 14:23:04 +0200 +Subject: [PATCH] zbarcam/zbar{cam,img}.c: fix build with musl + +setlocale is used since version 0.23.1 and +https://git.linuxtv.org/zbar.git/commit/id=d05911f8d5fb8c1e064bd93ed9ec9f038c5da096 + +Include locale.h to avoid the following build failure on musl: + +zbarcam/zbarcam.c:168:5: warning: implicit declaration of function 'setlocale'; did you mean 'setstate'? [-Wimplicit-function-declaration] + setlocale (LC_ALL, ""); + ^~~~~~~~~ + setstate +zbarcam/zbarcam.c:168:16: error: 'LC_ALL' undeclared (first use in this function) + setlocale (LC_ALL, ""); + ^~~~~~ + +Fixes: + - http://autobuild.buildroot.org/results/b93ce5430bf22ddda94ee30882a883348617f5b1 + +Signed-off-by: Fabrice Fontaine +[Upstream status: https://github.com/mchehab/zbar/pull/115] +--- + zbarcam/zbarcam.c | 1 + + zbarimg/zbarimg.c | 1 + + 2 files changed, 2 insertions(+) + +diff --git a/zbarcam/zbarcam.c b/zbarcam/zbarcam.c +index 6e13c8c..b8bc732 100644 +--- a/zbarcam/zbarcam.c ++++ b/zbarcam/zbarcam.c +@@ -36,6 +36,7 @@ + + #ifdef ENABLE_NLS + # include ++# include + # define _(string) gettext(string) + #else + # define _(string) string +diff --git a/zbarimg/zbarimg.c b/zbarimg/zbarimg.c +index d05d832..52502b2 100644 +--- a/zbarimg/zbarimg.c ++++ b/zbarimg/zbarimg.c +@@ -41,6 +41,7 @@ + + #ifdef ENABLE_NLS + # include ++# include + # define _(string) gettext(string) + #else + # define _(string) string +-- +2.28.0 + diff --git a/package/zbar/Config.in b/package/zbar/Config.in new file mode 100644 index 00000000..0f4d1157 --- /dev/null +++ b/package/zbar/Config.in @@ -0,0 +1,17 @@ +config BR2_PACKAGE_ZBAR + bool "zbar" + depends on BR2_TOOLCHAIN_HAS_THREADS # libv4l + depends on BR2_USE_MMU # libv4l + depends on BR2_INSTALL_LIBSTDCPP # libv4l + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 # libv4l + select BR2_PACKAGE_JPEG + select BR2_PACKAGE_LIBV4L + help + QR and barcode scanner + + https://git.linuxtv.org/zbar.git/about/ + +comment "zbar needs a toolchain w/ threads, C++ and headers >= 3.0" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS \ + || !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 diff --git a/package/zbar/zbar.hash b/package/zbar/zbar.hash new file mode 100644 index 00000000..42770918 --- /dev/null +++ b/package/zbar/zbar.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 dad260b47ef887a639e840a89e5e6e132217b6bba2a8473565d1f459bcb97c1f zbar-0.23.1.tar.bz2 +sha256 44260f9252c7fe38ba8dfb645330504f4a375e3a5e9dd7d5d6b9f04adb4952f1 LICENSE.md diff --git a/package/zbar/zbar.mk b/package/zbar/zbar.mk new file mode 100644 index 00000000..f75741de --- /dev/null +++ b/package/zbar/zbar.mk @@ -0,0 +1,35 @@ +################################################################################ +# +# zbar +# +################################################################################ + +ZBAR_VERSION = 0.23.1 +ZBAR_SOURCE = zbar-$(ZBAR_VERSION).tar.bz2 +ZBAR_SITE = https://www.linuxtv.org/downloads/zbar +ZBAR_LICENSE = LGPL-2.1+ +ZBAR_LICENSE_FILES = LICENSE.md +ZBAR_INSTALL_STAGING = YES +ZBAR_DEPENDENCIES = libv4l jpeg $(TARGET_NLS_DEPENDENCIES) +# uses C99 features +ZBAR_CONF_ENV = \ + CFLAGS="$(TARGET_CFLAGS) -std=gnu99" \ + LIBS=$(TARGET_NLS_LIBS) +ZBAR_CONF_OPTS = \ + --disable-doc \ + --without-imagemagick \ + --without-qt \ + --without-qt5 \ + --without-gtk \ + --without-python \ + --without-x \ + --without-java + +ifeq ($(BR2_PACKAGE_DBUS),y) +ZBAR_DEPENDENCIES += dbus +ZBAR_CONF_OPTS += --with-dbus +else +ZBAR_CONF_OPTS += --without-dbus +endif + +$(eval $(autotools-package)) diff --git a/package/zd1211-firmware/Config.in b/package/zd1211-firmware/Config.in new file mode 100644 index 00000000..807c26f5 --- /dev/null +++ b/package/zd1211-firmware/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_ZD1211_FIRMWARE + bool "zd1211-firmware" + help + Firmware for the ZyDAS ZD1211 / Atheros AR5007UG wifi devices. + + https://sourceforge.net/projects/zd1211/ diff --git a/package/zd1211-firmware/zd1211-firmware.hash b/package/zd1211-firmware/zd1211-firmware.hash new file mode 100644 index 00000000..14e2c710 --- /dev/null +++ b/package/zd1211-firmware/zd1211-firmware.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 f11d3810d7f72833997f634584a586dcced71a353f965abf81062ec431d02b12 zd1211-firmware-1.5.tar.bz2 +sha256 e6d6a009505e345fe949e1310334fcb0747f28dae2856759de102ab66b722cb4 COPYING diff --git a/package/zd1211-firmware/zd1211-firmware.mk b/package/zd1211-firmware/zd1211-firmware.mk new file mode 100644 index 00000000..1836a9f7 --- /dev/null +++ b/package/zd1211-firmware/zd1211-firmware.mk @@ -0,0 +1,19 @@ +################################################################################ +# +# zd1211-firmware +# +################################################################################ + +ZD1211_FIRMWARE_VERSION = 1.5 +ZD1211_FIRMWARE_SITE = http://downloads.sourceforge.net/project/zd1211/zd1211-firmware/$(ZD1211_FIRMWARE_VERSION) +ZD1211_FIRMWARE_SOURCE = zd1211-firmware-$(ZD1211_FIRMWARE_VERSION).tar.bz2 +ZD1211_FIRMWARE_LICENSE = GPL-2.0 +ZD1211_FIRMWARE_LICENSE_FILES = COPYING + +# Not all of the firmware files are used +define ZD1211_FIRMWARE_INSTALL_TARGET_CMDS + $(INSTALL) -d -m 0755 $(TARGET_DIR)/lib/firmware/zd1211/ + cp -dpf $(@D)/zd1211*{ub,uphr,ur} $(TARGET_DIR)/lib/firmware/zd1211 +endef + +$(eval $(generic-package)) diff --git a/package/zeromq/Config.in b/package/zeromq/Config.in new file mode 100644 index 00000000..cf5c644c --- /dev/null +++ b/package/zeromq/Config.in @@ -0,0 +1,67 @@ +comment "zeromq needs a toolchain w/ C++, threads" + depends on !(BR2_INSTALL_LIBSTDCPP && BR2_TOOLCHAIN_HAS_THREADS) + +config BR2_PACKAGE_ZEROMQ + bool "zeromq" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_UTIL_LINUX + select BR2_PACKAGE_UTIL_LINUX_LIBUUID + help + ØMQ (ZeroMQ, 0MQ, zmq) looks like an embeddable networking + library but acts like a concurrency framework. It gives you + sockets that carry whole messages across various transports + like in-process, inter- process, TCP, and multicast. You can + connect sockets N-to-N with patterns like fanout, pub-sub, + task distribution, and request-reply. It's fast enough to + be the fabric for clustered products. Its asynchronous I/O + model gives you scalable multicore applications, built as + asynchronous message-processing tasks. It has a score of + language APIs and runs on most operating systems. + + ØMQ is from iMatix and is LGPL open source. + + http://www.zeromq.org/ + +if BR2_PACKAGE_ZEROMQ + +comment "norm support needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS + +config BR2_PACKAGE_ZEROMQ_NORM + bool "NORM support" + depends on !BR2_STATIC_LIBS + select BR2_PACKAGE_NORM + help + Add support for NACK-Oriented Reliable Multicast (RFC 5740) + protocol. + +comment "PGM/EPGM support needs a toolchain w/ wchar" + depends on BR2_TOOLCHAIN_HAS_SYNC_2 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on !BR2_USE_WCHAR + +config BR2_PACKAGE_ZEROMQ_PGM + bool "PGM/EPGM support" + depends on BR2_TOOLCHAIN_HAS_SYNC_2 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on BR2_USE_WCHAR # openpgm + select BR2_PACKAGE_OPENPGM + help + Add support for Pragmatic General Multicast protocol (RFC + 3208) implemented either over raw IP packets or UDP + datagrams (encapsulated PGM). + +config BR2_PACKAGE_ZEROMQ_DRAFTS + bool "Draft APIs support" + help + Enable unstable draft ZeroMQ APIs + + https://pyzmq.readthedocs.io/en/latest/draft.html + +config BR2_PACKAGE_ZEROMQ_WEBSOCKET + bool "WebSocket support" + help + Enable WebSocket transport + +endif diff --git a/package/zeromq/zeromq.hash b/package/zeromq/zeromq.hash new file mode 100644 index 00000000..5085fbca --- /dev/null +++ b/package/zeromq/zeromq.hash @@ -0,0 +1,7 @@ +# From https://github.com/zeromq/libzmq/releases +md5 c897d4005a3f0b8276b00b7921412379 zeromq-4.3.4.tar.gz +sha1 47277a64749049123d1401600e8cfbab10a3ae28 zeromq-4.3.4.tar.gz +# Locally computed +sha256 c593001a89f5a85dd2ddf564805deb860e02471171b3f204944857336295c3e5 zeromq-4.3.4.tar.gz +sha256 4fd86507c9b486764343065a9e035222869a27b5789efeb4fd93edc85412d7a3 COPYING +sha256 83f32abe61ee58ffb1b007412c08415168c052501dbf56d7a47aaaac52b03ef6 COPYING.LESSER diff --git a/package/zeromq/zeromq.mk b/package/zeromq/zeromq.mk new file mode 100644 index 00000000..18269940 --- /dev/null +++ b/package/zeromq/zeromq.mk @@ -0,0 +1,100 @@ +################################################################################ +# +# zeromq +# +################################################################################ + +ZEROMQ_VERSION = 4.3.4 +ZEROMQ_SITE = https://github.com/zeromq/libzmq/releases/download/v$(ZEROMQ_VERSION) +ZEROMQ_INSTALL_STAGING = YES +ZEROMQ_DEPENDENCIES = util-linux +ZEROMQ_CONF_OPTS = --disable-Werror --without-documentation +ZEROMQ_LICENSE = LGPL-3.0+ with exceptions +ZEROMQ_LICENSE_FILES = COPYING COPYING.LESSER +ZEROMQ_CPE_ID_VENDOR = zeromq +ZEROMQ_CPE_ID_PRODUCT = libzmq + +# Assume these flags are always available. It is true, at least for +# SOCK_CLOEXEC, since linux v2.6.27. +# Note: the flag TCP_KEEPALIVE is NOT available so we do not include it. +ZEROMQ_CONF_ENV = libzmq_cv_sock_cloexec=yes \ + libzmq_cv_so_keepalive=yes \ + libzmq_cv_tcp_keepcnt=yes \ + libzmq_cv_tcp_keepidle=yes \ + libzmq_cv_tcp_keepintvl=yes + +# Internal error, aborting at dwarf2cfi.c:2752 in connect_traces +# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58864 +ifeq ($(BR2_m68k_cf),y) +ZEROMQ_CONF_OPTS += CXXFLAGS="$(TARGET_CXXFLAGS) -fno-defer-pop" +endif + +# Only tools/curve_keygen.c needs this, but it doesn't hurt to pass it +# for the rest of the build as well (which automatically includes stdc++). +ifeq ($(BR2_STATIC_LIBS),y) +ZEROMQ_CONF_OPTS += LIBS=-lstdc++ +endif + +ifeq ($(BR2_PACKAGE_ZEROMQ_NORM),y) +ZEROMQ_CONF_OPTS += --with-norm +ZEROMQ_DEPENDENCIES += norm +else +ZEROMQ_CONF_OPTS += --without-norm +endif + +ifeq ($(BR2_PACKAGE_ZEROMQ_PGM),y) +ZEROMQ_DEPENDENCIES += host-pkgconf openpgm +ZEROMQ_CONF_OPTS += --with-pgm +else +ZEROMQ_CONF_OPTS += --without-pgm +endif + +ifeq ($(BR2_PACKAGE_ZEROMQ_DRAFTS),y) +ZEROMQ_CONF_OPTS += --enable-drafts +else +ZEROMQ_CONF_OPTS += --disable-drafts +endif + +ifeq ($(BR2_PACKAGE_ZEROMQ_WEBSOCKET),y) +ZEROMQ_CONF_OPTS += --enable-ws +else +ZEROMQ_CONF_OPTS += --disable-ws +endif + +ifeq ($(BR2_PACKAGE_GNUTLS),y) +ZEROMQ_DEPENDENCIES += host-pkgconf gnutls +ZEROMQ_CONF_OPTS += --with-tls +else +ZEROMQ_CONF_OPTS += --without-tls +endif + +ifeq ($(BR2_PACKAGE_LIBBSD),y) +ZEROMQ_DEPENDENCIES += host-pkgconf libbsd +ZEROMQ_CONF_OPTS += --enable-libbsd +else +ZEROMQ_CONF_OPTS += --disable-libbsd +endif + +ifeq ($(BR2_PACKAGE_LIBNSS),y) +ZEROMQ_DEPENDENCIES += host-pkgconf libnss +ZEROMQ_CONF_OPTS += --with-nss +else +ZEROMQ_CONF_OPTS += --without-nss +endif + +# ZeroMQ uses libsodium if it's available. +ifeq ($(BR2_PACKAGE_LIBSODIUM),y) +ZEROMQ_DEPENDENCIES += libsodium +ZEROMQ_CONF_OPTS += --with-libsodium="$(STAGING_DIR)/usr" +else +ZEROMQ_CONF_OPTS += --without-libsodium +endif + +ifeq ($(BR2_PACKAGE_LIBUNWIND),y) +ZEROMQ_DEPENDENCIES += libunwind +ZEROMQ_CONF_OPTS += --enable-libunwind +else +ZEROMQ_CONF_OPTS += --disable-libunwind +endif + +$(eval $(autotools-package)) diff --git a/package/zic/0001-remove-dependency-check-on-version-file.patch b/package/zic/0001-remove-dependency-check-on-version-file.patch new file mode 100644 index 00000000..193c2630 --- /dev/null +++ b/package/zic/0001-remove-dependency-check-on-version-file.patch @@ -0,0 +1,32 @@ +From 4ad8932f93c490d15586b1def3863e9580e6eceb Mon Sep 17 00:00:00 2001 +From: Martin Bark +Date: Sat, 3 Dec 2016 13:51:50 +0000 +Subject: [PATCH] remove dependency check on version file + +$(VERSION_DEPS) includes dependencies from tzdata meaning applications +such as zic can't build from tzcode on their own. Remove the dependency +to $(VERSION_DEPS) since it is not necessary to check for version updates +in released code. This solves building zic from tzcode without needing +tzdata. + +Signed-off-by: Martin Bark +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 1b714a8..00d2c09 100644 +--- a/Makefile ++++ b/Makefile +@@ -587,7 +587,7 @@ INSTALL: ALL install date.1 + # Otherwise, use $(VERSION) unless it is "unknown" and there is already + # a 'version' file, in which case reuse the existing 'version' contents + # and append "-dirty" if the contents do not already end in "-dirty". +-version: $(VERSION_DEPS) ++version: + { (type git) >/dev/null 2>&1 && \ + V=`git describe --match '[0-9][0-9][0-9][0-9][a-z]*' \ + --abbrev=7 --dirty` || \ +-- +2.7.4 + diff --git a/package/zic/zic.hash b/package/zic/zic.hash new file mode 100644 index 00000000..3cee80bc --- /dev/null +++ b/package/zic/zic.hash @@ -0,0 +1,4 @@ +# From https://mm.icann.org/pipermail/tz-announce/2020-December/000064.html +sha512 5f6bf1b508434842eb9dacacc744b5f3375c35b88e401ef372b5fde80ad2f523484fe52a6e99460e402230406ebf6a9261a97efde45a610f8e8085893d55c4ed tzcode2020f.tar.gz +# Locally computed: +sha256 0613408568889f5739e5ae252b722a2659c02002839ad970a63dc5e9174b27cf LICENSE diff --git a/package/zic/zic.mk b/package/zic/zic.mk new file mode 100644 index 00000000..7529b682 --- /dev/null +++ b/package/zic/zic.mk @@ -0,0 +1,25 @@ +################################################################################ +# +# zic +# +################################################################################ + +ZIC_VERSION = 2020f +ZIC_SOURCE = tzcode$(ZIC_VERSION).tar.gz +ZIC_SITE = https://www.iana.org/time-zones/repository/releases +ZIC_STRIP_COMPONENTS = 0 +ZIC_LICENSE = Public domain +ZIC_LICENSE_FILES = LICENSE + +define HOST_ZIC_BUILD_CMDS + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) zic +endef + +define HOST_ZIC_INSTALL_CMDS + $(INSTALL) -D -m 755 $(@D)/zic $(HOST_DIR)/sbin/zic + $(INSTALL) -D -m 644 $(@D)/tzfile.h $(HOST_DIR)/include/tzfile.h +endef + +$(eval $(host-generic-package)) + +ZIC = $(HOST_DIR)/sbin/zic diff --git a/package/zip/0001-configure-Remove-Check-C-compiler-type-optimization-.patch b/package/zip/0001-configure-Remove-Check-C-compiler-type-optimization-.patch new file mode 100644 index 00000000..591b178a --- /dev/null +++ b/package/zip/0001-configure-Remove-Check-C-compiler-type-optimization-.patch @@ -0,0 +1,130 @@ +From 0f5e1658c05746b17f05a1bade263cad19b37e79 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Thu, 22 Jan 2015 15:20:25 +0100 +Subject: [PATCH 1/6] configure: Remove "Check C compiler type (optimization + options)" + +This test force optimization to -O3 +while it is already set in CFLAGS + +Signed-off-by: Romain Naour +--- + unix/configure | 98 ---------------------------------------------------------- + 1 file changed, 98 deletions(-) + +diff --git a/unix/configure b/unix/configure +index 73ba803..4185fee 100644 +--- a/unix/configure ++++ b/unix/configure +@@ -22,108 +22,10 @@ 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 + + echo "Check bzip2 support" +-- +1.9.3 + diff --git a/package/zip/0002-configure-Don-t-use-host-CPP.patch b/package/zip/0002-configure-Don-t-use-host-CPP.patch new file mode 100644 index 00000000..85049127 --- /dev/null +++ b/package/zip/0002-configure-Don-t-use-host-CPP.patch @@ -0,0 +1,37 @@ +From fc5c889131ff6270e1028cc7edd87e7f10a7da6d Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Thu, 22 Jan 2015 15:21:31 +0100 +Subject: [PATCH 2/6] configure: Don't use host CPP + +CPP is redefined if a cpp binary (/lib/cpp) is found on the host. + +Use the CPP="${CC} -E" allows to pass the following checks: +Check if we can use asm code (for -DASMV) +Check if compiler generates underlines (for -DASM_CRC) + +Signed-off-by: Romain Naour +--- + unix/configure | 7 ------- + 1 file changed, 7 deletions(-) + +diff --git a/unix/configure b/unix/configure +index 4185fee..489009f 100644 +--- a/unix/configure ++++ b/unix/configure +@@ -122,13 +122,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 " > conftest.c + $CPP conftest.c >/dev/null 2>/dev/null || CPP="${CC} -E" +-- +1.9.3 + diff --git a/package/zip/0003-Makefile-Use-CFLAGS-from-command-line.patch b/package/zip/0003-Makefile-Use-CFLAGS-from-command-line.patch new file mode 100644 index 00000000..104b7e8d --- /dev/null +++ b/package/zip/0003-Makefile-Use-CFLAGS-from-command-line.patch @@ -0,0 +1,30 @@ +From 93189390de7322da78bc5b807f4cadaff46393c9 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Thu, 22 Jan 2015 22:45:30 +0100 +Subject: [PATCH 3/6] Makefile: Use CFLAGS from command line + +Replace CFLAGS_NOOPT by CFLAGS when calling unix/configure script +to create 'flags' file which contains all variables used to build +zip binary. + +Signed-off-by: Romain Naour +--- + unix/Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/unix/Makefile b/unix/Makefile +index abd0c44..db62368 100644 +--- a/unix/Makefile ++++ b/unix/Makefile +@@ -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(), +-- +1.9.3 + diff --git a/package/zip/0004-configure-use-LDFLAGS-from-command-line.patch b/package/zip/0004-configure-use-LDFLAGS-from-command-line.patch new file mode 100644 index 00000000..35d38602 --- /dev/null +++ b/package/zip/0004-configure-use-LDFLAGS-from-command-line.patch @@ -0,0 +1,35 @@ +From 5c58b8737dc9ccf9407f6725f6f07b764d6abb22 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Thu, 22 Jan 2015 23:47:55 +0100 +Subject: [PATCH 4/6] configure: use LDFLAGS from command line + +The bzip2 support may not enabled due to a build error +during the checking for bzip2 library. +The library path (-L) to bzip2 library is missing. + +Signed-off-by: Romain Naour +--- + unix/configure | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/unix/configure b/unix/configure +index 489009f..de9fd68 100644 +--- a/unix/configure ++++ b/unix/configure +@@ -106,11 +106,11 @@ int main() + return 0; + } + _EOF_ +- $CC $CFLAGS -o conftest conftest.c -lbz2 > /dev/null 2>/dev/null ++ $CC $CFLAGS $LDFLAGS -o conftest conftest.c -lbz2 > /dev/null 2>/dev/null + if test $? -eq 0; then + echo "-- OS supports bzip2 - linking in bzip2" + CFLAGS="${CFLAGS} -DBZIP2_SUPPORT" +- LFLAGS2="${LFLAGS2} -lbz2" ++ LFLAGS2="${LFLAGS2} ${LDFLAGS} -lbz2" + else + echo "-- Either bzlib.h or libbz2.a not found - no bzip2" + fi +-- +1.9.3 + diff --git a/package/zip/0005-unix-configure-remove-GID-UID-size-check.patch b/package/zip/0005-unix-configure-remove-GID-UID-size-check.patch new file mode 100644 index 00000000..38d8d730 --- /dev/null +++ b/package/zip/0005-unix-configure-remove-GID-UID-size-check.patch @@ -0,0 +1,85 @@ +From d8da4e5f0ebed000f880e60b6cca7c575f7ed1c7 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Fri, 23 Jan 2015 22:13:14 +0100 +Subject: [PATCH 5/6] unix/configure: remove GID/UID size check + +This check can't work for cross-compilation since it +try to run a target's binary on the host system. + +Reported-by: Richard Genoud +Signed-off-by: Romain Naour +--- + unix/configure | 57 --------------------------------------------------------- + 1 file changed, 57 deletions(-) + +diff --git a/unix/configure b/unix/configure +index de9fd68..7bfc9eb 100644 +--- a/unix/configure ++++ b/unix/configure +@@ -237,63 +237,6 @@ _EOF_ + $CC $CFLAGS -c conftest.c >/dev/null 2>/dev/null + [ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNO_OFF_T" + +- +-echo Check size of UIDs and GIDs +-echo "(Now zip stores variable size UIDs/GIDs using a new extra field. This" +-echo " tests if this OS uses 16-bit UIDs/GIDs and so if the old 16-bit storage" +-echo " should also be used for backward compatibility.)" +-# Added 2008-04-15 CS +-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 +-#include +-#include +-#include +-int main() +-{ +- struct stat s; +- +- printf(" s.st_uid is %u bytes\n", sizeof(s.st_uid)); +- printf(" s.st_gid is %u bytes\n", sizeof(s.st_gid)); +- +- /* see if have 16-bit UID */ +- if (sizeof(s.st_uid) != 2) { +- return 1; +- } +- /* see if have 16-bit GID */ +- if (sizeof(s.st_gid) != 2) { +- return 2; +- } +- return 3; +-} +-_EOF_ +-# compile it +-$CC -o conftest conftest.c >/dev/null 2>/dev/null +-if [ $? -ne 0 ]; then +- echo -- UID/GID test failed on compile - disabling old 16-bit UID/GID support +- CFLAGS="${CFLAGS} -DUIDGID_NOT_16BIT" +-else +-# run it +- ./conftest +- r=$? +- if [ $r -eq 1 ]; then +- echo -- UID not 2 bytes - disabling old 16-bit UID/GID support +- CFLAGS="${CFLAGS} -DUIDGID_NOT_16BIT" +- elif [ $r -eq 2 ]; then +- echo -- GID not 2 bytes - disabling old 16-bit UID/GID support +- CFLAGS="${CFLAGS} -DUIDGID_NOT_16BIT" +- elif [ $r -eq 3 ]; then +- echo -- 16-bit UIDs and GIDs - keeping old 16-bit UID/GID support +- else +- echo -- test failed - conftest returned $r - disabling old 16-bit UID/GID support +- CFLAGS="${CFLAGS} -DUIDGID_NOT_16BIT" +- 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 +-- +1.9.3 + diff --git a/package/zip/0006-unix-configure-borrow-the-LFS-test-from-autotools.patch b/package/zip/0006-unix-configure-borrow-the-LFS-test-from-autotools.patch new file mode 100644 index 00000000..a4e99dbc --- /dev/null +++ b/package/zip/0006-unix-configure-borrow-the-LFS-test-from-autotools.patch @@ -0,0 +1,101 @@ +From fc392c939b9a18959482f588aff0afc29dd6d30a Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Fri, 23 Jan 2015 22:20:18 +0100 +Subject: [PATCH 6/6] unix/configure: borrow the LFS test from autotools. + +Infozip's LFS check can't work for cross-compilation +since it try to run a target's binary on the host system. + +Instead, use to LFS test used by autotools which is a +compilation test. +(see autotools/lib/autoconf/specific.m4) + +Reported-by: Richard Genoud +Signed-off-by: Romain Naour +--- + unix/configure | 51 ++++++++++++++++++--------------------------------- + 1 file changed, 18 insertions(+), 33 deletions(-) + +diff --git a/unix/configure b/unix/configure +index 7bfc9eb..588f269 100644 +--- a/unix/configure ++++ b/unix/configure +@@ -237,9 +237,8 @@ _EOF_ + $CC $CFLAGS -c conftest.c >/dev/null 2>/dev/null + [ $? -ne 0 ] && CFLAGS="${CFLAGS} -DNO_OFF_T" + +-# 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 ++# LFS check borrowed from autotools sources ++# lib/autoconf/specific.m4 + + echo Check for Large File Support + cat > conftest.c << _EOF_ +@@ -247,24 +246,22 @@ cat > conftest.c << _EOF_ + # 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 +-#include +-#include +-#include +-int main() ++ /* Check that off_t can represent 2**63 - 1 correctly. ++ We can't simply define LARGE_OFF_T to be 9223372036854775807, ++ since some C++ compilers masquerading as C compilers ++ incorrectly reject 9223372036854775807. */ ++#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) ++ int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 ++ && LARGE_OFF_T % 2147483647 == 1) ++ ? 1 : -1]; ++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; ++ ++ ; ++ return 0; + } + _EOF_ + # compile it +@@ -272,22 +269,10 @@ $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 ++ echo -- yes we have Large File Support! ++ CFLAGS="${CFLAGS} -DLARGE_FILE_SUPPORT" + fi + +- + # Check for wide char for Unicode support + # Added 11/24/2005 EG + +-- +1.9.3 + diff --git a/package/zip/0007-timezone.c-needs-time.h-fixes-musl-compile.patch b/package/zip/0007-timezone.c-needs-time.h-fixes-musl-compile.patch new file mode 100644 index 00000000..bdaa638f --- /dev/null +++ b/package/zip/0007-timezone.c-needs-time.h-fixes-musl-compile.patch @@ -0,0 +1,38 @@ +From 68abba9fb2ed114ac35712756b1f7700a865c498 Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Tue, 17 Dec 2019 21:25:01 +0100 +Subject: [PATCH] timezone.c: needs time.h (fixes musl compile) + +Fixes: + + In file included from util.c:28: + timezone.c: In function 'mktime': + timezone.c:644:18: error: dereferencing pointer to incomplete type 'struct tm' + save_isdst = tm->tm_isdst; + + timezone.c:661:11: warning: implicit declaration of function 'localtime'; did you mean 'dostime'? [-Wimplicit-function-declaration] + ltm = localtime(&then); + + timezone.c:661:9: warning: assignment to 'struct tm *' from 'int' makes pointer from integer without a cast [-Wint-conversion] + ltm = localtime(&then); + +Signed-off-by: Peter Seiderer +--- + timezone.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/timezone.c b/timezone.c +index 485ec02..18aecbd 100644 +--- a/timezone.c ++++ b/timezone.c +@@ -41,6 +41,7 @@ + #include "timezone.h" + #include + #include ++#include + + #ifdef IZTZ_DEFINESTDGLOBALS + long timezone = 0; +-- +2.24.0 + diff --git a/package/zip/Config.in b/package/zip/Config.in new file mode 100644 index 00000000..4b6360a4 --- /dev/null +++ b/package/zip/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_ZIP + bool "zip" + help + Zip is a compression and file packaging/archive utility. + Although highly compatible both with PKWARE's PKZIP and + PKUNZIP utilities for MS-DOS and with Info-ZIP's own UnZip, + our primary objectives have been portability and + other-than-MSDOS functionality. + + http://infozip.sourceforge.net/Zip.html diff --git a/package/zip/Config.in.host b/package/zip/Config.in.host new file mode 100644 index 00000000..b14ce55d --- /dev/null +++ b/package/zip/Config.in.host @@ -0,0 +1,10 @@ +config BR2_PACKAGE_HOST_ZIP + bool "host zip" + help + Zip is a compression and file packaging/archive utility. + Although highly compatible both with PKWARE's PKZIP and + PKUNZIP utilities for MS-DOS and with Info-ZIP's own UnZip, + our primary objectives have been portability and + other-than-MSDOS functionality. + + http://infozip.sourceforge.net/Zip.html diff --git a/package/zip/zip.hash b/package/zip/zip.hash new file mode 100644 index 00000000..5e1b3353 --- /dev/null +++ b/package/zip/zip.hash @@ -0,0 +1,3 @@ +# Locally calculated from download (no sig, hash) +sha256 f0e8bb1f9b7eb0b01285495a2699df3a4b766784c1765a8f1aeedf63c0806369 zip30.tgz +sha256 8ecd6c1bab449127eb665cef1561e73a8bce52e217375f6f466939e137b1e110 LICENSE diff --git a/package/zip/zip.mk b/package/zip/zip.mk new file mode 100644 index 00000000..2d11e1c7 --- /dev/null +++ b/package/zip/zip.mk @@ -0,0 +1,62 @@ +################################################################################ +# +# zip +# +################################################################################ + +ZIP_VERSION = 3.0 +# The version is really 3.0, but the tarball is named zip30.tgz +ZIP_SOURCE = zip$(subst .,,$(ZIP_VERSION)).tgz +ZIP_SITE = ftp://ftp.info-zip.org/pub/infozip/src +ZIP_LICENSE = Info-ZIP +ZIP_LICENSE_FILES = LICENSE +ZIP_CPE_ID_VENDOR = info-zip_project +ZIP_INSTALL_STAGING = YES + +ifeq ($(BR2_PACKAGE_BZIP2),y) +ZIP_DEPENDENCIES += bzip2 +endif + +# Infozip's default CFLAGS. +ZIP_CFLAGS = -I. -DUNIX + +# Disable the support of 16-bit UIDs/GIDs, the test in unix/configure was +# removed since it can't work for cross-compilation. +ZIP_CFLAGS += -DUIDGID_NOT_16BIT + +# infozip already defines _LARGEFILE_SOURCE and _LARGEFILE64_SOURCE when +# necessary, redefining it on the command line causes some warnings. +ZIP_TARGET_CFLAGS = \ + $(filter-out -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE,$(TARGET_CFLAGS)) + +define ZIP_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) \ + CFLAGS="$(ZIP_TARGET_CFLAGS) $(ZIP_CFLAGS)" \ + AS="$(TARGET_CC) -c" \ + -f unix/Makefile generic +endef + +define ZIP_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) -f unix/Makefile install \ + prefix=$(TARGET_DIR)/usr +endef + +define ZIP_INSTALLING_STAGING_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) -f unix/Makefile install \ + prefix=$(STAGING_DIR)/usr +endef + +define HOST_ZIP_BUILD_CMDS + $(HOST_MAKE_ENV) $(MAKE) $(HOST_CONFIGURE_OPTS) -C $(@D) \ + CFLAGS="$(HOST_CFLAGS) $(ZIP_CFLAGS)" \ + AS="$(HOSTCC) -c" \ + -f unix/Makefile generic +endef + +define HOST_ZIP_INSTALL_CMDS + $(HOST_MAKE_ENV) $(MAKE) $(HOST_CONFIGURE_OPTS) -C $(@D) -f unix/Makefile install \ + prefix=$(HOST_DIR) +endef + +$(eval $(generic-package)) +$(eval $(host-generic-package)) diff --git a/package/zisofs-tools/zisofs-tools.hash b/package/zisofs-tools/zisofs-tools.hash new file mode 100644 index 00000000..d2f594c7 --- /dev/null +++ b/package/zisofs-tools/zisofs-tools.hash @@ -0,0 +1,5 @@ +# From http://snapshot.debian.org/archive/debian/20141023T043132Z/pool/main/c/cdrkit/cdrkit_1.1.11-3.dsc +sha256 d1c030756ecc182defee9fe885638c1785d35a2c2a297b4604c0e0dcc78e47da cdrkit_1.1.11.orig.tar.gz + +# Locally computed +sha256 32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670 3rd-party/zisofs_tools/COPYING diff --git a/package/zisofs-tools/zisofs-tools.mk b/package/zisofs-tools/zisofs-tools.mk new file mode 100644 index 00000000..fd8c371f --- /dev/null +++ b/package/zisofs-tools/zisofs-tools.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# zisofs-tools +# +################################################################################ + +ZISOFS_TOOLS_VERSION = 1.1.11 +ZISOFS_TOOLS_SOURCE = cdrkit_$(ZISOFS_TOOLS_VERSION).orig.tar.gz +ZISOFS_TOOLS_SITE = http://snapshot.debian.org/archive/debian/20141023T043132Z/pool/main/c/cdrkit +ZISOFS_TOOLS_LICENSE = GPL-2.0+ +ZISOFS_TOOLS_LICENSE_FILES = 3rd-party/zisofs_tools/COPYING +ZISOFS_TOOLS_SUBDIR = 3rd-party/zisofs_tools +HOST_ZISOFS_TOOLS_DEPENDENCIES = host-zlib + +$(eval $(host-autotools-package)) diff --git a/package/zlib-ng/zlib-ng.hash b/package/zlib-ng/zlib-ng.hash new file mode 100644 index 00000000..3e1dba35 --- /dev/null +++ b/package/zlib-ng/zlib-ng.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 379723c0c954679a50d1d7df43084e2194dc51ecbc9987c889cb129d1f6734bc zlib-ng-1.9.9-b1.tar.gz +sha256 d3c80be055d94d798eaa786116e84fa0b010bc11420b5d2060d978ea77845436 LICENSE.md diff --git a/package/zlib-ng/zlib-ng.mk b/package/zlib-ng/zlib-ng.mk new file mode 100644 index 00000000..c56fa72d --- /dev/null +++ b/package/zlib-ng/zlib-ng.mk @@ -0,0 +1,26 @@ +################################################################################ +# +# zlib-ng +# +################################################################################ + +ZLIB_NG_VERSION = 1.9.9-b1 +ZLIB_NG_SITE = $(call github,zlib-ng,zlib-ng,$(ZLIB_NG_VERSION)) +ZLIB_NG_LICENSE = Zlib +ZLIB_NG_LICENSE_FILES = LICENSE.md +ZLIB_NG_INSTALL_STAGING = YES +ZLIB_NG_PROVIDES = zlib + +# Build with zlib compatible API, gzFile support and optimizations on +ZLIB_NG_CONF_OPTS += \ + -DWITH_GZFILEOP=1 \ + -DWITH_OPTIM=1 \ + -DZLIB_COMPAT=1 \ + -DZLIB_ENABLE_TESTS=OFF + +# Enable NEON and ACLE on ARM +ifeq ($(BR2_arm),y) +ZLIB_NG_CONF_OPTS += -DWITH_ACLE=1 -DWITH_NEON=1 +endif + +$(eval $(cmake-package)) diff --git a/package/zlib/Config.in b/package/zlib/Config.in new file mode 100644 index 00000000..550c2efa --- /dev/null +++ b/package/zlib/Config.in @@ -0,0 +1,57 @@ +config BR2_PACKAGE_ZLIB_NG_ARCH_SUPPORTS + bool + default y if BR2_arm + default y if BR2_aarch64 + default y if BR2_i386 + default y if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le + default y if BR2_s390x + default y if BR2_x86_64 + +config BR2_PACKAGE_ZLIB + bool "zlib support" + help + Select the desired Zlib library provider. + +if BR2_PACKAGE_ZLIB + +choice + prompt "zlib variant" + default BR2_PACKAGE_LIBZLIB + help + Select the desired Zlib library provider. + +config BR2_PACKAGE_LIBZLIB + bool "zlib" + select BR2_PACKAGE_HAS_ZLIB + help + Standard (de)compression library. Used by things like + gzip and libpng. + + http://www.zlib.net + +config BR2_PACKAGE_ZLIB_NG + bool "zlib-ng" + depends on BR2_PACKAGE_ZLIB_NG_ARCH_SUPPORTS + select BR2_PACKAGE_HAS_ZLIB + help + Zlib replacement with optimizations for + "next generation" systems. + + https://github.com/zlib-ng/zlib-ng + +endchoice + +config BR2_PACKAGE_HAS_ZLIB + bool + +config BR2_PACKAGE_PROVIDES_ZLIB + string + default "libzlib" if BR2_PACKAGE_LIBZLIB + default "zlib-ng" if BR2_PACKAGE_ZLIB_NG + +endif + +# ensure libzlib is used for the host variant +config BR2_PACKAGE_PROVIDES_HOST_ZLIB + string + default "host-libzlib" diff --git a/package/zlib/zlib.mk b/package/zlib/zlib.mk new file mode 100644 index 00000000..78f48ff0 --- /dev/null +++ b/package/zlib/zlib.mk @@ -0,0 +1,8 @@ +################################################################################ +# +# zlib +# +################################################################################ + +$(eval $(virtual-package)) +$(eval $(host-virtual-package)) diff --git a/package/zlog/Config.in b/package/zlog/Config.in new file mode 100644 index 00000000..cf86a261 --- /dev/null +++ b/package/zlog/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_ZLOG + bool "zlog" + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_STATIC_LIBS + help + zlog is a reliable, high-performance, thread safe, flexible, + clear-model, pure C logging library. + + https://github.com/HardySimpson/zlog + +comment "zlog needs a toolchain w/ threads, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/zlog/zlog.hash b/package/zlog/zlog.hash new file mode 100644 index 00000000..c39505b2 --- /dev/null +++ b/package/zlog/zlog.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 00037ab8d52772a95d645f1dcfd2c292b7cea326b54e63e219a5b7fdcb7e6508 zlog-1.2.15.tar.gz +sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING diff --git a/package/zlog/zlog.mk b/package/zlog/zlog.mk new file mode 100644 index 00000000..e2410d36 --- /dev/null +++ b/package/zlog/zlog.mk @@ -0,0 +1,26 @@ +################################################################################ +# +# zlog +# +################################################################################ + +ZLOG_VERSION = 1.2.15 +ZLOG_SITE = $(call github,HardySimpson,zlog,$(ZLOG_VERSION)) +ZLOG_LICENSE = LGPL-2.1 +ZLOG_LICENSE_FILES = COPYING +ZLOG_INSTALL_STAGING = YES + +define ZLOG_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE1) CC="$(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS)" \ + -C $(@D) all +endef + +define ZLOG_INSTALL_STAGING_CMDS + $(TARGET_MAKE_ENV) $(MAKE) PREFIX=$(STAGING_DIR)/usr -C $(@D) install +endef + +define ZLOG_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) PREFIX=$(TARGET_DIR)/usr -C $(@D) install +endef + +$(eval $(generic-package)) diff --git a/package/zmqpp/0001-Allow-building-shared-or-static-library-only.patch b/package/zmqpp/0001-Allow-building-shared-or-static-library-only.patch new file mode 100644 index 00000000..04fad80f --- /dev/null +++ b/package/zmqpp/0001-Allow-building-shared-or-static-library-only.patch @@ -0,0 +1,92 @@ +From 93005632eca13d8eda409f6e9496fd5dd69e75b0 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Fri, 4 May 2018 18:38:31 +0200 +Subject: [PATCH] Allow building shared or static library only +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Patchs retrieved from: + - https://git.buildroot.net/buildroot/tree/package/zmqpp/0001-Allow-building-shared-or-static-library-only.patch + - https://git.buildroot.net/buildroot/tree/package/zmqpp/0002-Install-static-library-for-static-builds.patch + +Both patches have been merged in a single one and slightly updated to +keep default behavior of building and installing static library +(BUILD_STATIC is set to yes by default) + +[Upstream status: merged (https://github.com/zeromq/zmqpp/pull/218)] +Signed-off-by: Jörg Krause +Signed-off-by: Gustavo Zacarias +Signed-off-by: Fabrice Fontaine +--- + Makefile | 24 ++++++++++++++++++++---- + 1 file changed, 20 insertions(+), 4 deletions(-) + +diff --git a/Makefile b/Makefile +index 689acaa..e43054c 100644 +--- a/Makefile ++++ b/Makefile +@@ -81,6 +81,9 @@ ifeq ($(UNAME_S),Darwin) + endif + + ++BUILD_SHARED ?= yes ++BUILD_STATIC ?= yes ++ + CONFIG_FLAGS = + ifeq ($(CONFIG),debug) + CONFIG_FLAGS = -g -fno-inline -ftemplate-depth-1000 +@@ -95,13 +98,22 @@ ifneq (,$(findstring $(CONFIG),release loadtest)) + CONFIG_FLAGS = -O3 -funroll-loops -ffast-math -finline-functions -fomit-frame-pointer -DNO_DEBUG_LOG -DNO_TRACE_LOG -DNDEBUG + endif + +-COMMON_FLAGS = -MMD -std=c++11 -pipe -Wall -fPIC \ ++COMMON_FLAGS = -MMD -std=c++11 -pipe -Wall \ + -DBUILD_ENV=$(CONFIG) \ + -DBUILD_DATESTAMP='$(APP_DATESTAMP)' \ + -DBUILD_LIBRARY_NAME='"$(LIBRARY_NAME)"' \ + -DBUILD_CLIENT_NAME='"$(CLIENT_TARGET)"' \ + -I$(SRC_PATH) $(CUSTOM_INCLUDE_PATH) + ++ifeq ($(BUILD_SHARED),yes) ++COMMON_FLAGS += -fPIC ++LIBRARY_TARGETS += $(LIBRARY_SHARED) ++endif ++ ++ifeq ($(BUILD_STATIC),yes) ++LIBRARY_TARGETS += $(LIBRARY_ARCHIVE) ++endif ++ + COMMON_LIBS = -lzmq + + LIBRARY_LIBS = +@@ -150,11 +162,15 @@ install: + mkdir -p $(LIBDIR) + mkdir -p $(PKGCONFIGDIR) + install -m 644 $(ALL_LIBRARY_INCLUDES) $(INCLUDEDIR)/$(LIBRARY_DIR) +- install -m 755 $(BUILD_PATH)/$(LIBRARY_VERSION_SHARED) $(LIBDIR)/$(LIBRARY_FULL_VERSION_SHARED) +- install -m 755 $(BUILD_PATH)/$(LIBRARY_ARCHIVE) $(LIBDIR)/$(LIBRARY_ARCHIVE) + install -m 755 $(BUILD_PATH)/$(PKGCONFIG_FILE) $(PKGCONFIGDIR)/$(PKGCONFIG_FILE) ++ifeq ($(BUILD_SHARED),yes) ++ install -m 755 $(BUILD_PATH)/$(LIBRARY_VERSION_SHARED) $(LIBDIR)/$(LIBRARY_FULL_VERSION_SHARED) + ln -sf $(LIBRARY_FULL_VERSION_SHARED) $(LIBDIR)/$(LIBRARY_VERSION_SHARED) + ln -sf $(LIBRARY_FULL_VERSION_SHARED) $(LIBDIR)/$(LIBRARY_SHARED) ++endif ++ifeq ($(BUILD_STATIC),yes) ++ install -m 755 $(BUILD_PATH)/$(LIBRARY_ARCHIVE) $(LIBDIR)/$(LIBRARY_ARCHIVE) ++endif + if [ -f $(BUILD_PATH)/$(CLIENT_TARGET) ]; then install -m 755 $(BUILD_PATH)/$(CLIENT_TARGET) $(BINDIR); fi + $(LDCONFIG) + @echo "use make installcheck to test the install" +@@ -176,7 +192,7 @@ clean: + + client: $(CLIENT_TARGET) + +-library: $(LIBRARY_SHARED) $(LIBRARY_ARCHIVE) ++library: $(LIBRARY_TARGETS) + + # + # BUILD Targets +-- +2.14.1 + diff --git a/package/zmqpp/Config.in b/package/zmqpp/Config.in new file mode 100644 index 00000000..2c80e288 --- /dev/null +++ b/package/zmqpp/Config.in @@ -0,0 +1,41 @@ +config BR2_PACKAGE_ZMQPP + bool "zmqpp" + # c++1x support + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS # zeromq + depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # exception_ptr + select BR2_PACKAGE_ZEROMQ + help + C++ binding for zeromq (ZeroMQ, 0MQ, zmq). + + This C++ binding is a 'high-level' library that hides most + of the C-style interface core zeromq provides. + + http://github.com/benjamg/zmqpp + +comment "zmqpp needs a toolchain w/ C++, threads, gcc >= 4.7" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 + +comment "zmqpp needs exception_ptr" + depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735 + +if BR2_PACKAGE_ZMQPP + +config BR2_PACKAGE_ZMQPP_CLIENT + bool "zmqpp client" + depends on !BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_HAS_THREADS # boost + depends on BR2_USE_WCHAR # boost + select BR2_PACKAGE_BOOST + select BR2_PACKAGE_BOOST_PROGRAM_OPTIONS + help + Build and install the zmqpp client, a command line tool that + can be used to listen or send to zeromq sockets. + +comment "zmqpp client needs a toolchain w/ dynamic library, threads, wchar" + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS \ + || !BR2_USE_WCHAR + +endif diff --git a/package/zmqpp/zmqpp.hash b/package/zmqpp/zmqpp.hash new file mode 100644 index 00000000..c440b2ac --- /dev/null +++ b/package/zmqpp/zmqpp.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 c1d4587df3562f73849d9e5f8c932ca7dcfc7d8bec31f62d7f35073ef81f4d29 zmqpp-4.2.0.tar.gz +sha256 fab3dd6bdab226f1c08630b1dd917e11fcb4ec5e1e020e2c16f83a0a13863e85 LICENSE diff --git a/package/zmqpp/zmqpp.mk b/package/zmqpp/zmqpp.mk new file mode 100644 index 00000000..3cd19d64 --- /dev/null +++ b/package/zmqpp/zmqpp.mk @@ -0,0 +1,59 @@ +################################################################################ +# +# zmqpp +# +################################################################################ + +ZMQPP_VERSION = 4.2.0 +ZMQPP_SITE = $(call github,zeromq,zmqpp,$(ZMQPP_VERSION)) +ZMQPP_INSTALL_STAGING = YES +ZMQPP_DEPENDENCIES = zeromq +ZMQPP_LICENSE = MPL-2.0 +ZMQPP_LICENSE_FILES = LICENSE +ZMQPP_MAKE_OPTS = LD="$(TARGET_CXX)" BUILD_PATH=./build PREFIX=/usr +ZMQPP_LDFLAGS = $(TARGET_LDFLAGS) -lpthread + +# gcc bug internal compiler error: in merge_overlapping_regs, at +# regrename.c:304. This bug is fixed since gcc 6. +# By setting CONFIG to empty, all optimizations such as -funroll-loops +# -ffast-math -finline-functions -fomit-frame-pointer are disabled, +# so only set CONFIG for the non-affected cases. +ifneq ($(BR2_or1k):$(BR2_TOOLCHAIN_GCC_AT_LEAST_6),y:) +ZMQPP_CONFIG = $(if $(BR2_ENABLE_DEBUG),debug,release) +endif + +ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) +ZMQPP_LDFLAGS += -latomic +endif + +ifeq ($(BR2_PACKAGE_ZMQPP_CLIENT),y) +ZMQPP_DEPENDENCIES += boost +endif + +ifeq ($(BR2_STATIC_LIBS),y) +ZMQPP_MAKE_OPTS += BUILD_STATIC=yes BUILD_SHARED=no +else ifeq ($(BR2_SHARED_STATIC_LIBS),y) +ZMQPP_MAKE_OPTS += BUILD_STATIC=yes BUILD_SHARED=yes +else ifeq ($(BR2_SHARED_LIBS),y) +ZMQPP_MAKE_OPTS += BUILD_STATIC=no BUILD_SHARED=yes +endif + +define ZMQPP_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) \ + CONFIG=$(ZMQPP_CONFIG) LDFLAGS="$(ZMQPP_LDFLAGS)" \ + $(ZMQPP_MAKE_OPTS) $(if $(BR2_PACKAGE_ZMQPP_CLIENT),client,library) -C $(@D) +endef + +define ZMQPP_INSTALL_TARGET_CMDS + $(INSTALL) -m 0755 -d $(TARGET_DIR)/usr/include/zmqpp + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) \ + $(ZMQPP_MAKE_OPTS) DESTDIR=$(TARGET_DIR) install -C $(@D) +endef + +define ZMQPP_INSTALL_STAGING_CMDS + $(INSTALL) -m 0755 -d $(STAGING_DIR)/usr/include/zmqpp + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) \ + $(ZMQPP_MAKE_OPTS) DESTDIR=$(STAGING_DIR) install -C $(@D) +endef + +$(eval $(generic-package)) diff --git a/package/znc/Config.in b/package/znc/Config.in new file mode 100644 index 00000000..4fc7bbb9 --- /dev/null +++ b/package/znc/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_ZNC + bool "znc" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_USE_MMU # fork() + depends on !BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 + depends on BR2_TOOLCHAIN_HAS_THREADS + help + Advanced IRC bouncer + + http://www.znc.in + +comment "znc needs a toolchain w/ C++, dynamic library, gcc >= 4.8, threads" + depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || !BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_MMU diff --git a/package/znc/znc.hash b/package/znc/znc.hash new file mode 100644 index 00000000..e86171ba --- /dev/null +++ b/package/znc/znc.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 ff238aae3f2ae0e44e683c4aee17dc8e4fdd261ca9379d83b48a7d422488de0d znc-1.8.2.tar.gz +sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE diff --git a/package/znc/znc.mk b/package/znc/znc.mk new file mode 100644 index 00000000..07fced84 --- /dev/null +++ b/package/znc/znc.mk @@ -0,0 +1,49 @@ +################################################################################ +# +# znc +# +################################################################################ + +ZNC_VERSION = 1.8.2 +ZNC_SITE = http://znc.in/releases/archive +ZNC_LICENSE = Apache-2.0 +ZNC_LICENSE_FILES = LICENSE +ZNC_CPE_ID_VENDOR = znc +ZNC_DEPENDENCIES = host-pkgconf +ZNC_CONF_OPTS = -DWANT_CYRUS=OFF -DWANT_I18N=OFF -DWANT_PERL=OFF + +ifeq ($(BR2_PACKAGE_ICU),y) +ZNC_DEPENDENCIES += icu +ZNC_CONF_OPTS += -DWANT_ICU=ON +else +ZNC_CONF_OPTS += -DWANT_ICU=OFF +endif + +ifeq ($(BR2_PACKAGE_OPENSSL),y) +ZNC_DEPENDENCIES += openssl +ZNC_CONF_OPTS += -DWANT_OPENSSL=ON +else +ZNC_CONF_OPTS += -DWANT_OPENSSL=OFF +endif + +ifeq ($(BR2_PACKAGE_ZLIB),y) +ZNC_DEPENDENCIES += zlib +ZNC_CONF_OPTS += -DWANT_ZLIB=ON +else +ZNC_CONF_OPTS += -DWANT_ZLIB=OFF +endif + +# python support depends on icu +ifeq ($(BR2_PACKAGE_ICU)$(BR2_PACKAGE_PYTHON3),yy) +ZNC_DEPENDENCIES += python3 host-swig +ZNC_CONF_OPTS += \ + -DWANT_PYTHON=ON \ + -DWANT_PYTHON_VERSION=python3 \ + -DWANT_SWIG=ON +else +ZNC_CONF_OPTS += \ + -DWANT_PYTHON=OFF \ + -DWANT_SWIG=OFF +endif + +$(eval $(cmake-package)) diff --git a/package/zsh/Config.in b/package/zsh/Config.in new file mode 100644 index 00000000..23194779 --- /dev/null +++ b/package/zsh/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_ZSH + bool "zsh" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_NCURSES + help + zsh is a shell designed for interactive use, although it is + also a powerful scripting language. Many of the useful + features of bash, ksh, and tcsh were incorporated into zsh; + many original features were added. + + http://www.zsh.org/ diff --git a/package/zsh/zsh.hash b/package/zsh/zsh.hash new file mode 100644 index 00000000..2df409c9 --- /dev/null +++ b/package/zsh/zsh.hash @@ -0,0 +1,7 @@ +# From http://www.zsh.org/pub/MD5SUM +md5 e02a5428620b3dd268800c7843b3dd4d zsh-5.8.tar.xz +# Calculated based on the hash above and after checking signature +# http://www.zsh.org/pub/zsh-5.8.tar.xz.asc +sha256 dcc4b54cc5565670a65581760261c163d720991f0d06486da61f8d839b52de27 zsh-5.8.tar.xz +# Locally calculated +sha256 d06fdf3ef9b1ec69d6b9e170b0a9516fbad3523261ff1668bde3bfea6e0ef5f5 LICENCE diff --git a/package/zsh/zsh.mk b/package/zsh/zsh.mk new file mode 100644 index 00000000..1a048332 --- /dev/null +++ b/package/zsh/zsh.mk @@ -0,0 +1,53 @@ +################################################################################ +# +# zsh +# +################################################################################ + +ZSH_VERSION = 5.8 +ZSH_SITE = http://www.zsh.org/pub +ZSH_SOURCE = zsh-$(ZSH_VERSION).tar.xz +ZSH_DEPENDENCIES = ncurses +ZSH_CONF_OPTS = --bindir=/bin +ZSH_CONF_ENV = zsh_cv_sys_nis=no zsh_cv_sys_nis_plus=no +ZSH_LICENSE = MIT-like +ZSH_LICENSE_FILES = LICENCE +ZSH_CPE_ID_VENDOR = zsh + +ifeq ($(BR2_PACKAGE_GDBM),y) +ZSH_CONF_OPTS += --enable-gdbm +ZSH_DEPENDENCIES += gdbm +else +ZSH_CONF_OPTS += --disable-gdbm +endif + +ifeq ($(BR2_PACKAGE_LIBCAP),y) +ZSH_CONF_OPTS += --enable-cap +ZSH_DEPENDENCIES += libcap +else +ZSH_CONF_OPTS += --disable-cap +endif + +ifeq ($(BR2_PACKAGE_PCRE),y) +ZSH_CONF_OPTS += --enable-pcre +ZSH_CONF_ENV += ac_cv_prog_PCRECONF=$(STAGING_DIR)/usr/bin/pcre-config +ZSH_DEPENDENCIES += pcre +else +ZSH_CONF_OPTS += --disable-pcre +endif + +# Add /bin/zsh to /etc/shells otherwise some login tools like dropbear +# can reject the user connection. See man shells. +define ZSH_ADD_ZSH_TO_SHELLS + grep -qsE '^/bin/zsh$$' $(TARGET_DIR)/etc/shells \ + || echo "/bin/zsh" >> $(TARGET_DIR)/etc/shells +endef +ZSH_TARGET_FINALIZE_HOOKS += ZSH_ADD_ZSH_TO_SHELLS + +# Remove versioned zsh-x.y.z binary taking up space +define ZSH_TARGET_INSTALL_FIXUPS + rm -f $(TARGET_DIR)/bin/zsh-$(ZSH_VERSION) +endef +ZSH_POST_INSTALL_TARGET_HOOKS += ZSH_TARGET_INSTALL_FIXUPS + +$(eval $(autotools-package)) diff --git a/package/zstd/Config.in b/package/zstd/Config.in new file mode 100644 index 00000000..9fa70c65 --- /dev/null +++ b/package/zstd/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_ZSTD + bool "zstd" + help + Zstandard, or zstd as short version, is a fast lossless + compression algorithm, targeting real-time compression + scenarios at zlib-level and better compression ratios + + The selection of other packages will enable some features: + xz, lz4 and/or zlib will enable support for corresponding + compression formats + + https://facebook.github.io/zstd diff --git a/package/zstd/Config.in.host b/package/zstd/Config.in.host new file mode 100644 index 00000000..05751f8f --- /dev/null +++ b/package/zstd/Config.in.host @@ -0,0 +1,8 @@ +config BR2_PACKAGE_HOST_ZSTD + bool "host zstd" + help + Zstandard, or zstd as short version, is a fast lossless + compression algorithm, targeting real-time compression + scenarios at zlib-level and better compression ratios + + https://facebook.github.io/zstd diff --git a/package/zstd/zstd.hash b/package/zstd/zstd.hash new file mode 100644 index 00000000..a979501e --- /dev/null +++ b/package/zstd/zstd.hash @@ -0,0 +1,6 @@ +# From https://github.com/facebook/zstd/releases/download/v1.4.9/zstd-1.4.9.tar.gz.sha256 +sha256 29ac74e19ea28659017361976240c4b5c5c24db3b89338731a6feb97c038d293 zstd-1.4.9.tar.gz + +# License files (locally computed) +sha256 2c1a7fa704df8f3a606f6fc010b8b5aaebf403f3aeec339a12048f1ba7331a0b LICENSE +sha256 f9c375a1be4a41f7b70301dd83c91cb89e41567478859b77eef375a52d782505 COPYING diff --git a/package/zstd/zstd.mk b/package/zstd/zstd.mk new file mode 100644 index 00000000..63ea8b1b --- /dev/null +++ b/package/zstd/zstd.mk @@ -0,0 +1,99 @@ +################################################################################ +# +# zstd +# +################################################################################ + +ZSTD_VERSION = 1.4.9 +ZSTD_SITE = https://github.com/facebook/zstd/releases/download/v$(ZSTD_VERSION) +ZSTD_INSTALL_STAGING = YES +ZSTD_LICENSE = BSD-3-Clause or GPL-2.0 +ZSTD_LICENSE_FILES = LICENSE COPYING +ZSTD_CPE_ID_VENDOR = facebook +ZSTD_CPE_ID_PRODUCT = zstandard + +ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y) +ZSTD_OPTS += HAVE_THREAD=1 +else +ZSTD_OPTS += HAVE_THREAD=0 +endif + +ifeq ($(BR2_PACKAGE_ZLIB),y) +ZSTD_DEPENDENCIES += zlib +ZSTD_OPTS += HAVE_ZLIB=1 +else +ZSTD_OPTS += HAVE_ZLIB=0 +endif + +ifeq ($(BR2_PACKAGE_XZ),y) +ZSTD_DEPENDENCIES += xz +ZSTD_OPTS += HAVE_LZMA=1 +else +ZSTD_OPTS += HAVE_LZMA=0 +endif + +ifeq ($(BR2_PACKAGE_LZ4),y) +ZSTD_DEPENDENCIES += lz4 +ZSTD_OPTS += HAVE_LZ4=1 +else +ZSTD_OPTS += HAVE_LZ4=0 +endif + +ifeq ($(BR2_STATIC_LIBS),y) +ZSTD_BUILD_LIBS = libzstd.a +ZSTD_INSTALL_LIBS = install-static +else ifeq ($(BR2_SHARED_LIBS),y) +ZSTD_BUILD_LIBS = libzstd +ZSTD_INSTALL_LIBS = install-shared +else +ZSTD_BUILD_LIBS = libzstd.a libzstd +ZSTD_INSTALL_LIBS = install-static install-shared +endif + +# The HAVE_THREAD flag is read by the 'programs' makefile but not by the 'lib' +# one. Building a multi-threaded binary with a library (which defaults to +# single-threaded) gives a runtime error when compressing files. +# The 'lib' makefile provides specific '%-mt' targets for this purpose. +ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y) +ZSTD_BUILD_LIBS := $(addsuffix -mt,$(ZSTD_BUILD_LIBS)) +endif + +define ZSTD_BUILD_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) $(ZSTD_OPTS) \ + -C $(@D)/lib $(ZSTD_BUILD_LIBS) + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) $(ZSTD_OPTS) \ + -C $(@D) zstd +endef + +define ZSTD_INSTALL_STAGING_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) $(ZSTD_OPTS) \ + DESTDIR=$(STAGING_DIR) PREFIX=/usr -C $(@D)/lib \ + install-pc install-includes $(ZSTD_INSTALL_LIBS) +endef + +define ZSTD_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) $(ZSTD_OPTS) \ + DESTDIR=$(TARGET_DIR) PREFIX=/usr -C $(@D)/programs install + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) $(ZSTD_OPTS) \ + DESTDIR=$(TARGET_DIR) PREFIX=/usr -C $(@D)/lib $(ZSTD_INSTALL_LIBS) +endef + +# note: only limited 'HAVE_...' options for host library build only +HOST_ZSTD_OPTS = HAVE_THREAD=1 + +define HOST_ZSTD_BUILD_CMDS + $(HOST_MAKE_ENV) $(HOST_CONFIGURE_OPTS) $(MAKE) $(HOST_ZSTD_OPTS) \ + -C $(@D)/lib libzstd.a-mt libzstd-mt + $(HOST_MAKE_ENV) $(HOST_CONFIGURE_OPTS) $(MAKE) $(HOST_ZSTD_OPTS) \ + -C $(@D) zstd +endef + +define HOST_ZSTD_INSTALL_CMDS + $(HOST_MAKE_ENV) $(HOST_CONFIGURE_OPTS) $(MAKE) $(HOST_ZSTD_OPTS) \ + DESTDIR=$(HOST_DIR) PREFIX=/usr -C $(@D)/lib install + $(HOST_MAKE_ENV) $(HOST_CONFIGURE_OPTS) $(MAKE) $(HOST_ZSTD_OPTS) \ + DESTDIR=$(HOST_DIR) PREFIX=/usr -C $(@D)/programs install +endef + +$(eval $(generic-package)) +$(eval $(host-generic-package)) diff --git a/package/zxing-cpp/0001-Link-library-with-OpenCV-make-libs-private-not-exported-to-the-users.patch b/package/zxing-cpp/0001-Link-library-with-OpenCV-make-libs-private-not-exported-to-the-users.patch new file mode 100644 index 00000000..90b23203 --- /dev/null +++ b/package/zxing-cpp/0001-Link-library-with-OpenCV-make-libs-private-not-exported-to-the-users.patch @@ -0,0 +1,43 @@ +From 9e5dfa57f3b998bc3049bfa893b20e81dea656df Mon Sep 17 00:00:00 2001 +From: Yuri +Date: Sat, 20 Apr 2019 07:28:26 -0700 +Subject: [PATCH] Link library with OpenCV, not only the executable, make libs + PRIVATE. + +Signed-off-by: Fabrice Fontaine +[Upstream status: https://github.com/glassechidna/zxing-cpp/pull/86] +--- + CMakeLists.txt | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 738f4e1..efe3aee 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -60,10 +60,12 @@ include_directories(core/src) + add_library(libzxing ${LIBZXING_FILES}) + set_target_properties(libzxing PROPERTIES PREFIX "") + ++set(libzxing_LIBS "") ++ + find_package(Iconv) + if(ICONV_FOUND) + include_directories(${ICONV_INCLUDE_DIR}) +- target_link_libraries(libzxing ${ICONV_LIBRARIES}) ++ set(libzxing_LIBS ${libzxing_LIBS} ${ICONV_LIBRARIES}) + else() + add_definitions(-DNO_ICONV=1) + endif() +@@ -75,9 +77,12 @@ if(OpenCV_FOUND) + "./opencv-cli/src/*.h" + ) + add_executable(zxing-cv ${OPENCV_ZXING_FILES}) ++ set(libzxing_LIBS ${libzxing_LIBS} ${OpenCV_LIBRARIES}) + target_link_libraries(zxing-cv libzxing ${OpenCV_LIBRARIES}) + endif() + ++target_link_libraries(libzxing PRIVATE ${libzxing_LIBS}) ++ + # Add cli executable. + file(GLOB_RECURSE ZXING_FILES + "./cli/src/*.cpp" diff --git a/package/zxing-cpp/0002-CMakeLists-txt-add-BUILD_OPENCV-option.patch b/package/zxing-cpp/0002-CMakeLists-txt-add-BUILD_OPENCV-option.patch new file mode 100644 index 00000000..31753d7c --- /dev/null +++ b/package/zxing-cpp/0002-CMakeLists-txt-add-BUILD_OPENCV-option.patch @@ -0,0 +1,39 @@ +From fe740316af970f57ec511cdeafb512510e4842a9 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sat, 9 Nov 2019 17:21:13 +0100 +Subject: [PATCH] CMakeLists.txt: add BUILD_OPENCV option + +Add BUILD_OPENCV option to allow the user to disable OpenCV. It is +especially useful as opencv library can be built without highgui support + +Signed-off-by: Fabrice Fontaine +[Upstream status: https://github.com/glassechidna/zxing-cpp/pull/90] +--- + CMakeLists.txt | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 738f4e1..12913cd 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -3,6 +3,7 @@ cmake_minimum_required(VERSION 3.0) + project(zxing) + + option(BUILD_TESTING "Enable generation of test targets" OFF) ++option(BUILD_OPENCV "Enable OpenCV classes and OpenCV cli executable" ON) + + set(CMAKE_LIBRARY_PATH /opt/local/lib ${CMAKE_LIBRARY_PATH}) + +@@ -44,8 +45,10 @@ else() + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") + endif() + +-# OpenCV classes +-find_package(OpenCV) ++if (BUILD_OPENCV) ++ # OpenCV classes ++ find_package(OpenCV) ++endif() + if(OpenCV_FOUND) + list(APPEND LIBZXING_FILES + opencv/src/zxing/MatSource.cpp diff --git a/package/zxing-cpp/Config.in b/package/zxing-cpp/Config.in new file mode 100644 index 00000000..c1109219 --- /dev/null +++ b/package/zxing-cpp/Config.in @@ -0,0 +1,14 @@ +comment "zxing-cpp needs a toolchain w/ C++, dynamic library" + depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS + +config BR2_PACKAGE_ZXING_CPP + bool "zxing-cpp" + depends on !BR2_STATIC_LIBS + depends on BR2_INSTALL_LIBSTDCPP + help + ZXing-cpp (pronounced "zebra crossing") is an open-source, + multi-format 1D/2D barcode image processing library + implemented in Java, with ports to other languages. This + compiles the C++ port. + + https://github.com/glassechidna/zxing-cpp diff --git a/package/zxing-cpp/zxing-cpp.hash b/package/zxing-cpp/zxing-cpp.hash new file mode 100644 index 00000000..f12349bb --- /dev/null +++ b/package/zxing-cpp/zxing-cpp.hash @@ -0,0 +1,5 @@ +# Locally calculated +sha256 4c2b8601d0e3377143c1a0bbab220146af9fa5a5e29e8fbef42862fe3d38f8e6 zxing-cpp-e0e40ddec63f38405aca5c8c1ff60b85ec8b1f10.tar.gz + +# License files +sha256 c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4 COPYING diff --git a/package/zxing-cpp/zxing-cpp.mk b/package/zxing-cpp/zxing-cpp.mk new file mode 100644 index 00000000..e9c80b44 --- /dev/null +++ b/package/zxing-cpp/zxing-cpp.mk @@ -0,0 +1,26 @@ +################################################################################ +# +# zxing-cpp +# +################################################################################ + +ZXING_CPP_VERSION = e0e40ddec63f38405aca5c8c1ff60b85ec8b1f10 +ZXING_CPP_SITE = $(call github,glassechidna,zxing-cpp,$(ZXING_CPP_VERSION)) +ZXING_CPP_LICENSE = Apache-2.0 +ZXING_CPP_LICENSE_FILES = COPYING +ZXING_CPP_INSTALL_STAGING = YES +ZXING_CPP_SUPPORTS_IN_SOURCE_BUILD = NO +ZXING_CPP_CONF_OPTS = -DBUILD_TESTING=OFF + +ifeq ($(BR2_PACKAGE_LIBICONV),y) +ZXING_CPP_DEPENDENCIES += libiconv +endif + +ifeq ($(BR2_PACKAGE_OPENCV3_LIB_HIGHGUI),y) +ZXING_CPP_DEPENDENCIES += opencv3 +ZXING_CPP_CONF_OPTS += -DBUILD_OPENCV=ON +else +ZXING_CPP_CONF_OPTS += -DBUILD_OPENCV=OFF +endif + +$(eval $(cmake-package)) diff --git a/package/zynq-boot-bin/zynq-boot-bin.hash b/package/zynq-boot-bin/zynq-boot-bin.hash new file mode 100644 index 00000000..0bc23de1 --- /dev/null +++ b/package/zynq-boot-bin/zynq-boot-bin.hash @@ -0,0 +1,2 @@ +# From https://raw.githubusercontent.com/Xilinx/u-boot-xlnx +sha1 940331ee02b0007099effa61e382fe7ea4174054 zynq-boot-bin.py diff --git a/package/zynq-boot-bin/zynq-boot-bin.mk b/package/zynq-boot-bin/zynq-boot-bin.mk new file mode 100644 index 00000000..deba5f40 --- /dev/null +++ b/package/zynq-boot-bin/zynq-boot-bin.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# zynq-boot-bin +# +################################################################################ + +ZYNQ_BOOT_BIN_VERSION = 2015.1 +ZYNQ_BOOT_BIN_SOURCE = zynq-boot-bin.py +ZYNQ_BOOT_BIN_SITE = https://raw.githubusercontent.com/Xilinx/u-boot-xlnx/xilinx-v$(ZYNQ_BOOT_BIN_VERSION)/tools +ZYNQ_BOOT_BIN_LICENSE = GPL-3.0+ + +HOST_ZYNQ_BOOT_BIN_DEPENDENCIES = host-python + +define HOST_ZYNQ_BOOT_BIN_EXTRACT_CMDS + cp $(HOST_ZYNQ_BOOT_BIN_DL_DIR)/$(ZYNQ_BOOT_BIN_SOURCE) $(@D) +endef + +define HOST_ZYNQ_BOOT_BIN_INSTALL_CMDS + $(INSTALL) -D -m 0755 $(@D)/$(ZYNQ_BOOT_BIN_SOURCE) $(HOST_DIR)/bin/$(ZYNQ_BOOT_BIN_SOURCE) +endef + +$(eval $(host-generic-package)) diff --git a/package/zyre/Config.in b/package/zyre/Config.in new file mode 100644 index 00000000..21a0884e --- /dev/null +++ b/package/zyre/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_ZYRE + bool "zyre" + depends on BR2_INSTALL_LIBSTDCPP # zeromq + depends on BR2_TOOLCHAIN_HAS_THREADS # zeromq + depends on BR2_USE_MMU # czmq + select BR2_PACKAGE_CZMQ + select BR2_PACKAGE_ZEROMQ + help + An open-source framework for proximity-based peer-to-peer + applications. + + http://zyre.org + +comment "zyre needs a toolchain w/ C++, threads" + depends on BR2_USE_MMU + depends on !(BR2_INSTALL_LIBSTDCPP && BR2_TOOLCHAIN_HAS_THREADS) diff --git a/package/zyre/zyre.hash b/package/zyre/zyre.hash new file mode 100644 index 00000000..289341f4 --- /dev/null +++ b/package/zyre/zyre.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 b978a999947ddb6722d956db2427869b313225e50518c4fbbf960a68109e3e91 zyre-2.0.0.tar.gz +sha256 1f256ecad192880510e84ad60474eab7589218784b9a50bc7ceee34c2b91f1d5 LICENSE diff --git a/package/zyre/zyre.mk b/package/zyre/zyre.mk new file mode 100644 index 00000000..21224d6b --- /dev/null +++ b/package/zyre/zyre.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# zyre +# +################################################################################ + +ZYRE_VERSION = 2.0.0 +ZYRE_SITE = $(call github,zeromq,zyre,v$(ZYRE_VERSION)) +ZYRE_LICENSE = MPL-2.0 +ZYRE_LICENSE_FILES = LICENSE +ZYRE_INSTALL_STAGING = YES +ZYRE_DEPENDENCIES = czmq zeromq host-pkgconf +ZYRE_AUTORECONF = YES +ZYRE_CONF_OPTS = --without-docs + +define ZYRE_CREATE_CONFIG_DIR + mkdir -p $(@D)/config +endef + +ZYRE_POST_PATCH_HOOKS += ZYRE_CREATE_CONFIG_DIR + +$(eval $(autotools-package)) diff --git a/package/zziplib/Config.in b/package/zziplib/Config.in new file mode 100644 index 00000000..6b55572a --- /dev/null +++ b/package/zziplib/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_ZZIPLIB + bool "zziplib" + select BR2_PACKAGE_ZLIB + help + The zziplib provides read access to zipped files in a + zip-archive, using compression based solely on free algorithms + provided by zlib. It also provides a functionality to overlay + the archive filesystem with the filesystem of the operating + system environment. + + http://zziplib.sourceforge.net diff --git a/package/zziplib/zziplib.hash b/package/zziplib/zziplib.hash new file mode 100644 index 00000000..b6a75ae0 --- /dev/null +++ b/package/zziplib/zziplib.hash @@ -0,0 +1,5 @@ +# sha256 locally computed +sha256 93ef44bf1f1ea24fc66080426a469df82fa631d13ca3b2e4abaeab89538518dc zziplib-0.13.72.tar.gz +sha256 94b03f1a60a7fd5007149530626a895a6ef5a8b9342abfd56860c5f3956f5d23 docs/COPYING.LIB +sha256 c2aa7d58cebd24cb877bbf11d6b13a4bb7cd08b9d7db5d3037ca06c46bf4cfd8 docs/COPYING.MPL +sha256 1c6da11efe8c43ee853fe5b21501dd72b81831ae84d58ea376bddc0620a5c361 docs/copying.htm diff --git a/package/zziplib/zziplib.mk b/package/zziplib/zziplib.mk new file mode 100644 index 00000000..6b7b64ca --- /dev/null +++ b/package/zziplib/zziplib.mk @@ -0,0 +1,30 @@ +################################################################################ +# +# zziplib +# +################################################################################ + +ZZIPLIB_VERSION = 0.13.72 +ZZIPLIB_SITE = $(call github,gdraheim,zziplib,v$(ZZIPLIB_VERSION)) +ZZIPLIB_LICENSE = LGPL-2.0+ or MPL-1.1 +ZZIPLIB_LICENSE_FILES = docs/COPYING.LIB docs/COPYING.MPL docs/copying.htm +ZZIPLIB_CPE_ID_VENDOR = zziplib_project +ZZIPLIB_INSTALL_STAGING = YES +ZZIPLIB_CONF_OPTS += \ + -DZZIPDOCS=OFF \ + -DZZIPTEST=OFF +ZZIPLIB_DEPENDENCIES = host-pkgconf zlib + +define ZZIPLIB_POST_EXTRACT_FIXUP + rm $(@D)/GNUmakefile +endef +ZZIPLIB_POST_EXTRACT_HOOKS += ZZIPLIB_POST_EXTRACT_FIXUP + +ifeq ($(BR2_PACKAGE_SDL2),y) +ZZIPLIB_CONF_OPTS += -DZZIPSDL=ON +ZZIPLIB_DEPENDENCIES += sdl2 +else +ZZIPLIB_CONF_OPTS += -DZZIPSDL=OFF +endif + +$(eval $(cmake-package)) diff --git a/support/config-fragments/autobuild/andes-nds32.config b/support/config-fragments/autobuild/andes-nds32.config new file mode 100644 index 00000000..541677e0 --- /dev/null +++ b/support/config-fragments/autobuild/andes-nds32.config @@ -0,0 +1,3 @@ +BR2_nds32=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_ANDES_NDS32=y diff --git a/support/config-fragments/autobuild/arm-aarch64.config b/support/config-fragments/autobuild/arm-aarch64.config new file mode 100644 index 00000000..bed08dcb --- /dev/null +++ b/support/config-fragments/autobuild/arm-aarch64.config @@ -0,0 +1,4 @@ +BR2_aarch64=y +BR2_cortex_a72=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_ARM_AARCH64=y diff --git a/support/config-fragments/autobuild/bootlin-aarch64-glibc.config b/support/config-fragments/autobuild/bootlin-aarch64-glibc.config new file mode 100644 index 00000000..fe167e23 --- /dev/null +++ b/support/config-fragments/autobuild/bootlin-aarch64-glibc.config @@ -0,0 +1,4 @@ +BR2_aarch64=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_GLIBC_STABLE=y diff --git a/support/config-fragments/autobuild/bootlin-arcle-hs38-uclibc.config b/support/config-fragments/autobuild/bootlin-arcle-hs38-uclibc.config new file mode 100644 index 00000000..c9e1d19e --- /dev/null +++ b/support/config-fragments/autobuild/bootlin-arcle-hs38-uclibc.config @@ -0,0 +1,5 @@ +BR2_arcle=y +BR2_archs38=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_HS38_UCLIBC_STABLE=y diff --git a/support/config-fragments/autobuild/bootlin-armv5-uclibc.config b/support/config-fragments/autobuild/bootlin-armv5-uclibc.config new file mode 100644 index 00000000..c179c75d --- /dev/null +++ b/support/config-fragments/autobuild/bootlin-armv5-uclibc.config @@ -0,0 +1,4 @@ +BR2_arm=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_UCLIBC_STABLE=y diff --git a/support/config-fragments/autobuild/bootlin-armv7-glibc.config b/support/config-fragments/autobuild/bootlin-armv7-glibc.config new file mode 100644 index 00000000..11ae28ff --- /dev/null +++ b/support/config-fragments/autobuild/bootlin-armv7-glibc.config @@ -0,0 +1,6 @@ +BR2_arm=y +BR2_cortex_a9=y +BR2_ARM_ENABLE_VFP=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_GLIBC_BLEEDING_EDGE=y diff --git a/support/config-fragments/autobuild/bootlin-armv7-musl.config b/support/config-fragments/autobuild/bootlin-armv7-musl.config new file mode 100644 index 00000000..7ae72b21 --- /dev/null +++ b/support/config-fragments/autobuild/bootlin-armv7-musl.config @@ -0,0 +1,6 @@ +BR2_arm=y +BR2_cortex_a9=y +BR2_ARM_ENABLE_VFP=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_MUSL_STABLE=y diff --git a/support/config-fragments/autobuild/bootlin-armv7m-uclibc.config b/support/config-fragments/autobuild/bootlin-armv7m-uclibc.config new file mode 100644 index 00000000..8d054096 --- /dev/null +++ b/support/config-fragments/autobuild/bootlin-armv7m-uclibc.config @@ -0,0 +1,4 @@ +BR2_arm=y +BR2_cortex_m4=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7M_UCLIBC_STABLE=y diff --git a/support/config-fragments/autobuild/bootlin-m68k-5208-uclibc.config b/support/config-fragments/autobuild/bootlin-m68k-5208-uclibc.config new file mode 100644 index 00000000..c6000beb --- /dev/null +++ b/support/config-fragments/autobuild/bootlin-m68k-5208-uclibc.config @@ -0,0 +1,4 @@ +BR2_m68k=y +BR2_m68k_cf5208=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_M68K_COLDFIRE_UCLIBC_STABLE=y diff --git a/support/config-fragments/autobuild/bootlin-m68k-68040-uclibc.config b/support/config-fragments/autobuild/bootlin-m68k-68040-uclibc.config new file mode 100644 index 00000000..f2c59e9d --- /dev/null +++ b/support/config-fragments/autobuild/bootlin-m68k-68040-uclibc.config @@ -0,0 +1,4 @@ +BR2_m68k=y +BR2_m68k_68040=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_M68K_68XXX_UCLIBC_STABLE=y diff --git a/support/config-fragments/autobuild/bootlin-microblazeel-uclibc.config b/support/config-fragments/autobuild/bootlin-microblazeel-uclibc.config new file mode 100644 index 00000000..206fb777 --- /dev/null +++ b/support/config-fragments/autobuild/bootlin-microblazeel-uclibc.config @@ -0,0 +1,3 @@ +BR2_microblazeel=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_UCLIBC_STABLE=y diff --git a/support/config-fragments/autobuild/bootlin-mipsel-uclibc.config b/support/config-fragments/autobuild/bootlin-mipsel-uclibc.config new file mode 100644 index 00000000..ff523b25 --- /dev/null +++ b/support/config-fragments/autobuild/bootlin-mipsel-uclibc.config @@ -0,0 +1,4 @@ +BR2_mipsel=y +# BR2_MIPS_SOFT_FLOAT is not set +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_UCLIBC_STABLE=y diff --git a/support/config-fragments/autobuild/bootlin-mipsel32r6-glibc.config b/support/config-fragments/autobuild/bootlin-mipsel32r6-glibc.config new file mode 100644 index 00000000..58a50121 --- /dev/null +++ b/support/config-fragments/autobuild/bootlin-mipsel32r6-glibc.config @@ -0,0 +1,6 @@ +BR2_mipsel=y +BR2_mips_32r6=y +# BR2_MIPS_SOFT_FLOAT is not set +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_GLIBC_STABLE=y diff --git a/support/config-fragments/autobuild/bootlin-nios2-glibc.config b/support/config-fragments/autobuild/bootlin-nios2-glibc.config new file mode 100644 index 00000000..575a1b30 --- /dev/null +++ b/support/config-fragments/autobuild/bootlin-nios2-glibc.config @@ -0,0 +1,4 @@ +BR2_nios2=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_NIOS2_GLIBC_STABLE=y diff --git a/support/config-fragments/autobuild/bootlin-openrisc-uclibc.config b/support/config-fragments/autobuild/bootlin-openrisc-uclibc.config new file mode 100644 index 00000000..bad08627 --- /dev/null +++ b/support/config-fragments/autobuild/bootlin-openrisc-uclibc.config @@ -0,0 +1,3 @@ +BR2_or1k=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_UCLIBC_STABLE=y diff --git a/support/config-fragments/autobuild/bootlin-powerpc-e500mc-uclibc.config b/support/config-fragments/autobuild/bootlin-powerpc-e500mc-uclibc.config new file mode 100644 index 00000000..96461856 --- /dev/null +++ b/support/config-fragments/autobuild/bootlin-powerpc-e500mc-uclibc.config @@ -0,0 +1,4 @@ +BR2_powerpc=y +BR2_powerpc_e500mc=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_UCLIBC_STABLE=y diff --git a/support/config-fragments/autobuild/bootlin-powerpc64le-power8-glibc.config b/support/config-fragments/autobuild/bootlin-powerpc64le-power8-glibc.config new file mode 100644 index 00000000..44f00963 --- /dev/null +++ b/support/config-fragments/autobuild/bootlin-powerpc64le-power8-glibc.config @@ -0,0 +1,4 @@ +BR2_powerpc64le=y +BR2_powerpc_power8=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64LE_POWER8_GLIBC_STABLE=y diff --git a/support/config-fragments/autobuild/bootlin-riscv32-glibc.config b/support/config-fragments/autobuild/bootlin-riscv32-glibc.config new file mode 100644 index 00000000..cc45d018 --- /dev/null +++ b/support/config-fragments/autobuild/bootlin-riscv32-glibc.config @@ -0,0 +1,5 @@ +BR2_riscv=y +BR2_RISCV_32=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV32_ILP32D_GLIBC_BLEEDING_EDGE=y diff --git a/support/config-fragments/autobuild/bootlin-riscv64-glibc.config b/support/config-fragments/autobuild/bootlin-riscv64-glibc.config new file mode 100644 index 00000000..f6c6fcaa --- /dev/null +++ b/support/config-fragments/autobuild/bootlin-riscv64-glibc.config @@ -0,0 +1,5 @@ +BR2_riscv=y +BR2_RISCV_ABI_LP64=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV64_GLIBC_BLEEDING_EDGE=y diff --git a/support/config-fragments/autobuild/bootlin-riscv64-musl.config b/support/config-fragments/autobuild/bootlin-riscv64-musl.config new file mode 100644 index 00000000..2b6a6e56 --- /dev/null +++ b/support/config-fragments/autobuild/bootlin-riscv64-musl.config @@ -0,0 +1,4 @@ +BR2_riscv=y +BR2_RISCV_ABI_LP64=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV64_MUSL_BLEEDING_EDGE=y diff --git a/support/config-fragments/autobuild/bootlin-sh4-uclibc.config b/support/config-fragments/autobuild/bootlin-sh4-uclibc.config new file mode 100644 index 00000000..8b4d40b5 --- /dev/null +++ b/support/config-fragments/autobuild/bootlin-sh4-uclibc.config @@ -0,0 +1,3 @@ +BR2_sh=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_UCLIBC_STABLE=y diff --git a/support/config-fragments/autobuild/bootlin-sparc-uclibc.config b/support/config-fragments/autobuild/bootlin-sparc-uclibc.config new file mode 100644 index 00000000..cbe72240 --- /dev/null +++ b/support/config-fragments/autobuild/bootlin-sparc-uclibc.config @@ -0,0 +1,3 @@ +BR2_sparc=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SPARCV8_UCLIBC_STABLE=y diff --git a/support/config-fragments/autobuild/bootlin-sparc64-glibc.config b/support/config-fragments/autobuild/bootlin-sparc64-glibc.config new file mode 100644 index 00000000..4f851d10 --- /dev/null +++ b/support/config-fragments/autobuild/bootlin-sparc64-glibc.config @@ -0,0 +1,3 @@ +BR2_sparc64=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SPARC64_GLIBC_STABLE=y diff --git a/support/config-fragments/autobuild/bootlin-x86-64-glibc.config b/support/config-fragments/autobuild/bootlin-x86-64-glibc.config new file mode 100644 index 00000000..815eb658 --- /dev/null +++ b/support/config-fragments/autobuild/bootlin-x86-64-glibc.config @@ -0,0 +1,5 @@ +BR2_x86_64=y +BR2_x86_corei7=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_GLIBC_BLEEDING_EDGE=y diff --git a/support/config-fragments/autobuild/bootlin-x86-64-musl.config b/support/config-fragments/autobuild/bootlin-x86-64-musl.config new file mode 100644 index 00000000..9763d8a6 --- /dev/null +++ b/support/config-fragments/autobuild/bootlin-x86-64-musl.config @@ -0,0 +1,4 @@ +BR2_x86_64=y +BR2_x86_corei7=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_MUSL_STABLE=y diff --git a/support/config-fragments/autobuild/bootlin-x86-64-uclibc.config b/support/config-fragments/autobuild/bootlin-x86-64-uclibc.config new file mode 100644 index 00000000..70b940f1 --- /dev/null +++ b/support/config-fragments/autobuild/bootlin-x86-64-uclibc.config @@ -0,0 +1,4 @@ +BR2_x86_64=y +BR2_x86_corei7=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_UCLIBC_STABLE=y diff --git a/support/config-fragments/autobuild/bootlin-xtensa-uclibc.config b/support/config-fragments/autobuild/bootlin-xtensa-uclibc.config new file mode 100644 index 00000000..c44525b2 --- /dev/null +++ b/support/config-fragments/autobuild/bootlin-xtensa-uclibc.config @@ -0,0 +1,5 @@ +BR2_xtensa=y +BR2_XTENSA_CUSTOM=y +BR2_XTENSA_LITTLE_ENDIAN=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_XTENSA_LX60_UCLIBC_STABLE=y diff --git a/support/config-fragments/autobuild/br-arc-full-internal.config b/support/config-fragments/autobuild/br-arc-full-internal.config new file mode 100644 index 00000000..4755c9e4 --- /dev/null +++ b/support/config-fragments/autobuild/br-arc-full-internal.config @@ -0,0 +1,3 @@ +BR2_arcle=y +BR2_TOOLCHAIN_BUILDROOT_LOCALE=y +BR2_TOOLCHAIN_BUILDROOT_CXX=y diff --git a/support/config-fragments/autobuild/br-arc-internal-glibc.config b/support/config-fragments/autobuild/br-arc-internal-glibc.config new file mode 100644 index 00000000..b9d68572 --- /dev/null +++ b/support/config-fragments/autobuild/br-arc-internal-glibc.config @@ -0,0 +1,4 @@ +BR2_arcle=y +BR2_archs38=y +BR2_TOOLCHAIN_BUILDROOT_GLIBC=y +BR2_TOOLCHAIN_BUILDROOT_CXX=y diff --git a/support/config-fragments/autobuild/br-arm-basic.config b/support/config-fragments/autobuild/br-arm-basic.config new file mode 100644 index 00000000..fbbeaaa7 --- /dev/null +++ b/support/config-fragments/autobuild/br-arm-basic.config @@ -0,0 +1,8 @@ +BR2_arm=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y +BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y +BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-arm-basic-2020.11.2.tar.bz2" +BR2_TOOLCHAIN_EXTERNAL_GCC_9=y +BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_9=y +# BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG is not set diff --git a/support/config-fragments/autobuild/br-arm-full-nothread.config b/support/config-fragments/autobuild/br-arm-full-nothread.config new file mode 100644 index 00000000..71592d68 --- /dev/null +++ b/support/config-fragments/autobuild/br-arm-full-nothread.config @@ -0,0 +1,11 @@ +BR2_arm=y +BR2_arm1176jzf_s=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y +BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y +BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-arm11-full-nothread-2020.11.2.tar.bz2" +BR2_TOOLCHAIN_EXTERNAL_GCC_9=y +BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_9=y +BR2_TOOLCHAIN_EXTERNAL_LOCALE=y +# BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS is not set +BR2_TOOLCHAIN_EXTERNAL_CXX=y diff --git a/support/config-fragments/autobuild/br-arm-full-static.config b/support/config-fragments/autobuild/br-arm-full-static.config new file mode 100644 index 00000000..f3a4d91f --- /dev/null +++ b/support/config-fragments/autobuild/br-arm-full-static.config @@ -0,0 +1,11 @@ +BR2_arm=y +BR2_STATIC_LIBS=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y +BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y +BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-arm-full-static-2020.11.2.tar.bz2" +BR2_TOOLCHAIN_EXTERNAL_GCC_9=y +BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_4=y +BR2_TOOLCHAIN_EXTERNAL_LOCALE=y +# BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG is not set +BR2_TOOLCHAIN_EXTERNAL_CXX=y diff --git a/support/config-fragments/autobuild/br-arm-internal-full.config b/support/config-fragments/autobuild/br-arm-internal-full.config new file mode 100644 index 00000000..b5f10069 --- /dev/null +++ b/support/config-fragments/autobuild/br-arm-internal-full.config @@ -0,0 +1,5 @@ +BR2_arm=y +BR2_ARM_EABI=y +BR2_TOOLCHAIN_BUILDROOT_LOCALE=y +BR2_TOOLCHAIN_BUILDROOT_WCHAR=y +BR2_TOOLCHAIN_BUILDROOT_CXX=y diff --git a/support/config-fragments/autobuild/br-arm-internal-glibc.config b/support/config-fragments/autobuild/br-arm-internal-glibc.config new file mode 100644 index 00000000..ea6df7fb --- /dev/null +++ b/support/config-fragments/autobuild/br-arm-internal-glibc.config @@ -0,0 +1,6 @@ +BR2_arm=y +BR2_cortex_a8=y +BR2_TOOLCHAIN_BUILDROOT_GLIBC=y +BR2_BINUTILS_VERSION_2_34_X=y +BR2_GCC_VERSION_10_X=y +BR2_TOOLCHAIN_BUILDROOT_CXX=y diff --git a/support/config-fragments/autobuild/br-arm-internal-musl.config b/support/config-fragments/autobuild/br-arm-internal-musl.config new file mode 100644 index 00000000..92788626 --- /dev/null +++ b/support/config-fragments/autobuild/br-arm-internal-musl.config @@ -0,0 +1,4 @@ +BR2_arm=y +BR2_cortex_a8=y +BR2_TOOLCHAIN_BUILDROOT_MUSL=y +BR2_TOOLCHAIN_BUILDROOT_CXX=y diff --git a/support/config-fragments/autobuild/br-i386-pentium-mmx-musl.config b/support/config-fragments/autobuild/br-i386-pentium-mmx-musl.config new file mode 100644 index 00000000..1b3c45fe --- /dev/null +++ b/support/config-fragments/autobuild/br-i386-pentium-mmx-musl.config @@ -0,0 +1,10 @@ +BR2_x86_pentium_mmx=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y +BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y +BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.net/toolchains/tarballs/br-i386-pentium-mmx-musl-2020.11.2.tar.bz2" +BR2_TOOLCHAIN_EXTERNAL_GCC_9=y +BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_9=y +BR2_TOOLCHAIN_EXTERNAL_CUSTOM_MUSL=y +# BR2_TOOLCHAIN_EXTERNAL_HAS_SSP is not set +BR2_TOOLCHAIN_EXTERNAL_CXX=y diff --git a/support/config-fragments/autobuild/br-i386-pentium4-full.config b/support/config-fragments/autobuild/br-i386-pentium4-full.config new file mode 100644 index 00000000..c6806992 --- /dev/null +++ b/support/config-fragments/autobuild/br-i386-pentium4-full.config @@ -0,0 +1,10 @@ +BR2_x86_pentium4=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y +BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y +BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-i386-pentium4-full-2020.11.2.tar.bz2" +BR2_TOOLCHAIN_EXTERNAL_GCC_9=y +BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_4=y +BR2_TOOLCHAIN_EXTERNAL_LOCALE=y +# BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG is not set +BR2_TOOLCHAIN_EXTERNAL_CXX=y diff --git a/support/config-fragments/autobuild/br-microblazeel-full-internal.config b/support/config-fragments/autobuild/br-microblazeel-full-internal.config new file mode 100644 index 00000000..0d2d7df8 --- /dev/null +++ b/support/config-fragments/autobuild/br-microblazeel-full-internal.config @@ -0,0 +1 @@ +BR2_microblazeel=y diff --git a/support/config-fragments/autobuild/br-mips64-n64-full.config b/support/config-fragments/autobuild/br-mips64-n64-full.config new file mode 100644 index 00000000..b89b74e7 --- /dev/null +++ b/support/config-fragments/autobuild/br-mips64-n64-full.config @@ -0,0 +1,10 @@ +BR2_mips64el=y +BR2_MIPS_NABI64=y +# BR2_MIPS_SOFT_FLOAT is not set +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y +BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-mips64-n64-full-2020.11.2.tar.bz2" +BR2_TOOLCHAIN_EXTERNAL_GCC_8=y +BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_9=y +BR2_TOOLCHAIN_EXTERNAL_LOCALE=y +BR2_TOOLCHAIN_EXTERNAL_CXX=y diff --git a/support/config-fragments/autobuild/br-mips64r6-el-hf-glibc.config b/support/config-fragments/autobuild/br-mips64r6-el-hf-glibc.config new file mode 100644 index 00000000..edf04c35 --- /dev/null +++ b/support/config-fragments/autobuild/br-mips64r6-el-hf-glibc.config @@ -0,0 +1,12 @@ +BR2_mips64el=y +BR2_mips_64r6=y +BR2_MIPS_NABI64=y +# BR2_MIPS_SOFT_FLOAT is not set +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y +BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y +BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-mips64r6-n64-el-hf-2020.11.2.tar.bz2" +BR2_TOOLCHAIN_EXTERNAL_GCC_9=y +BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_9=y +BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC=y +BR2_TOOLCHAIN_EXTERNAL_CXX=y diff --git a/support/config-fragments/autobuild/br-powerpc-603e-basic-cpp.config b/support/config-fragments/autobuild/br-powerpc-603e-basic-cpp.config new file mode 100644 index 00000000..045428c1 --- /dev/null +++ b/support/config-fragments/autobuild/br-powerpc-603e-basic-cpp.config @@ -0,0 +1,10 @@ +BR2_powerpc=y +BR2_powerpc_603e=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y +BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y +BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-powerpc-603e-basic-cpp-2020.11.2.tar.bz2" +BR2_TOOLCHAIN_EXTERNAL_GCC_9=y +BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_9=y +# BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG is not set +BR2_TOOLCHAIN_EXTERNAL_CXX=y diff --git a/support/config-fragments/autobuild/br-powerpc-internal-full.config b/support/config-fragments/autobuild/br-powerpc-internal-full.config new file mode 100644 index 00000000..61b3e7a9 --- /dev/null +++ b/support/config-fragments/autobuild/br-powerpc-internal-full.config @@ -0,0 +1,4 @@ +BR2_powerpc=y +BR2_TOOLCHAIN_BUILDROOT_LOCALE=y +BR2_TOOLCHAIN_BUILDROOT_WCHAR=y +BR2_TOOLCHAIN_BUILDROOT_CXX=y diff --git a/support/config-fragments/autobuild/br-powerpc64-power7-glibc.config b/support/config-fragments/autobuild/br-powerpc64-power7-glibc.config new file mode 100644 index 00000000..a80047ea --- /dev/null +++ b/support/config-fragments/autobuild/br-powerpc64-power7-glibc.config @@ -0,0 +1,9 @@ +BR2_powerpc64=y +BR2_powerpc_power7=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y +BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.net/toolchains/tarballs/br-powerpc64-power7-glibc-2020.11.2.tar.bz2" +BR2_TOOLCHAIN_EXTERNAL_GCC_9=y +BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_9=y +BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC=y +BR2_TOOLCHAIN_EXTERNAL_CXX=y diff --git a/support/config-fragments/autobuild/br-riscv64-full-internal.config b/support/config-fragments/autobuild/br-riscv64-full-internal.config new file mode 100644 index 00000000..5c1dfc47 --- /dev/null +++ b/support/config-fragments/autobuild/br-riscv64-full-internal.config @@ -0,0 +1,4 @@ +BR2_riscv=y +BR2_TOOLCHAIN_BUILDROOT_LOCALE=y +BR2_TOOLCHAIN_BUILDROOT_WCHAR=y +BR2_TOOLCHAIN_BUILDROOT_CXX=y diff --git a/support/config-fragments/autobuild/br-s390x-z13-internal-glibc.config b/support/config-fragments/autobuild/br-s390x-z13-internal-glibc.config new file mode 100644 index 00000000..56af5fb1 --- /dev/null +++ b/support/config-fragments/autobuild/br-s390x-z13-internal-glibc.config @@ -0,0 +1,4 @@ +BR2_s390x=y +BR2_s390x_z13=y +BR2_TOOLCHAIN_BUILDROOT_GLIBC=y +BR2_TOOLCHAIN_BUILDROOT_CXX=y diff --git a/support/config-fragments/autobuild/br-xtensa-full-internal.config b/support/config-fragments/autobuild/br-xtensa-full-internal.config new file mode 100644 index 00000000..89e81d4c --- /dev/null +++ b/support/config-fragments/autobuild/br-xtensa-full-internal.config @@ -0,0 +1,3 @@ +BR2_xtensa=y +BR2_TOOLCHAIN_BUILDROOT_LOCALE=y +BR2_TOOLCHAIN_BUILDROOT_CXX=y diff --git a/support/config-fragments/autobuild/linaro-aarch64-be.config b/support/config-fragments/autobuild/linaro-aarch64-be.config new file mode 100644 index 00000000..e075fe7e --- /dev/null +++ b/support/config-fragments/autobuild/linaro-aarch64-be.config @@ -0,0 +1,3 @@ +BR2_aarch64_be=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64_BE=y diff --git a/support/config-fragments/autobuild/linaro-aarch64.config b/support/config-fragments/autobuild/linaro-aarch64.config new file mode 100644 index 00000000..f65f78a3 --- /dev/null +++ b/support/config-fragments/autobuild/linaro-aarch64.config @@ -0,0 +1,3 @@ +BR2_aarch64=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64=y diff --git a/support/config-fragments/autobuild/linaro-arm.config b/support/config-fragments/autobuild/linaro-arm.config new file mode 100644 index 00000000..d72e19b3 --- /dev/null +++ b/support/config-fragments/autobuild/linaro-arm.config @@ -0,0 +1,5 @@ +BR2_arm=y +BR2_cortex_a8=y +BR2_ARM_EABIHF=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM=y diff --git a/support/config-fragments/autobuild/sourcery-arm-armv4t.config b/support/config-fragments/autobuild/sourcery-arm-armv4t.config new file mode 100644 index 00000000..4c0e01fe --- /dev/null +++ b/support/config-fragments/autobuild/sourcery-arm-armv4t.config @@ -0,0 +1,4 @@ +BR2_arm=y +BR2_arm920t=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM=y diff --git a/support/config-fragments/autobuild/sourcery-arm-thumb2.config b/support/config-fragments/autobuild/sourcery-arm-thumb2.config new file mode 100644 index 00000000..e726757a --- /dev/null +++ b/support/config-fragments/autobuild/sourcery-arm-thumb2.config @@ -0,0 +1,7 @@ +BR2_arm=y +BR2_cortex_a8=y +BR2_ARM_EABI=y +BR2_ARM_INSTRUCTIONS_THUMB2=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM=y +BR2_TARGET_OPTIMIZATION="" diff --git a/support/config-fragments/autobuild/sourcery-arm.config b/support/config-fragments/autobuild/sourcery-arm.config new file mode 100644 index 00000000..8ade4647 --- /dev/null +++ b/support/config-fragments/autobuild/sourcery-arm.config @@ -0,0 +1,3 @@ +BR2_arm=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM=y diff --git a/support/config-fragments/autobuild/sourcery-mips.config b/support/config-fragments/autobuild/sourcery-mips.config new file mode 100644 index 00000000..103e20bf --- /dev/null +++ b/support/config-fragments/autobuild/sourcery-mips.config @@ -0,0 +1,4 @@ +BR2_mips=y +BR2_mips_32r2=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS=y diff --git a/support/config-fragments/autobuild/sourcery-mips64.config b/support/config-fragments/autobuild/sourcery-mips64.config new file mode 100644 index 00000000..77e3a853 --- /dev/null +++ b/support/config-fragments/autobuild/sourcery-mips64.config @@ -0,0 +1,5 @@ +BR2_mips64el=y +BR2_mips_64r2=y +BR2_MIPS_NABI64=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS=y diff --git a/support/config-fragments/autobuild/sourcery-nios2.config b/support/config-fragments/autobuild/sourcery-nios2.config new file mode 100644 index 00000000..d58407d5 --- /dev/null +++ b/support/config-fragments/autobuild/sourcery-nios2.config @@ -0,0 +1,3 @@ +BR2_nios2=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII=y diff --git a/support/config-fragments/autobuild/toolchain-configs.csv b/support/config-fragments/autobuild/toolchain-configs.csv new file mode 100644 index 00000000..f5e9bd8c --- /dev/null +++ b/support/config-fragments/autobuild/toolchain-configs.csv @@ -0,0 +1,73 @@ +# This file is sorted by "importance" of toolchains, so that by +# default test-pkg tests a useful subset of toolchains + +# Toolchains used by default by test-pkg: + +# Test a regular uClibc toolchain +support/config-fragments/autobuild/bootlin-armv5-uclibc.config,x86_64 + +# Test a toolchain with glibc and a very recent gcc version +support/config-fragments/autobuild/bootlin-armv7-glibc.config,x86_64 + +# Test a noMMU toolchain with no dynamic library support +support/config-fragments/autobuild/bootlin-armv7m-uclibc.config,x86_64 + +# Test a musl toolchain +support/config-fragments/autobuild/bootlin-x86-64-musl.config,x86_64 + +# Test a MMU toolchain without dynamic library support +support/config-fragments/autobuild/br-arm-full-static.config,x86_64 + +# Test a toolchain with an old gcc version (gcc 4.8) +support/config-fragments/autobuild/sourcery-arm.config,x86 + +# Toolchains used by test-pkg only when the '-a' option is passed: +support/config-fragments/autobuild/andes-nds32.config,x86 +support/config-fragments/autobuild/arm-aarch64.config,x86_64 +support/config-fragments/autobuild/bootlin-aarch64-glibc.config,x86_64 +support/config-fragments/autobuild/bootlin-arcle-hs38-uclibc.config,x86_64 +support/config-fragments/autobuild/bootlin-armv7-musl.config,x86_64 +support/config-fragments/autobuild/bootlin-m68k-68040-uclibc.config,x86_64 +support/config-fragments/autobuild/bootlin-m68k-5208-uclibc.config,x86_64 +support/config-fragments/autobuild/bootlin-microblazeel-uclibc.config,x86_64 +support/config-fragments/autobuild/bootlin-mipsel-uclibc.config,x86_64 +support/config-fragments/autobuild/bootlin-mipsel32r6-glibc.config,x86_64 +support/config-fragments/autobuild/bootlin-nios2-glibc.config,x86_64 +support/config-fragments/autobuild/bootlin-openrisc-uclibc.config,x86_64 +support/config-fragments/autobuild/bootlin-powerpc64le-power8-glibc.config,x86_64 +support/config-fragments/autobuild/bootlin-powerpc-e500mc-uclibc.config,x86_64 +support/config-fragments/autobuild/bootlin-riscv32-glibc.config,x86_64 +support/config-fragments/autobuild/bootlin-riscv64-glibc.config,x86_64 +support/config-fragments/autobuild/bootlin-riscv64-musl.config,x86_64 +support/config-fragments/autobuild/bootlin-sh4-uclibc.config,x86_64 +support/config-fragments/autobuild/bootlin-sparc-uclibc.config,x86_64 +support/config-fragments/autobuild/bootlin-sparc64-glibc.config,x86_64 +support/config-fragments/autobuild/bootlin-x86-64-glibc.config,x86_64 +support/config-fragments/autobuild/bootlin-x86-64-uclibc.config,x86_64 +support/config-fragments/autobuild/bootlin-xtensa-uclibc.config,x86_64 +support/config-fragments/autobuild/br-arc-full-internal.config,any +support/config-fragments/autobuild/br-arc-internal-glibc.config,any +support/config-fragments/autobuild/br-arm-basic.config,x86_64 +support/config-fragments/autobuild/br-arm-full-nothread.config,x86_64 +support/config-fragments/autobuild/br-arm-internal-full.config,any +support/config-fragments/autobuild/br-arm-internal-glibc.config,any +support/config-fragments/autobuild/br-arm-internal-musl.config,any +support/config-fragments/autobuild/br-i386-pentium4-full.config,x86_64 +support/config-fragments/autobuild/br-i386-pentium-mmx-musl.config,x86_64 +support/config-fragments/autobuild/br-microblazeel-full-internal.config,any +support/config-fragments/autobuild/br-mips64-n64-full.config,x86_64 +support/config-fragments/autobuild/br-mips64r6-el-hf-glibc.config,x86_64 +support/config-fragments/autobuild/br-powerpc-603e-basic-cpp.config,x86_64 +support/config-fragments/autobuild/br-powerpc64-power7-glibc.config,x86_64 +support/config-fragments/autobuild/br-powerpc-internal-full.config,any +support/config-fragments/autobuild/br-riscv64-full-internal.config,any +support/config-fragments/autobuild/br-s390x-z13-internal-glibc.config,any +support/config-fragments/autobuild/br-xtensa-full-internal.config,any +support/config-fragments/autobuild/linaro-aarch64.config,x86 +support/config-fragments/autobuild/linaro-aarch64-be.config,x86 +support/config-fragments/autobuild/linaro-arm.config,x86 +support/config-fragments/autobuild/sourcery-arm-armv4t.config,x86 +support/config-fragments/autobuild/sourcery-arm-thumb2.config,x86 +support/config-fragments/autobuild/sourcery-mips64.config,x86 +support/config-fragments/autobuild/sourcery-mips.config,x86 +support/config-fragments/autobuild/sourcery-nios2.config,x86 diff --git a/support/config-fragments/minimal.config b/support/config-fragments/minimal.config new file mode 100644 index 00000000..71344e2c --- /dev/null +++ b/support/config-fragments/minimal.config @@ -0,0 +1,8 @@ +# This config fragment disables Buildroot options that are turned on by +# default, in order to arrive at minimal build time. +BR2_INIT_NONE=y +BR2_SYSTEM_BIN_SH_NONE=y +# BR2_PACKAGE_BUSYBOX is not set +# BR2_TARGET_ROOTFS_TAR is not set +BR2_COMPILER_PARANOID_UNSAFE_PATH=y +BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y diff --git a/support/dependencies/check-host-asciidoc.sh b/support/dependencies/check-host-asciidoc.sh new file mode 100755 index 00000000..fc5fcba4 --- /dev/null +++ b/support/dependencies/check-host-asciidoc.sh @@ -0,0 +1,36 @@ +#!/bin/sh + +candidate="$1" #ignored + +asciidoc=`which asciidoc` +if [ ! -x "$asciidoc" ]; then + # echo nothing: no suitable asciidoc found + exit 1 +fi + +# Output of 'asciidoc --version' examples: +# asciidoc 8.6.7 +version=`$asciidoc --version | cut -d\ -f2` +major=`echo "$version" | cut -d. -f1` +minor=`echo "$version" | cut -d. -f2` +bugfix=`echo "$version" | cut -d. -f3` + +# To generate the manual, we need asciidoc >= 8.6.3 +major_min=8 +minor_min=6 +bugfix_min=3 +if [ $major -gt $major_min ]; then + echo $asciidoc +else + if [ $major -eq $major_min -a $minor -ge $minor_min ]; then + echo $asciidoc + else + if [ $major -eq $major_min -a $minor -eq $minor_min \ + -a $bugfix -ge $bugfix_min ]; then + echo $asciidoc + else + # echo nothing: no suitable asciidoc found + exit 1 + fi + fi +fi diff --git a/support/dependencies/check-host-bison-flex.mk b/support/dependencies/check-host-bison-flex.mk new file mode 100644 index 00000000..14a232fd --- /dev/null +++ b/support/dependencies/check-host-bison-flex.mk @@ -0,0 +1,14 @@ +# If the system lacks bison or flex, add +# dependencies to suitable host packages +# +# BR2_{BISON,FLES}_HOST_DEPENDENCY should only be used to build code +# that runs on host, e.g. Kconfig. To build code for target use plain +# host-{bison,flex}. + +ifeq ($(shell which bison 2>/dev/null),) +BR2_BISON_HOST_DEPENDENCY = host-bison +endif + +ifeq ($(shell which flex 2>/dev/null),) +BR2_FLEX_HOST_DEPENDENCY = host-flex +endif diff --git a/support/dependencies/check-host-cmake.mk b/support/dependencies/check-host-cmake.mk new file mode 100644 index 00000000..e1bbcd62 --- /dev/null +++ b/support/dependencies/check-host-cmake.mk @@ -0,0 +1,14 @@ +# Set this to either 3.15 or higher, depending on the highest minimum +# version required by any of the packages bundled in Buildroot. If a +# package is bumped or a new one added, and it requires a higher +# version, our cmake infra will catch it and build its own. +# +BR2_CMAKE_VERSION_MIN = 3.15 + +BR2_CMAKE_CANDIDATES ?= cmake cmake3 +BR2_CMAKE ?= $(call suitable-host-package,cmake,\ + $(BR2_CMAKE_VERSION_MIN) $(BR2_CMAKE_CANDIDATES)) +ifeq ($(BR2_CMAKE),) +BR2_CMAKE = $(HOST_DIR)/bin/cmake +BR2_CMAKE_HOST_DEPENDENCY = host-cmake +endif diff --git a/support/dependencies/check-host-cmake.sh b/support/dependencies/check-host-cmake.sh new file mode 100755 index 00000000..fadeae9f --- /dev/null +++ b/support/dependencies/check-host-cmake.sh @@ -0,0 +1,45 @@ +#!/bin/sh + +# prevent shift error +[ $# -lt 2 ] && exit 1 + +major_min="${1%.*}" +minor_min="${1#*.}" + +shift + +for candidate; do + + # Try to locate the candidate. Discard it if not located. + cmake=`which "${candidate}" 2>/dev/null` + [ -n "${cmake}" ] || continue + + # Extract version X.Y from versions in the form X.Y or X.Y.Z + # with X, Y and Z numbers with one or more digits each, e.g. + # 3.2 -> 3.2 + # 3.2.3 -> 3.2 + # 3.2.42 -> 3.2 + # 3.10 -> 3.10 + # 3.10.4 -> 3.10 + # 3.10.42 -> 3.10 + # Discard the candidate if no version can be obtained + version="$(${cmake} --version \ + |sed -r -e '/.* ([[:digit:]]+\.[[:digit:]]+).*$/!d;' \ + -e 's//\1/' + )" + [ -n "${version}" ] || continue + + major="${version%.*}" + minor="${version#*.}" + + if [ ${major} -gt ${major_min} ]; then + echo "${cmake}" + exit + elif [ ${major} -eq ${major_min} -a ${minor} -ge ${minor_min} ]; then + echo "${cmake}" + exit + fi +done + +# echo nothing: no suitable cmake found +exit 1 diff --git a/support/dependencies/check-host-coreutils.mk b/support/dependencies/check-host-coreutils.mk new file mode 100644 index 00000000..87a3f446 --- /dev/null +++ b/support/dependencies/check-host-coreutils.mk @@ -0,0 +1,6 @@ +# Check whether the host's coreutils are up to date enough +# to provide 'ln --relative' and 'realpath'. + +ifeq (,$(call suitable-host-package,coreutils)) +BR2_COREUTILS_HOST_DEPENDENCY = host-coreutils +endif diff --git a/support/dependencies/check-host-coreutils.sh b/support/dependencies/check-host-coreutils.sh new file mode 100755 index 00000000..4d36d749 --- /dev/null +++ b/support/dependencies/check-host-coreutils.sh @@ -0,0 +1,12 @@ +#!/bin/sh + +# Exit on the first error +set -e + +# Does ln supports the --relative/-r option? +ln --relative --help >/dev/null 2>&1 + +# Does realpath exist? +realpath --help >/dev/null 2>&1 + +echo OK diff --git a/support/dependencies/check-host-gzip.mk b/support/dependencies/check-host-gzip.mk new file mode 100644 index 00000000..bf9a369a --- /dev/null +++ b/support/dependencies/check-host-gzip.mk @@ -0,0 +1,3 @@ +ifeq (,$(call suitable-host-package,gzip)) +BR2_GZIP_HOST_DEPENDENCY = host-gzip +endif diff --git a/support/dependencies/check-host-gzip.sh b/support/dependencies/check-host-gzip.sh new file mode 100755 index 00000000..5f344c5f --- /dev/null +++ b/support/dependencies/check-host-gzip.sh @@ -0,0 +1,21 @@ +#!/bin/sh + +candidate="$1" # ignored + +gzip="$(which gzip)" +if [ ! -x "${gzip}" ]; then + # echo nothing: no suitable gzip found + exit 1 +fi + +# gzip displays its version string on stdout +# pigz displays its version string on stderr +version="$("${gzip}" --version 2>&1)" +case "${version}" in + (*pigz*) + # echo nothing: no suitable gzip found + exit 1 + ;; +esac + +printf "%s" "${gzip}" diff --git a/support/dependencies/check-host-lzip.mk b/support/dependencies/check-host-lzip.mk new file mode 100644 index 00000000..98a4f423 --- /dev/null +++ b/support/dependencies/check-host-lzip.mk @@ -0,0 +1,4 @@ +ifeq (,$(call suitable-host-package,lzip,$(LZCAT))) +BR2_LZIP_HOST_DEPENDENCY = host-lzip +LZCAT = $(HOST_DIR)/bin/lzip -d -c +endif diff --git a/support/dependencies/check-host-lzip.sh b/support/dependencies/check-host-lzip.sh new file mode 100755 index 00000000..4f8a2ba3 --- /dev/null +++ b/support/dependencies/check-host-lzip.sh @@ -0,0 +1,14 @@ +#!/bin/sh + +candidate="$1" + +lzip=`which $candidate 2>/dev/null` +if [ ! -x "$lzip" ]; then + lzip=`which lzip 2>/dev/null` + if [ ! -x "$lzip" ]; then + # echo nothing: no suitable lzip found + exit 1 + fi +fi + +echo $lzip diff --git a/support/dependencies/check-host-make.mk b/support/dependencies/check-host-make.mk new file mode 100644 index 00000000..66560ee8 --- /dev/null +++ b/support/dependencies/check-host-make.mk @@ -0,0 +1,21 @@ +# Since version 2.28, glibc requires GNU Make >= 4.0 +# https://www.sourceware.org/ml/libc-alpha/2018-08/msg00003.html +# +# Set this to either 4.0 or higher, depending on the highest minimum +# version required by any of the packages bundled in Buildroot. If a +# package is bumped or a new one added, and it requires a higher +# version, our package infra will catch it and whine. +# +BR2_MAKE_VERSION_MIN = 4.0 + +BR2_MAKE ?= $(call suitable-host-package,make,\ + $(BR2_MAKE_VERSION_MIN) $(MAKE)) + +ifeq ($(BR2_MAKE),) +BR2_MAKE = $(HOST_DIR)/bin/host-make -j$(PARALLEL_JOBS) +BR2_MAKE1 = $(HOST_DIR)/bin/host-make -j1 +BR2_MAKE_HOST_DEPENDENCY = host-make +else +BR2_MAKE = $(MAKE) +BR2_MAKE1 = $(MAKE1) +endif diff --git a/support/dependencies/check-host-make.sh b/support/dependencies/check-host-make.sh new file mode 100755 index 00000000..0de7e9f6 --- /dev/null +++ b/support/dependencies/check-host-make.sh @@ -0,0 +1,37 @@ +#!/bin/sh + +# prevent shift error +[ $# -lt 2 ] && exit 1 + +major_min="${1%.*}" +minor_min="${1#*.}" + +shift + +# The host make program is already checked by dependencies.sh but we +# want to check the version number even if Buildroot is able to use +# GNU make >= 3.81 but some packages may require a more recent version. +make="$1" + +# Output of 'make --version' examples: +# GNU Make 4.2.1 +# GNU Make 4.0 +# GNU Make 3.81 +version=`$make --version 2>&1 | sed -e 's/^.* \([0-9\.]\)/\1/g' -e 's/[-\ +].*//g' -e '1q'` + +major=`echo "$version" | cut -d. -f1` +minor=`echo "$version" | cut -d. -f2` + +if [ $major -lt $major_min ]; then + # echo nothing: no suitable make found + exit 1 +fi + +if [ $major -eq $major_min -a $minor -lt $minor_min ]; then + # echo nothing: no suitable make found + exit 1 +fi + +# valid +echo $make diff --git a/support/dependencies/check-host-python3.mk b/support/dependencies/check-host-python3.mk new file mode 100644 index 00000000..50ed933a --- /dev/null +++ b/support/dependencies/check-host-python3.mk @@ -0,0 +1,8 @@ +# Since version 2.29, glibc requires python 3.4 or later to build the GNU C Library. +# https://www.sourceware.org/ml/libc-alpha/2019-01/msg00723.html + +BR2_PYTHON3_VERSION_MIN = 3.4 + +ifeq (,$(call suitable-host-package,python3,$(BR2_PYTHON3_VERSION_MIN) python3 python)) +BR2_PYTHON3_HOST_DEPENDENCY = host-python3 +endif diff --git a/support/dependencies/check-host-python3.sh b/support/dependencies/check-host-python3.sh new file mode 100755 index 00000000..17cafd28 --- /dev/null +++ b/support/dependencies/check-host-python3.sh @@ -0,0 +1,31 @@ +#!/bin/sh + +# prevent shift error +[ $# -lt 2 ] && exit 1 + +version_min="$(echo ${1} | awk '{ split($1, v, "."); print v[1] v[2] }')" + +shift + +# The host python interpreter is already checked by dependencies.sh but +# it only check if the version is at least 2.7. +# We want to check the version number of the python3 interpreter even +# if Buildroot is able to use any version but some packages may require +# a more recent version. + +for candidate in "${@}" ; do + python3=`which $candidate 2>/dev/null` + if [ ! -x "$python3" ]; then + continue + fi + version=`$python3 -V 2>&1 | awk '{ split($2, v, "."); print v[1] v[2] }'` + + if [ $version -lt $version_min ]; then + # no suitable python3 found + continue + fi + + # suitable python3 found + echo $python3 + break +done diff --git a/support/dependencies/check-host-tar.mk b/support/dependencies/check-host-tar.mk new file mode 100644 index 00000000..07d02fd1 --- /dev/null +++ b/support/dependencies/check-host-tar.mk @@ -0,0 +1,6 @@ +TAR ?= tar + +ifeq (,$(call suitable-host-package,tar,$(TAR))) +TAR = $(HOST_DIR)/bin/tar +BR2_TAR_HOST_DEPENDENCY = host-tar +endif diff --git a/support/dependencies/check-host-tar.sh b/support/dependencies/check-host-tar.sh new file mode 100755 index 00000000..b7d607a4 --- /dev/null +++ b/support/dependencies/check-host-tar.sh @@ -0,0 +1,47 @@ +#!/bin/sh + +candidate="$1" + +tar=`which $candidate` +if [ ! -x "$tar" ]; then + tar=`which tar` + if [ ! -x "$tar" ]; then + # echo nothing: no suitable tar found + exit 1 + fi +fi + +# Output of 'tar --version' examples: +# tar (GNU tar) 1.15.1 +# tar (GNU tar) 1.25 +# bsdtar 2.8.3 - libarchive 2.8.3 +version=`$tar --version | head -n 1 | sed 's/^.*\s\([0-9]\+\.\S\+\).*$/\1/'` +major=`echo "$version" | cut -d. -f1` +minor=`echo "$version" | cut -d. -f2` +bugfix=`echo "$version" | cut -d. -f3` +version_bsd=`$tar --version | grep 'bsdtar'` + +# BSD tar does not have all the command-line options +if [ -n "${version_bsd}" ] ; then + # echo nothing: no suitable tar found + exit 1 +fi + +# Minimal version = 1.27 (previous versions do not correctly unpack archives +# containing hard-links if the --strip-components option is used or create +# different gnu long link headers for path elements > 100 characters). +major_min=1 +minor_min=27 + +if [ $major -lt $major_min ]; then + # echo nothing: no suitable tar found + exit 1 +fi + +if [ $major -eq $major_min -a $minor -lt $minor_min ]; then + # echo nothing: no suitable tar found + exit 1 +fi + +# valid +echo $tar diff --git a/support/dependencies/check-host-xzcat.mk b/support/dependencies/check-host-xzcat.mk new file mode 100644 index 00000000..9a78a8f3 --- /dev/null +++ b/support/dependencies/check-host-xzcat.mk @@ -0,0 +1,7 @@ +# XZCAT is taken from BR2_XZCAT (defaults to 'xzcat') (see Makefile) +# If it is not present, build our own host-xzcat + +ifeq (,$(call suitable-host-package,xzcat,$(XZCAT))) +BR2_XZCAT_HOST_DEPENDENCY = host-xz +XZCAT = $(HOST_DIR)/bin/xzcat +endif diff --git a/support/dependencies/check-host-xzcat.sh b/support/dependencies/check-host-xzcat.sh new file mode 100755 index 00000000..10f1c456 --- /dev/null +++ b/support/dependencies/check-host-xzcat.sh @@ -0,0 +1,14 @@ +#!/bin/sh + +candidate="$1" + +xzcat=`which $candidate 2>/dev/null` +if [ ! -x "$xzcat" ]; then + xzcat=`which xzcat 2>/dev/null` + if [ ! -x "$xzcat" ]; then + # echo nothing: no suitable xzcat found + exit 1 + fi +fi + +echo $xzcat diff --git a/support/dependencies/dependencies.mk b/support/dependencies/dependencies.mk new file mode 100644 index 00000000..4fac5c73 --- /dev/null +++ b/support/dependencies/dependencies.mk @@ -0,0 +1,35 @@ +################################################################################ +# +# Check buildroot dependencies and bail out if the user's +# system is judged to be lacking.... +# +################################################################################ + +ifeq ($(BR2_FORCE_HOST_BUILD),y) +# ignore all available host packages +define suitable-host-package +endef +else +# suitable-host-pkg: calls check-host-$(1).sh shell script. Parameter (2) +# can be the candidate to be checked. If not present, the check-host-$(1).sh +# script should use 'which' to find a candidate. The script should return +# the path to the suitable host tool, or nothing if no suitable tool was found. +define suitable-host-package +$(shell support/dependencies/check-host-$(1).sh $(2)) +endef +endif +# host utilities needs host-tar to extract the source code tarballs, so +# ensure check-host-tar.mk is included before the rest +include support/dependencies/check-host-tar.mk +-include $(sort $(filter-out %-tar.mk,$(wildcard support/dependencies/check-host-*.mk))) + +dependencies: + @MAKE="$(MAKE)" DL_TOOLS="$(sort $(DL_TOOLS_DEPENDENCIES))" \ + $(TOPDIR)/support/dependencies/dependencies.sh + +################################################################################ +# +# Toplevel Makefile options +# +################################################################################ +.PHONY: dependencies diff --git a/support/dependencies/dependencies.sh b/support/dependencies/dependencies.sh new file mode 100755 index 00000000..1954f038 --- /dev/null +++ b/support/dependencies/dependencies.sh @@ -0,0 +1,298 @@ +#!/bin/sh +# vi: set sw=4 ts=4: + +export LC_ALL=C +TAB="$(printf '\t')" +NL=" +" + +# Verify that grep works +echo "WORKS" | grep "WORKS" >/dev/null 2>&1 +if test $? != 0 ; then + echo + echo "grep doesn't work" + exit 1 +fi + +# Sanity check for CWD in LD_LIBRARY_PATH +case ":${LD_LIBRARY_PATH:-unset}:" in +(*::*|*:.:*) + echo + echo "You seem to have the current working directory in your" + echo "LD_LIBRARY_PATH environment variable. This doesn't work." + exit 1 + ;; +esac + +# Sanity check for CWD in PATH. Having the current working directory +# in the PATH makes various packages (e.g. toolchain, coreutils...) +# build process break. +# PATH should not contain a newline, otherwise it fails in spectacular +# ways as soon as PATH is referenced in a package rule +# An empty PATH is technically possible, but in practice we would not +# even arrive here if that was the case. +case ":${PATH:-unset}:" in +(*::*|*:.:*) + echo + echo "You seem to have the current working directory in your" + echo "PATH environment variable. This doesn't work." + exit 1 + ;; +(*" "*|*"${TAB}"*|*"${NL}"*) + printf "\n" + printf "Your PATH contains spaces, TABs, and/or newline (\\\n) characters.\n" + printf "This doesn't work. Fix you PATH.\n" + exit 1 + ;; +esac + +if test -n "$PERL_MM_OPT" ; then + echo + echo "You have PERL_MM_OPT defined because Perl local::lib" + echo "is installed on your system. Please unset this variable" + echo "before starting Buildroot, otherwise the compilation of" + echo "Perl related packages will fail" + exit 1 +fi + +check_prog_host() +{ + prog="$1" + if ! which $prog > /dev/null ; then + echo >&2 + echo "You must install '$prog' on your build machine" >&2 + exit 1 + fi +} + +# Verify that which is installed +check_prog_host "which" +# Verify that sed is installed +check_prog_host "sed" + +# 'file' must be present and must be exactly /usr/bin/file, +# otherwise libtool fails in incomprehensible ways. +check_prog_host "/usr/bin/file" + +# Check make +MAKE=$(which make 2> /dev/null) +if [ -z "$MAKE" ] ; then + echo + echo "You must install 'make' on your build machine"; + exit 1; +fi; +MAKE_VERSION=$($MAKE --version 2>&1 | sed -e 's/^.* \([0-9\.]\)/\1/g' -e 's/[-\ ].*//g' -e '1q') +if [ -z "$MAKE_VERSION" ] ; then + echo + echo "You must install 'make' on your build machine"; + exit 1; +fi; +MAKE_MAJOR=$(echo $MAKE_VERSION | sed -e "s/\..*//g") +MAKE_MINOR=$(echo $MAKE_VERSION | sed -e "s/^$MAKE_MAJOR\.//g" -e "s/\..*//g" -e "s/[a-zA-Z].*//g") +if [ $MAKE_MAJOR -lt 3 ] || [ $MAKE_MAJOR -eq 3 -a $MAKE_MINOR -lt 81 ] ; then + echo + echo "You have make '$MAKE_VERSION' installed. GNU make >=3.81 is required" + exit 1; +fi; + +# Check host gcc +COMPILER=$(which $HOSTCC_NOCCACHE 2> /dev/null) +if [ -z "$COMPILER" ] ; then + COMPILER=$(which cc 2> /dev/null) +fi; +if [ -z "$COMPILER" ] ; then + echo + echo "You must install 'gcc' on your build machine"; + exit 1; +fi; + +COMPILER_VERSION=$($COMPILER -v 2>&1 | sed -n '/^gcc version/p' | + sed -e 's/^gcc version \([0-9\.]\)/\1/g' -e 's/[-\ ].*//g' -e '1q') +if [ -z "$COMPILER_VERSION" ] ; then + echo + echo "You must install 'gcc' on your build machine"; + exit 1; +fi; +COMPILER_MAJOR=$(echo $COMPILER_VERSION | sed -e "s/\..*//g") +COMPILER_MINOR=$(echo $COMPILER_VERSION | sed -e "s/^$COMPILER_MAJOR\.//g" -e "s/\..*//g") +if [ $COMPILER_MAJOR -lt 4 -o $COMPILER_MAJOR -eq 4 -a $COMPILER_MINOR -lt 8 ] ; then + echo + echo "You have gcc '$COMPILER_VERSION' installed. gcc >= 4.8 is required" + exit 1; +fi; + +# check for host CXX +CXXCOMPILER=$(which $HOSTCXX_NOCCACHE 2> /dev/null) +if [ -z "$CXXCOMPILER" ] ; then + CXXCOMPILER=$(which c++ 2> /dev/null) +fi + +if [ -z "$CXXCOMPILER" ] ; then + echo + echo "You may have to install 'g++' on your build machine" +fi +if [ ! -z "$CXXCOMPILER" ] ; then + CXXCOMPILER_VERSION=$($CXXCOMPILER -v 2>&1 | sed -n '/^gcc version/p' | + sed -e 's/^gcc version \([0-9\.]\)/\1/g' -e 's/[-\ ].*//g' -e '1q') + if [ -z "$CXXCOMPILER_VERSION" ] ; then + echo + echo "You may have to install 'g++' on your build machine" + fi +fi + +if [ -n "$CXXCOMPILER_VERSION" ] ; then + CXXCOMPILER_MAJOR=$(echo $CXXCOMPILER_VERSION | sed -e "s/\..*//g") + CXXCOMPILER_MINOR=$(echo $CXXCOMPILER_VERSION | sed -e "s/^$CXXCOMPILER_MAJOR\.//g" -e "s/\..*//g") + if [ $CXXCOMPILER_MAJOR -lt 4 -o $CXXCOMPILER_MAJOR -eq 4 -a $CXXCOMPILER_MINOR -lt 8 ] ; then + echo + echo "You have g++ '$CXXCOMPILER_VERSION' installed. g++ >= 4.8 is required" + exit 1 + fi +fi + +# Check bash +# We only check bash is available, setting SHELL appropriately is done +# in the top-level Makefile, and we mimick the same sequence here +if [ -n "${BASH}" ]; then : +elif [ -x /bin/bash ]; then : +elif [ -z "$( sh -c 'echo $BASH' )" ]; then + echo + echo "You must install 'bash' on your build machine" + exit 1 +fi + +# Check that a few mandatory programs are installed +missing_progs="no" +for prog in patch perl tar wget cpio unzip rsync bc ${DL_TOOLS} ; do + if ! which $prog > /dev/null ; then + echo "You must install '$prog' on your build machine"; + missing_progs="yes" + if test $prog = "svn" ; then + echo " svn is usually part of the subversion package in your distribution" + elif test $prog = "hg" ; then + echo " hg is usually part of the mercurial package in your distribution" + elif test $prog = "zcat" ; then + echo " zcat is usually part of the gzip package in your distribution" + elif test $prog = "bzcat" ; then + echo " bzcat is usually part of the bzip2 package in your distribution" + fi + fi +done + +if test "${missing_progs}" = "yes" ; then + exit 1 +fi + +# apply-patches.sh needs patch with --no-backup-if-mismatch support (GNU, busybox w/DESKTOP) +if ! patch --no-backup-if-mismatch /dev/null; then + echo "Your patch program does not support the --no-backup-if-mismatch option. Install GNU patch" + exit 1 +fi + +if grep ^BR2_NEEDS_HOST_UTF8_LOCALE=y $BR2_CONFIG > /dev/null; then + if ! which locale > /dev/null ; then + echo + echo "You need locale support on your build machine to build a toolchain supporting locales" + exit 1 ; + fi + if ! locale -a | grep -q -i -E 'utf-?8$' ; then + echo + echo "You need at least one UTF8 locale to build a toolchain supporting locales" + exit 1 ; + fi +fi + +if grep -q ^BR2_NEEDS_HOST_JAVA=y $BR2_CONFIG ; then + check_prog_host "java" + JAVA_GCJ=$(java -version 2>&1 | grep gcj) + if [ ! -z "$JAVA_GCJ" ] ; then + echo + echo "$JAVA_GCJ is not sufficient to compile your package selection." + echo "Please install an OpenJDK/IcedTea/Oracle Java." + exit 1 ; + fi +fi + +if grep -q ^BR2_HOSTARCH_NEEDS_IA32_LIBS=y $BR2_CONFIG ; then + if test ! -f /lib/ld-linux.so.2 ; then + echo + echo "Your Buildroot configuration uses pre-built tools for the x86 architecture," + echo "but your build machine uses the x86-64 architecture without the 32 bits compatibility" + echo "library." + echo "If you're running a Debian/Ubuntu distribution, install the libc6-i386," + echo "lib32stdc++6, and lib32z1 packages (or alternatively libc6:i386," + echo "libstdc++6:i386, and zlib1g:i386)." + echo "If you're running a RedHat/Fedora distribution, install the glibc.i686 and" + echo "zlib.i686 packages." + echo "If you're running an ArchLinux distribution, install lib32-glibc." + echo "For other distributions, refer to the documentation on how to install the 32 bits" + echo "compatibility libraries." + exit 1 + fi +fi + +if grep -q ^BR2_HOSTARCH_NEEDS_IA32_COMPILER=y $BR2_CONFIG ; then + if ! echo "int main(void) {}" | gcc -m32 -x c - -o /dev/null 2>/dev/null; then + echo + echo "Your Buildroot configuration needs a compiler capable of building 32 bits binaries." + echo "If you're running a Debian/Ubuntu distribution, install the gcc-multilib package." + echo "For other distributions, refer to their documentation." + exit 1 + fi + + if ! echo "int main(void) {}" | g++ -m32 -x c++ - -o /dev/null 2>/dev/null; then + echo + echo "Your Buildroot configuration needs a compiler capable of building 32 bits binaries." + echo "If you're running a Debian/Ubuntu distribution, install the g++-multilib package." + echo "For other distributions, refer to their documentation." + exit 1 + fi +fi + +if grep ^BR2_NEEDS_HOST_GCC_PLUGIN_SUPPORT=y $BR2_CONFIG ; then + if ! echo "#include " | $HOSTCXX_NOCCACHE -I$($HOSTCXX_NOCCACHE -print-file-name=plugin)/include -x c++ -c - -o /dev/null ; then + echo + echo "Your Buildroot configuration needs a host compiler capable of building gcc plugins." + echo "If you're running a Debian/Ubuntu distribution, install gcc-X-plugin-dev package." + echo "For other distributions, refer to their documentation." + exit 1 ; + fi +fi + +# Check that the Perl installation is complete enough for Buildroot. +required_perl_modules="Data::Dumper" # Needed to build host-autoconf +required_perl_modules="$required_perl_modules ExtUtils::MakeMaker" # Used by host-libxml-parser-perl +required_perl_modules="$required_perl_modules Thread::Queue" # Used by host-automake + +if grep -q ^BR2_PACKAGE_MPV=y $BR2_CONFIG ; then + required_perl_modules="$required_perl_modules Math::BigInt" + required_perl_modules="$required_perl_modules Math::BigRat" +fi + +if grep -q ^BR2_PACKAGE_WHOIS=y $BR2_CONFIG ; then + required_perl_modules="$required_perl_modules autodie" +fi + +if grep -q -E '^BR2_PACKAGE_(WEBKITGTK|WPEWEBKIT)=y' $BR2_CONFIG ; then + required_perl_modules="${required_perl_modules} JSON::PP" +fi + +# This variable will keep the modules that are missing in your system. +missing_perl_modules="" + +for pm in $required_perl_modules ; do + if ! perl -e "require $pm" > /dev/null 2>&1 ; then + missing_perl_modules="$missing_perl_modules $pm" + fi +done + +if [ -n "$missing_perl_modules" ] ; then + echo "Your Perl installation is not complete enough; at least the following" + echo "modules are missing:" + echo + for pm in $missing_perl_modules ; do + printf "\t $pm\n" + done + echo + exit 1 +fi diff --git a/support/docker/Dockerfile b/support/docker/Dockerfile new file mode 100644 index 00000000..a9bacca3 --- /dev/null +++ b/support/docker/Dockerfile @@ -0,0 +1,63 @@ +# This Dockerfile generates the docker image that gets used by Gitlab CI +# To build it (YYYYMMDD.HHMM is the current date and time in UTC): +# sudo docker build -t buildroot/base:YYYYMMDD.HHMM support/docker +# sudo docker push buildroot/base:YYYYMMDD.HHMM + +# We use a specific tag for the base image *and* the corresponding date +# for the repository., so do not forget to update the apt-sources.list +# file that is shipped next to this Dockerfile. +FROM debian:stretch-20171210 + +LABEL maintainer="Buildroot mailing list " \ + vendor="Buildroot" \ +description="Container with everything needed to run Buildroot" + +# Setup environment +ENV DEBIAN_FRONTEND noninteractive + +# This repository can be a bit slow at times. Don't panic... +COPY apt-sources.list /etc/apt/sources.list + +# The container has no package lists, so need to update first +RUN dpkg --add-architecture i386 && \ + apt-get update -y +RUN apt-get install -y --no-install-recommends \ + bc \ + build-essential \ + bzr \ + ca-certificates \ + cmake \ + cpio \ + cvs \ + file \ + g++-multilib \ + git \ + libc6:i386 \ + libncurses5-dev \ + locales \ + mercurial \ + python3 \ + python3-flake8 \ + python3-nose2 \ + python3-pexpect \ + qemu-system-arm \ + qemu-system-x86 \ + rsync \ + subversion \ + unzip \ + wget \ + && \ + apt-get -y autoremove && \ + apt-get -y clean + +# To be able to generate a toolchain with locales, enable one UTF-8 locale +RUN sed -i 's/# \(en_US.UTF-8\)/\1/' /etc/locale.gen && \ + /usr/sbin/locale-gen + +RUN useradd -ms /bin/bash br-user && \ + chown -R br-user:br-user /home/br-user + +USER br-user +WORKDIR /home/br-user +ENV HOME /home/br-user +ENV LC_ALL en_US.UTF-8 diff --git a/support/docker/apt-sources.list b/support/docker/apt-sources.list new file mode 100644 index 00000000..789fb8fc --- /dev/null +++ b/support/docker/apt-sources.list @@ -0,0 +1,4 @@ +# Latest just before 20171210T000000Z: +deb [check-valid-until=no] http://snapshot.debian.org/archive/debian/20171209T220346Z/ stretch main +deb [check-valid-until=no] http://snapshot.debian.org/archive/debian/20171209T220346Z/ stretch-updates main +deb [check-valid-until=no] http://snapshot.debian.org/archive/debian-security/20171209T224618Z/ stretch/updates main diff --git a/support/download/bzr b/support/download/bzr new file mode 100755 index 00000000..5289a421 --- /dev/null +++ b/support/download/bzr @@ -0,0 +1,58 @@ +#!/usr/bin/env bash + +# We want to catch any unexpected failure, and exit immediately +set -e + +# Download helper for bzr, to be called from the download wrapper script +# +# Options: +# -q Be quiet +# -o FILE Generate archive in FILE. +# -u URI Clone from repository at URI. +# -c CSET Use changeset (or revision) CSET. +# -n NAME Use basename NAME. +# +# Environment: +# BZR : the bzr command to call + + +verbose= +while getopts "${BR_BACKEND_DL_GETOPTS}" OPT; do + case "${OPT}" in + q) verbose=-q;; + o) output="${OPTARG}";; + u) uri="${OPTARG}";; + c) cset="${OPTARG}";; + n) basename="${OPTARG}";; + :) printf "option '%s' expects a mandatory argument\n" "${OPTARG}"; exit 1;; + \?) printf "unknown option '%s'\n" "${OPTARG}" >&2; exit 1;; + esac +done + +shift $((OPTIND-1)) # Get rid of our options + +# Caller needs to single-quote its arguments to prevent them from +# being expanded a second time (in case there are spaces in them) +_bzr() { + eval ${BZR} "${@}" +} + +# --per-file-timestamps comes with bzr-2.2 (released August 2010), +# so only pass it if bzr is recent enough. We compute versions as: +# major*1000 + minor +bzr_min_version=2002 +bzr_version=$(($(bzr --version | + sed -r -n 's/^Bazaar \(bzr\) ([[:digit:]]+)\.([[:digit:]]+)\..*$/\1*1000+\2/p') + )) + +# If the version is recent enough, we can generate reproducible +# archives; otherwise, we just hope for the best (as it would +# be downloaded from the BR mirror if what we generate here does +# not match the hash we have for it). +if [ ${bzr_version} -ge ${bzr_min_version} ]; then + timestamp_opt="--per-file-timestamps" +fi + +_bzr export ${verbose} --root="'${basename}/'" --format=tgz \ + ${timestamp_opt} - "${@}" "'${uri}'" -r "'${cset}'" \ + >"${output}" diff --git a/support/download/check-hash b/support/download/check-hash new file mode 100755 index 00000000..fe9c1057 --- /dev/null +++ b/support/download/check-hash @@ -0,0 +1,111 @@ +#!/usr/bin/env bash +set -e + +# Helper to check a file matches its known hash +# Call it with: +# $1: the path of the file containing all the expected hashes +# $2: the full path to the temporary file that was downloaded, and +# that is to be checked +# $3: the final basename of the file, to which it will be ultimately +# saved as, to be able to match it to the corresponding hashes +# in the .hash file +# +# Exit codes: +# 0: the hash file exists and the file to check matches all its hashes, +# or the hash file does not exist +# 1: unknown command-line option +# 2: the hash file exists and the file to check does not match at least +# one of its hashes +# 3: the hash file exists and there was no hash to check the file against +# 4: the hash file exists and at least one hash type is unknown + +while getopts :q OPT; do + case "${OPT}" in + q) exec >/dev/null;; + \?) exit 1;; + esac +done +shift $((OPTIND-1)) + +h_file="${1}" +file="${2}" +base="${3}" + +# Bail early if no hash to check +if [ -z "${h_file}" ]; then + exit 0 +fi +# Does the hash-file exist? +if [ ! -f "${h_file}" ]; then + printf "WARNING: no hash file for %s\n" "${base}" >&2 + exit 0 +fi + +# Check one hash for a file +# $1: algo hash +# $2: known hash +# $3: file (full path) +check_one_hash() { + _h="${1}" + _known="${2}" + _file="${3}" + + # Note: md5 is supported, but undocumented on purpose. + # Note: sha3 is not supported, since there is currently no implementation + # (the NIST has yet to publish the parameters). + # Note: 'none' means there is explicitly no hash for that file. + case "${_h}" in + none) + return 0 + ;; + md5|sha1) ;; + sha224|sha256|sha384|sha512) ;; + *) # Unknown hash, exit with error + printf "ERROR: unknown hash '%s' for '%s'\n" \ + "${_h}" "${base}" >&2 + exit 4 + ;; + esac + + # Do the hashes match? + _hash=$( ${_h}sum "${_file}" |cut -d ' ' -f 1 ) + if [ "${_hash}" = "${_known}" ]; then + printf "%s: OK (%s: %s)\n" "${base}" "${_h}" "${_hash}" + return 0 + fi + + printf "ERROR: %s has wrong %s hash:\n" "${base}" "${_h}" >&2 + printf "ERROR: expected: %s\n" "${_known}" >&2 + printf "ERROR: got : %s\n" "${_hash}" >&2 + printf "ERROR: Incomplete download, or man-in-the-middle (MITM) attack\n" >&2 + + exit 2 +} + +# Do we know one or more hashes for that file? +nb_checks=0 +while read t h f; do + case "${t}" in + ''|'#'*) + # Skip comments and empty lines + continue + ;; + *) + if [ "${f}" = "${base}" ]; then + check_one_hash "${t}" "${h}" "${file}" + : $((nb_checks++)) + fi + ;; + esac +done <"${h_file}" + +if [ ${nb_checks} -eq 0 ]; then + case " ${BR_NO_CHECK_HASH_FOR} " in + *" ${base} "*) + # File explicitly has no hash + exit 0 + ;; + esac + printf "ERROR: No hash found for %s\n" "${base}" >&2 + exit 3 +fi diff --git a/support/download/cvs b/support/download/cvs new file mode 100755 index 00000000..9d0dc3cb --- /dev/null +++ b/support/download/cvs @@ -0,0 +1,63 @@ +#!/usr/bin/env bash + +# We want to catch any unexpected failure, and exit immediately +set -e + +# Download helper for cvs, to be called from the download wrapper script +# +# Options: +# -q Be quiet +# -o FILE Generate archive in FILE. +# -u URI Checkout from repository at URI. +# -c REV Use revision REV. +# -N RAWNAME Use rawname (aka module name) RAWNAME. +# -n NAME Use basename NAME. +# +# Environment: +# CVS : the cvs command to call + +verbose= +while getopts "${BR_BACKEND_DL_GETOPTS}" OPT; do + case "${OPT}" in + q) verbose=-Q;; + o) output="${OPTARG}";; + u) uri="${OPTARG#*://}";; + c) rev="${OPTARG}";; + N) rawname="${OPTARG}";; + n) basename="${OPTARG}";; + :) printf "option '%s' expects a mandatory argument\n" "${OPTARG}"; exit 1;; + \?) printf "unknown option '%s'\n" "${OPTARG}" >&2; exit 1;; + esac +done + +shift $((OPTIND-1)) # Get rid of our options + +# Caller needs to single-quote its arguments to prevent them from +# being expanded a second time (in case there are spaces in them). +# If the CVS server is deadlocked, the client will never return (cfr. +# http://autobuild.buildroot.net/results/23d/23d1034b33d0354de15de2ec4a8ccd0603e8db78/build-end.log +# ). Since nobody sane will put large code bases in CVS, a timeout of +# 10 minutes should do the trick. +_cvs() { + eval timeout 10m ${CVS} "${@}" +} + +if [[ ${rev} =~ ^[0-9] ]]; then + # Date, because a tag or a branch cannot begin with a number + select="-D" +else + # Tag or branch + select="-r" +fi + +# The absence of an initial : on ${uri} means access method undefined +if [[ ! "${uri}" =~ ^: ]]; then + # defaults to anonymous pserver + uri=":pserver:anonymous@${uri}" +fi + +export TZ=UTC +_cvs ${verbose} -z3 -d"'${uri}'" \ + co "${@}" -d "'${basename}'" ${select} "'${rev}'" -P "'${rawname}'" + +tar czf "${output}" "${basename}" diff --git a/support/download/dl-wrapper b/support/download/dl-wrapper new file mode 100755 index 00000000..3315bd41 --- /dev/null +++ b/support/download/dl-wrapper @@ -0,0 +1,219 @@ +#!/usr/bin/env bash + +# This script is a wrapper to the other download backends. +# Its role is to ensure atomicity when saving downloaded files +# back to BR2_DL_DIR, and not clutter BR2_DL_DIR with partial, +# failed downloads. + +# To avoid cluttering BR2_DL_DIR, we download to a trashable +# location, namely in $(BUILD_DIR). +# Then, we move the downloaded file to a temporary file in the +# same directory as the final output file. +# This allows us to finally atomically rename it to its final +# name. +# If anything goes wrong, we just remove all the temporaries +# created so far. + +# We want to catch any unexpected failure, and exit immediately. +set -e + +export BR_BACKEND_DL_GETOPTS=":hc:d:o:n:N:H:ru:qf:e" + +main() { + local OPT OPTARG + local backend output hfile recurse quiet rc + local -a uris + + # Parse our options; anything after '--' is for the backend + while getopts ":c:d:D:o:n:N:H:rf:u:q" OPT; do + case "${OPT}" in + c) cset="${OPTARG}";; + d) dl_dir="${OPTARG}";; + D) old_dl_dir="${OPTARG}";; + o) output="${OPTARG}";; + n) raw_base_name="${OPTARG}";; + N) base_name="${OPTARG}";; + H) hfile="${OPTARG}";; + r) recurse="-r";; + f) filename="${OPTARG}";; + u) uris+=( "${OPTARG}" );; + q) quiet="-q";; + :) error "option '%s' expects a mandatory argument\n" "${OPTARG}";; + \?) error "unknown option '%s'\n" "${OPTARG}";; + esac + done + + # Forget our options, and keep only those for the backend + shift $((OPTIND-1)) + + if [ -z "${output}" ]; then + error "no output specified, use -o\n" + fi + + # Legacy handling: check if the file already exists in the global + # download directory. If it does, hard-link it. If it turns out it + # was an incorrect download, we'd still check it below anyway. + # If we can neither link nor copy, fallback to doing a download. + # NOTE! This is not atomic, is subject to TOCTTOU, but the whole + # dl-wrapper runs under an flock, so we're safe. + if [ ! -e "${output}" -a -e "${old_dl_dir}/${filename}" ]; then + ln "${old_dl_dir}/${filename}" "${output}" || \ + cp "${old_dl_dir}/${filename}" "${output}" || \ + true + fi + + # If the output file already exists and: + # - there's no .hash file: do not download it again and exit promptly + # - matches all its hashes: do not download it again and exit promptly + # - fails at least one of its hashes: force a re-download + # - there's no hash (but a .hash file): consider it a hard error + if [ -e "${output}" ]; then + if support/download/check-hash ${quiet} "${hfile}" "${output}" "${output##*/}"; then + exit 0 + elif [ ${?} -ne 2 ]; then + # Do not remove the file, otherwise it might get re-downloaded + # from a later location (i.e. primary -> upstream -> mirror). + # Do not print a message, check-hash already did. + exit 1 + fi + rm -f "${output}" + warn "Re-downloading '%s'...\n" "${output##*/}" + fi + + # Look through all the uris that we were given to download the package + # source + download_and_check=0 + rc=1 + for uri in "${uris[@]}"; do + backend_urlencode="${uri%%+*}" + backend="${backend_urlencode%|*}" + case "${backend}" in + git|svn|cvs|bzr|file|scp|hg) ;; + *) backend="wget" ;; + esac + uri=${uri#*+} + + urlencode=${backend_urlencode#*|} + # urlencode must be "urlencode" + [ "${urlencode}" != "urlencode" ] && urlencode="" + + # tmpd is a temporary directory in which backends may store + # intermediate by-products of the download. + # tmpf is the file in which the backends should put the downloaded + # content. + # tmpd is located in $(BUILD_DIR), so as not to clutter the (precious) + # $(BR2_DL_DIR) + # We let the backends create tmpf, so they are able to set whatever + # permission bits they want (although we're only really interested in + # the executable bit.) + tmpd="$(mktemp -d "${BUILD_DIR}/.${output##*/}.XXXXXX")" + tmpf="${tmpd}/output" + + # Helpers expect to run in a directory that is *really* trashable, so + # they are free to create whatever files and/or sub-dirs they might need. + # Doing the 'cd' here rather than in all backends is easier. + cd "${tmpd}" + + # If the backend fails, we can just remove the content of the temporary + # directory to remove all the cruft it may have left behind, and try + # the next URI until it succeeds. Once out of URI to try, we need to + # cleanup and exit. + if ! "${OLDPWD}/support/download/${backend}" \ + $([ -n "${urlencode}" ] && printf %s '-e') \ + -c "${cset}" \ + -d "${dl_dir}" \ + -n "${raw_base_name}" \ + -N "${base_name}" \ + -f "${filename}" \ + -u "${uri}" \ + -o "${tmpf}" \ + ${quiet} ${recurse} -- "${@}" + then + # cd back to keep path coherence + cd "${OLDPWD}" + rm -rf "${tmpd}" + continue + fi + + # cd back to free the temp-dir, so we can remove it later + cd "${OLDPWD}" + + # Check if the downloaded file is sane, and matches the stored hashes + # for that file + if support/download/check-hash ${quiet} "${hfile}" "${tmpf}" "${output##*/}"; then + rc=0 + else + if [ ${?} -ne 3 ]; then + rm -rf "${tmpd}" + continue + fi + + # the hash file exists and there was no hash to check the file + # against + rc=1 + fi + download_and_check=1 + break + done + + # We tried every URI possible, none seems to work or to check against the + # available hash. *ABORT MISSION* + if [ "${download_and_check}" -eq 0 ]; then + rm -rf "${tmpd}" + exit 1 + fi + + # tmp_output is in the same directory as the final output, so we can + # later move it atomically. + tmp_output="$(mktemp "${output}.XXXXXX")" + + # 'mktemp' creates files with 'go=-rwx', so the files are not accessible + # to users other than the one doing the download (and root, of course). + # This can be problematic when a shared BR2_DL_DIR is used by different + # users (e.g. on a build server), where all users may write to the shared + # location, since other users would not be allowed to read the files + # another user downloaded. + # So, we restore the 'go' access rights to a more sensible value, while + # still abiding by the current user's umask. We must do that before the + # final 'mv', so just do it now. + # Some backends (cp and scp) may create executable files, so we need to + # carry the executable bit if needed. + [ -x "${tmpf}" ] && new_mode=755 || new_mode=644 + new_mode=$(printf "%04o" $((0${new_mode} & ~0$(umask)))) + chmod ${new_mode} "${tmp_output}" + + # We must *not* unlink tmp_output, otherwise there is a small window + # during which another download process may create the same tmp_output + # name (very, very unlikely; but not impossible.) + # Using 'cp' is not reliable, since 'cp' may unlink the destination file + # if it is unable to open it with O_WRONLY|O_TRUNC; see: + # http://pubs.opengroup.org/onlinepubs/9699919799/utilities/cp.html + # Since the destination filesystem can be anything, it might not support + # O_TRUNC, so 'cp' would unlink it first. + # Use 'cat' and append-redirection '>>' to save to the final location, + # since that is the only way we can be 100% sure of the behaviour. + if ! cat "${tmpf}" >>"${tmp_output}"; then + rm -rf "${tmpd}" "${tmp_output}" + exit 1 + fi + rm -rf "${tmpd}" + + # tmp_output and output are on the same filesystem, so POSIX guarantees + # that 'mv' is atomic, because it then uses rename() that POSIX mandates + # to be atomic, see: + # http://pubs.opengroup.org/onlinepubs/9699919799/functions/rename.html + if ! mv -f "${tmp_output}" "${output}"; then + rm -f "${tmp_output}" + exit 1 + fi + + return ${rc} +} + +trace() { local msg="${1}"; shift; printf "%s: ${msg}" "${my_name}" "${@}"; } +warn() { trace "${@}" >&2; } +errorN() { local ret="${1}"; shift; warn "${@}"; exit ${ret}; } +error() { errorN 1 "${@}"; } + +my_name="${0##*/}" +main "${@}" diff --git a/support/download/file b/support/download/file new file mode 100755 index 00000000..e52fcf2c --- /dev/null +++ b/support/download/file @@ -0,0 +1,42 @@ +#!/usr/bin/env bash + +# We want to catch any unexpected failure, and exit immediately +set -e + +# Download helper for cp, to be called from the download wrapper script +# +# Options: +# -q Be quiet. +# -o FILE Copy to file FILE. +# -f FILE Copy from basename file FILE. +# -u DIR Copy from FILE in DIR. +# +# Environment: +# LOCALFILES: the cp command to call + +# 'cp' usually does not print anything on its stdout, whereas the +# other download backends, even if not verbose, at least print some +# progress information. +# Make 'cp' verbose by default, so it behaves a bit like the others. +verbose=-v + +while getopts "${BR_BACKEND_DL_GETOPTS}" OPT; do + case "${OPT}" in + q) verbose=;; + o) output="${OPTARG}";; + f) file="${OPTARG}";; + u) dir="${OPTARG}";; + :) printf "option '%s' expects a mandatory argument\n" "${OPTARG}"; exit 1;; + \?) printf "unknown option '%s'\n" "${OPTARG}" >&2; exit 1;; + esac +done + +shift $((OPTIND-1)) # Get rid of our options + +# Caller needs to single-quote its arguments to prevent them from +# being expanded a second time (in case there are spaces in them) +_localfiles() { + eval ${LOCALFILES} "${@}" +} + +_localfiles ${verbose} "'${dir##file://}/${file}'" "'${output}'" diff --git a/support/download/git b/support/download/git new file mode 100755 index 00000000..fa98198f --- /dev/null +++ b/support/download/git @@ -0,0 +1,209 @@ +#!/usr/bin/env bash + +# NOTE: if the output of this backend has to change (e.g. we change what gets +# included in the archive (e.g. LFS), or we change the format of the archive +# (e.g. tar options, compression ratio or method)), we MUST update the format +# version in the variable BR_FMT_VERSION_git, in package/pkg-download.mk. + +# We want to catch any unexpected failure, and exit immediately +set -E + +# Download helper for git, to be called from the download wrapper script +# +# Options: +# -q Be quiet. +# -r Clone and archive sub-modules. +# -o FILE Generate archive in FILE. +# -u URI Clone from repository at URI. +# -c CSET Use changeset CSET. +# -n NAME Use basename NAME. +# +# Environment: +# GIT : the git command to call + +. "${0%/*}/helpers" + +# Save our path and options in case we need to call ourselves again +myname="${0}" +declare -a OPTS=("${@}") + +# This function is called when an error occurs. Its job is to attempt a +# clone from scratch (only once!) in case the git tree is borked, or in +# case an unexpected and unsupported situation arises with submodules +# or uncommitted stuff (e.g. if the user manually mucked around in the +# git cache). +_on_error() { + local ret=${?} + + printf "Detected a corrupted git cache.\n" >&2 + if ${BR_GIT_BACKEND_FIRST_FAULT:-false}; then + printf "This is the second time in a row; bailing out\n" >&2 + exit ${ret} + fi + export BR_GIT_BACKEND_FIRST_FAULT=true + + printf "Removing it and starting afresh.\n" >&2 + + popd >/dev/null + rm -rf "${git_cache}" + + exec "${myname}" "${OPTS[@]}" || exit ${ret} +} + +verbose= +recurse=0 +while getopts "${BR_BACKEND_DL_GETOPTS}" OPT; do + case "${OPT}" in + q) verbose=-q; exec >/dev/null;; + r) recurse=1;; + o) output="${OPTARG}";; + u) uri="${OPTARG}";; + c) cset="${OPTARG}";; + d) dl_dir="${OPTARG}";; + n) basename="${OPTARG}";; + :) printf "option '%s' expects a mandatory argument\n" "${OPTARG}"; exit 1;; + \?) printf "unknown option '%s'\n" "${OPTARG}" >&2; exit 1;; + esac +done + +shift $((OPTIND-1)) # Get rid of our options + +# Create and cd into the directory that will contain the local git cache +git_cache="${dl_dir}/git" +mkdir -p "${git_cache}" +pushd "${git_cache}" >/dev/null + +# Any error now should try to recover +trap _on_error ERR + +# Caller needs to single-quote its arguments to prevent them from +# being expanded a second time (in case there are spaces in them) +_git() { + eval GIT_DIR="${git_cache}/.git" ${GIT} "${@}" +} + +# Create a warning file, that the user should not use the git cache. +# It's ours. Our precious. +cat <<-_EOF_ >"${dl_dir}/git.readme" + IMPORTANT NOTE! + + The git tree located in this directory is for the exclusive use + by Buildroot, which uses it as a local cache to reduce bandwidth + usage. + + Buildroot *will* trash any changes in that tree whenever it needs + to use it. Buildroot may even remove it in case it detects the + repository may have been damaged or corrupted. + + Do *not* work in that directory; your changes will eventually get + lost. Do *not* even use it as a remote, or as the source for new + worktrees; your commits will eventually get lost. +_EOF_ + +# Initialise a repository in the git cache. If the repository already +# existed, this is a noop, unless the repository was broken, in which +# case this magically restores it to working conditions. In the latter +# case, we might be missing blobs, but that's not a problem: we'll +# fetch what we need later anyway. +# +# We can still go through the wrapper, because 'init' does not use the +# path pointed to by GIT_DIR, but really uses the directory passed as +# argument. +_git init . + +# Ensure the repo has an origin (in case a previous run was killed). +if ! _git remote |grep -q -E '^origin$'; then + _git remote add origin "'${uri}'" +fi + +_git remote set-url origin "'${uri}'" + +printf "Fetching all references\n" +_git fetch origin +_git fetch origin -t + +# Try to get the special refs exposed by some forges (pull-requests for +# github, changes for gerrit...). There is no easy way to know whether +# the cset the user passed us is such a special ref or a tag or a sha1 +# or whatever else. We'll eventually fail at checking out that cset, +# below, if there is an issue anyway. Since most of the cset we're gonna +# have to clone are not such special refs, consign the output to oblivion +# so as not to alarm unsuspecting users, but still trace it as a warning. +if ! _git fetch origin "'${cset}:${cset}'" >/dev/null 2>&1; then + printf "Could not fetch special ref '%s'; assuming it is not special.\n" "${cset}" +fi + +# Check that the changeset does exist. If it does not, re-cloning from +# scratch won't help, so we don't want to trash the repository for a +# missing commit. We just exit without going through the ERR trap. +if ! _git rev-parse --quiet --verify "'${cset}^{commit}'" >/dev/null 2>&1; then + printf "Commit '%s' does not exist in this repository.\n" "${cset}" + exit 1 +fi + +# The new cset we want to checkout might have different submodules, or +# have sub-dirs converted to/from a submodule. So we would need to +# deregister _current_ submodules before we checkout. +# +# Using "git submodule deinit --all" would remove all the files for +# all submodules, including the corresponding .git files or directories. +# However, it was only introduced with git-1.8.3, which is too recent +# for some enterprise-grade distros. +# +# So, we fall-back to just removing all submodules directories. We do +# not need to be recursive, as removing a submodule will de-facto remove +# its own submodules. +# +# For recent git versions, the repository for submodules is stored +# inside the repository of the super repository, so the following will +# only remove the working copies of submodules, effectively caching the +# submodules. +# +# For older versions however, the repository is stored in the .git/ of +# the submodule directory, so the following will effectively remove the +# the working copy as well as the repository, which means submodules +# will not be cached for older versions. +# +cmd='printf "Deregistering submodule \"%s\"\n" "${path}" && cd .. && rm -rf "${path##*/}"' +_git submodule --quiet foreach "'${cmd}'" + +# Checkout the required changeset, so that we can update the required +# submodules. +_git checkout -f -q "'${cset}'" + +# Get rid of now-untracked directories (in case a git operation was +# interrupted in a previous run, or to get rid of empty directories +# that were parents of submodules removed above). +_git clean -ffdx + +# Get date of commit to generate a reproducible archive. +# %ci is ISO 8601, so it's fully qualified, with TZ and all. +date="$( _git log -1 --pretty=format:%ci )" + +# There might be submodules, so fetch them. +if [ ${recurse} -eq 1 ]; then + _git submodule update --init --recursive + + # Older versions of git will store the absolute path of the git tree + # in the .git of submodules, while newer versions just use relative + # paths. Detect and fix the older variants to use relative paths, so + # that the archives are reproducible across a wider range of git + # versions. However, we can't do that if git is too old and uses + # full repositories for submodules. + cmd='printf "%s\n" "${path}/"' + for module_dir in $( _git submodule --quiet foreach "'${cmd}'" ); do + [ -f "${module_dir}/.git" ] || continue + relative_dir="$( sed -r -e 's,/+,/,g; s,[^/]+/,../,g' <<<"${module_dir}" )" + sed -r -i -e "s:^gitdir\: $(pwd)/:gitdir\: "${relative_dir}":" "${module_dir}/.git" + done +fi + +popd >/dev/null + +# Generate the archive. +# We do not want the .git dir; we keep other .git files, in case they are the +# only files in their directory. +# The .git dir would generate non reproducible tarballs as it depends on +# the state of the remote server. It also would generate large tarballs +# (gigabytes for some linux trees) when a full clone took place. +mk_tar_gz "${git_cache}" "${basename}" "${date}" "${output}" ".git/*" diff --git a/support/download/helpers b/support/download/helpers new file mode 100755 index 00000000..40d5eea5 --- /dev/null +++ b/support/download/helpers @@ -0,0 +1,76 @@ +# Generate a reproducible archive from the content of a directory +# +# $1 : input directory +# $2 : leading component in archive +# $3 : ISO8601 date: YYYY-MM-DDThh:mm:ssZZ +# $4 : output file +# $5... : globs of filenames to exclude from the archive, suitable for +# find's -path option, and relative to the input directory $1 +# +# Notes : +# - the timestamp is internally rounded to the highest entire second +# less than or equal to the timestamp (i.e. any sub-second fractional +# part is ignored) +# - must not be called with CWD as, or below, the input directory +# - some temporary files are created in CWD, and removed at the end +# +# Example: +# $ find /path/to/temp/dir +# /path/to/temp/dir/ +# /path/to/temp/dir/some-file +# /path/to/temp/dir/some-dir/ +# /path/to/temp/dir/some-dir/some-other-file +# +# $ mk_tar_gz /path/to/some/dir \ +# foo_bar-1.2.3 \ +# 1970-01-01T00:00:00Z \ +# /path/to/foo.tar.gz \ +# '.git/*' '.svn/*' +# +# $ tar tzf /path/to/foo.tar.gz +# foo_bar-1.2.3/some-file +# foo_bar-1.2.3/some-dir/some-other-file +# +mk_tar_gz() { + local in_dir="${1}" + local base_dir="${2}" + local date="${3}" + local out="${4}" + shift 4 + local glob tmp pax_options + local -a find_opts + + for glob; do + find_opts+=( -or -path "./${glob#./}" ) + done + + # Drop sub-second precision to play nice with GNU tar's valid_timespec check + date="$(date -d "${date}" -u +%Y-%m-%dT%H:%M:%S+00:00)" + + pax_options="delete=atime,delete=ctime,delete=mtime" + pax_options+=",exthdr.name=%d/PaxHeaders/%f,exthdr.mtime={${date}}" + + tmp="$(mktemp --tmpdir="$(pwd)")" + pushd "${in_dir}" >/dev/null + + # Establish list + find . -not -type d -and -not \( -false "${find_opts[@]}" \) >"${tmp}.list" + # Sort list for reproducibility + LC_ALL=C sort <"${tmp}.list" >"${tmp}.sorted" + + # Create POSIX tarballs, since that's the format the most reproducible + tar cf - --transform="s#^\./#${base_dir}/#S" \ + --numeric-owner --owner=0 --group=0 --mtime="${date}" \ + --format=posix --pax-option="${pax_options}" \ + -T "${tmp}.sorted" >"${tmp}.tar" + + # Compress the archive + gzip -6 -n <"${tmp}.tar" >"${out}" + + rm -f "${tmp}"{.list,.sorted,.tar} + + popd >/dev/null +} + +# Keep this line and the following as last lines in this file. +# vim: ft=bash diff --git a/support/download/hg b/support/download/hg new file mode 100755 index 00000000..efb515fc --- /dev/null +++ b/support/download/hg @@ -0,0 +1,43 @@ +#!/usr/bin/env bash + +# We want to catch any unexpected failure, and exit immediately +set -e + +# Download helper for hg, to be called from the download wrapper script +# +# Options: +# -q Be quiet. +# -o FILE Generate archive in FILE. +# -u URI Clone from repository at URI. +# -c CSET Use changeset (or revision) CSET. +# -n NAME Use basename NAME. +# +# Environment: +# HG : the hg command to call + +verbose= +while getopts "${BR_BACKEND_DL_GETOPTS}" OPT; do + case "${OPT}" in + q) verbose=-q;; + o) output="${OPTARG}";; + u) uri="${OPTARG}";; + c) cset="${OPTARG}";; + n) basename="${OPTARG}";; + :) printf "option '%s' expects a mandatory argument\n" "${OPTARG}"; exit 1;; + \?) printf "unknown option '%s'\n" "${OPTARG}" >&2; exit 1;; + esac +done + +shift $((OPTIND-1)) # Get rid of our options + +# Caller needs to single-quote its arguments to prevent them from +# being expanded a second time (in case there are spaces in them) +_hg() { + eval ${HG} "${@}" +} + +_hg clone ${verbose} "${@}" --noupdate "'${uri}'" "'${basename}'" + +_hg archive ${verbose} --repository "'${basename}'" --type tgz \ + --prefix "'${basename}'" --rev "'${cset}'" \ + - >"${output}" diff --git a/support/download/scp b/support/download/scp new file mode 100755 index 00000000..80cf495c --- /dev/null +++ b/support/download/scp @@ -0,0 +1,40 @@ +#!/usr/bin/env bash + +# We want to catch any unexpected failure, and exit immediately +set -e + +# Download helper for scp, to be called from the download wrapper script +# +# Options: +# -q Be quiet. +# -o FILE Copy to local file FILE. +# -f FILE Copy from remote file FILE. +# -u URI Download file at URI. +# +# Environment: +# SCP : the scp command to call + +verbose= +while getopts "${BR_BACKEND_DL_GETOPTS}" OPT; do + case "${OPT}" in + q) verbose=-q;; + o) output="${OPTARG}";; + f) filename="${OPTARG}";; + u) uri="${OPTARG}";; + :) printf "option '%s' expects a mandatory argument\n" "${OPTARG}"; exit 1;; + \?) printf "unknown option '%s'\n" "${OPTARG}" >&2; exit 1;; + esac +done + +shift $((OPTIND-1)) # Get rid of our options + +# Caller needs to single-quote its arguments to prevent them from +# being expanded a second time (in case there are spaces in them) +_scp() { + eval ${SCP} "${@}" +} + +# Remove any scheme prefix +uri="${uri##scp://}" + +_scp ${verbose} "${@}" "'${uri}/${filename}'" "'${output}'" diff --git a/support/download/svn b/support/download/svn new file mode 100755 index 00000000..75bf9ab3 --- /dev/null +++ b/support/download/svn @@ -0,0 +1,60 @@ +#!/usr/bin/env bash + +# NOTE: if the output of this backend has to change (e.g. we change what gets +# included in the archive, or we change the format of the archive (e.g. tar +# options, compression ratio or method)), we MUST update the format version +# in the variable BR_FTM_VERSION_svn, in package/pkg-download.mk. + +# We want to catch any unexpected failure, and exit immediately +set -e + +# Download helper for svn, to be called from the download wrapper script +# +# Options: +# -q Be quiet. +# -o FILE Generate archive in FILE. +# -u URI Checkout from repository at URI. +# -c REV Use revision REV. +# -n NAME Use basename NAME. +# +# Environment: +# SVN : the svn command to call + +. "${0%/*}/helpers" + +verbose= +while getopts "${BR_BACKEND_DL_GETOPTS}" OPT; do + case "${OPT}" in + q) verbose=-q;; + o) output="${OPTARG}";; + u) uri="${OPTARG}";; + c) rev="${OPTARG}";; + n) basename="${OPTARG}";; + :) printf "option '%s' expects a mandatory argument\n" "${OPTARG}"; exit 1;; + \?) printf "unknown option '%s'\n" "${OPTARG}" >&2; exit 1;; + esac +done + +shift $((OPTIND-1)) # Get rid of our options + +# Caller needs to single-quote its arguments to prevent them from +# being expanded a second time (in case there are spaces in them) +_svn() { + eval ${SVN} "${@}" +} + +_svn export --ignore-keywords ${verbose} "${@}" "'${uri}@${rev}'" "'${basename}'" + +# Get the date of the revision, to generate reproducible archives. +# The output format is YYYY-MM-DDTHH:MM:SS.mmmuuuZ (i.e. always in the +# UTC timezone), which we can feed as-is to the --mtime option for tar. +# In case there is a redirection (e.g. http -> https), just keep the +# last line (svn outputs everything on stdout) +date="$( _svn info "'${uri}@${rev}'" \ + |sed -r -e '/^Last Changed Date: /!d; s///' + )" + +# Generate the archive. +# We did a 'svn export' above, so it's not a working copy (there is no .svn +# directory or file to ignore). +mk_tar_gz "${basename}" "${basename}" "${date}" "${output}" diff --git a/support/download/wget b/support/download/wget new file mode 100755 index 00000000..c69e6071 --- /dev/null +++ b/support/download/wget @@ -0,0 +1,43 @@ +#!/usr/bin/env bash + +# We want to catch any unexpected failure, and exit immediately +set -e + +# Download helper for wget, to be called from the download wrapper script +# +# Options: +# -q Be quiet. +# -o FILE Save into file FILE. +# -f FILENAME The filename of the tarball to get at URL +# -u URL Download file at URL. +# -e ENCODE Tell wget to urlencode the filename passed to it +# +# Environment: +# WGET : the wget command to call + +verbose= +while getopts "${BR_BACKEND_DL_GETOPTS}" OPT; do + case "${OPT}" in + q) verbose=-q;; + o) output="${OPTARG}";; + f) filename="${OPTARG}";; + u) url="${OPTARG}";; + e) encode="-e";; + :) printf "option '%s' expects a mandatory argument\n" "${OPTARG}"; exit 1;; + \?) printf "unknown option '%s'\n" "${OPTARG}" >&2; exit 1;; + esac +done + +shift $((OPTIND-1)) # Get rid of our options + +# Caller needs to single-quote its arguments to prevent them from +# being expanded a second time (in case there are spaces in them) +_wget() { + eval ${WGET} "${@}" +} + +# Replace every '?' with '%3F' in the filename; only for the PRIMARY and BACKUP +# mirror +[ -n "${encode}" ] && filename=${filename//\?/%3F} + +_wget ${verbose} "${@}" -O "'${output}'" "'${url}/${filename}'" diff --git a/support/gnuconfig/README.buildroot b/support/gnuconfig/README.buildroot new file mode 100644 index 00000000..952eea8b --- /dev/null +++ b/support/gnuconfig/README.buildroot @@ -0,0 +1,21 @@ +--- HOWTO --- +If your package uses config.guess and/or config.sub, then it probably +relies on the autotools as its build system. In this case, you should +use the autotools-package infrastructure, which will take care of updating +the config.guess and/or config.sub files appropriately. See the +Buildroot documentation for details about the autotools-package +infrastructure. + +If for some reason your package does not use the autotools-package +infrastructure, you can request the config.guess and/or config.sub +files of your package to be updated by using: + +_POST_PATCH_HOOKS += UPDATE_CONFIG_HOOK + +--- UPDATE --- +Run the script 'update' in this directory, and commit the result. + +The current Buildroot version is based on this commit of the config.git +repository (leave alone on its own line, the script updates it): + +d7a4dee7cc25e332b990d0a6d9f0ddd42cb33cf5 diff --git a/support/gnuconfig/config.guess b/support/gnuconfig/config.guess new file mode 100755 index 00000000..70806849 --- /dev/null +++ b/support/gnuconfig/config.guess @@ -0,0 +1,1483 @@ +#! /bin/sh +# Attempt to guess a canonical system name. +# Copyright 1992-2018 Free Software Foundation, Inc. + +timestamp='2018-02-24' + +# This file 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 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, see . +# +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that +# program. This Exception is an additional permission under section 7 +# of the GNU General Public License, version 3 ("GPLv3"). +# +# Originally written by Per Bothner; maintained since 2000 by Ben Elliston. +# +# You can get the latest version of this script from: +# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess +# +# Please send patches to . + + +me=`echo "$0" | sed -e 's,.*/,,'` + +usage="\ +Usage: $0 [OPTION] + +Output the configuration name of the system \`$me' is run on. + +Options: + -h, --help print this help, then exit + -t, --time-stamp print date of last modification, then exit + -v, --version print version number, then exit + +Report bugs and patches to ." + +version="\ +GNU config.guess ($timestamp) + +Originally written by Per Bothner. +Copyright 1992-2018 Free Software Foundation, Inc. + +This is free software; see the source for copying conditions. There is NO +warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." + +help=" +Try \`$me --help' for more information." + +# Parse command line +while test $# -gt 0 ; do + case $1 in + --time-stamp | --time* | -t ) + echo "$timestamp" ; exit ;; + --version | -v ) + echo "$version" ; exit ;; + --help | --h* | -h ) + echo "$usage"; exit ;; + -- ) # Stop option processing + shift; break ;; + - ) # Use stdin as input. + break ;; + -* ) + echo "$me: invalid option $1$help" >&2 + exit 1 ;; + * ) + break ;; + esac +done + +if test $# != 0; then + echo "$me: too many arguments$help" >&2 + exit 1 +fi + +trap 'exit 1' 1 2 15 + +# CC_FOR_BUILD -- compiler used by this script. Note that the use of a +# compiler to aid in system detection is discouraged as it requires +# temporary files to be created and, as you can see below, it is a +# headache to deal with in a portable fashion. + +# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still +# use `HOST_CC' if defined, but it is deprecated. + +# Portable tmp directory creation inspired by the Autoconf team. + +set_cc_for_build=' +trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; +trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; +: ${TMPDIR=/tmp} ; + { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || + { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || + { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || + { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; +dummy=$tmp/dummy ; +tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; +case $CC_FOR_BUILD,$HOST_CC,$CC in + ,,) echo "int x;" > "$dummy.c" ; + for c in cc gcc c89 c99 ; do + if ($c -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then + CC_FOR_BUILD="$c"; break ; + fi ; + done ; + if test x"$CC_FOR_BUILD" = x ; then + CC_FOR_BUILD=no_compiler_found ; + fi + ;; + ,,*) CC_FOR_BUILD=$CC ;; + ,*,*) CC_FOR_BUILD=$HOST_CC ;; +esac ; set_cc_for_build= ;' + +# This is needed to find uname on a Pyramid OSx when run in the BSD universe. +# (ghazi@noc.rutgers.edu 1994-08-24) +if (test -f /.attbin/uname) >/dev/null 2>&1 ; then + PATH=$PATH:/.attbin ; export PATH +fi + +UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown +UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown +UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown +UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown + +case "$UNAME_SYSTEM" in +Linux|GNU|GNU/*) + # If the system lacks a compiler, then just pick glibc. + # We could probably try harder. + LIBC=gnu + + eval "$set_cc_for_build" + cat <<-EOF > "$dummy.c" + #include + #if defined(__UCLIBC__) + LIBC=uclibc + #elif defined(__dietlibc__) + LIBC=dietlibc + #else + LIBC=gnu + #endif + EOF + eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`" + + # If ldd exists, use it to detect musl libc. + if command -v ldd >/dev/null && \ + ldd --version 2>&1 | grep -q ^musl + then + LIBC=musl + fi + ;; +esac + +# Note: order is significant - the case branches are not exclusive. + +case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in + *:NetBSD:*:*) + # NetBSD (nbsd) targets should (where applicable) match one or + # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, + # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently + # switched to ELF, *-*-netbsd* would select the old + # object file format. This provides both forward + # compatibility and a consistent mechanism for selecting the + # object file format. + # + # Note: NetBSD doesn't particularly care about the vendor + # portion of the name. We always set it to "unknown". + sysctl="sysctl -n hw.machine_arch" + UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \ + "/sbin/$sysctl" 2>/dev/null || \ + "/usr/sbin/$sysctl" 2>/dev/null || \ + echo unknown)` + case "$UNAME_MACHINE_ARCH" in + armeb) machine=armeb-unknown ;; + arm*) machine=arm-unknown ;; + sh3el) machine=shl-unknown ;; + sh3eb) machine=sh-unknown ;; + sh5el) machine=sh5le-unknown ;; + earmv*) + arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'` + endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'` + machine="${arch}${endian}"-unknown + ;; + *) machine="$UNAME_MACHINE_ARCH"-unknown ;; + esac + # The Operating System including object format, if it has switched + # to ELF recently (or will in the future) and ABI. + case "$UNAME_MACHINE_ARCH" in + earm*) + os=netbsdelf + ;; + arm*|i386|m68k|ns32k|sh3*|sparc|vax) + eval "$set_cc_for_build" + if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep -q __ELF__ + then + # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). + # Return netbsd for either. FIX? + os=netbsd + else + os=netbsdelf + fi + ;; + *) + os=netbsd + ;; + esac + # Determine ABI tags. + case "$UNAME_MACHINE_ARCH" in + earm*) + expr='s/^earmv[0-9]/-eabi/;s/eb$//' + abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"` + ;; + esac + # The OS release + # Debian GNU/NetBSD machines have a different userland, and + # thus, need a distinct triplet. However, they do not need + # kernel version information, so it can be replaced with a + # suitable tag, in the style of linux-gnu. + case "$UNAME_VERSION" in + Debian*) + release='-gnu' + ;; + *) + release=`echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2` + ;; + esac + # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: + # contains redundant information, the shorter form: + # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. + echo "$machine-${os}${release}${abi}" + exit ;; + *:Bitrig:*:*) + UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` + echo "$UNAME_MACHINE_ARCH"-unknown-bitrig"$UNAME_RELEASE" + exit ;; + *:OpenBSD:*:*) + UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` + echo "$UNAME_MACHINE_ARCH"-unknown-openbsd"$UNAME_RELEASE" + exit ;; + *:LibertyBSD:*:*) + UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'` + echo "$UNAME_MACHINE_ARCH"-unknown-libertybsd"$UNAME_RELEASE" + exit ;; + *:MidnightBSD:*:*) + echo "$UNAME_MACHINE"-unknown-midnightbsd"$UNAME_RELEASE" + exit ;; + *:ekkoBSD:*:*) + echo "$UNAME_MACHINE"-unknown-ekkobsd"$UNAME_RELEASE" + exit ;; + *:SolidBSD:*:*) + echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE" + exit ;; + macppc:MirBSD:*:*) + echo powerpc-unknown-mirbsd"$UNAME_RELEASE" + exit ;; + *:MirBSD:*:*) + echo "$UNAME_MACHINE"-unknown-mirbsd"$UNAME_RELEASE" + exit ;; + *:Sortix:*:*) + echo "$UNAME_MACHINE"-unknown-sortix + exit ;; + *:Redox:*:*) + echo "$UNAME_MACHINE"-unknown-redox + exit ;; + mips:OSF1:*.*) + echo mips-dec-osf1 + exit ;; + alpha:OSF1:*:*) + case $UNAME_RELEASE in + *4.0) + UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` + ;; + *5.*) + UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` + ;; + esac + # According to Compaq, /usr/sbin/psrinfo has been available on + # OSF/1 and Tru64 systems produced since 1995. I hope that + # covers most systems running today. This code pipes the CPU + # types through head -n 1, so we only detect the type of CPU 0. + ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` + case "$ALPHA_CPU_TYPE" in + "EV4 (21064)") + UNAME_MACHINE=alpha ;; + "EV4.5 (21064)") + UNAME_MACHINE=alpha ;; + "LCA4 (21066/21068)") + UNAME_MACHINE=alpha ;; + "EV5 (21164)") + UNAME_MACHINE=alphaev5 ;; + "EV5.6 (21164A)") + UNAME_MACHINE=alphaev56 ;; + "EV5.6 (21164PC)") + UNAME_MACHINE=alphapca56 ;; + "EV5.7 (21164PC)") + UNAME_MACHINE=alphapca57 ;; + "EV6 (21264)") + UNAME_MACHINE=alphaev6 ;; + "EV6.7 (21264A)") + UNAME_MACHINE=alphaev67 ;; + "EV6.8CB (21264C)") + UNAME_MACHINE=alphaev68 ;; + "EV6.8AL (21264B)") + UNAME_MACHINE=alphaev68 ;; + "EV6.8CX (21264D)") + UNAME_MACHINE=alphaev68 ;; + "EV6.9A (21264/EV69A)") + UNAME_MACHINE=alphaev69 ;; + "EV7 (21364)") + UNAME_MACHINE=alphaev7 ;; + "EV7.9 (21364A)") + UNAME_MACHINE=alphaev79 ;; + esac + # A Pn.n version is a patched version. + # A Vn.n version is a released version. + # A Tn.n version is a released field test version. + # A Xn.n version is an unreleased experimental baselevel. + # 1.2 uses "1.2" for uname -r. + echo "$UNAME_MACHINE"-dec-osf"`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`" + # Reset EXIT trap before exiting to avoid spurious non-zero exit code. + exitcode=$? + trap '' 0 + exit $exitcode ;; + Amiga*:UNIX_System_V:4.0:*) + echo m68k-unknown-sysv4 + exit ;; + *:[Aa]miga[Oo][Ss]:*:*) + echo "$UNAME_MACHINE"-unknown-amigaos + exit ;; + *:[Mm]orph[Oo][Ss]:*:*) + echo "$UNAME_MACHINE"-unknown-morphos + exit ;; + *:OS/390:*:*) + echo i370-ibm-openedition + exit ;; + *:z/VM:*:*) + echo s390-ibm-zvmoe + exit ;; + *:OS400:*:*) + echo powerpc-ibm-os400 + exit ;; + arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) + echo arm-acorn-riscix"$UNAME_RELEASE" + exit ;; + arm*:riscos:*:*|arm*:RISCOS:*:*) + echo arm-unknown-riscos + exit ;; + SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) + echo hppa1.1-hitachi-hiuxmpp + exit ;; + Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) + # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. + if test "`(/bin/universe) 2>/dev/null`" = att ; then + echo pyramid-pyramid-sysv3 + else + echo pyramid-pyramid-bsd + fi + exit ;; + NILE*:*:*:dcosx) + echo pyramid-pyramid-svr4 + exit ;; + DRS?6000:unix:4.0:6*) + echo sparc-icl-nx6 + exit ;; + DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) + case `/usr/bin/uname -p` in + sparc) echo sparc-icl-nx7; exit ;; + esac ;; + s390x:SunOS:*:*) + echo "$UNAME_MACHINE"-ibm-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`" + exit ;; + sun4H:SunOS:5.*:*) + echo sparc-hal-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" + exit ;; + sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) + echo sparc-sun-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`" + exit ;; + i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) + echo i386-pc-auroraux"$UNAME_RELEASE" + exit ;; + i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) + eval "$set_cc_for_build" + SUN_ARCH=i386 + # If there is a compiler, see if it is configured for 64-bit objects. + # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. + # This test works for both compilers. + if [ "$CC_FOR_BUILD" != no_compiler_found ]; then + if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ + (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ + grep IS_64BIT_ARCH >/dev/null + then + SUN_ARCH=x86_64 + fi + fi + echo "$SUN_ARCH"-pc-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" + exit ;; + sun4*:SunOS:6*:*) + # According to config.sub, this is the proper way to canonicalize + # SunOS6. Hard to guess exactly what SunOS6 will be like, but + # it's likely to be more like Solaris than SunOS4. + echo sparc-sun-solaris3"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" + exit ;; + sun4*:SunOS:*:*) + case "`/usr/bin/arch -k`" in + Series*|S4*) + UNAME_RELEASE=`uname -v` + ;; + esac + # Japanese Language versions have a version number like `4.1.3-JL'. + echo sparc-sun-sunos"`echo "$UNAME_RELEASE"|sed -e 's/-/_/'`" + exit ;; + sun3*:SunOS:*:*) + echo m68k-sun-sunos"$UNAME_RELEASE" + exit ;; + sun*:*:4.2BSD:*) + UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` + test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3 + case "`/bin/arch`" in + sun3) + echo m68k-sun-sunos"$UNAME_RELEASE" + ;; + sun4) + echo sparc-sun-sunos"$UNAME_RELEASE" + ;; + esac + exit ;; + aushp:SunOS:*:*) + echo sparc-auspex-sunos"$UNAME_RELEASE" + exit ;; + # The situation for MiNT is a little confusing. The machine name + # can be virtually everything (everything which is not + # "atarist" or "atariste" at least should have a processor + # > m68000). The system name ranges from "MiNT" over "FreeMiNT" + # to the lowercase version "mint" (or "freemint"). Finally + # the system name "TOS" denotes a system which is actually not + # MiNT. But MiNT is downward compatible to TOS, so this should + # be no problem. + atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) + echo m68k-atari-mint"$UNAME_RELEASE" + exit ;; + atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) + echo m68k-atari-mint"$UNAME_RELEASE" + exit ;; + *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) + echo m68k-atari-mint"$UNAME_RELEASE" + exit ;; + milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) + echo m68k-milan-mint"$UNAME_RELEASE" + exit ;; + hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) + echo m68k-hades-mint"$UNAME_RELEASE" + exit ;; + *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) + echo m68k-unknown-mint"$UNAME_RELEASE" + exit ;; + m68k:machten:*:*) + echo m68k-apple-machten"$UNAME_RELEASE" + exit ;; + powerpc:machten:*:*) + echo powerpc-apple-machten"$UNAME_RELEASE" + exit ;; + RISC*:Mach:*:*) + echo mips-dec-mach_bsd4.3 + exit ;; + RISC*:ULTRIX:*:*) + echo mips-dec-ultrix"$UNAME_RELEASE" + exit ;; + VAX*:ULTRIX*:*:*) + echo vax-dec-ultrix"$UNAME_RELEASE" + exit ;; + 2020:CLIX:*:* | 2430:CLIX:*:*) + echo clipper-intergraph-clix"$UNAME_RELEASE" + exit ;; + mips:*:*:UMIPS | mips:*:*:RISCos) + eval "$set_cc_for_build" + sed 's/^ //' << EOF > "$dummy.c" +#ifdef __cplusplus +#include /* for printf() prototype */ + int main (int argc, char *argv[]) { +#else + int main (argc, argv) int argc; char *argv[]; { +#endif + #if defined (host_mips) && defined (MIPSEB) + #if defined (SYSTYPE_SYSV) + printf ("mips-mips-riscos%ssysv\\n", argv[1]); exit (0); + #endif + #if defined (SYSTYPE_SVR4) + printf ("mips-mips-riscos%ssvr4\\n", argv[1]); exit (0); + #endif + #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) + printf ("mips-mips-riscos%sbsd\\n", argv[1]); exit (0); + #endif + #endif + exit (-1); + } +EOF + $CC_FOR_BUILD -o "$dummy" "$dummy.c" && + dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` && + SYSTEM_NAME=`"$dummy" "$dummyarg"` && + { echo "$SYSTEM_NAME"; exit; } + echo mips-mips-riscos"$UNAME_RELEASE" + exit ;; + Motorola:PowerMAX_OS:*:*) + echo powerpc-motorola-powermax + exit ;; + Motorola:*:4.3:PL8-*) + echo powerpc-harris-powermax + exit ;; + Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) + echo powerpc-harris-powermax + exit ;; + Night_Hawk:Power_UNIX:*:*) + echo powerpc-harris-powerunix + exit ;; + m88k:CX/UX:7*:*) + echo m88k-harris-cxux7 + exit ;; + m88k:*:4*:R4*) + echo m88k-motorola-sysv4 + exit ;; + m88k:*:3*:R3*) + echo m88k-motorola-sysv3 + exit ;; + AViiON:dgux:*:*) + # DG/UX returns AViiON for all architectures + UNAME_PROCESSOR=`/usr/bin/uname -p` + if [ "$UNAME_PROCESSOR" = mc88100 ] || [ "$UNAME_PROCESSOR" = mc88110 ] + then + if [ "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx ] || \ + [ "$TARGET_BINARY_INTERFACE"x = x ] + then + echo m88k-dg-dgux"$UNAME_RELEASE" + else + echo m88k-dg-dguxbcs"$UNAME_RELEASE" + fi + else + echo i586-dg-dgux"$UNAME_RELEASE" + fi + exit ;; + M88*:DolphinOS:*:*) # DolphinOS (SVR3) + echo m88k-dolphin-sysv3 + exit ;; + M88*:*:R3*:*) + # Delta 88k system running SVR3 + echo m88k-motorola-sysv3 + exit ;; + XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) + echo m88k-tektronix-sysv3 + exit ;; + Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) + echo m68k-tektronix-bsd + exit ;; + *:IRIX*:*:*) + echo mips-sgi-irix"`echo "$UNAME_RELEASE"|sed -e 's/-/_/g'`" + exit ;; + ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. + echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id + exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' + i*86:AIX:*:*) + echo i386-ibm-aix + exit ;; + ia64:AIX:*:*) + if [ -x /usr/bin/oslevel ] ; then + IBM_REV=`/usr/bin/oslevel` + else + IBM_REV="$UNAME_VERSION.$UNAME_RELEASE" + fi + echo "$UNAME_MACHINE"-ibm-aix"$IBM_REV" + exit ;; + *:AIX:2:3) + if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then + eval "$set_cc_for_build" + sed 's/^ //' << EOF > "$dummy.c" + #include + + main() + { + if (!__power_pc()) + exit(1); + puts("powerpc-ibm-aix3.2.5"); + exit(0); + } +EOF + if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` + then + echo "$SYSTEM_NAME" + else + echo rs6000-ibm-aix3.2.5 + fi + elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then + echo rs6000-ibm-aix3.2.4 + else + echo rs6000-ibm-aix3.2 + fi + exit ;; + *:AIX:*:[4567]) + IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` + if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then + IBM_ARCH=rs6000 + else + IBM_ARCH=powerpc + fi + if [ -x /usr/bin/lslpp ] ; then + IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | + awk -F: '{ print $3 }' | sed s/[0-9]*$/0/` + else + IBM_REV="$UNAME_VERSION.$UNAME_RELEASE" + fi + echo "$IBM_ARCH"-ibm-aix"$IBM_REV" + exit ;; + *:AIX:*:*) + echo rs6000-ibm-aix + exit ;; + ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*) + echo romp-ibm-bsd4.4 + exit ;; + ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and + echo romp-ibm-bsd"$UNAME_RELEASE" # 4.3 with uname added to + exit ;; # report: romp-ibm BSD 4.3 + *:BOSX:*:*) + echo rs6000-bull-bosx + exit ;; + DPX/2?00:B.O.S.:*:*) + echo m68k-bull-sysv3 + exit ;; + 9000/[34]??:4.3bsd:1.*:*) + echo m68k-hp-bsd + exit ;; + hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) + echo m68k-hp-bsd4.4 + exit ;; + 9000/[34678]??:HP-UX:*:*) + HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'` + case "$UNAME_MACHINE" in + 9000/31?) HP_ARCH=m68000 ;; + 9000/[34]??) HP_ARCH=m68k ;; + 9000/[678][0-9][0-9]) + if [ -x /usr/bin/getconf ]; then + sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` + sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` + case "$sc_cpu_version" in + 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0 + 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1 + 532) # CPU_PA_RISC2_0 + case "$sc_kernel_bits" in + 32) HP_ARCH=hppa2.0n ;; + 64) HP_ARCH=hppa2.0w ;; + '') HP_ARCH=hppa2.0 ;; # HP-UX 10.20 + esac ;; + esac + fi + if [ "$HP_ARCH" = "" ]; then + eval "$set_cc_for_build" + sed 's/^ //' << EOF > "$dummy.c" + + #define _HPUX_SOURCE + #include + #include + + int main () + { + #if defined(_SC_KERNEL_BITS) + long bits = sysconf(_SC_KERNEL_BITS); + #endif + long cpu = sysconf (_SC_CPU_VERSION); + + switch (cpu) + { + case CPU_PA_RISC1_0: puts ("hppa1.0"); break; + case CPU_PA_RISC1_1: puts ("hppa1.1"); break; + case CPU_PA_RISC2_0: + #if defined(_SC_KERNEL_BITS) + switch (bits) + { + case 64: puts ("hppa2.0w"); break; + case 32: puts ("hppa2.0n"); break; + default: puts ("hppa2.0"); break; + } break; + #else /* !defined(_SC_KERNEL_BITS) */ + puts ("hppa2.0"); break; + #endif + default: puts ("hppa1.0"); break; + } + exit (0); + } +EOF + (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"` + test -z "$HP_ARCH" && HP_ARCH=hppa + fi ;; + esac + if [ "$HP_ARCH" = hppa2.0w ] + then + eval "$set_cc_for_build" + + # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating + # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler + # generating 64-bit code. GNU and HP use different nomenclature: + # + # $ CC_FOR_BUILD=cc ./config.guess + # => hppa2.0w-hp-hpux11.23 + # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess + # => hppa64-hp-hpux11.23 + + if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | + grep -q __LP64__ + then + HP_ARCH=hppa2.0w + else + HP_ARCH=hppa64 + fi + fi + echo "$HP_ARCH"-hp-hpux"$HPUX_REV" + exit ;; + ia64:HP-UX:*:*) + HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'` + echo ia64-hp-hpux"$HPUX_REV" + exit ;; + 3050*:HI-UX:*:*) + eval "$set_cc_for_build" + sed 's/^ //' << EOF > "$dummy.c" + #include + int + main () + { + long cpu = sysconf (_SC_CPU_VERSION); + /* The order matters, because CPU_IS_HP_MC68K erroneously returns + true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct + results, however. */ + if (CPU_IS_PA_RISC (cpu)) + { + switch (cpu) + { + case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; + case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; + case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; + default: puts ("hppa-hitachi-hiuxwe2"); break; + } + } + else if (CPU_IS_HP_MC68K (cpu)) + puts ("m68k-hitachi-hiuxwe2"); + else puts ("unknown-hitachi-hiuxwe2"); + exit (0); + } +EOF + $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` && + { echo "$SYSTEM_NAME"; exit; } + echo unknown-hitachi-hiuxwe2 + exit ;; + 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*) + echo hppa1.1-hp-bsd + exit ;; + 9000/8??:4.3bsd:*:*) + echo hppa1.0-hp-bsd + exit ;; + *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) + echo hppa1.0-hp-mpeix + exit ;; + hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*) + echo hppa1.1-hp-osf + exit ;; + hp8??:OSF1:*:*) + echo hppa1.0-hp-osf + exit ;; + i*86:OSF1:*:*) + if [ -x /usr/sbin/sysversion ] ; then + echo "$UNAME_MACHINE"-unknown-osf1mk + else + echo "$UNAME_MACHINE"-unknown-osf1 + fi + exit ;; + parisc*:Lites*:*:*) + echo hppa1.1-hp-lites + exit ;; + C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) + echo c1-convex-bsd + exit ;; + C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) + if getsysinfo -f scalar_acc + then echo c32-convex-bsd + else echo c2-convex-bsd + fi + exit ;; + C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) + echo c34-convex-bsd + exit ;; + C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) + echo c38-convex-bsd + exit ;; + C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) + echo c4-convex-bsd + exit ;; + CRAY*Y-MP:*:*:*) + echo ymp-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' + exit ;; + CRAY*[A-Z]90:*:*:*) + echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \ + | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ + -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ + -e 's/\.[^.]*$/.X/' + exit ;; + CRAY*TS:*:*:*) + echo t90-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' + exit ;; + CRAY*T3E:*:*:*) + echo alphaev5-cray-unicosmk"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' + exit ;; + CRAY*SV1:*:*:*) + echo sv1-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' + exit ;; + *:UNICOS/mp:*:*) + echo craynv-cray-unicosmp"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' + exit ;; + F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) + FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` + FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` + FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'` + echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" + exit ;; + 5000:UNIX_System_V:4.*:*) + FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` + FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'` + echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" + exit ;; + i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) + echo "$UNAME_MACHINE"-pc-bsdi"$UNAME_RELEASE" + exit ;; + sparc*:BSD/OS:*:*) + echo sparc-unknown-bsdi"$UNAME_RELEASE" + exit ;; + *:BSD/OS:*:*) + echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE" + exit ;; + *:FreeBSD:*:*) + UNAME_PROCESSOR=`/usr/bin/uname -p` + case "$UNAME_PROCESSOR" in + amd64) + UNAME_PROCESSOR=x86_64 ;; + i386) + UNAME_PROCESSOR=i586 ;; + esac + echo "$UNAME_PROCESSOR"-unknown-freebsd"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`" + exit ;; + i*:CYGWIN*:*) + echo "$UNAME_MACHINE"-pc-cygwin + exit ;; + *:MINGW64*:*) + echo "$UNAME_MACHINE"-pc-mingw64 + exit ;; + *:MINGW*:*) + echo "$UNAME_MACHINE"-pc-mingw32 + exit ;; + *:MSYS*:*) + echo "$UNAME_MACHINE"-pc-msys + exit ;; + i*:PW*:*) + echo "$UNAME_MACHINE"-pc-pw32 + exit ;; + *:Interix*:*) + case "$UNAME_MACHINE" in + x86) + echo i586-pc-interix"$UNAME_RELEASE" + exit ;; + authenticamd | genuineintel | EM64T) + echo x86_64-unknown-interix"$UNAME_RELEASE" + exit ;; + IA64) + echo ia64-unknown-interix"$UNAME_RELEASE" + exit ;; + esac ;; + i*:UWIN*:*) + echo "$UNAME_MACHINE"-pc-uwin + exit ;; + amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) + echo x86_64-unknown-cygwin + exit ;; + prep*:SunOS:5.*:*) + echo powerpcle-unknown-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" + exit ;; + *:GNU:*:*) + # the GNU system + echo "`echo "$UNAME_MACHINE"|sed -e 's,[-/].*$,,'`-unknown-$LIBC`echo "$UNAME_RELEASE"|sed -e 's,/.*$,,'`" + exit ;; + *:GNU/*:*:*) + # other systems with GNU libc and userland + echo "$UNAME_MACHINE-unknown-`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`-$LIBC" + exit ;; + i*86:Minix:*:*) + echo "$UNAME_MACHINE"-pc-minix + exit ;; + aarch64:Linux:*:*) + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" + exit ;; + aarch64_be:Linux:*:*) + UNAME_MACHINE=aarch64_be + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" + exit ;; + alpha:Linux:*:*) + case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in + EV5) UNAME_MACHINE=alphaev5 ;; + EV56) UNAME_MACHINE=alphaev56 ;; + PCA56) UNAME_MACHINE=alphapca56 ;; + PCA57) UNAME_MACHINE=alphapca56 ;; + EV6) UNAME_MACHINE=alphaev6 ;; + EV67) UNAME_MACHINE=alphaev67 ;; + EV68*) UNAME_MACHINE=alphaev68 ;; + esac + objdump --private-headers /bin/sh | grep -q ld.so.1 + if test "$?" = 0 ; then LIBC=gnulibc1 ; fi + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" + exit ;; + arc:Linux:*:* | arceb:Linux:*:*) + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" + exit ;; + arm*:Linux:*:*) + eval "$set_cc_for_build" + if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep -q __ARM_EABI__ + then + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" + else + if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep -q __ARM_PCS_VFP + then + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabi + else + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabihf + fi + fi + exit ;; + avr32*:Linux:*:*) + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" + exit ;; + cris:Linux:*:*) + echo "$UNAME_MACHINE"-axis-linux-"$LIBC" + exit ;; + crisv32:Linux:*:*) + echo "$UNAME_MACHINE"-axis-linux-"$LIBC" + exit ;; + e2k:Linux:*:*) + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" + exit ;; + frv:Linux:*:*) + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" + exit ;; + hexagon:Linux:*:*) + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" + exit ;; + i*86:Linux:*:*) + echo "$UNAME_MACHINE"-pc-linux-"$LIBC" + exit ;; + ia64:Linux:*:*) + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" + exit ;; + loongarch32:Linux:*:* | loongarch64:Linux:*:*) + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" + exit ;; + k1om:Linux:*:*) + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" + exit ;; + m32r*:Linux:*:*) + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" + exit ;; + m68*:Linux:*:*) + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" + exit ;; + mips:Linux:*:* | mips64:Linux:*:*) + eval "$set_cc_for_build" + sed 's/^ //' << EOF > "$dummy.c" + #undef CPU + #undef ${UNAME_MACHINE} + #undef ${UNAME_MACHINE}el + #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) + CPU=${UNAME_MACHINE}el + #else + #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) + CPU=${UNAME_MACHINE} + #else + CPU= + #endif + #endif +EOF + eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU'`" + test "x$CPU" != x && { echo "$CPU-unknown-linux-$LIBC"; exit; } + ;; + mips64el:Linux:*:*) + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" + exit ;; + openrisc*:Linux:*:*) + echo or1k-unknown-linux-"$LIBC" + exit ;; + or32:Linux:*:* | or1k*:Linux:*:*) + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" + exit ;; + padre:Linux:*:*) + echo sparc-unknown-linux-"$LIBC" + exit ;; + parisc64:Linux:*:* | hppa64:Linux:*:*) + echo hppa64-unknown-linux-"$LIBC" + exit ;; + parisc:Linux:*:* | hppa:Linux:*:*) + # Look for CPU level + case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in + PA7*) echo hppa1.1-unknown-linux-"$LIBC" ;; + PA8*) echo hppa2.0-unknown-linux-"$LIBC" ;; + *) echo hppa-unknown-linux-"$LIBC" ;; + esac + exit ;; + ppc64:Linux:*:*) + echo powerpc64-unknown-linux-"$LIBC" + exit ;; + ppc:Linux:*:*) + echo powerpc-unknown-linux-"$LIBC" + exit ;; + ppc64le:Linux:*:*) + echo powerpc64le-unknown-linux-"$LIBC" + exit ;; + ppcle:Linux:*:*) + echo powerpcle-unknown-linux-"$LIBC" + exit ;; + riscv32:Linux:*:* | riscv64:Linux:*:*) + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" + exit ;; + s390:Linux:*:* | s390x:Linux:*:*) + echo "$UNAME_MACHINE"-ibm-linux-"$LIBC" + exit ;; + sh64*:Linux:*:*) + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" + exit ;; + sh*:Linux:*:*) + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" + exit ;; + sparc:Linux:*:* | sparc64:Linux:*:*) + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" + exit ;; + tile*:Linux:*:*) + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" + exit ;; + vax:Linux:*:*) + echo "$UNAME_MACHINE"-dec-linux-"$LIBC" + exit ;; + x86_64:Linux:*:*) + if objdump -f /bin/sh | grep -q elf32-x86-64; then + echo "$UNAME_MACHINE"-pc-linux-"$LIBC"x32 + else + echo "$UNAME_MACHINE"-pc-linux-"$LIBC" + fi + exit ;; + xtensa*:Linux:*:*) + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" + exit ;; + i*86:DYNIX/ptx:4*:*) + # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. + # earlier versions are messed up and put the nodename in both + # sysname and nodename. + echo i386-sequent-sysv4 + exit ;; + i*86:UNIX_SV:4.2MP:2.*) + # Unixware is an offshoot of SVR4, but it has its own version + # number series starting with 2... + # I am not positive that other SVR4 systems won't match this, + # I just have to hope. -- rms. + # Use sysv4.2uw... so that sysv4* matches it. + echo "$UNAME_MACHINE"-pc-sysv4.2uw"$UNAME_VERSION" + exit ;; + i*86:OS/2:*:*) + # If we were able to find `uname', then EMX Unix compatibility + # is probably installed. + echo "$UNAME_MACHINE"-pc-os2-emx + exit ;; + i*86:XTS-300:*:STOP) + echo "$UNAME_MACHINE"-unknown-stop + exit ;; + i*86:atheos:*:*) + echo "$UNAME_MACHINE"-unknown-atheos + exit ;; + i*86:syllable:*:*) + echo "$UNAME_MACHINE"-pc-syllable + exit ;; + i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) + echo i386-unknown-lynxos"$UNAME_RELEASE" + exit ;; + i*86:*DOS:*:*) + echo "$UNAME_MACHINE"-pc-msdosdjgpp + exit ;; + i*86:*:4.*:*) + UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'` + if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then + echo "$UNAME_MACHINE"-univel-sysv"$UNAME_REL" + else + echo "$UNAME_MACHINE"-pc-sysv"$UNAME_REL" + fi + exit ;; + i*86:*:5:[678]*) + # UnixWare 7.x, OpenUNIX and OpenServer 6. + case `/bin/uname -X | grep "^Machine"` in + *486*) UNAME_MACHINE=i486 ;; + *Pentium) UNAME_MACHINE=i586 ;; + *Pent*|*Celeron) UNAME_MACHINE=i686 ;; + esac + echo "$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}{$UNAME_VERSION}" + exit ;; + i*86:*:3.2:*) + if test -f /usr/options/cb.name; then + UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then + UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` + (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 + (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ + && UNAME_MACHINE=i586 + (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ + && UNAME_MACHINE=i686 + (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ + && UNAME_MACHINE=i686 + echo "$UNAME_MACHINE"-pc-sco"$UNAME_REL" + else + echo "$UNAME_MACHINE"-pc-sysv32 + fi + exit ;; + pc:*:*:*) + # Left here for compatibility: + # uname -m prints for DJGPP always 'pc', but it prints nothing about + # the processor, so we play safe by assuming i586. + # Note: whatever this is, it MUST be the same as what config.sub + # prints for the "djgpp" host, or else GDB configure will decide that + # this is a cross-build. + echo i586-pc-msdosdjgpp + exit ;; + Intel:Mach:3*:*) + echo i386-pc-mach3 + exit ;; + paragon:*:*:*) + echo i860-intel-osf1 + exit ;; + i860:*:4.*:*) # i860-SVR4 + if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then + echo i860-stardent-sysv"$UNAME_RELEASE" # Stardent Vistra i860-SVR4 + else # Add other i860-SVR4 vendors below as they are discovered. + echo i860-unknown-sysv"$UNAME_RELEASE" # Unknown i860-SVR4 + fi + exit ;; + mini*:CTIX:SYS*5:*) + # "miniframe" + echo m68010-convergent-sysv + exit ;; + mc68k:UNIX:SYSTEM5:3.51m) + echo m68k-convergent-sysv + exit ;; + M680?0:D-NIX:5.3:*) + echo m68k-diab-dnix + exit ;; + M68*:*:R3V[5678]*:*) + test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; + 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) + OS_REL='' + test -r /etc/.relid \ + && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } + /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ + && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;; + 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && { echo i486-ncr-sysv4; exit; } ;; + NCR*:*:4.2:* | MPRAS*:*:4.2:*) + OS_REL='.3' + test -r /etc/.relid \ + && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } + /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ + && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } + /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ + && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;; + m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) + echo m68k-unknown-lynxos"$UNAME_RELEASE" + exit ;; + mc68030:UNIX_System_V:4.*:*) + echo m68k-atari-sysv4 + exit ;; + TSUNAMI:LynxOS:2.*:*) + echo sparc-unknown-lynxos"$UNAME_RELEASE" + exit ;; + rs6000:LynxOS:2.*:*) + echo rs6000-unknown-lynxos"$UNAME_RELEASE" + exit ;; + PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) + echo powerpc-unknown-lynxos"$UNAME_RELEASE" + exit ;; + SM[BE]S:UNIX_SV:*:*) + echo mips-dde-sysv"$UNAME_RELEASE" + exit ;; + RM*:ReliantUNIX-*:*:*) + echo mips-sni-sysv4 + exit ;; + RM*:SINIX-*:*:*) + echo mips-sni-sysv4 + exit ;; + *:SINIX-*:*:*) + if uname -p 2>/dev/null >/dev/null ; then + UNAME_MACHINE=`(uname -p) 2>/dev/null` + echo "$UNAME_MACHINE"-sni-sysv4 + else + echo ns32k-sni-sysv + fi + exit ;; + PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort + # says + echo i586-unisys-sysv4 + exit ;; + *:UNIX_System_V:4*:FTX*) + # From Gerald Hewes . + # How about differentiating between stratus architectures? -djm + echo hppa1.1-stratus-sysv4 + exit ;; + *:*:*:FTX*) + # From seanf@swdc.stratus.com. + echo i860-stratus-sysv4 + exit ;; + i*86:VOS:*:*) + # From Paul.Green@stratus.com. + echo "$UNAME_MACHINE"-stratus-vos + exit ;; + *:VOS:*:*) + # From Paul.Green@stratus.com. + echo hppa1.1-stratus-vos + exit ;; + mc68*:A/UX:*:*) + echo m68k-apple-aux"$UNAME_RELEASE" + exit ;; + news*:NEWS-OS:6*:*) + echo mips-sony-newsos6 + exit ;; + R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) + if [ -d /usr/nec ]; then + echo mips-nec-sysv"$UNAME_RELEASE" + else + echo mips-unknown-sysv"$UNAME_RELEASE" + fi + exit ;; + BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. + echo powerpc-be-beos + exit ;; + BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. + echo powerpc-apple-beos + exit ;; + BePC:BeOS:*:*) # BeOS running on Intel PC compatible. + echo i586-pc-beos + exit ;; + BePC:Haiku:*:*) # Haiku running on Intel PC compatible. + echo i586-pc-haiku + exit ;; + x86_64:Haiku:*:*) + echo x86_64-unknown-haiku + exit ;; + SX-4:SUPER-UX:*:*) + echo sx4-nec-superux"$UNAME_RELEASE" + exit ;; + SX-5:SUPER-UX:*:*) + echo sx5-nec-superux"$UNAME_RELEASE" + exit ;; + SX-6:SUPER-UX:*:*) + echo sx6-nec-superux"$UNAME_RELEASE" + exit ;; + SX-7:SUPER-UX:*:*) + echo sx7-nec-superux"$UNAME_RELEASE" + exit ;; + SX-8:SUPER-UX:*:*) + echo sx8-nec-superux"$UNAME_RELEASE" + exit ;; + SX-8R:SUPER-UX:*:*) + echo sx8r-nec-superux"$UNAME_RELEASE" + exit ;; + SX-ACE:SUPER-UX:*:*) + echo sxace-nec-superux"$UNAME_RELEASE" + exit ;; + Power*:Rhapsody:*:*) + echo powerpc-apple-rhapsody"$UNAME_RELEASE" + exit ;; + *:Rhapsody:*:*) + echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE" + exit ;; + *:Darwin:*:*) + UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown + eval "$set_cc_for_build" + if test "$UNAME_PROCESSOR" = unknown ; then + UNAME_PROCESSOR=powerpc + fi + if test "`echo "$UNAME_RELEASE" | sed -e 's/\..*//'`" -le 10 ; then + if [ "$CC_FOR_BUILD" != no_compiler_found ]; then + if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ + (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ + grep IS_64BIT_ARCH >/dev/null + then + case $UNAME_PROCESSOR in + i386) UNAME_PROCESSOR=x86_64 ;; + powerpc) UNAME_PROCESSOR=powerpc64 ;; + esac + fi + # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc + if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \ + (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ + grep IS_PPC >/dev/null + then + UNAME_PROCESSOR=powerpc + fi + fi + elif test "$UNAME_PROCESSOR" = i386 ; then + # Avoid executing cc on OS X 10.9, as it ships with a stub + # that puts up a graphical alert prompting to install + # developer tools. Any system running Mac OS X 10.7 or + # later (Darwin 11 and later) is required to have a 64-bit + # processor. This is not true of the ARM version of Darwin + # that Apple uses in portable devices. + UNAME_PROCESSOR=x86_64 + fi + echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE" + exit ;; + *:procnto*:*:* | *:QNX:[0123456789]*:*) + UNAME_PROCESSOR=`uname -p` + if test "$UNAME_PROCESSOR" = x86; then + UNAME_PROCESSOR=i386 + UNAME_MACHINE=pc + fi + echo "$UNAME_PROCESSOR"-"$UNAME_MACHINE"-nto-qnx"$UNAME_RELEASE" + exit ;; + *:QNX:*:4*) + echo i386-pc-qnx + exit ;; + NEO-*:NONSTOP_KERNEL:*:*) + echo neo-tandem-nsk"$UNAME_RELEASE" + exit ;; + NSE-*:NONSTOP_KERNEL:*:*) + echo nse-tandem-nsk"$UNAME_RELEASE" + exit ;; + NSR-*:NONSTOP_KERNEL:*:*) + echo nsr-tandem-nsk"$UNAME_RELEASE" + exit ;; + NSV-*:NONSTOP_KERNEL:*:*) + echo nsv-tandem-nsk"$UNAME_RELEASE" + exit ;; + NSX-*:NONSTOP_KERNEL:*:*) + echo nsx-tandem-nsk"$UNAME_RELEASE" + exit ;; + *:NonStop-UX:*:*) + echo mips-compaq-nonstopux + exit ;; + BS2000:POSIX*:*:*) + echo bs2000-siemens-sysv + exit ;; + DS/*:UNIX_System_V:*:*) + echo "$UNAME_MACHINE"-"$UNAME_SYSTEM"-"$UNAME_RELEASE" + exit ;; + *:Plan9:*:*) + # "uname -m" is not consistent, so use $cputype instead. 386 + # is converted to i386 for consistency with other x86 + # operating systems. + if test "$cputype" = 386; then + UNAME_MACHINE=i386 + else + UNAME_MACHINE="$cputype" + fi + echo "$UNAME_MACHINE"-unknown-plan9 + exit ;; + *:TOPS-10:*:*) + echo pdp10-unknown-tops10 + exit ;; + *:TENEX:*:*) + echo pdp10-unknown-tenex + exit ;; + KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) + echo pdp10-dec-tops20 + exit ;; + XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) + echo pdp10-xkl-tops20 + exit ;; + *:TOPS-20:*:*) + echo pdp10-unknown-tops20 + exit ;; + *:ITS:*:*) + echo pdp10-unknown-its + exit ;; + SEI:*:*:SEIUX) + echo mips-sei-seiux"$UNAME_RELEASE" + exit ;; + *:DragonFly:*:*) + echo "$UNAME_MACHINE"-unknown-dragonfly"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`" + exit ;; + *:*VMS:*:*) + UNAME_MACHINE=`(uname -p) 2>/dev/null` + case "$UNAME_MACHINE" in + A*) echo alpha-dec-vms ; exit ;; + I*) echo ia64-dec-vms ; exit ;; + V*) echo vax-dec-vms ; exit ;; + esac ;; + *:XENIX:*:SysV) + echo i386-pc-xenix + exit ;; + i*86:skyos:*:*) + echo "$UNAME_MACHINE"-pc-skyos"`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'`" + exit ;; + i*86:rdos:*:*) + echo "$UNAME_MACHINE"-pc-rdos + exit ;; + i*86:AROS:*:*) + echo "$UNAME_MACHINE"-pc-aros + exit ;; + x86_64:VMkernel:*:*) + echo "$UNAME_MACHINE"-unknown-esx + exit ;; + amd64:Isilon\ OneFS:*:*) + echo x86_64-unknown-onefs + exit ;; +esac + +echo "$0: unable to guess system type" >&2 + +case "$UNAME_MACHINE:$UNAME_SYSTEM" in + mips:Linux | mips64:Linux) + # If we got here on MIPS GNU/Linux, output extra information. + cat >&2 <&2 </dev/null || echo unknown` +uname -r = `(uname -r) 2>/dev/null || echo unknown` +uname -s = `(uname -s) 2>/dev/null || echo unknown` +uname -v = `(uname -v) 2>/dev/null || echo unknown` + +/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` +/bin/uname -X = `(/bin/uname -X) 2>/dev/null` + +hostinfo = `(hostinfo) 2>/dev/null` +/bin/universe = `(/bin/universe) 2>/dev/null` +/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` +/bin/arch = `(/bin/arch) 2>/dev/null` +/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` +/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` + +UNAME_MACHINE = "$UNAME_MACHINE" +UNAME_RELEASE = "$UNAME_RELEASE" +UNAME_SYSTEM = "$UNAME_SYSTEM" +UNAME_VERSION = "$UNAME_VERSION" +EOF + +exit 1 + +# Local variables: +# eval: (add-hook 'write-file-functions 'time-stamp) +# time-stamp-start: "timestamp='" +# time-stamp-format: "%:y-%02m-%02d" +# time-stamp-end: "'" +# End: diff --git a/support/gnuconfig/config.sub b/support/gnuconfig/config.sub new file mode 100755 index 00000000..682f5976 --- /dev/null +++ b/support/gnuconfig/config.sub @@ -0,0 +1,1803 @@ +#! /bin/sh +# Configuration validation subroutine script. +# Copyright 1992-2018 Free Software Foundation, Inc. + +timestamp='2018-02-22' + +# This file 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 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, see . +# +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that +# program. This Exception is an additional permission under section 7 +# of the GNU General Public License, version 3 ("GPLv3"). + + +# Please send patches to . +# +# Configuration subroutine to validate and canonicalize a configuration type. +# Supply the specified configuration type as an argument. +# If it is invalid, we print an error message on stderr and exit with code 1. +# Otherwise, we print the canonical config type on stdout and succeed. + +# You can get the latest version of this script from: +# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub + +# This file is supposed to be the same for all GNU packages +# and recognize all the CPU types, system types and aliases +# that are meaningful with *any* GNU software. +# Each package is responsible for reporting which valid configurations +# it does not support. The user should be able to distinguish +# a failure to support a valid configuration from a meaningless +# configuration. + +# The goal of this file is to map all the various variations of a given +# machine specification into a single specification in the form: +# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM +# or in some cases, the newer four-part form: +# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM +# It is wrong to echo any other type of specification. + +me=`echo "$0" | sed -e 's,.*/,,'` + +usage="\ +Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS + +Canonicalize a configuration name. + +Options: + -h, --help print this help, then exit + -t, --time-stamp print date of last modification, then exit + -v, --version print version number, then exit + +Report bugs and patches to ." + +version="\ +GNU config.sub ($timestamp) + +Copyright 1992-2018 Free Software Foundation, Inc. + +This is free software; see the source for copying conditions. There is NO +warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." + +help=" +Try \`$me --help' for more information." + +# Parse command line +while test $# -gt 0 ; do + case $1 in + --time-stamp | --time* | -t ) + echo "$timestamp" ; exit ;; + --version | -v ) + echo "$version" ; exit ;; + --help | --h* | -h ) + echo "$usage"; exit ;; + -- ) # Stop option processing + shift; break ;; + - ) # Use stdin as input. + break ;; + -* ) + echo "$me: invalid option $1$help" + exit 1 ;; + + *local*) + # First pass through any local machine types. + echo "$1" + exit ;; + + * ) + break ;; + esac +done + +case $# in + 0) echo "$me: missing argument$help" >&2 + exit 1;; + 1) ;; + *) echo "$me: too many arguments$help" >&2 + exit 1;; +esac + +# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). +# Here we must recognize all the valid KERNEL-OS combinations. +maybe_os=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` +case $maybe_os in + nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ + linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ + knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \ + kopensolaris*-gnu* | cloudabi*-eabi* | \ + storm-chaos* | os2-emx* | rtmk-nova*) + os=-$maybe_os + basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` + ;; + android-linux) + os=-linux-android + basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown + ;; + *) + basic_machine=`echo "$1" | sed 's/-[^-]*$//'` + if [ "$basic_machine" != "$1" ] + then os=`echo "$1" | sed 's/.*-/-/'` + else os=; fi + ;; +esac + +### Let's recognize common machines as not being operating systems so +### that things like config.sub decstation-3100 work. We also +### recognize some manufacturers as not being operating systems, so we +### can provide default operating systems below. +case $os in + -sun*os*) + # Prevent following clause from handling this invalid input. + ;; + -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ + -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ + -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ + -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ + -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ + -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ + -apple | -axis | -knuth | -cray | -microblaze* | loongson) + os= + basic_machine=$1 + ;; + -bluegene*) + os=-cnk + ;; + -sim | -cisco | -oki | -wec | -winbond) + os= + basic_machine=$1 + ;; + -scout) + ;; + -wrs) + os=-vxworks + basic_machine=$1 + ;; + -chorusos*) + os=-chorusos + basic_machine=$1 + ;; + -chorusrdb) + os=-chorusrdb + basic_machine=$1 + ;; + -hiux*) + os=-hiuxwe2 + ;; + -sco6) + os=-sco5v6 + basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` + ;; + -sco5) + os=-sco3.2v5 + basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` + ;; + -sco4) + os=-sco3.2v4 + basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` + ;; + -sco3.2.[4-9]*) + os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` + basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` + ;; + -sco3.2v[4-9]*) + # Don't forget version if it is 3.2v4 or newer. + basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` + ;; + -sco5v6*) + # Don't forget version if it is 3.2v4 or newer. + basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` + ;; + -sco*) + os=-sco3.2v2 + basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` + ;; + -udk*) + basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` + ;; + -isc) + os=-isc2.2 + basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` + ;; + -clix*) + basic_machine=clipper-intergraph + ;; + -isc*) + basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` + ;; + -lynx*178) + os=-lynxos178 + ;; + -lynx*5) + os=-lynxos5 + ;; + -lynx*) + os=-lynxos + ;; + -ptx*) + basic_machine=`echo "$1" | sed -e 's/86-.*/86-sequent/'` + ;; + -psos*) + os=-psos + ;; + -mint | -mint[0-9]*) + basic_machine=m68k-atari + os=-mint + ;; +esac + +# Decode aliases for certain CPU-COMPANY combinations. +case $basic_machine in + # Recognize the basic CPU types without company name. + # Some are omitted here because they have special meanings below. + 1750a | 580 \ + | a29k \ + | aarch64 | aarch64_be \ + | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ + | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ + | am33_2.0 \ + | arc | arceb \ + | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ + | avr | avr32 \ + | ba \ + | be32 | be64 \ + | bfin \ + | c4x | c8051 | clipper \ + | d10v | d30v | dlx | dsp16xx \ + | e2k | epiphany \ + | fido | fr30 | frv | ft32 \ + | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ + | hexagon \ + | i370 | i860 | i960 | ia16 | ia64 \ + | ip2k | iq2000 \ + | k1om \ + | le32 | le64 \ + | lm32 \ + | m32c | m32r | m32rle | m68000 | m68k | m88k \ + | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ + | mips | mipsbe | mipseb | mipsel | mipsle \ + | mips16 \ + | mips64 | mips64el \ + | mips64octeon | mips64octeonel \ + | mips64orion | mips64orionel \ + | mips64r5900 | mips64r5900el \ + | mips64vr | mips64vrel \ + | mips64vr4100 | mips64vr4100el \ + | mips64vr4300 | mips64vr4300el \ + | mips64vr5000 | mips64vr5000el \ + | mips64vr5900 | mips64vr5900el \ + | mipsisa32 | mipsisa32el \ + | mipsisa32r2 | mipsisa32r2el \ + | mipsisa32r6 | mipsisa32r6el \ + | mipsisa64 | mipsisa64el \ + | mipsisa64r2 | mipsisa64r2el \ + | mipsisa64r6 | mipsisa64r6el \ + | mipsisa64sb1 | mipsisa64sb1el \ + | mipsisa64sr71k | mipsisa64sr71kel \ + | mipsr5900 | mipsr5900el \ + | mipstx39 | mipstx39el \ + | mn10200 | mn10300 \ + | moxie \ + | mt \ + | msp430 \ + | loongarch32 | loongarch64 \ + | nds32 | nds32le | nds32be \ + | nios | nios2 | nios2eb | nios2el \ + | ns16k | ns32k \ + | open8 | or1k | or1knd | or32 \ + | pdp10 | pj | pjl \ + | powerpc | powerpc64 | powerpc64le | powerpcle \ + | pru \ + | pyramid \ + | riscv32 | riscv64 \ + | rl78 | rx \ + | score \ + | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ + | sh64 | sh64le \ + | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ + | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ + | spu \ + | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ + | ubicom32 \ + | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ + | visium \ + | wasm32 \ + | x86 | xc16x | xstormy16 | xtensa \ + | z8k | z80) + basic_machine=$basic_machine-unknown + ;; + c54x) + basic_machine=tic54x-unknown + ;; + c55x) + basic_machine=tic55x-unknown + ;; + c6x) + basic_machine=tic6x-unknown + ;; + leon|leon[3-9]) + basic_machine=sparc-$basic_machine + ;; + m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) + basic_machine=$basic_machine-unknown + os=-none + ;; + m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65) + ;; + ms1) + basic_machine=mt-unknown + ;; + + strongarm | thumb | xscale) + basic_machine=arm-unknown + ;; + xgate) + basic_machine=$basic_machine-unknown + os=-none + ;; + xscaleeb) + basic_machine=armeb-unknown + ;; + + xscaleel) + basic_machine=armel-unknown + ;; + + # We use `pc' rather than `unknown' + # because (1) that's what they normally are, and + # (2) the word "unknown" tends to confuse beginning users. + i*86 | x86_64) + basic_machine=$basic_machine-pc + ;; + # Object if more than one company name word. + *-*-*) + echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2 + exit 1 + ;; + # Recognize the basic CPU types with company name. + 580-* \ + | a29k-* \ + | aarch64-* | aarch64_be-* \ + | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ + | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ + | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ + | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ + | avr-* | avr32-* \ + | ba-* \ + | be32-* | be64-* \ + | bfin-* | bs2000-* \ + | c[123]* | c30-* | [cjt]90-* | c4x-* \ + | c8051-* | clipper-* | craynv-* | cydra-* \ + | d10v-* | d30v-* | dlx-* \ + | e2k-* | elxsi-* \ + | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ + | h8300-* | h8500-* \ + | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ + | hexagon-* \ + | i*86-* | i860-* | i960-* | ia16-* | ia64-* \ + | ip2k-* | iq2000-* \ + | k1om-* \ + | le32-* | le64-* \ + | loongarch32-* | loongarch64-* \ + | lm32-* \ + | m32c-* | m32r-* | m32rle-* \ + | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ + | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ + | microblaze-* | microblazeel-* \ + | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ + | mips16-* \ + | mips64-* | mips64el-* \ + | mips64octeon-* | mips64octeonel-* \ + | mips64orion-* | mips64orionel-* \ + | mips64r5900-* | mips64r5900el-* \ + | mips64vr-* | mips64vrel-* \ + | mips64vr4100-* | mips64vr4100el-* \ + | mips64vr4300-* | mips64vr4300el-* \ + | mips64vr5000-* | mips64vr5000el-* \ + | mips64vr5900-* | mips64vr5900el-* \ + | mipsisa32-* | mipsisa32el-* \ + | mipsisa32r2-* | mipsisa32r2el-* \ + | mipsisa32r6-* | mipsisa32r6el-* \ + | mipsisa64-* | mipsisa64el-* \ + | mipsisa64r2-* | mipsisa64r2el-* \ + | mipsisa64r6-* | mipsisa64r6el-* \ + | mipsisa64sb1-* | mipsisa64sb1el-* \ + | mipsisa64sr71k-* | mipsisa64sr71kel-* \ + | mipsr5900-* | mipsr5900el-* \ + | mipstx39-* | mipstx39el-* \ + | mmix-* \ + | mt-* \ + | msp430-* \ + | nds32-* | nds32le-* | nds32be-* \ + | nios-* | nios2-* | nios2eb-* | nios2el-* \ + | none-* | np1-* | ns16k-* | ns32k-* \ + | open8-* \ + | or1k*-* \ + | orion-* \ + | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ + | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ + | pru-* \ + | pyramid-* \ + | riscv32-* | riscv64-* \ + | rl78-* | romp-* | rs6000-* | rx-* \ + | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ + | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ + | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ + | sparclite-* \ + | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \ + | tahoe-* \ + | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ + | tile*-* \ + | tron-* \ + | ubicom32-* \ + | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ + | vax-* \ + | visium-* \ + | wasm32-* \ + | we32k-* \ + | x86-* | x86_64-* | xc16x-* | xps100-* \ + | xstormy16-* | xtensa*-* \ + | ymp-* \ + | z8k-* | z80-*) + ;; + # Recognize the basic CPU types without company name, with glob match. + xtensa*) + basic_machine=$basic_machine-unknown + ;; + # Recognize the various machine names and aliases which stand + # for a CPU type and a company and sometimes even an OS. + 386bsd) + basic_machine=i386-pc + os=-bsd + ;; + 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) + basic_machine=m68000-att + ;; + 3b*) + basic_machine=we32k-att + ;; + a29khif) + basic_machine=a29k-amd + os=-udi + ;; + abacus) + basic_machine=abacus-unknown + ;; + adobe68k) + basic_machine=m68010-adobe + os=-scout + ;; + alliant | fx80) + basic_machine=fx80-alliant + ;; + altos | altos3068) + basic_machine=m68k-altos + ;; + am29k) + basic_machine=a29k-none + os=-bsd + ;; + amd64) + basic_machine=x86_64-pc + ;; + amd64-*) + basic_machine=x86_64-`echo "$basic_machine" | sed 's/^[^-]*-//'` + ;; + amdahl) + basic_machine=580-amdahl + os=-sysv + ;; + amiga | amiga-*) + basic_machine=m68k-unknown + ;; + amigaos | amigados) + basic_machine=m68k-unknown + os=-amigaos + ;; + amigaunix | amix) + basic_machine=m68k-unknown + os=-sysv4 + ;; + apollo68) + basic_machine=m68k-apollo + os=-sysv + ;; + apollo68bsd) + basic_machine=m68k-apollo + os=-bsd + ;; + aros) + basic_machine=i386-pc + os=-aros + ;; + asmjs) + basic_machine=asmjs-unknown + ;; + aux) + basic_machine=m68k-apple + os=-aux + ;; + balance) + basic_machine=ns32k-sequent + os=-dynix + ;; + blackfin) + basic_machine=bfin-unknown + os=-linux + ;; + blackfin-*) + basic_machine=bfin-`echo "$basic_machine" | sed 's/^[^-]*-//'` + os=-linux + ;; + bluegene*) + basic_machine=powerpc-ibm + os=-cnk + ;; + c54x-*) + basic_machine=tic54x-`echo "$basic_machine" | sed 's/^[^-]*-//'` + ;; + c55x-*) + basic_machine=tic55x-`echo "$basic_machine" | sed 's/^[^-]*-//'` + ;; + c6x-*) + basic_machine=tic6x-`echo "$basic_machine" | sed 's/^[^-]*-//'` + ;; + c90) + basic_machine=c90-cray + os=-unicos + ;; + cegcc) + basic_machine=arm-unknown + os=-cegcc + ;; + convex-c1) + basic_machine=c1-convex + os=-bsd + ;; + convex-c2) + basic_machine=c2-convex + os=-bsd + ;; + convex-c32) + basic_machine=c32-convex + os=-bsd + ;; + convex-c34) + basic_machine=c34-convex + os=-bsd + ;; + convex-c38) + basic_machine=c38-convex + os=-bsd + ;; + cray | j90) + basic_machine=j90-cray + os=-unicos + ;; + craynv) + basic_machine=craynv-cray + os=-unicosmp + ;; + cr16 | cr16-*) + basic_machine=cr16-unknown + os=-elf + ;; + crds | unos) + basic_machine=m68k-crds + ;; + crisv32 | crisv32-* | etraxfs*) + basic_machine=crisv32-axis + ;; + cris | cris-* | etrax*) + basic_machine=cris-axis + ;; + crx) + basic_machine=crx-unknown + os=-elf + ;; + da30 | da30-*) + basic_machine=m68k-da30 + ;; + decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) + basic_machine=mips-dec + ;; + decsystem10* | dec10*) + basic_machine=pdp10-dec + os=-tops10 + ;; + decsystem20* | dec20*) + basic_machine=pdp10-dec + os=-tops20 + ;; + delta | 3300 | motorola-3300 | motorola-delta \ + | 3300-motorola | delta-motorola) + basic_machine=m68k-motorola + ;; + delta88) + basic_machine=m88k-motorola + os=-sysv3 + ;; + dicos) + basic_machine=i686-pc + os=-dicos + ;; + djgpp) + basic_machine=i586-pc + os=-msdosdjgpp + ;; + dpx20 | dpx20-*) + basic_machine=rs6000-bull + os=-bosx + ;; + dpx2*) + basic_machine=m68k-bull + os=-sysv3 + ;; + e500v[12]) + basic_machine=powerpc-unknown + os=$os"spe" + ;; + e500v[12]-*) + basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'` + os=$os"spe" + ;; + ebmon29k) + basic_machine=a29k-amd + os=-ebmon + ;; + elxsi) + basic_machine=elxsi-elxsi + os=-bsd + ;; + encore | umax | mmax) + basic_machine=ns32k-encore + ;; + es1800 | OSE68k | ose68k | ose | OSE) + basic_machine=m68k-ericsson + os=-ose + ;; + fx2800) + basic_machine=i860-alliant + ;; + genix) + basic_machine=ns32k-ns + ;; + gmicro) + basic_machine=tron-gmicro + os=-sysv + ;; + go32) + basic_machine=i386-pc + os=-go32 + ;; + h3050r* | hiux*) + basic_machine=hppa1.1-hitachi + os=-hiuxwe2 + ;; + h8300hms) + basic_machine=h8300-hitachi + os=-hms + ;; + h8300xray) + basic_machine=h8300-hitachi + os=-xray + ;; + h8500hms) + basic_machine=h8500-hitachi + os=-hms + ;; + harris) + basic_machine=m88k-harris + os=-sysv3 + ;; + hp300-*) + basic_machine=m68k-hp + ;; + hp300bsd) + basic_machine=m68k-hp + os=-bsd + ;; + hp300hpux) + basic_machine=m68k-hp + os=-hpux + ;; + hp3k9[0-9][0-9] | hp9[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + hp9k2[0-9][0-9] | hp9k31[0-9]) + basic_machine=m68000-hp + ;; + hp9k3[2-9][0-9]) + basic_machine=m68k-hp + ;; + hp9k6[0-9][0-9] | hp6[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + hp9k7[0-79][0-9] | hp7[0-79][0-9]) + basic_machine=hppa1.1-hp + ;; + hp9k78[0-9] | hp78[0-9]) + # FIXME: really hppa2.0-hp + basic_machine=hppa1.1-hp + ;; + hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) + # FIXME: really hppa2.0-hp + basic_machine=hppa1.1-hp + ;; + hp9k8[0-9][13679] | hp8[0-9][13679]) + basic_machine=hppa1.1-hp + ;; + hp9k8[0-9][0-9] | hp8[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + hppaosf) + basic_machine=hppa1.1-hp + os=-osf + ;; + hppro) + basic_machine=hppa1.1-hp + os=-proelf + ;; + i370-ibm* | ibm*) + basic_machine=i370-ibm + ;; + i*86v32) + basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'` + os=-sysv32 + ;; + i*86v4*) + basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'` + os=-sysv4 + ;; + i*86v) + basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'` + os=-sysv + ;; + i*86sol2) + basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'` + os=-solaris2 + ;; + i386mach) + basic_machine=i386-mach + os=-mach + ;; + vsta) + basic_machine=i386-unknown + os=-vsta + ;; + iris | iris4d) + basic_machine=mips-sgi + case $os in + -irix*) + ;; + *) + os=-irix4 + ;; + esac + ;; + isi68 | isi) + basic_machine=m68k-isi + os=-sysv + ;; + leon-*|leon[3-9]-*) + basic_machine=sparc-`echo "$basic_machine" | sed 's/-.*//'` + ;; + m68knommu) + basic_machine=m68k-unknown + os=-linux + ;; + m68knommu-*) + basic_machine=m68k-`echo "$basic_machine" | sed 's/^[^-]*-//'` + os=-linux + ;; + magnum | m3230) + basic_machine=mips-mips + os=-sysv + ;; + merlin) + basic_machine=ns32k-utek + os=-sysv + ;; + microblaze*) + basic_machine=microblaze-xilinx + ;; + mingw64) + basic_machine=x86_64-pc + os=-mingw64 + ;; + mingw32) + basic_machine=i686-pc + os=-mingw32 + ;; + mingw32ce) + basic_machine=arm-unknown + os=-mingw32ce + ;; + miniframe) + basic_machine=m68000-convergent + ;; + *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) + basic_machine=m68k-atari + os=-mint + ;; + mips3*-*) + basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'` + ;; + mips3*) + basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'`-unknown + ;; + monitor) + basic_machine=m68k-rom68k + os=-coff + ;; + morphos) + basic_machine=powerpc-unknown + os=-morphos + ;; + moxiebox) + basic_machine=moxie-unknown + os=-moxiebox + ;; + msdos) + basic_machine=i386-pc + os=-msdos + ;; + ms1-*) + basic_machine=`echo "$basic_machine" | sed -e 's/ms1-/mt-/'` + ;; + msys) + basic_machine=i686-pc + os=-msys + ;; + mvs) + basic_machine=i370-ibm + os=-mvs + ;; + nacl) + basic_machine=le32-unknown + os=-nacl + ;; + ncr3000) + basic_machine=i486-ncr + os=-sysv4 + ;; + netbsd386) + basic_machine=i386-unknown + os=-netbsd + ;; + netwinder) + basic_machine=armv4l-rebel + os=-linux + ;; + news | news700 | news800 | news900) + basic_machine=m68k-sony + os=-newsos + ;; + news1000) + basic_machine=m68030-sony + os=-newsos + ;; + news-3600 | risc-news) + basic_machine=mips-sony + os=-newsos + ;; + necv70) + basic_machine=v70-nec + os=-sysv + ;; + next | m*-next) + basic_machine=m68k-next + case $os in + -nextstep* ) + ;; + -ns2*) + os=-nextstep2 + ;; + *) + os=-nextstep3 + ;; + esac + ;; + nh3000) + basic_machine=m68k-harris + os=-cxux + ;; + nh[45]000) + basic_machine=m88k-harris + os=-cxux + ;; + nindy960) + basic_machine=i960-intel + os=-nindy + ;; + mon960) + basic_machine=i960-intel + os=-mon960 + ;; + nonstopux) + basic_machine=mips-compaq + os=-nonstopux + ;; + np1) + basic_machine=np1-gould + ;; + neo-tandem) + basic_machine=neo-tandem + ;; + nse-tandem) + basic_machine=nse-tandem + ;; + nsr-tandem) + basic_machine=nsr-tandem + ;; + nsv-tandem) + basic_machine=nsv-tandem + ;; + nsx-tandem) + basic_machine=nsx-tandem + ;; + op50n-* | op60c-*) + basic_machine=hppa1.1-oki + os=-proelf + ;; + openrisc | openrisc-*) + basic_machine=or32-unknown + ;; + os400) + basic_machine=powerpc-ibm + os=-os400 + ;; + OSE68000 | ose68000) + basic_machine=m68000-ericsson + os=-ose + ;; + os68k) + basic_machine=m68k-none + os=-os68k + ;; + pa-hitachi) + basic_machine=hppa1.1-hitachi + os=-hiuxwe2 + ;; + paragon) + basic_machine=i860-intel + os=-osf + ;; + parisc) + basic_machine=hppa-unknown + os=-linux + ;; + parisc-*) + basic_machine=hppa-`echo "$basic_machine" | sed 's/^[^-]*-//'` + os=-linux + ;; + pbd) + basic_machine=sparc-tti + ;; + pbb) + basic_machine=m68k-tti + ;; + pc532 | pc532-*) + basic_machine=ns32k-pc532 + ;; + pc98) + basic_machine=i386-pc + ;; + pc98-*) + basic_machine=i386-`echo "$basic_machine" | sed 's/^[^-]*-//'` + ;; + pentium | p5 | k5 | k6 | nexgen | viac3) + basic_machine=i586-pc + ;; + pentiumpro | p6 | 6x86 | athlon | athlon_*) + basic_machine=i686-pc + ;; + pentiumii | pentium2 | pentiumiii | pentium3) + basic_machine=i686-pc + ;; + pentium4) + basic_machine=i786-pc + ;; + pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) + basic_machine=i586-`echo "$basic_machine" | sed 's/^[^-]*-//'` + ;; + pentiumpro-* | p6-* | 6x86-* | athlon-*) + basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'` + ;; + pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) + basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'` + ;; + pentium4-*) + basic_machine=i786-`echo "$basic_machine" | sed 's/^[^-]*-//'` + ;; + pn) + basic_machine=pn-gould + ;; + power) basic_machine=power-ibm + ;; + ppc | ppcbe) basic_machine=powerpc-unknown + ;; + ppc-* | ppcbe-*) + basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'` + ;; + ppcle | powerpclittle) + basic_machine=powerpcle-unknown + ;; + ppcle-* | powerpclittle-*) + basic_machine=powerpcle-`echo "$basic_machine" | sed 's/^[^-]*-//'` + ;; + ppc64) basic_machine=powerpc64-unknown + ;; + ppc64-*) basic_machine=powerpc64-`echo "$basic_machine" | sed 's/^[^-]*-//'` + ;; + ppc64le | powerpc64little) + basic_machine=powerpc64le-unknown + ;; + ppc64le-* | powerpc64little-*) + basic_machine=powerpc64le-`echo "$basic_machine" | sed 's/^[^-]*-//'` + ;; + ps2) + basic_machine=i386-ibm + ;; + pw32) + basic_machine=i586-unknown + os=-pw32 + ;; + rdos | rdos64) + basic_machine=x86_64-pc + os=-rdos + ;; + rdos32) + basic_machine=i386-pc + os=-rdos + ;; + rom68k) + basic_machine=m68k-rom68k + os=-coff + ;; + rm[46]00) + basic_machine=mips-siemens + ;; + rtpc | rtpc-*) + basic_machine=romp-ibm + ;; + s390 | s390-*) + basic_machine=s390-ibm + ;; + s390x | s390x-*) + basic_machine=s390x-ibm + ;; + sa29200) + basic_machine=a29k-amd + os=-udi + ;; + sb1) + basic_machine=mipsisa64sb1-unknown + ;; + sb1el) + basic_machine=mipsisa64sb1el-unknown + ;; + sde) + basic_machine=mipsisa32-sde + os=-elf + ;; + sei) + basic_machine=mips-sei + os=-seiux + ;; + sequent) + basic_machine=i386-sequent + ;; + sh5el) + basic_machine=sh5le-unknown + ;; + simso-wrs) + basic_machine=sparclite-wrs + os=-vxworks + ;; + sps7) + basic_machine=m68k-bull + os=-sysv2 + ;; + spur) + basic_machine=spur-unknown + ;; + st2000) + basic_machine=m68k-tandem + ;; + stratus) + basic_machine=i860-stratus + os=-sysv4 + ;; + strongarm-* | thumb-*) + basic_machine=arm-`echo "$basic_machine" | sed 's/^[^-]*-//'` + ;; + sun2) + basic_machine=m68000-sun + ;; + sun2os3) + basic_machine=m68000-sun + os=-sunos3 + ;; + sun2os4) + basic_machine=m68000-sun + os=-sunos4 + ;; + sun3os3) + basic_machine=m68k-sun + os=-sunos3 + ;; + sun3os4) + basic_machine=m68k-sun + os=-sunos4 + ;; + sun4os3) + basic_machine=sparc-sun + os=-sunos3 + ;; + sun4os4) + basic_machine=sparc-sun + os=-sunos4 + ;; + sun4sol2) + basic_machine=sparc-sun + os=-solaris2 + ;; + sun3 | sun3-*) + basic_machine=m68k-sun + ;; + sun4) + basic_machine=sparc-sun + ;; + sun386 | sun386i | roadrunner) + basic_machine=i386-sun + ;; + sv1) + basic_machine=sv1-cray + os=-unicos + ;; + symmetry) + basic_machine=i386-sequent + os=-dynix + ;; + t3e) + basic_machine=alphaev5-cray + os=-unicos + ;; + t90) + basic_machine=t90-cray + os=-unicos + ;; + tile*) + basic_machine=$basic_machine-unknown + os=-linux-gnu + ;; + tx39) + basic_machine=mipstx39-unknown + ;; + tx39el) + basic_machine=mipstx39el-unknown + ;; + toad1) + basic_machine=pdp10-xkl + os=-tops20 + ;; + tower | tower-32) + basic_machine=m68k-ncr + ;; + tpf) + basic_machine=s390x-ibm + os=-tpf + ;; + udi29k) + basic_machine=a29k-amd + os=-udi + ;; + ultra3) + basic_machine=a29k-nyu + os=-sym1 + ;; + v810 | necv810) + basic_machine=v810-nec + os=-none + ;; + vaxv) + basic_machine=vax-dec + os=-sysv + ;; + vms) + basic_machine=vax-dec + os=-vms + ;; + vpp*|vx|vx-*) + basic_machine=f301-fujitsu + ;; + vxworks960) + basic_machine=i960-wrs + os=-vxworks + ;; + vxworks68) + basic_machine=m68k-wrs + os=-vxworks + ;; + vxworks29k) + basic_machine=a29k-wrs + os=-vxworks + ;; + w65*) + basic_machine=w65-wdc + os=-none + ;; + w89k-*) + basic_machine=hppa1.1-winbond + os=-proelf + ;; + x64) + basic_machine=x86_64-pc + ;; + xbox) + basic_machine=i686-pc + os=-mingw32 + ;; + xps | xps100) + basic_machine=xps100-honeywell + ;; + xscale-* | xscalee[bl]-*) + basic_machine=`echo "$basic_machine" | sed 's/^xscale/arm/'` + ;; + ymp) + basic_machine=ymp-cray + os=-unicos + ;; + none) + basic_machine=none-none + os=-none + ;; + +# Here we handle the default manufacturer of certain CPU types. It is in +# some cases the only manufacturer, in others, it is the most popular. + w89k) + basic_machine=hppa1.1-winbond + ;; + op50n) + basic_machine=hppa1.1-oki + ;; + op60c) + basic_machine=hppa1.1-oki + ;; + romp) + basic_machine=romp-ibm + ;; + mmix) + basic_machine=mmix-knuth + ;; + rs6000) + basic_machine=rs6000-ibm + ;; + vax) + basic_machine=vax-dec + ;; + pdp11) + basic_machine=pdp11-dec + ;; + we32k) + basic_machine=we32k-att + ;; + sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) + basic_machine=sh-unknown + ;; + cydra) + basic_machine=cydra-cydrome + ;; + orion) + basic_machine=orion-highlevel + ;; + orion105) + basic_machine=clipper-highlevel + ;; + mac | mpw | mac-mpw) + basic_machine=m68k-apple + ;; + pmac | pmac-mpw) + basic_machine=powerpc-apple + ;; + *-unknown) + # Make sure to match an already-canonicalized machine name. + ;; + *) + echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2 + exit 1 + ;; +esac + +# Here we canonicalize certain aliases for manufacturers. +case $basic_machine in + *-digital*) + basic_machine=`echo "$basic_machine" | sed 's/digital.*/dec/'` + ;; + *-commodore*) + basic_machine=`echo "$basic_machine" | sed 's/commodore.*/cbm/'` + ;; + *) + ;; +esac + +# Decode manufacturer-specific aliases for certain operating systems. + +if [ x"$os" != x"" ] +then +case $os in + # First match some system type aliases that might get confused + # with valid system types. + # -solaris* is a basic system type, with this one exception. + -auroraux) + os=-auroraux + ;; + -solaris1 | -solaris1.*) + os=`echo $os | sed -e 's|solaris1|sunos4|'` + ;; + -solaris) + os=-solaris2 + ;; + -unixware*) + os=-sysv4.2uw + ;; + -gnu/linux*) + os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` + ;; + # es1800 is here to avoid being matched by es* (a different OS) + -es1800*) + os=-ose + ;; + # Now accept the basic system types. + # The portable systems comes first. + # Each alternative MUST end in a * to match a version number. + # -sysv* is not here because it comes later, after sysvr4. + -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ + | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ + | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ + | -sym* | -kopensolaris* | -plan9* \ + | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ + | -aos* | -aros* | -cloudabi* | -sortix* \ + | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ + | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ + | -hiux* | -knetbsd* | -mirbsd* | -netbsd* \ + | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \ + | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ + | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ + | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ + | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ + | -chorusos* | -chorusrdb* | -cegcc* | -glidix* \ + | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ + | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ + | -linux-newlib* | -linux-musl* | -linux-uclibc* \ + | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \ + | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* \ + | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ + | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ + | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ + | -morphos* | -superux* | -rtmk* | -windiss* \ + | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ + | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \ + | -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox* | -bme* \ + | -midnightbsd*) + # Remember, each alternative MUST END IN *, to match a version number. + ;; + -qnx*) + case $basic_machine in + x86-* | i*86-*) + ;; + *) + os=-nto$os + ;; + esac + ;; + -nto-qnx*) + ;; + -nto*) + os=`echo $os | sed -e 's|nto|nto-qnx|'` + ;; + -sim | -xray | -os68k* | -v88r* \ + | -windows* | -osx | -abug | -netware* | -os9* \ + | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) + ;; + -mac*) + os=`echo "$os" | sed -e 's|mac|macos|'` + ;; + -linux-dietlibc) + os=-linux-dietlibc + ;; + -linux*) + os=`echo $os | sed -e 's|linux|linux-gnu|'` + ;; + -sunos5*) + os=`echo "$os" | sed -e 's|sunos5|solaris2|'` + ;; + -sunos6*) + os=`echo "$os" | sed -e 's|sunos6|solaris3|'` + ;; + -opened*) + os=-openedition + ;; + -os400*) + os=-os400 + ;; + -wince*) + os=-wince + ;; + -utek*) + os=-bsd + ;; + -dynix*) + os=-bsd + ;; + -acis*) + os=-aos + ;; + -atheos*) + os=-atheos + ;; + -syllable*) + os=-syllable + ;; + -386bsd) + os=-bsd + ;; + -ctix* | -uts*) + os=-sysv + ;; + -nova*) + os=-rtmk-nova + ;; + -ns2) + os=-nextstep2 + ;; + -nsk*) + os=-nsk + ;; + # Preserve the version number of sinix5. + -sinix5.*) + os=`echo $os | sed -e 's|sinix|sysv|'` + ;; + -sinix*) + os=-sysv4 + ;; + -tpf*) + os=-tpf + ;; + -triton*) + os=-sysv3 + ;; + -oss*) + os=-sysv3 + ;; + -svr4*) + os=-sysv4 + ;; + -svr3) + os=-sysv3 + ;; + -sysvr4) + os=-sysv4 + ;; + # This must come after -sysvr4. + -sysv*) + ;; + -ose*) + os=-ose + ;; + -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) + os=-mint + ;; + -zvmoe) + os=-zvmoe + ;; + -dicos*) + os=-dicos + ;; + -pikeos*) + # Until real need of OS specific support for + # particular features comes up, bare metal + # configurations are quite functional. + case $basic_machine in + arm*) + os=-eabi + ;; + *) + os=-elf + ;; + esac + ;; + -nacl*) + ;; + -ios) + ;; + -none) + ;; + *) + # Get rid of the `-' at the beginning of $os. + os=`echo $os | sed 's/[^-]*-//'` + echo Invalid configuration \`"$1"\': system \`"$os"\' not recognized 1>&2 + exit 1 + ;; +esac +else + +# Here we handle the default operating systems that come with various machines. +# The value should be what the vendor currently ships out the door with their +# machine or put another way, the most popular os provided with the machine. + +# Note that if you're going to try to match "-MANUFACTURER" here (say, +# "-sun"), then you have to tell the case statement up towards the top +# that MANUFACTURER isn't an operating system. Otherwise, code above +# will signal an error saying that MANUFACTURER isn't an operating +# system, and we'll never get to this point. + +case $basic_machine in + score-*) + os=-elf + ;; + spu-*) + os=-elf + ;; + *-acorn) + os=-riscix1.2 + ;; + arm*-rebel) + os=-linux + ;; + arm*-semi) + os=-aout + ;; + c4x-* | tic4x-*) + os=-coff + ;; + c8051-*) + os=-elf + ;; + hexagon-*) + os=-elf + ;; + tic54x-*) + os=-coff + ;; + tic55x-*) + os=-coff + ;; + tic6x-*) + os=-coff + ;; + # This must come before the *-dec entry. + pdp10-*) + os=-tops20 + ;; + pdp11-*) + os=-none + ;; + *-dec | vax-*) + os=-ultrix4.2 + ;; + m68*-apollo) + os=-domain + ;; + i386-sun) + os=-sunos4.0.2 + ;; + m68000-sun) + os=-sunos3 + ;; + m68*-cisco) + os=-aout + ;; + mep-*) + os=-elf + ;; + mips*-cisco) + os=-elf + ;; + mips*-*) + os=-elf + ;; + or32-*) + os=-coff + ;; + *-tti) # must be before sparc entry or we get the wrong os. + os=-sysv3 + ;; + sparc-* | *-sun) + os=-sunos4.1.1 + ;; + pru-*) + os=-elf + ;; + *-be) + os=-beos + ;; + *-ibm) + os=-aix + ;; + *-knuth) + os=-mmixware + ;; + *-wec) + os=-proelf + ;; + *-winbond) + os=-proelf + ;; + *-oki) + os=-proelf + ;; + *-hp) + os=-hpux + ;; + *-hitachi) + os=-hiux + ;; + i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) + os=-sysv + ;; + *-cbm) + os=-amigaos + ;; + *-dg) + os=-dgux + ;; + *-dolphin) + os=-sysv3 + ;; + m68k-ccur) + os=-rtu + ;; + m88k-omron*) + os=-luna + ;; + *-next) + os=-nextstep + ;; + *-sequent) + os=-ptx + ;; + *-crds) + os=-unos + ;; + *-ns) + os=-genix + ;; + i370-*) + os=-mvs + ;; + *-gould) + os=-sysv + ;; + *-highlevel) + os=-bsd + ;; + *-encore) + os=-bsd + ;; + *-sgi) + os=-irix + ;; + *-siemens) + os=-sysv4 + ;; + *-masscomp) + os=-rtu + ;; + f30[01]-fujitsu | f700-fujitsu) + os=-uxpv + ;; + *-rom68k) + os=-coff + ;; + *-*bug) + os=-coff + ;; + *-apple) + os=-macos + ;; + *-atari*) + os=-mint + ;; + *) + os=-none + ;; +esac +fi + +# Here we handle the case where we know the os, and the CPU type, but not the +# manufacturer. We pick the logical manufacturer. +vendor=unknown +case $basic_machine in + *-unknown) + case $os in + -riscix*) + vendor=acorn + ;; + -sunos*) + vendor=sun + ;; + -cnk*|-aix*) + vendor=ibm + ;; + -beos*) + vendor=be + ;; + -hpux*) + vendor=hp + ;; + -mpeix*) + vendor=hp + ;; + -hiux*) + vendor=hitachi + ;; + -unos*) + vendor=crds + ;; + -dgux*) + vendor=dg + ;; + -luna*) + vendor=omron + ;; + -genix*) + vendor=ns + ;; + -mvs* | -opened*) + vendor=ibm + ;; + -os400*) + vendor=ibm + ;; + -ptx*) + vendor=sequent + ;; + -tpf*) + vendor=ibm + ;; + -vxsim* | -vxworks* | -windiss*) + vendor=wrs + ;; + -aux*) + vendor=apple + ;; + -hms*) + vendor=hitachi + ;; + -mpw* | -macos*) + vendor=apple + ;; + -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) + vendor=atari + ;; + -vos*) + vendor=stratus + ;; + esac + basic_machine=`echo "$basic_machine" | sed "s/unknown/$vendor/"` + ;; +esac + +echo "$basic_machine$os" +exit + +# Local variables: +# eval: (add-hook 'write-file-functions 'time-stamp) +# time-stamp-start: "timestamp='" +# time-stamp-format: "%:y-%02m-%02d" +# time-stamp-end: "'" +# End: diff --git a/support/gnuconfig/update b/support/gnuconfig/update new file mode 100755 index 00000000..c8728ead --- /dev/null +++ b/support/gnuconfig/update @@ -0,0 +1,14 @@ +#!/usr/bin/env bash + +set -e + +cd "${0%/*}" + +git clone https://git.savannah.gnu.org/git/config.git +sha="$(cd config; git log -1 --pretty=tformat:%H)" +sed -r -i -e "\$s/.*/${sha}/" README.buildroot +cp config/config.* . +for p in $(ls patches/*.patch 2>/dev/null); do + patch -p1 < "${p}" +done +rm -rf config diff --git a/support/kconfig/.gitignore b/support/kconfig/.gitignore new file mode 100644 index 00000000..2694c9a2 --- /dev/null +++ b/support/kconfig/.gitignore @@ -0,0 +1,4 @@ +# +# Quilt is being used to handle the patch series +# +.pc diff --git a/support/kconfig/Makefile b/support/kconfig/Makefile new file mode 100644 index 00000000..b0bcc262 --- /dev/null +++ b/support/kconfig/Makefile @@ -0,0 +1,342 @@ +# SPDX-License-Identifier: GPL-2.0 +# =========================================================================== +# Kernel configuration targets +# These targets are used from top-level makefile + +PHONY += xconfig gconfig menuconfig config syncconfig update-po-config \ + localmodconfig localyesconfig + +# Easy method for doing a status message + kecho := : + quiet_kecho := echo +silent_kecho := : +kecho := $($(quiet)kecho) + +ifdef KBUILD_KCONFIG +Kconfig := $(KBUILD_KCONFIG) +else +Kconfig := Kconfig +endif + +ifeq ($(quiet),silent_) +silent := -s +endif + +# We need this, in case the user has it in its environment +unexport CONFIG_ + +xconfig: $(obj)/qconf + $< $(silent) $(Kconfig) + +gconfig: $(obj)/gconf + $< $(silent) $(Kconfig) + +menuconfig: $(obj)/mconf + $< $(silent) $(Kconfig) + +config: $(obj)/conf + $< $(silent) --oldaskconfig $(Kconfig) + +nconfig: $(obj)/nconf + $< $(silent) $(Kconfig) + +# This has become an internal implementation detail and is now deprecated +# for external use. +syncconfig: $(obj)/conf + $(Q)mkdir -p include/config include/generated + $< $(silent) --$@ $(Kconfig) + +localyesconfig localmodconfig: $(obj)/conf + $(Q)mkdir -p include/config include/generated + $(Q)perl $(srctree)/$(src)/streamline_config.pl --$@ $(srctree) $(Kconfig) > .tmp.config + $(Q)if [ -f .config ]; then \ + cmp -s .tmp.config .config || \ + (mv -f .config .config.old.1; \ + mv -f .tmp.config .config; \ + $< $(silent) --oldconfig $(Kconfig); \ + mv -f .config.old.1 .config.old) \ + else \ + mv -f .tmp.config .config; \ + $< $(silent) --oldconfig $(Kconfig); \ + fi + $(Q)rm -f .tmp.config + +# Create new linux.pot file +# Adjust charset to UTF-8 in .po file to accept UTF-8 in Kconfig files +update-po-config: $(obj)/kxgettext $(obj)/gconf.glade.h + $(Q)$(kecho) " GEN config.pot" + $(Q)xgettext --default-domain=linux \ + --add-comments --keyword=_ --keyword=N_ \ + --from-code=UTF-8 \ + --files-from=$(srctree)/scripts/kconfig/POTFILES.in \ + --directory=$(srctree) --directory=$(objtree) \ + --output $(obj)/config.pot + $(Q)sed -i s/CHARSET/UTF-8/ $(obj)/config.pot + $(Q)(for i in `ls $(srctree)/arch/*/Kconfig \ + $(srctree)/arch/*/um/Kconfig`; \ + do \ + $(kecho) " GEN $$i"; \ + $(obj)/kxgettext $$i \ + >> $(obj)/config.pot; \ + done ) + $(Q)$(kecho) " GEN linux.pot" + $(Q)msguniq --sort-by-file --to-code=UTF-8 $(obj)/config.pot \ + --output $(obj)/linux.pot + $(Q)rm -f $(obj)/config.pot + +# These targets map 1:1 to the commandline options of 'conf' +simple-targets := oldconfig allnoconfig allyesconfig allmodconfig \ + alldefconfig randconfig listnewconfig olddefconfig +PHONY += $(simple-targets) + +$(simple-targets): $(obj)/conf + $< $(silent) --$@ $(Kconfig) + +PHONY += oldnoconfig silentoldconfig savedefconfig defconfig + +# oldnoconfig is an alias of olddefconfig, because people already are dependent +# on its behavior (sets new symbols to their default value but not 'n') with the +# counter-intuitive name. +oldnoconfig: olddefconfig + @echo " WARNING: \"oldnoconfig\" target will be removed after Linux 4.19" + @echo " Please use \"olddefconfig\" instead, which is an alias." + +# We do not expect manual invokcation of "silentoldcofig" (or "syncconfig"). +silentoldconfig: syncconfig + @echo " WARNING: \"silentoldconfig\" has been renamed to \"syncconfig\"" + @echo " and is now an internal implementation detail." + @echo " What you want is probably \"oldconfig\"." + @echo " \"silentoldconfig\" will be removed after Linux 4.19" + +savedefconfig: $(obj)/conf + $< $(silent) --$@=defconfig $(Kconfig) + +defconfig: $(obj)/conf +ifeq ($(KBUILD_DEFCONFIG),) + $< $(silent) --defconfig $(Kconfig) +else +ifneq ($(wildcard $(srctree)/arch/$(SRCARCH)/configs/$(KBUILD_DEFCONFIG)),) + @$(kecho) "*** Default configuration is based on '$(KBUILD_DEFCONFIG)'" + $(Q)$< $(silent) --defconfig=arch/$(SRCARCH)/configs/$(KBUILD_DEFCONFIG) $(Kconfig) +else + @$(kecho) "*** Default configuration is based on target '$(KBUILD_DEFCONFIG)'" + $(Q)$(MAKE) -f $(srctree)/Makefile $(KBUILD_DEFCONFIG) +endif +endif + +%_defconfig: $(obj)/conf + $(Q)$< $(silent) --defconfig=arch/$(SRCARCH)/configs/$@ $(Kconfig) + +configfiles=$(wildcard $(srctree)/kernel/configs/$@ $(srctree)/arch/$(SRCARCH)/configs/$@) + +%.config: $(obj)/conf + $(if $(call configfiles),, $(error No configuration exists for this target on this architecture)) + $(Q)$(CONFIG_SHELL) $(srctree)/scripts/kconfig/merge_config.sh -m .config $(configfiles) + +$(Q)yes "" | $(MAKE) -f $(srctree)/Makefile oldconfig + +PHONY += kvmconfig +kvmconfig: kvm_guest.config + @: + +PHONY += xenconfig +xenconfig: xen.config + @: + +PHONY += tinyconfig +tinyconfig: + $(Q)$(MAKE) -f $(srctree)/Makefile allnoconfig tiny.config + +# CHECK: -o cache_dir= working? +PHONY += testconfig +testconfig: $(obj)/conf + $(PYTHON3) -B -m pytest $(srctree)/$(src)/tests \ + -o cache_dir=$(abspath $(obj)/tests/.cache) \ + $(if $(findstring 1,$(KBUILD_VERBOSE)),--capture=no) +clean-dirs += tests/.cache + +# Help text used by make help +help: + @echo ' config - Update current config utilising a line-oriented program' + @echo ' nconfig - Update current config utilising a ncurses menu based' + @echo ' program' + @echo ' menuconfig - Update current config utilising a menu based program' + @echo ' xconfig - Update current config utilising a Qt based front-end' + @echo ' gconfig - Update current config utilising a GTK+ based front-end' + @echo ' oldconfig - Update current config utilising a provided .config as base' + @echo ' localmodconfig - Update current config disabling modules not loaded' + @echo ' localyesconfig - Update current config converting local mods to core' + @echo ' defconfig - New config with default from ARCH supplied defconfig' + @echo ' savedefconfig - Save current config as ./defconfig (minimal config)' + @echo ' allnoconfig - New config where all options are answered with no' + @echo ' allyesconfig - New config where all options are accepted with yes' + @echo ' allmodconfig - New config selecting modules when possible' + @echo ' alldefconfig - New config with all symbols set to default' + @echo ' randconfig - New config with random answer to all options' + @echo ' listnewconfig - List new options' + @echo ' olddefconfig - Same as oldconfig but sets new symbols to their' + @echo ' default value without prompting' + @echo ' kvmconfig - Enable additional options for kvm guest kernel support' + @echo ' xenconfig - Enable additional options for xen dom0 and guest kernel support' + @echo ' tinyconfig - Configure the tiniest possible kernel' + +# lxdialog stuff +check-lxdialog := $(srctree)/$(src)/lxdialog/check-lxdialog.sh + +# Use recursively expanded variables so we do not call gcc unless +# we really need to do so. (Do not call gcc as part of make mrproper) +HOST_EXTRACFLAGS += $(shell $(CONFIG_SHELL) $(check-lxdialog) -ccflags) \ + -DLOCALE + +# =========================================================================== +# Shared Makefile for the various kconfig executables: +# conf: Used for defconfig, oldconfig and related targets +# nconf: Used for the nconfig target. +# Utilizes ncurses +# mconf: Used for the menuconfig target +# Utilizes the lxdialog package +# qconf: Used for the xconfig target +# Based on Qt which needs to be installed to compile it +# gconf: Used for the gconfig target +# Based on GTK+ which needs to be installed to compile it +# object files used by all kconfig flavours + +lxdialog := lxdialog/checklist.o lxdialog/util.o lxdialog/inputbox.o +lxdialog += lxdialog/textbox.o lxdialog/yesno.o lxdialog/menubox.o + +conf-objs := conf.o zconf.tab.o +mconf-objs := mconf.o zconf.tab.o $(lxdialog) +nconf-objs := nconf.o zconf.tab.o nconf.gui.o +kxgettext-objs := kxgettext.o zconf.tab.o +qconf-cxxobjs := qconf.o +qconf-objs := zconf.tab.o +gconf-objs := gconf.o zconf.tab.o + +hostprogs-y := conf + +ifeq ($(MAKECMDGOALS),nconf) + hostprogs-y += nconf +endif + +ifeq ($(MAKECMDGOALS),mconf) + hostprogs-y += mconf +endif + +ifeq ($(MAKECMDGOALS),update-po-config) + hostprogs-y += kxgettext +endif + +ifeq ($(MAKECMDGOALS),qconf) + qconf-target := 1 +endif + +ifeq ($(MAKECMDGOALS),gconf) + gconf-target := 1 +endif + +ifeq ($(qconf-target),1) + hostprogs-y += qconf +endif + +ifeq ($(gconf-target),1) + hostprogs-y += gconf +endif + +targets += zconf.lex.c +clean-files := qconf.moc .tmp_qtcheck .tmp_gtkcheck +clean-files += gconf.glade.h +clean-files += config.pot linux.pot + +# Check that we have the required ncurses stuff installed for lxdialog (menuconfig) +PHONY += $(obj)/dochecklxdialog +$(addprefix $(obj)/, mconf.o $(lxdialog)): $(obj)/dochecklxdialog +$(obj)/dochecklxdialog: + $(Q)$(CONFIG_SHELL) $(check-lxdialog) -check $(HOSTCC) $(HOST_EXTRACFLAGS) $(HOSTLOADLIBES_mconf) + +always := dochecklxdialog + +# Add environment specific flags +HOST_EXTRACFLAGS += $(shell $(CONFIG_SHELL) $(srctree)/$(src)/check.sh $(HOSTCC) $(HOSTCFLAGS)) +HOST_EXTRACXXFLAGS += $(shell $(CONFIG_SHELL) $(srctree)/$(src)/check.sh $(HOSTCXX) $(HOSTCXXFLAGS)) + +# generated files seem to need this to find local include files +HOSTCFLAGS_zconf.lex.o := -I$(src) +HOSTCFLAGS_zconf.tab.o := -I$(src) + +HOSTLOADLIBES_qconf = $(KC_QT_LIBS) +HOSTCXXFLAGS_qconf.o = $(KC_QT_CFLAGS) + +HOSTLOADLIBES_gconf = `pkg-config --libs gtk+-2.0 gmodule-2.0 libglade-2.0` +HOSTCFLAGS_gconf.o = `pkg-config --cflags gtk+-2.0 gmodule-2.0 libglade-2.0` \ + -Wno-missing-prototypes + +HOSTLOADLIBES_mconf = $(shell $(CONFIG_SHELL) $(check-lxdialog) -ldflags $(HOSTCC)) + +HOSTLOADLIBES_nconf = $(shell \ + pkg-config --libs menuw panelw ncursesw 2>/dev/null \ + || pkg-config --libs menu panel ncurses 2>/dev/null \ + || echo "-lmenu -lpanel -lncurses" ) +$(obj)/qconf.o: $(obj)/.tmp_qtcheck + +ifeq ($(MAKECMDGOALS),qconf) +$(obj)/.tmp_qtcheck: $(src)/Makefile +-include $(obj)/.tmp_qtcheck + +# Qt needs some extra effort... +$(obj)/.tmp_qtcheck: + @set -e; $(kecho) " CHECK qt"; \ + if pkg-config --exists Qt5Core; then \ + cflags="-std=c++11 -fPIC `pkg-config --cflags Qt5Core Qt5Gui Qt5Widgets`"; \ + libs=`pkg-config --libs Qt5Core Qt5Gui Qt5Widgets`; \ + moc=`pkg-config --variable=host_bins Qt5Core`/moc; \ + elif pkg-config --exists QtCore; then \ + cflags=`pkg-config --cflags QtCore QtGui`; \ + libs=`pkg-config --libs QtCore QtGui`; \ + moc=`pkg-config --variable=moc_location QtCore`; \ + else \ + echo >&2 "*"; \ + echo >&2 "* Could not find Qt via pkg-config."; \ + echo >&2 "* Please install either Qt 4.8 or 5.x. and make sure it's in PKG_CONFIG_PATH"; \ + echo >&2 "*"; \ + exit 1; \ + fi; \ + echo "KC_QT_CFLAGS=$$cflags" > $@; \ + echo "KC_QT_LIBS=$$libs" >> $@; \ + echo "KC_QT_MOC=$$moc" >> $@ +endif + +ifeq ($(MAKECMDGOALS),gconf) +$(obj)/gconf.o: $(obj)/.tmp_gtkcheck +-include $(obj)/.tmp_gtkcheck + +# GTK+ needs some extra effort, too... +$(obj)/.tmp_gtkcheck: + @if `pkg-config --exists gtk+-2.0 gmodule-2.0 libglade-2.0`; then \ + if `pkg-config --atleast-version=2.0.0 gtk+-2.0`; then \ + touch $@; \ + else \ + echo >&2 "*"; \ + echo >&2 "* GTK+ is present but version >= 2.0.0 is required."; \ + echo >&2 "*"; \ + false; \ + fi \ + else \ + echo >&2 "*"; \ + echo >&2 "* Unable to find the GTK+ installation. Please make sure that"; \ + echo >&2 "* the GTK+ 2.0 development package is correctly installed..."; \ + echo >&2 "* You need gtk+-2.0, glib-2.0 and libglade-2.0."; \ + echo >&2 "*"; \ + false; \ + fi +endif + +$(obj)/zconf.tab.o: $(obj)/zconf.lex.c + +$(obj)/qconf.o: $(obj)/qconf.moc + +$(obj)/%.moc: $(src)/%.h $(obj)/.tmp_qtcheck + $(KC_QT_MOC) -i $< -o $@ + +# Extract gconf menu items for i18n support +$(obj)/gconf.glade.h: $(obj)/gconf.glade + $(Q)intltool-extract --type=gettext/glade --srcdir=$(srctree) \ + $(obj)/gconf.glade diff --git a/support/kconfig/Makefile.br b/support/kconfig/Makefile.br new file mode 100644 index 00000000..41c5ce16 --- /dev/null +++ b/support/kconfig/Makefile.br @@ -0,0 +1,53 @@ +src := . +top_srcdir=../../ +top_builddir=../../ +srctree := . +obj ?= . + +include Makefile +#HOSTCFLAGS+=-Dinline="" -include foo.h +-include $(obj)/.depend +$(obj)/.depend: $(wildcard *.h *.c) + $(HOSTCC) $(HOST_EXTRACFLAGS) $(HOSTCFLAGS) -MM *.c > $@ 2>/dev/null || : + +__hostprogs := $(sort $(hostprogs-y) $(hostprogs-m)) +host-csingle := $(foreach m,$(__hostprogs),$(if $($(m)-objs),,$(m))) +host-cmulti := $(foreach m,$(__hostprogs),\ + $(if $($(m)-cxxobjs),,$(if $($(m)-objs),$(m)))) +host-cxxmulti := $(foreach m,$(__hostprogs),\ + $(if $($(m)-cxxobjs),$(m),$(if $($(m)-objs),))) +host-cobjs := $(addprefix $(obj)/,$(sort $(foreach m,$(__hostprogs),$($(m)-objs)))) +host-cxxobjs := $(addprefix $(obj)/,$(sort $(foreach m,$(__hostprogs),$($(m)-cxxobjs)))) + +HOST_EXTRACFLAGS += -I$(obj) -DCONFIG_=\"\" + +$(host-csingle): %: %.c + $(HOSTCC) $(HOST_EXTRACFLAGS) $(HOSTCFLAGS) $(HOSTCFLAGS_$@) $< -o $(obj)/$@ + +$(host-cmulti): %: $(host-cobjs) $(host-cshlib) + $(HOSTCC) $(HOST_EXTRACFLAGS) $(HOSTCFLAGS) $(HOSTCFLAGS_$@) $(addprefix $(obj)/,$($(@F)-objs)) $(HOSTLOADLIBES_$(@F)) -o $(obj)/$@ + +$(host-cxxmulti): %: $(host-cxxobjs) $(host-cobjs) $(host-cshlib) + $(HOSTCXX) $(HOST_EXTRACFLAGS) $(HOSTCFLAGS) $(HOSTCXXFLAGS_$@) $(addprefix $(obj)/,$($(@F)-objs) $($(@F)-cxxobjs)) $(HOSTLOADLIBES_$(@F)) -o $(obj)/$@ + +$(obj)/%.o: %.c + $(HOSTCC) $(HOST_EXTRACFLAGS) $(HOSTCFLAGS) $(HOSTCFLAGS_$(@F)) -c $< -o $@ + +$(obj)/%.o: $(obj)/%.c + $(HOSTCC) $(HOST_EXTRACFLAGS) $(HOSTCFLAGS) $(HOSTCFLAGS_$(@F)) -c $< -o $@ + +$(obj)/%.o: %.cc + $(HOSTCC) $(HOST_EXTRACFLAGS) $(HOSTCFLAGS) $(HOSTCXXFLAGS_$(@F)) -c $< -o $@ + +$(obj)/%:: $(src)/%_shipped + $(Q)cat $< > $@ + +clean: + $(Q)rm -f $(addprefix $(obj)/,$(clean-files)) +distclean: clean + $(Q)rm -f $(addprefix $(obj)/,$(lxdialog) $(conf-objs) $(mconf-objs) $(kxgettext-objs) \ + $(hostprogs-y) $(qconf-cxxobjs) $(qconf-objs) $(gconf-objs) \ + mconf .depend) + +FORCE: +.PHONY: FORCE clean distclean diff --git a/support/kconfig/POTFILES.in b/support/kconfig/POTFILES.in new file mode 100644 index 00000000..96745739 --- /dev/null +++ b/support/kconfig/POTFILES.in @@ -0,0 +1,12 @@ +scripts/kconfig/lxdialog/checklist.c +scripts/kconfig/lxdialog/inputbox.c +scripts/kconfig/lxdialog/menubox.c +scripts/kconfig/lxdialog/textbox.c +scripts/kconfig/lxdialog/util.c +scripts/kconfig/lxdialog/yesno.c +scripts/kconfig/mconf.c +scripts/kconfig/conf.c +scripts/kconfig/confdata.c +scripts/kconfig/gconf.c +scripts/kconfig/gconf.glade.h +scripts/kconfig/qconf.cc diff --git a/support/kconfig/README.buildroot b/support/kconfig/README.buildroot new file mode 100644 index 00000000..76808f85 --- /dev/null +++ b/support/kconfig/README.buildroot @@ -0,0 +1,25 @@ +This is a copy of the kconfig code in the kernel (currently 4.17-rc2) tweaked +to suit Buildroot. + +To update: + cp -r /usr/src/linux/scripts/kconfig support/kconfig.new + cd support/kconfig.new + # zconf.lex.c and zconf.tab.c needs to be generated by 'make menuconfig' + mv zconf.lex.c zconf.lex.c_shipped + mv zconf.tab.c zconf.tab.c_shipped + rm -rf tests/ + cp -a ../kconfig/patches ../kconfig/README.buildroot ../kconfig/.gitignore . + quilt push -a + # Fix any conflict + cd .. + rm -rf kconfig + mv kconfig.new kconfig + +Then verify the toplevel targets work: + config + defconfig + menuconfig + nconfig + xconfig + gconfig + oldconfig diff --git a/support/kconfig/check.sh b/support/kconfig/check.sh new file mode 100755 index 00000000..97f0fee7 --- /dev/null +++ b/support/kconfig/check.sh @@ -0,0 +1,14 @@ +#!/bin/sh +# SPDX-License-Identifier: GPL-2.0 +# Needed for systems without gettext +$* -x c -o /dev/null - > /dev/null 2>&1 << EOF +#include +int main() +{ + gettext(""); + return 0; +} +EOF +if [ ! "$?" -eq "0" ]; then + echo -DKBUILD_NO_NLS; +fi diff --git a/support/kconfig/conf.c b/support/kconfig/conf.c new file mode 100644 index 00000000..2d7a7ac4 --- /dev/null +++ b/support/kconfig/conf.c @@ -0,0 +1,716 @@ +/* + * Copyright (C) 2002 Roman Zippel + * Released under the terms of the GNU GPL v2.0. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "lkc.h" + +static void conf(struct menu *menu); +static void check_conf(struct menu *menu); + +enum input_mode { + oldaskconfig, + syncconfig, + oldconfig, + allnoconfig, + allyesconfig, + allmodconfig, + alldefconfig, + randconfig, + defconfig, + savedefconfig, + listnewconfig, + olddefconfig, +}; +static enum input_mode input_mode = oldaskconfig; + +static int indent = 1; +static int tty_stdio; +static int sync_kconfig; +static int conf_cnt; +static char line[PATH_MAX]; +static struct menu *rootEntry; + +static void print_help(struct menu *menu) +{ + struct gstr help = str_new(); + + menu_get_ext_help(menu, &help); + + printf("\n%s\n", str_get(&help)); + str_free(&help); +} + +static void strip(char *str) +{ + char *p = str; + int l; + + while ((isspace(*p))) + p++; + l = strlen(p); + if (p != str) + memmove(str, p, l + 1); + if (!l) + return; + p = str + l - 1; + while ((isspace(*p))) + *p-- = 0; +} + +/* Helper function to facilitate fgets() by Jean Sacren. */ +static void xfgets(char *str, int size, FILE *in) +{ + if (!fgets(str, size, in)) + fprintf(stderr, "\nError in reading or end of file.\n"); + + if (!tty_stdio) + printf("%s", str); +} + +static int conf_askvalue(struct symbol *sym, const char *def) +{ + enum symbol_type type = sym_get_type(sym); + + if (!sym_has_value(sym)) + printf(_("(NEW) ")); + + line[0] = '\n'; + line[1] = 0; + + if (!sym_is_changable(sym)) { + printf("%s\n", def); + line[0] = '\n'; + line[1] = 0; + return 0; + } + + switch (input_mode) { + case oldconfig: + case syncconfig: + if (sym_has_value(sym)) { + printf("%s\n", def); + return 0; + } + /* fall through */ + case oldaskconfig: + fflush(stdout); + xfgets(line, sizeof(line), stdin); + return 1; + default: + break; + } + + switch (type) { + case S_INT: + case S_HEX: + case S_STRING: + printf("%s\n", def); + return 1; + default: + ; + } + printf("%s", line); + return 1; +} + +static int conf_string(struct menu *menu) +{ + struct symbol *sym = menu->sym; + const char *def; + + while (1) { + printf("%*s%s ", indent - 1, "", _(menu->prompt->text)); + printf("(%s) ", sym->name); + def = sym_get_string_value(sym); + if (sym_get_string_value(sym)) + printf("[%s] ", def); + if (!conf_askvalue(sym, def)) + return 0; + switch (line[0]) { + case '\n': + break; + case '?': + /* print help */ + if (line[1] == '\n') { + print_help(menu); + def = NULL; + break; + } + /* fall through */ + default: + line[strlen(line)-1] = 0; + def = line; + } + if (def && sym_set_string_value(sym, def)) + return 0; + } +} + +static int conf_sym(struct menu *menu) +{ + struct symbol *sym = menu->sym; + tristate oldval, newval; + + while (1) { + printf("%*s%s ", indent - 1, "", _(menu->prompt->text)); + if (sym->name) + printf("(%s) ", sym->name); + putchar('['); + oldval = sym_get_tristate_value(sym); + switch (oldval) { + case no: + putchar('N'); + break; + case mod: + putchar('M'); + break; + case yes: + putchar('Y'); + break; + } + if (oldval != no && sym_tristate_within_range(sym, no)) + printf("/n"); + if (oldval != mod && sym_tristate_within_range(sym, mod)) + printf("/m"); + if (oldval != yes && sym_tristate_within_range(sym, yes)) + printf("/y"); + printf("/?] "); + if (!conf_askvalue(sym, sym_get_string_value(sym))) + return 0; + strip(line); + + switch (line[0]) { + case 'n': + case 'N': + newval = no; + if (!line[1] || !strcmp(&line[1], "o")) + break; + continue; + case 'm': + case 'M': + newval = mod; + if (!line[1]) + break; + continue; + case 'y': + case 'Y': + newval = yes; + if (!line[1] || !strcmp(&line[1], "es")) + break; + continue; + case 0: + newval = oldval; + break; + case '?': + goto help; + default: + continue; + } + if (sym_set_tristate_value(sym, newval)) + return 0; +help: + print_help(menu); + } +} + +static int conf_choice(struct menu *menu) +{ + struct symbol *sym, *def_sym; + struct menu *child; + bool is_new; + + sym = menu->sym; + is_new = !sym_has_value(sym); + if (sym_is_changable(sym)) { + conf_sym(menu); + sym_calc_value(sym); + switch (sym_get_tristate_value(sym)) { + case no: + return 1; + case mod: + return 0; + case yes: + break; + } + } else { + switch (sym_get_tristate_value(sym)) { + case no: + return 1; + case mod: + printf("%*s%s\n", indent - 1, "", _(menu_get_prompt(menu))); + return 0; + case yes: + break; + } + } + + while (1) { + int cnt, def; + + printf("%*s%s\n", indent - 1, "", _(menu_get_prompt(menu))); + def_sym = sym_get_choice_value(sym); + cnt = def = 0; + line[0] = 0; + for (child = menu->list; child; child = child->next) { + if (!menu_is_visible(child)) + continue; + if (!child->sym) { + printf("%*c %s\n", indent, '*', _(menu_get_prompt(child))); + continue; + } + cnt++; + if (child->sym == def_sym) { + def = cnt; + printf("%*c", indent, '>'); + } else + printf("%*c", indent, ' '); + printf(" %d. %s", cnt, _(menu_get_prompt(child))); + if (child->sym->name) + printf(" (%s)", child->sym->name); + if (!sym_has_value(child->sym)) + printf(_(" (NEW)")); + printf("\n"); + } + printf(_("%*schoice"), indent - 1, ""); + if (cnt == 1) { + printf("[1]: 1\n"); + goto conf_childs; + } + printf("[1-%d?]: ", cnt); + switch (input_mode) { + case oldconfig: + case syncconfig: + if (!is_new) { + cnt = def; + printf("%d\n", cnt); + break; + } + /* fall through */ + case oldaskconfig: + fflush(stdout); + xfgets(line, sizeof(line), stdin); + strip(line); + if (line[0] == '?') { + print_help(menu); + continue; + } + if (!line[0]) + cnt = def; + else if (isdigit(line[0])) + cnt = atoi(line); + else + continue; + break; + default: + break; + } + + conf_childs: + for (child = menu->list; child; child = child->next) { + if (!child->sym || !menu_is_visible(child)) + continue; + if (!--cnt) + break; + } + if (!child) + continue; + if (line[0] && line[strlen(line) - 1] == '?') { + print_help(child); + continue; + } + sym_set_choice_value(sym, child->sym); + for (child = child->list; child; child = child->next) { + indent += 2; + conf(child); + indent -= 2; + } + return 1; + } +} + +static void conf(struct menu *menu) +{ + struct symbol *sym; + struct property *prop; + struct menu *child; + + if (!menu_is_visible(menu)) + return; + + sym = menu->sym; + prop = menu->prompt; + if (prop) { + const char *prompt; + + switch (prop->type) { + case P_MENU: + /* + * Except in oldaskconfig mode, we show only menus that + * contain new symbols. + */ + if (input_mode != oldaskconfig && rootEntry != menu) { + check_conf(menu); + return; + } + /* fall through */ + case P_COMMENT: + prompt = menu_get_prompt(menu); + if (prompt) + printf("%*c\n%*c %s\n%*c\n", + indent, '*', + indent, '*', _(prompt), + indent, '*'); + default: + ; + } + } + + if (!sym) + goto conf_childs; + + if (sym_is_choice(sym)) { + conf_choice(menu); + if (sym->curr.tri != mod) + return; + goto conf_childs; + } + + switch (sym->type) { + case S_INT: + case S_HEX: + case S_STRING: + conf_string(menu); + break; + default: + conf_sym(menu); + break; + } + +conf_childs: + if (sym) + indent += 2; + for (child = menu->list; child; child = child->next) + conf(child); + if (sym) + indent -= 2; +} + +static void check_conf(struct menu *menu) +{ + struct symbol *sym; + struct menu *child; + + if (!menu_is_visible(menu)) + return; + + sym = menu->sym; + if (sym && !sym_has_value(sym)) { + if (sym_is_changable(sym) || + (sym_is_choice(sym) && sym_get_tristate_value(sym) == yes)) { + if (input_mode == listnewconfig) { + if (sym->name) { + const char *str; + + if (sym->type == S_STRING) { + str = sym_get_string_value(sym); + str = sym_escape_string_value(str); + printf("%s%s=%s\n", CONFIG_, sym->name, str); + free((void *)str); + } else { + str = sym_get_string_value(sym); + printf("%s%s=%s\n", CONFIG_, sym->name, str); + } + } + } else { + if (!conf_cnt++) + printf(_("*\n* Restart config...\n*\n")); + rootEntry = menu_get_parent_menu(menu); + conf(rootEntry); + } + } + } + + for (child = menu->list; child; child = child->next) + check_conf(child); +} + +static struct option long_opts[] = { + {"oldaskconfig", no_argument, NULL, oldaskconfig}, + {"oldconfig", no_argument, NULL, oldconfig}, + {"syncconfig", no_argument, NULL, syncconfig}, + {"defconfig", optional_argument, NULL, defconfig}, + {"savedefconfig", required_argument, NULL, savedefconfig}, + {"allnoconfig", no_argument, NULL, allnoconfig}, + {"allyesconfig", no_argument, NULL, allyesconfig}, + {"allmodconfig", no_argument, NULL, allmodconfig}, + {"alldefconfig", no_argument, NULL, alldefconfig}, + {"randconfig", no_argument, NULL, randconfig}, + {"listnewconfig", no_argument, NULL, listnewconfig}, + {"olddefconfig", no_argument, NULL, olddefconfig}, + /* + * oldnoconfig is an alias of olddefconfig, because people already + * are dependent on its behavior(sets new symbols to their default + * value but not 'n') with the counter-intuitive name. + */ + {"oldnoconfig", no_argument, NULL, olddefconfig}, + {NULL, 0, NULL, 0} +}; + +static void conf_usage(const char *progname) +{ + + printf("Usage: %s [-s] [option] \n", progname); + printf("[option] is _one_ of the following:\n"); + printf(" --listnewconfig List new options\n"); + printf(" --oldaskconfig Start a new configuration using a line-oriented program\n"); + printf(" --oldconfig Update a configuration using a provided .config as base\n"); + printf(" --syncconfig Similar to oldconfig but generates configuration in\n" + " include/{generated/,config/}\n"); + printf(" --olddefconfig Same as oldconfig but sets new symbols to their default value\n"); + printf(" --oldnoconfig An alias of olddefconfig\n"); + printf(" --defconfig New config with default defined in \n"); + printf(" --savedefconfig Save the minimal current configuration to \n"); + printf(" --allnoconfig New config where all options are answered with no\n"); + printf(" --allyesconfig New config where all options are answered with yes\n"); + printf(" --allmodconfig New config where all options are answered with mod\n"); + printf(" --alldefconfig New config with all symbols set to default\n"); + printf(" --randconfig New config with random answer to all options\n"); +} + +int main(int ac, char **av) +{ + const char *progname = av[0]; + int opt; + const char *name, *defconfig_file = NULL /* gcc uninit */; + struct stat tmpstat; + + setlocale(LC_ALL, ""); + bindtextdomain(PACKAGE, LOCALEDIR); + textdomain(PACKAGE); + + tty_stdio = isatty(0) && isatty(1); + + while ((opt = getopt_long(ac, av, "s", long_opts, NULL)) != -1) { + if (opt == 's') { + conf_set_message_callback(NULL); + continue; + } + input_mode = (enum input_mode)opt; + switch (opt) { + case syncconfig: + sync_kconfig = 1; + break; + case defconfig: + case savedefconfig: + defconfig_file = optarg; + break; + case randconfig: + { + struct timeval now; + unsigned int seed; + char *seed_env; + + /* + * Use microseconds derived seed, + * compensate for systems where it may be zero + */ + gettimeofday(&now, NULL); + seed = (unsigned int)((now.tv_sec + 1) * (now.tv_usec + 1)); + + seed_env = getenv("KCONFIG_SEED"); + if( seed_env && *seed_env ) { + char *endp; + int tmp = (int)strtol(seed_env, &endp, 0); + if (*endp == '\0') { + seed = tmp; + } + } + fprintf( stderr, "KCONFIG_SEED=0x%X\n", seed ); + srand(seed); + break; + } + case oldaskconfig: + case oldconfig: + case allnoconfig: + case allyesconfig: + case allmodconfig: + case alldefconfig: + case listnewconfig: + case olddefconfig: + break; + case '?': + conf_usage(progname); + exit(1); + break; + } + } + if (ac == optind) { + fprintf(stderr, _("%s: Kconfig file missing\n"), av[0]); + conf_usage(progname); + exit(1); + } + name = av[optind]; + conf_parse(name); + if (sync_kconfig) { + name = conf_get_configname(); + if (stat(name, &tmpstat)) { + fprintf(stderr, _("***\n" + "*** Configuration file \"%s\" not found!\n" + "***\n" + "*** Please run some configurator (e.g. \"make oldconfig\" or\n" + "*** \"make menuconfig\" or \"make xconfig\").\n" + "***\n"), name); + exit(1); + } + } + + switch (input_mode) { + case defconfig: + if (!defconfig_file) + defconfig_file = conf_get_default_confname(); + if (conf_read(defconfig_file)) { + fprintf(stderr, + _("***\n" + "*** Can't find default configuration \"%s\"!\n" + "***\n"), + defconfig_file); + exit(1); + } + break; + case savedefconfig: + case syncconfig: + case oldaskconfig: + case oldconfig: + case listnewconfig: + case olddefconfig: + conf_read(NULL); + break; + case allnoconfig: + case allyesconfig: + case allmodconfig: + case alldefconfig: + case randconfig: + name = getenv("KCONFIG_ALLCONFIG"); + if (!name) + break; + if ((strcmp(name, "") != 0) && (strcmp(name, "1") != 0)) { + if (conf_read_simple(name, S_DEF_USER)) { + fprintf(stderr, + _("*** Can't read seed configuration \"%s\"!\n"), + name); + exit(1); + } + break; + } + switch (input_mode) { + case allnoconfig: name = "allno.config"; break; + case allyesconfig: name = "allyes.config"; break; + case allmodconfig: name = "allmod.config"; break; + case alldefconfig: name = "alldef.config"; break; + case randconfig: name = "allrandom.config"; break; + default: break; + } + if (conf_read_simple(name, S_DEF_USER) && + conf_read_simple("all.config", S_DEF_USER)) { + fprintf(stderr, + _("*** KCONFIG_ALLCONFIG set, but no \"%s\" or \"all.config\" file found\n"), + name); + exit(1); + } + break; + default: + break; + } + + if (sync_kconfig) { + if (conf_get_changed()) { + name = getenv("KCONFIG_NOSILENTUPDATE"); + if (name && *name) { + fprintf(stderr, + _("\n*** The configuration requires explicit update.\n\n")); + return 1; + } + } + } + + switch (input_mode) { + case allnoconfig: + conf_set_all_new_symbols(def_no); + break; + case allyesconfig: + conf_set_all_new_symbols(def_yes); + break; + case allmodconfig: + conf_set_all_new_symbols(def_mod); + break; + case alldefconfig: + conf_set_all_new_symbols(def_default); + break; + case randconfig: + /* Really nothing to do in this loop */ + while (conf_set_all_new_symbols(def_random)) ; + break; + case defconfig: + conf_set_all_new_symbols(def_default); + break; + case savedefconfig: + break; + case oldaskconfig: + rootEntry = &rootmenu; + conf(&rootmenu); + input_mode = oldconfig; + /* fall through */ + case oldconfig: + case listnewconfig: + case syncconfig: + /* Update until a loop caused no more changes */ + do { + conf_cnt = 0; + check_conf(&rootmenu); + } while (conf_cnt); + break; + case olddefconfig: + default: + break; + } + + if (sync_kconfig) { + /* syncconfig is used during the build so we shall update autoconf. + * All other commands are only used to generate a config. + */ + if (conf_get_changed() && conf_write(NULL)) { + fprintf(stderr, _("\n*** Error during writing of the configuration.\n\n")); + exit(1); + } + if (conf_write_autoconf()) { + fprintf(stderr, _("\n*** Error during update of the configuration.\n\n")); + return 1; + } + } else if (input_mode == savedefconfig) { + if (conf_write_defconfig(defconfig_file)) { + fprintf(stderr, _("n*** Error while saving defconfig to: %s\n\n"), + defconfig_file); + return 1; + } + } else if (input_mode != listnewconfig) { + if (conf_write(NULL)) { + fprintf(stderr, _("\n*** Error during writing of the configuration.\n\n")); + exit(1); + } + } + return 0; +} diff --git a/support/kconfig/confdata.c b/support/kconfig/confdata.c new file mode 100644 index 00000000..892da74f --- /dev/null +++ b/support/kconfig/confdata.c @@ -0,0 +1,1282 @@ +/* + * Copyright (C) 2002 Roman Zippel + * Released under the terms of the GNU GPL v2.0. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "lkc.h" + +struct conf_printer { + void (*print_symbol)(FILE *, struct symbol *, const char *, void *); + void (*print_comment)(FILE *, const char *, void *); +}; + +static void conf_warning(const char *fmt, ...) + __attribute__ ((format (printf, 1, 2))); + +static void conf_message(const char *fmt, ...) + __attribute__ ((format (printf, 1, 2))); + +static const char *conf_filename; +static int conf_lineno, conf_warnings; + +const char conf_defname[] = ".defconfig"; + +static void conf_warning(const char *fmt, ...) +{ + va_list ap; + va_start(ap, fmt); + fprintf(stderr, "%s:%d:warning: ", conf_filename, conf_lineno); + vfprintf(stderr, fmt, ap); + fprintf(stderr, "\n"); + va_end(ap); + conf_warnings++; +} + +static void conf_default_message_callback(const char *fmt, va_list ap) +{ + printf("#\n# "); + vprintf(fmt, ap); + printf("\n#\n"); +} + +static void (*conf_message_callback) (const char *fmt, va_list ap) = + conf_default_message_callback; +void conf_set_message_callback(void (*fn) (const char *fmt, va_list ap)) +{ + conf_message_callback = fn; +} + +static void conf_message(const char *fmt, ...) +{ + va_list ap; + + va_start(ap, fmt); + if (conf_message_callback) + conf_message_callback(fmt, ap); + va_end(ap); +} + +const char *conf_get_configname(void) +{ + char *name = getenv("BR2_CONFIG"); + + return name ? name : ".config"; +} + +const char *conf_get_autoconfig_name(void) +{ + return getenv("KCONFIG_AUTOCONFIG"); +} + +static char *conf_expand_value(const char *in) +{ + struct symbol *sym; + const char *src; + static char res_value[SYMBOL_MAXLENGTH]; + char *dst, name[SYMBOL_MAXLENGTH]; + + res_value[0] = 0; + dst = name; + while ((src = strchr(in, '$'))) { + strncat(res_value, in, src - in); + src++; + dst = name; + while (isalnum(*src) || *src == '_') + *dst++ = *src++; + *dst = 0; + sym = sym_lookup(name, 0); + sym_calc_value(sym); + strcat(res_value, sym_get_string_value(sym)); + in = src; + } + strcat(res_value, in); + + return res_value; +} + +char *conf_get_default_confname(void) +{ + struct stat buf; + static char fullname[PATH_MAX+1]; + char *env, *name; + + name = conf_expand_value(conf_defname); + env = getenv(SRCTREE); + if (env) { + sprintf(fullname, "%s/%s", env, name); + if (!stat(fullname, &buf)) + return fullname; + } + return name; +} + +static int conf_set_sym_val(struct symbol *sym, int def, int def_flags, char *p) +{ + char *p2; + + switch (sym->type) { + case S_TRISTATE: + if (p[0] == 'm') { + sym->def[def].tri = mod; + sym->flags |= def_flags; + break; + } + /* fall through */ + case S_BOOLEAN: + if (p[0] == 'y') { + sym->def[def].tri = yes; + sym->flags |= def_flags; + break; + } + if (p[0] == 'n') { + sym->def[def].tri = no; + sym->flags |= def_flags; + break; + } + if (def != S_DEF_AUTO) + conf_warning("symbol value '%s' invalid for %s", + p, sym->name); + return 1; + case S_OTHER: + if (*p != '"') { + for (p2 = p; *p2 && !isspace(*p2); p2++) + ; + sym->type = S_STRING; + goto done; + } + /* fall through */ + case S_STRING: + if (*p++ != '"') + break; + for (p2 = p; (p2 = strpbrk(p2, "\"\\")); p2++) { + if (*p2 == '"') { + *p2 = 0; + break; + } + memmove(p2, p2 + 1, strlen(p2)); + } + if (!p2) { + if (def != S_DEF_AUTO) + conf_warning("invalid string found"); + return 1; + } + /* fall through */ + case S_INT: + case S_HEX: + done: + if (sym_string_valid(sym, p)) { + sym->def[def].val = xstrdup(p); + sym->flags |= def_flags; + } else { + if (def != S_DEF_AUTO) + conf_warning("symbol value '%s' invalid for %s", + p, sym->name); + return 1; + } + break; + default: + ; + } + return 0; +} + +#define LINE_GROWTH 16 +static int add_byte(int c, char **lineptr, size_t slen, size_t *n) +{ + char *nline; + size_t new_size = slen + 1; + if (new_size > *n) { + new_size += LINE_GROWTH - 1; + new_size *= 2; + nline = xrealloc(*lineptr, new_size); + if (!nline) + return -1; + + *lineptr = nline; + *n = new_size; + } + + (*lineptr)[slen] = c; + + return 0; +} + +static ssize_t compat_getline(char **lineptr, size_t *n, FILE *stream) +{ + char *line = *lineptr; + size_t slen = 0; + + for (;;) { + int c = getc(stream); + + switch (c) { + case '\n': + if (add_byte(c, &line, slen, n) < 0) + goto e_out; + slen++; + /* fall through */ + case EOF: + if (add_byte('\0', &line, slen, n) < 0) + goto e_out; + *lineptr = line; + if (slen == 0) + return -1; + return slen; + default: + if (add_byte(c, &line, slen, n) < 0) + goto e_out; + slen++; + } + } + +e_out: + line[slen-1] = '\0'; + *lineptr = line; + return -1; +} + +int conf_read_simple(const char *name, int def) +{ + FILE *in = NULL; + char *line = NULL; + size_t line_asize = 0; + char *p, *p2; + struct symbol *sym; + int i, def_flags; + + if (name) { + in = zconf_fopen(name); + } else { + struct property *prop; + + name = conf_get_configname(); + in = zconf_fopen(name); + if (in) + goto load; + sym_add_change_count(1); + if (!sym_defconfig_list) + return 1; + + for_all_defaults(sym_defconfig_list, prop) { + if (expr_calc_value(prop->visible.expr) == no || + prop->expr->type != E_SYMBOL) + continue; + name = conf_expand_value(prop->expr->left.sym->name); + in = zconf_fopen(name); + if (in) { + conf_message(_("using defaults found in %s"), + name); + goto load; + } + } + } + if (!in) + return 1; + +load: + conf_filename = name; + conf_lineno = 0; + conf_warnings = 0; + + def_flags = SYMBOL_DEF << def; + for_all_symbols(i, sym) { + sym->flags |= SYMBOL_CHANGED; + sym->flags &= ~(def_flags|SYMBOL_VALID); + if (sym_is_choice(sym)) + sym->flags |= def_flags; + switch (sym->type) { + case S_INT: + case S_HEX: + case S_STRING: + if (sym->def[def].val) + free(sym->def[def].val); + /* fall through */ + default: + sym->def[def].val = NULL; + sym->def[def].tri = no; + } + } + + while (compat_getline(&line, &line_asize, in) != -1) { + conf_lineno++; + sym = NULL; + if (line[0] == '#') { + if (memcmp(line + 2, CONFIG_, strlen(CONFIG_))) + continue; + p = strchr(line + 2 + strlen(CONFIG_), ' '); + if (!p) + continue; + *p++ = 0; + if (strncmp(p, "is not set", 10)) + continue; + if (def == S_DEF_USER) { + sym = sym_find(line + 2 + strlen(CONFIG_)); + if (!sym) { + sym_add_change_count(1); + goto setsym; + } + } else { + sym = sym_lookup(line + 2 + strlen(CONFIG_), 0); + if (sym->type == S_UNKNOWN) + sym->type = S_BOOLEAN; + } + if (sym->flags & def_flags) { + conf_warning("override: reassigning to symbol %s", sym->name); + } + switch (sym->type) { + case S_BOOLEAN: + case S_TRISTATE: + sym->def[def].tri = no; + sym->flags |= def_flags; + break; + default: + ; + } + } else if (memcmp(line, CONFIG_, strlen(CONFIG_)) == 0) { + p = strchr(line + strlen(CONFIG_), '='); + if (!p) + continue; + *p++ = 0; + p2 = strchr(p, '\n'); + if (p2) { + *p2-- = 0; + if (*p2 == '\r') + *p2 = 0; + } + if (def == S_DEF_USER) { + sym = sym_find(line + strlen(CONFIG_)); + if (!sym) { + sym_add_change_count(1); + goto setsym; + } + } else { + sym = sym_lookup(line + strlen(CONFIG_), 0); + if (sym->type == S_UNKNOWN) + sym->type = S_OTHER; + } + if (sym->flags & def_flags) { + conf_warning("override: reassigning to symbol %s", sym->name); + } + if (conf_set_sym_val(sym, def, def_flags, p)) + continue; + } else { + if (line[0] != '\r' && line[0] != '\n') + conf_warning("unexpected data: %.*s", + (int)strcspn(line, "\r\n"), line); + + continue; + } +setsym: + if (sym && sym_is_choice_value(sym)) { + struct symbol *cs = prop_get_symbol(sym_get_choice_prop(sym)); + switch (sym->def[def].tri) { + case no: + break; + case mod: + if (cs->def[def].tri == yes) { + conf_warning("%s creates inconsistent choice state", sym->name); + cs->flags &= ~def_flags; + } + break; + case yes: + if (cs->def[def].tri != no) + conf_warning("override: %s changes choice state", sym->name); + cs->def[def].val = sym; + break; + } + cs->def[def].tri = EXPR_OR(cs->def[def].tri, sym->def[def].tri); + } + } + free(line); + fclose(in); + return 0; +} + +int conf_read(const char *name) +{ + struct symbol *sym; + int conf_unsaved = 0; + int i; + + sym_set_change_count(0); + + if (conf_read_simple(name, S_DEF_USER)) { + sym_calc_value(modules_sym); + return 1; + } + + sym_calc_value(modules_sym); + + for_all_symbols(i, sym) { + sym_calc_value(sym); + if (sym_is_choice(sym) || (sym->flags & SYMBOL_AUTO)) + continue; + if (sym_has_value(sym) && (sym->flags & SYMBOL_WRITE)) { + /* check that calculated value agrees with saved value */ + switch (sym->type) { + case S_BOOLEAN: + case S_TRISTATE: + if (sym->def[S_DEF_USER].tri != sym_get_tristate_value(sym)) + break; + if (!sym_is_choice(sym)) + continue; + /* fall through */ + default: + if (!strcmp(sym->curr.val, sym->def[S_DEF_USER].val)) + continue; + break; + } + } else if (!sym_has_value(sym) && !(sym->flags & SYMBOL_WRITE)) + /* no previous value and not saved */ + continue; + conf_unsaved++; + /* maybe print value in verbose mode... */ + } + + for_all_symbols(i, sym) { + if (sym_has_value(sym) && !sym_is_choice_value(sym)) { + /* Reset values of generates values, so they'll appear + * as new, if they should become visible, but that + * doesn't quite work if the Kconfig and the saved + * configuration disagree. + */ + if (sym->visible == no && !conf_unsaved) + sym->flags &= ~SYMBOL_DEF_USER; + switch (sym->type) { + case S_STRING: + case S_INT: + case S_HEX: + /* Reset a string value if it's out of range */ + if (sym_string_within_range(sym, sym->def[S_DEF_USER].val)) + break; + sym->flags &= ~(SYMBOL_VALID|SYMBOL_DEF_USER); + conf_unsaved++; + break; + default: + break; + } + } + } + + sym_add_change_count(conf_warnings || conf_unsaved); + + return 0; +} + +/* + * Kconfig configuration printer + * + * This printer is used when generating the resulting configuration after + * kconfig invocation and `defconfig' files. Unset symbol might be omitted by + * passing a non-NULL argument to the printer. + * + */ +static void +kconfig_print_symbol(FILE *fp, struct symbol *sym, const char *value, void *arg) +{ + + switch (sym->type) { + case S_BOOLEAN: + case S_TRISTATE: + if (*value == 'n') { + bool skip_unset = (arg != NULL); + + if (!skip_unset) + fprintf(fp, "# %s%s is not set\n", + CONFIG_, sym->name); + return; + } + break; + default: + break; + } + + fprintf(fp, "%s%s=%s\n", CONFIG_, sym->name, value); +} + +static void +kconfig_print_comment(FILE *fp, const char *value, void *arg) +{ + const char *p = value; + size_t l; + + for (;;) { + l = strcspn(p, "\n"); + fprintf(fp, "#"); + if (l) { + fprintf(fp, " "); + xfwrite(p, l, 1, fp); + p += l; + } + fprintf(fp, "\n"); + if (*p++ == '\0') + break; + } +} + +static struct conf_printer kconfig_printer_cb = +{ + .print_symbol = kconfig_print_symbol, + .print_comment = kconfig_print_comment, +}; + +/* + * Header printer + * + * This printer is used when generating the `include/generated/autoconf.h' file. + */ +static void +header_print_symbol(FILE *fp, struct symbol *sym, const char *value, void *arg) +{ + + switch (sym->type) { + case S_BOOLEAN: + case S_TRISTATE: { + const char *suffix = ""; + + switch (*value) { + case 'n': + break; + case 'm': + suffix = "_MODULE"; + /* fall through */ + default: + fprintf(fp, "#define %s%s%s 1\n", + CONFIG_, sym->name, suffix); + } + break; + } + case S_HEX: { + const char *prefix = ""; + + if (value[0] != '0' || (value[1] != 'x' && value[1] != 'X')) + prefix = "0x"; + fprintf(fp, "#define %s%s %s%s\n", + CONFIG_, sym->name, prefix, value); + break; + } + case S_STRING: + case S_INT: + fprintf(fp, "#define %s%s %s\n", + CONFIG_, sym->name, value); + break; + default: + break; + } + +} + +static void +header_print_comment(FILE *fp, const char *value, void *arg) +{ + const char *p = value; + size_t l; + + fprintf(fp, "/*\n"); + for (;;) { + l = strcspn(p, "\n"); + fprintf(fp, " *"); + if (l) { + fprintf(fp, " "); + xfwrite(p, l, 1, fp); + p += l; + } + fprintf(fp, "\n"); + if (*p++ == '\0') + break; + } + fprintf(fp, " */\n"); +} + +static struct conf_printer header_printer_cb = +{ + .print_symbol = header_print_symbol, + .print_comment = header_print_comment, +}; + +/* + * Tristate printer + * + * This printer is used when generating the `include/config/tristate.conf' file. + */ +static void +tristate_print_symbol(FILE *fp, struct symbol *sym, const char *value, void *arg) +{ + + if (sym->type == S_TRISTATE && *value != 'n') + fprintf(fp, "%s%s=%c\n", CONFIG_, sym->name, (char)toupper(*value)); +} + +static struct conf_printer tristate_printer_cb = +{ + .print_symbol = tristate_print_symbol, + .print_comment = kconfig_print_comment, +}; + +static void conf_write_symbol(FILE *fp, struct symbol *sym, + struct conf_printer *printer, void *printer_arg) +{ + const char *str; + + switch (sym->type) { + case S_OTHER: + case S_UNKNOWN: + break; + case S_STRING: + str = sym_get_string_value(sym); + str = sym_escape_string_value(str); + printer->print_symbol(fp, sym, str, printer_arg); + free((void *)str); + break; + default: + str = sym_get_string_value(sym); + printer->print_symbol(fp, sym, str, printer_arg); + } +} + +static void +conf_write_heading(FILE *fp, struct conf_printer *printer, void *printer_arg) +{ + char buf[256]; + + snprintf(buf, sizeof(buf), + "\n" + "Automatically generated file; DO NOT EDIT.\n" + "%s\n", + rootmenu.prompt->text); + + printer->print_comment(fp, buf, printer_arg); +} + +/* + * Write out a minimal config. + * All values that has default values are skipped as this is redundant. + */ +int conf_write_defconfig(const char *filename) +{ + struct symbol *sym; + struct menu *menu; + FILE *out; + + out = fopen(filename, "w"); + if (!out) + return 1; + + sym_clear_all_valid(); + + /* Traverse all menus to find all relevant symbols */ + menu = rootmenu.list; + + while (menu != NULL) + { + sym = menu->sym; + if (sym == NULL) { + if (!menu_is_visible(menu)) + goto next_menu; + } else if (!sym_is_choice(sym)) { + sym_calc_value(sym); + if (!(sym->flags & SYMBOL_WRITE)) + goto next_menu; + sym->flags &= ~SYMBOL_WRITE; + /* If we cannot change the symbol - skip */ + if (!sym_is_changable(sym)) + goto next_menu; + /* If symbol equals to default value - skip */ + if (strcmp(sym_get_string_value(sym), sym_get_string_default(sym)) == 0) + goto next_menu; + + /* + * If symbol is a choice value and equals to the + * default for a choice - skip. + * But only if value is bool and equal to "y" and + * choice is not "optional". + * (If choice is "optional" then all values can be "n") + */ + if (sym_is_choice_value(sym)) { + struct symbol *cs; + struct symbol *ds; + + cs = prop_get_symbol(sym_get_choice_prop(sym)); + ds = sym_choice_default(cs); + if (!sym_is_optional(cs) && sym == ds) { + if ((sym->type == S_BOOLEAN) && + sym_get_tristate_value(sym) == yes) + goto next_menu; + } + } + conf_write_symbol(out, sym, &kconfig_printer_cb, NULL); + } +next_menu: + if (menu->list != NULL) { + menu = menu->list; + } + else if (menu->next != NULL) { + menu = menu->next; + } else { + while ((menu = menu->parent)) { + if (menu->next != NULL) { + menu = menu->next; + break; + } + } + } + } + fclose(out); + return 0; +} + +int conf_write(const char *name) +{ + FILE *out; + struct symbol *sym; + struct menu *menu; + const char *basename; + const char *str; + char dirname[PATH_MAX+1], tmpname[PATH_MAX+1], newname[PATH_MAX+1]; + char *env; + + if (!name) + name = conf_get_configname(); + + dirname[0] = 0; + if (name && name[0]) { + struct stat st; + char *slash; + + if (!stat(name, &st) && S_ISDIR(st.st_mode)) { + strcpy(dirname, name); + strcat(dirname, "/"); + basename = conf_get_configname(); + } else if ((slash = strrchr(name, '/'))) { + int size = slash - name + 1; + memcpy(dirname, name, size); + dirname[size] = 0; + if (slash[1]) + basename = slash + 1; + else + basename = conf_get_configname(); + } else + basename = name; + } else + basename = conf_get_configname(); + + sprintf(newname, "%s%s", dirname, basename); + env = getenv("KCONFIG_OVERWRITECONFIG"); + if (!env || !*env) { + sprintf(tmpname, "%s.tmpconfig.%d", dirname, (int)getpid()); + out = fopen(tmpname, "w"); + } else { + *tmpname = 0; + out = fopen(newname, "w"); + } + if (!out) + return 1; + + conf_write_heading(out, &kconfig_printer_cb, NULL); + + if (!conf_get_changed()) + sym_clear_all_valid(); + + menu = rootmenu.list; + while (menu) { + sym = menu->sym; + if (!sym) { + if (!menu_is_visible(menu)) + goto next; + str = menu_get_prompt(menu); + fprintf(out, "\n" + "#\n" + "# %s\n" + "#\n", str); + } else if (!(sym->flags & SYMBOL_CHOICE)) { + sym_calc_value(sym); + if (!(sym->flags & SYMBOL_WRITE)) + goto next; + sym->flags &= ~SYMBOL_WRITE; + + conf_write_symbol(out, sym, &kconfig_printer_cb, NULL); + } + +next: + if (menu->list) { + menu = menu->list; + continue; + } + if (menu->next) + menu = menu->next; + else while ((menu = menu->parent)) { + if (menu->next) { + menu = menu->next; + break; + } + } + } + fclose(out); + + if (*tmpname) { + strcat(dirname, basename); + strcat(dirname, ".old"); + rename(newname, dirname); + if (rename(tmpname, newname)) + return 1; + } + + conf_message(_("configuration written to %s"), newname); + + sym_set_change_count(0); + + return 0; +} + +static int conf_split_config(void) +{ + const char *name; + char path[PATH_MAX+1]; + char *opwd, *dir, *_name; + char *s, *d, c; + struct symbol *sym; + struct stat sb; + int res, i, fd; + + name = conf_get_autoconfig_name(); + conf_read_simple(name, S_DEF_AUTO); + sym_calc_value(modules_sym); + + opwd = malloc(256); + _name = strdup(name); + if (opwd == NULL || _name == NULL) + return 1; + opwd = getcwd(opwd, 256); + dir = dirname(_name); + if (dir == NULL) { + res = 1; + goto err; + } + if (chdir(dir)) { + res = 1; + goto err; + } + + res = 0; + for_all_symbols(i, sym) { + sym_calc_value(sym); + if ((sym->flags & SYMBOL_AUTO) || !sym->name) + continue; + if (sym->flags & SYMBOL_WRITE) { + if (sym->flags & SYMBOL_DEF_AUTO) { + /* + * symbol has old and new value, + * so compare them... + */ + switch (sym->type) { + case S_BOOLEAN: + case S_TRISTATE: + if (sym_get_tristate_value(sym) == + sym->def[S_DEF_AUTO].tri) + continue; + break; + case S_STRING: + case S_HEX: + case S_INT: + if (!strcmp(sym_get_string_value(sym), + sym->def[S_DEF_AUTO].val)) + continue; + break; + default: + break; + } + } else { + /* + * If there is no old value, only 'no' (unset) + * is allowed as new value. + */ + switch (sym->type) { + case S_BOOLEAN: + case S_TRISTATE: + if (sym_get_tristate_value(sym) == no) + continue; + break; + default: + break; + } + } + } else if (!(sym->flags & SYMBOL_DEF_AUTO)) + /* There is neither an old nor a new value. */ + continue; + /* else + * There is an old value, but no new value ('no' (unset) + * isn't saved in auto.conf, so the old value is always + * different from 'no'). + */ + + /* Replace all '_' and append ".h" */ + s = sym->name; + d = path; + while ((c = *s++)) { + c = tolower(c); + *d++ = (c == '_') ? '/' : c; + } + strcpy(d, ".h"); + + /* Assume directory path already exists. */ + fd = open(path, O_WRONLY | O_CREAT | O_TRUNC, 0644); + if (fd == -1) { + if (errno != ENOENT) { + res = 1; + break; + } + /* + * Create directory components, + * unless they exist already. + */ + d = path; + while ((d = strchr(d, '/'))) { + *d = 0; + if (stat(path, &sb) && mkdir(path, 0755)) { + res = 1; + goto out; + } + *d++ = '/'; + } + /* Try it again. */ + fd = open(path, O_WRONLY | O_CREAT | O_TRUNC, 0644); + if (fd == -1) { + res = 1; + break; + } + } + close(fd); + } +out: + if (chdir(opwd)) + res = 1; +err: + free(opwd); + free(_name); + return res; +} + +int conf_write_autoconf(void) +{ + struct symbol *sym; + const char *name; + FILE *out, *tristate, *out_h; + int i; + char dir[PATH_MAX+1], buf[PATH_MAX+1]; + char *s; + + strcpy(dir, conf_get_configname()); + s = strrchr(dir, '/'); + if (s) + s[1] = 0; + else + dir[0] = 0; + + sym_clear_all_valid(); + + sprintf(buf, "%s.config.cmd", dir); + file_write_dep(buf); + + if (conf_split_config()) + return 1; + + sprintf(buf, "%s.tmpconfig", dir); + out = fopen(buf, "w"); + if (!out) + return 1; + + sprintf(buf, "%s.tmpconfig_tristate", dir); + tristate = fopen(buf, "w"); + if (!tristate) { + fclose(out); + return 1; + } + + sprintf(buf, "%s.tmpconfig.h", dir); + out_h = fopen(buf, "w"); + if (!out_h) { + fclose(out); + fclose(tristate); + return 1; + } + + conf_write_heading(out, &kconfig_printer_cb, NULL); + + conf_write_heading(tristate, &tristate_printer_cb, NULL); + + conf_write_heading(out_h, &header_printer_cb, NULL); + + for_all_symbols(i, sym) { + sym_calc_value(sym); + if (!(sym->flags & SYMBOL_WRITE) || !sym->name) + continue; + + /* write symbol to auto.conf, tristate and header files */ + conf_write_symbol(out, sym, &kconfig_printer_cb, (void *)1); + + conf_write_symbol(tristate, sym, &tristate_printer_cb, (void *)1); + + conf_write_symbol(out_h, sym, &header_printer_cb, NULL); + } + fclose(out); + fclose(tristate); + fclose(out_h); + + name = getenv("KCONFIG_AUTOHEADER"); + if (!name) + name = "include/generated/autoconf.h"; + sprintf(buf, "%s.tmpconfig.h", dir); + if (rename(buf, name)) + return 1; + name = getenv("KCONFIG_TRISTATE"); + if (!name) + name = "include/config/tristate.conf"; + sprintf(buf, "%s.tmpconfig_tristate", dir); + if (rename(buf, name)) + return 1; + name = conf_get_autoconfig_name(); + /* + * This must be the last step, kbuild has a dependency on auto.conf + * and this marks the successful completion of the previous steps. + */ + sprintf(buf, "%s.tmpconfig", dir); + if (rename(buf, name)) + return 1; + + return 0; +} + +static int sym_change_count; +static void (*conf_changed_callback)(void); + +void sym_set_change_count(int count) +{ + int _sym_change_count = sym_change_count; + sym_change_count = count; + if (conf_changed_callback && + (bool)_sym_change_count != (bool)count) + conf_changed_callback(); +} + +void sym_add_change_count(int count) +{ + sym_set_change_count(count + sym_change_count); +} + +bool conf_get_changed(void) +{ + return sym_change_count; +} + +void conf_set_changed_callback(void (*fn)(void)) +{ + conf_changed_callback = fn; +} + +static bool randomize_choice_values(struct symbol *csym) +{ + struct property *prop; + struct symbol *sym; + struct expr *e; + int cnt, def; + + /* + * If choice is mod then we may have more items selected + * and if no then no-one. + * In both cases stop. + */ + if (csym->curr.tri != yes) + return false; + + prop = sym_get_choice_prop(csym); + + /* count entries in choice block */ + cnt = 0; + expr_list_for_each_sym(prop->expr, e, sym) + cnt++; + + /* + * find a random value and set it to yes, + * set the rest to no so we have only one set + */ + def = (rand() % cnt); + + cnt = 0; + expr_list_for_each_sym(prop->expr, e, sym) { + if (def == cnt++) { + sym->def[S_DEF_USER].tri = yes; + csym->def[S_DEF_USER].val = sym; + } + else { + sym->def[S_DEF_USER].tri = no; + } + sym->flags |= SYMBOL_DEF_USER; + /* clear VALID to get value calculated */ + sym->flags &= ~SYMBOL_VALID; + } + csym->flags |= SYMBOL_DEF_USER; + /* clear VALID to get value calculated */ + csym->flags &= ~(SYMBOL_VALID); + + return true; +} + +void set_all_choice_values(struct symbol *csym) +{ + struct property *prop; + struct symbol *sym; + struct expr *e; + + prop = sym_get_choice_prop(csym); + + /* + * Set all non-assinged choice values to no + */ + expr_list_for_each_sym(prop->expr, e, sym) { + if (!sym_has_value(sym)) + sym->def[S_DEF_USER].tri = no; + } + csym->flags |= SYMBOL_DEF_USER; + /* clear VALID to get value calculated */ + csym->flags &= ~(SYMBOL_VALID | SYMBOL_NEED_SET_CHOICE_VALUES); +} + +bool conf_set_all_new_symbols(enum conf_def_mode mode) +{ + struct symbol *sym, *csym; + int i, cnt, pby, pty, ptm; /* pby: probability of bool = y + * pty: probability of tristate = y + * ptm: probability of tristate = m + */ + + pby = 50; pty = ptm = 33; /* can't go as the default in switch-case + * below, otherwise gcc whines about + * -Wmaybe-uninitialized */ + if (mode == def_random) { + int n, p[3]; + char *env = getenv("KCONFIG_PROBABILITY"); + n = 0; + while( env && *env ) { + char *endp; + int tmp = strtol( env, &endp, 10 ); + if( tmp >= 0 && tmp <= 100 ) { + p[n++] = tmp; + } else { + errno = ERANGE; + perror( "KCONFIG_PROBABILITY" ); + exit( 1 ); + } + env = (*endp == ':') ? endp+1 : endp; + if( n >=3 ) { + break; + } + } + switch( n ) { + case 1: + pby = p[0]; ptm = pby/2; pty = pby-ptm; + break; + case 2: + pty = p[0]; ptm = p[1]; pby = pty + ptm; + break; + case 3: + pby = p[0]; pty = p[1]; ptm = p[2]; + break; + } + + if( pty+ptm > 100 ) { + errno = ERANGE; + perror( "KCONFIG_PROBABILITY" ); + exit( 1 ); + } + } + bool has_changed = false; + + for_all_symbols(i, sym) { + if (sym_has_value(sym) || (sym->flags & SYMBOL_VALID)) + continue; + switch (sym_get_type(sym)) { + case S_BOOLEAN: + case S_TRISTATE: + has_changed = true; + switch (mode) { + case def_yes: + sym->def[S_DEF_USER].tri = yes; + break; + case def_mod: + sym->def[S_DEF_USER].tri = mod; + break; + case def_no: + if (sym->flags & SYMBOL_ALLNOCONFIG_Y) + sym->def[S_DEF_USER].tri = yes; + else + sym->def[S_DEF_USER].tri = no; + break; + case def_random: + sym->def[S_DEF_USER].tri = no; + cnt = rand() % 100; + if (sym->type == S_TRISTATE) { + if (cnt < pty) + sym->def[S_DEF_USER].tri = yes; + else if (cnt < (pty+ptm)) + sym->def[S_DEF_USER].tri = mod; + } else if (cnt < pby) + sym->def[S_DEF_USER].tri = yes; + break; + default: + continue; + } + if (!(sym_is_choice(sym) && mode == def_random)) + sym->flags |= SYMBOL_DEF_USER; + break; + default: + break; + } + + } + + sym_clear_all_valid(); + + /* + * We have different type of choice blocks. + * If curr.tri equals to mod then we can select several + * choice symbols in one block. + * In this case we do nothing. + * If curr.tri equals yes then only one symbol can be + * selected in a choice block and we set it to yes, + * and the rest to no. + */ + if (mode != def_random) { + for_all_symbols(i, csym) { + if ((sym_is_choice(csym) && !sym_has_value(csym)) || + sym_is_choice_value(csym)) + csym->flags |= SYMBOL_NEED_SET_CHOICE_VALUES; + } + } + + for_all_symbols(i, csym) { + if (sym_has_value(csym) || !sym_is_choice(csym)) + continue; + + sym_calc_value(csym); + if (mode == def_random) + has_changed = randomize_choice_values(csym); + else { + set_all_choice_values(csym); + has_changed = true; + } + } + + return has_changed; +} diff --git a/support/kconfig/expr.c b/support/kconfig/expr.c new file mode 100644 index 00000000..e1a39e90 --- /dev/null +++ b/support/kconfig/expr.c @@ -0,0 +1,1305 @@ +/* + * Copyright (C) 2002 Roman Zippel + * Released under the terms of the GNU GPL v2.0. + */ + +#include +#include +#include + +#include "lkc.h" + +#define DEBUG_EXPR 0 + +static int expr_eq(struct expr *e1, struct expr *e2); +static struct expr *expr_eliminate_yn(struct expr *e); + +struct expr *expr_alloc_symbol(struct symbol *sym) +{ + struct expr *e = xcalloc(1, sizeof(*e)); + e->type = E_SYMBOL; + e->left.sym = sym; + return e; +} + +struct expr *expr_alloc_one(enum expr_type type, struct expr *ce) +{ + struct expr *e = xcalloc(1, sizeof(*e)); + e->type = type; + e->left.expr = ce; + return e; +} + +struct expr *expr_alloc_two(enum expr_type type, struct expr *e1, struct expr *e2) +{ + struct expr *e = xcalloc(1, sizeof(*e)); + e->type = type; + e->left.expr = e1; + e->right.expr = e2; + return e; +} + +struct expr *expr_alloc_comp(enum expr_type type, struct symbol *s1, struct symbol *s2) +{ + struct expr *e = xcalloc(1, sizeof(*e)); + e->type = type; + e->left.sym = s1; + e->right.sym = s2; + return e; +} + +struct expr *expr_alloc_and(struct expr *e1, struct expr *e2) +{ + if (!e1) + return e2; + return e2 ? expr_alloc_two(E_AND, e1, e2) : e1; +} + +struct expr *expr_alloc_or(struct expr *e1, struct expr *e2) +{ + if (!e1) + return e2; + return e2 ? expr_alloc_two(E_OR, e1, e2) : e1; +} + +struct expr *expr_copy(const struct expr *org) +{ + struct expr *e; + + if (!org) + return NULL; + + e = xmalloc(sizeof(*org)); + memcpy(e, org, sizeof(*org)); + switch (org->type) { + case E_SYMBOL: + e->left = org->left; + break; + case E_NOT: + e->left.expr = expr_copy(org->left.expr); + break; + case E_EQUAL: + case E_GEQ: + case E_GTH: + case E_LEQ: + case E_LTH: + case E_UNEQUAL: + e->left.sym = org->left.sym; + e->right.sym = org->right.sym; + break; + case E_AND: + case E_OR: + case E_LIST: + e->left.expr = expr_copy(org->left.expr); + e->right.expr = expr_copy(org->right.expr); + break; + default: + fprintf(stderr, "can't copy type %d\n", e->type); + free(e); + e = NULL; + break; + } + + return e; +} + +void expr_free(struct expr *e) +{ + if (!e) + return; + + switch (e->type) { + case E_SYMBOL: + break; + case E_NOT: + expr_free(e->left.expr); + break; + case E_EQUAL: + case E_GEQ: + case E_GTH: + case E_LEQ: + case E_LTH: + case E_UNEQUAL: + break; + case E_OR: + case E_AND: + expr_free(e->left.expr); + expr_free(e->right.expr); + break; + default: + fprintf(stderr, "how to free type %d?\n", e->type); + break; + } + free(e); +} + +static int trans_count; + +#define e1 (*ep1) +#define e2 (*ep2) + +/* + * expr_eliminate_eq() helper. + * + * Walks the two expression trees given in 'ep1' and 'ep2'. Any node that does + * not have type 'type' (E_OR/E_AND) is considered a leaf, and is compared + * against all other leaves. Two equal leaves are both replaced with either 'y' + * or 'n' as appropriate for 'type', to be eliminated later. + */ +static void __expr_eliminate_eq(enum expr_type type, struct expr **ep1, struct expr **ep2) +{ + /* Recurse down to leaves */ + + if (e1->type == type) { + __expr_eliminate_eq(type, &e1->left.expr, &e2); + __expr_eliminate_eq(type, &e1->right.expr, &e2); + return; + } + if (e2->type == type) { + __expr_eliminate_eq(type, &e1, &e2->left.expr); + __expr_eliminate_eq(type, &e1, &e2->right.expr); + return; + } + + /* e1 and e2 are leaves. Compare them. */ + + if (e1->type == E_SYMBOL && e2->type == E_SYMBOL && + e1->left.sym == e2->left.sym && + (e1->left.sym == &symbol_yes || e1->left.sym == &symbol_no)) + return; + if (!expr_eq(e1, e2)) + return; + + /* e1 and e2 are equal leaves. Prepare them for elimination. */ + + trans_count++; + expr_free(e1); expr_free(e2); + switch (type) { + case E_OR: + e1 = expr_alloc_symbol(&symbol_no); + e2 = expr_alloc_symbol(&symbol_no); + break; + case E_AND: + e1 = expr_alloc_symbol(&symbol_yes); + e2 = expr_alloc_symbol(&symbol_yes); + break; + default: + ; + } +} + +/* + * Rewrites the expressions 'ep1' and 'ep2' to remove operands common to both. + * Example reductions: + * + * ep1: A && B -> ep1: y + * ep2: A && B && C -> ep2: C + * + * ep1: A || B -> ep1: n + * ep2: A || B || C -> ep2: C + * + * ep1: A && (B && FOO) -> ep1: FOO + * ep2: (BAR && B) && A -> ep2: BAR + * + * ep1: A && (B || C) -> ep1: y + * ep2: (C || B) && A -> ep2: y + * + * Comparisons are done between all operands at the same "level" of && or ||. + * For example, in the expression 'e1 && (e2 || e3) && (e4 || e5)', the + * following operands will be compared: + * + * - 'e1', 'e2 || e3', and 'e4 || e5', against each other + * - e2 against e3 + * - e4 against e5 + * + * Parentheses are irrelevant within a single level. 'e1 && (e2 && e3)' and + * '(e1 && e2) && e3' are both a single level. + * + * See __expr_eliminate_eq() as well. + */ +void expr_eliminate_eq(struct expr **ep1, struct expr **ep2) +{ + if (!e1 || !e2) + return; + switch (e1->type) { + case E_OR: + case E_AND: + __expr_eliminate_eq(e1->type, ep1, ep2); + default: + ; + } + if (e1->type != e2->type) switch (e2->type) { + case E_OR: + case E_AND: + __expr_eliminate_eq(e2->type, ep1, ep2); + default: + ; + } + e1 = expr_eliminate_yn(e1); + e2 = expr_eliminate_yn(e2); +} + +#undef e1 +#undef e2 + +/* + * Returns true if 'e1' and 'e2' are equal, after minor simplification. Two + * &&/|| expressions are considered equal if every operand in one expression + * equals some operand in the other (operands do not need to appear in the same + * order), recursively. + */ +static int expr_eq(struct expr *e1, struct expr *e2) +{ + int res, old_count; + + if (e1->type != e2->type) + return 0; + switch (e1->type) { + case E_EQUAL: + case E_GEQ: + case E_GTH: + case E_LEQ: + case E_LTH: + case E_UNEQUAL: + return e1->left.sym == e2->left.sym && e1->right.sym == e2->right.sym; + case E_SYMBOL: + return e1->left.sym == e2->left.sym; + case E_NOT: + return expr_eq(e1->left.expr, e2->left.expr); + case E_AND: + case E_OR: + e1 = expr_copy(e1); + e2 = expr_copy(e2); + old_count = trans_count; + expr_eliminate_eq(&e1, &e2); + res = (e1->type == E_SYMBOL && e2->type == E_SYMBOL && + e1->left.sym == e2->left.sym); + expr_free(e1); + expr_free(e2); + trans_count = old_count; + return res; + case E_LIST: + case E_RANGE: + case E_NONE: + /* panic */; + } + + if (DEBUG_EXPR) { + expr_fprint(e1, stdout); + printf(" = "); + expr_fprint(e2, stdout); + printf(" ?\n"); + } + + return 0; +} + +/* + * Recursively performs the following simplifications in-place (as well as the + * corresponding simplifications with swapped operands): + * + * expr && n -> n + * expr && y -> expr + * expr || n -> expr + * expr || y -> y + * + * Returns the optimized expression. + */ +static struct expr *expr_eliminate_yn(struct expr *e) +{ + struct expr *tmp; + + if (e) switch (e->type) { + case E_AND: + e->left.expr = expr_eliminate_yn(e->left.expr); + e->right.expr = expr_eliminate_yn(e->right.expr); + if (e->left.expr->type == E_SYMBOL) { + if (e->left.expr->left.sym == &symbol_no) { + expr_free(e->left.expr); + expr_free(e->right.expr); + e->type = E_SYMBOL; + e->left.sym = &symbol_no; + e->right.expr = NULL; + return e; + } else if (e->left.expr->left.sym == &symbol_yes) { + free(e->left.expr); + tmp = e->right.expr; + *e = *(e->right.expr); + free(tmp); + return e; + } + } + if (e->right.expr->type == E_SYMBOL) { + if (e->right.expr->left.sym == &symbol_no) { + expr_free(e->left.expr); + expr_free(e->right.expr); + e->type = E_SYMBOL; + e->left.sym = &symbol_no; + e->right.expr = NULL; + return e; + } else if (e->right.expr->left.sym == &symbol_yes) { + free(e->right.expr); + tmp = e->left.expr; + *e = *(e->left.expr); + free(tmp); + return e; + } + } + break; + case E_OR: + e->left.expr = expr_eliminate_yn(e->left.expr); + e->right.expr = expr_eliminate_yn(e->right.expr); + if (e->left.expr->type == E_SYMBOL) { + if (e->left.expr->left.sym == &symbol_no) { + free(e->left.expr); + tmp = e->right.expr; + *e = *(e->right.expr); + free(tmp); + return e; + } else if (e->left.expr->left.sym == &symbol_yes) { + expr_free(e->left.expr); + expr_free(e->right.expr); + e->type = E_SYMBOL; + e->left.sym = &symbol_yes; + e->right.expr = NULL; + return e; + } + } + if (e->right.expr->type == E_SYMBOL) { + if (e->right.expr->left.sym == &symbol_no) { + free(e->right.expr); + tmp = e->left.expr; + *e = *(e->left.expr); + free(tmp); + return e; + } else if (e->right.expr->left.sym == &symbol_yes) { + expr_free(e->left.expr); + expr_free(e->right.expr); + e->type = E_SYMBOL; + e->left.sym = &symbol_yes; + e->right.expr = NULL; + return e; + } + } + break; + default: + ; + } + return e; +} + +/* + * bool FOO!=n => FOO + */ +struct expr *expr_trans_bool(struct expr *e) +{ + if (!e) + return NULL; + switch (e->type) { + case E_AND: + case E_OR: + case E_NOT: + e->left.expr = expr_trans_bool(e->left.expr); + e->right.expr = expr_trans_bool(e->right.expr); + break; + case E_UNEQUAL: + // FOO!=n -> FOO + if (e->left.sym->type == S_TRISTATE) { + if (e->right.sym == &symbol_no) { + e->type = E_SYMBOL; + e->right.sym = NULL; + } + } + break; + default: + ; + } + return e; +} + +/* + * e1 || e2 -> ? + */ +static struct expr *expr_join_or(struct expr *e1, struct expr *e2) +{ + struct expr *tmp; + struct symbol *sym1, *sym2; + + if (expr_eq(e1, e2)) + return expr_copy(e1); + if (e1->type != E_EQUAL && e1->type != E_UNEQUAL && e1->type != E_SYMBOL && e1->type != E_NOT) + return NULL; + if (e2->type != E_EQUAL && e2->type != E_UNEQUAL && e2->type != E_SYMBOL && e2->type != E_NOT) + return NULL; + if (e1->type == E_NOT) { + tmp = e1->left.expr; + if (tmp->type != E_EQUAL && tmp->type != E_UNEQUAL && tmp->type != E_SYMBOL) + return NULL; + sym1 = tmp->left.sym; + } else + sym1 = e1->left.sym; + if (e2->type == E_NOT) { + if (e2->left.expr->type != E_SYMBOL) + return NULL; + sym2 = e2->left.expr->left.sym; + } else + sym2 = e2->left.sym; + if (sym1 != sym2) + return NULL; + if (sym1->type != S_BOOLEAN && sym1->type != S_TRISTATE) + return NULL; + if (sym1->type == S_TRISTATE) { + if (e1->type == E_EQUAL && e2->type == E_EQUAL && + ((e1->right.sym == &symbol_yes && e2->right.sym == &symbol_mod) || + (e1->right.sym == &symbol_mod && e2->right.sym == &symbol_yes))) { + // (a='y') || (a='m') -> (a!='n') + return expr_alloc_comp(E_UNEQUAL, sym1, &symbol_no); + } + if (e1->type == E_EQUAL && e2->type == E_EQUAL && + ((e1->right.sym == &symbol_yes && e2->right.sym == &symbol_no) || + (e1->right.sym == &symbol_no && e2->right.sym == &symbol_yes))) { + // (a='y') || (a='n') -> (a!='m') + return expr_alloc_comp(E_UNEQUAL, sym1, &symbol_mod); + } + if (e1->type == E_EQUAL && e2->type == E_EQUAL && + ((e1->right.sym == &symbol_mod && e2->right.sym == &symbol_no) || + (e1->right.sym == &symbol_no && e2->right.sym == &symbol_mod))) { + // (a='m') || (a='n') -> (a!='y') + return expr_alloc_comp(E_UNEQUAL, sym1, &symbol_yes); + } + } + if (sym1->type == S_BOOLEAN && sym1 == sym2) { + if ((e1->type == E_NOT && e1->left.expr->type == E_SYMBOL && e2->type == E_SYMBOL) || + (e2->type == E_NOT && e2->left.expr->type == E_SYMBOL && e1->type == E_SYMBOL)) + return expr_alloc_symbol(&symbol_yes); + } + + if (DEBUG_EXPR) { + printf("optimize ("); + expr_fprint(e1, stdout); + printf(") || ("); + expr_fprint(e2, stdout); + printf(")?\n"); + } + return NULL; +} + +static struct expr *expr_join_and(struct expr *e1, struct expr *e2) +{ + struct expr *tmp; + struct symbol *sym1, *sym2; + + if (expr_eq(e1, e2)) + return expr_copy(e1); + if (e1->type != E_EQUAL && e1->type != E_UNEQUAL && e1->type != E_SYMBOL && e1->type != E_NOT) + return NULL; + if (e2->type != E_EQUAL && e2->type != E_UNEQUAL && e2->type != E_SYMBOL && e2->type != E_NOT) + return NULL; + if (e1->type == E_NOT) { + tmp = e1->left.expr; + if (tmp->type != E_EQUAL && tmp->type != E_UNEQUAL && tmp->type != E_SYMBOL) + return NULL; + sym1 = tmp->left.sym; + } else + sym1 = e1->left.sym; + if (e2->type == E_NOT) { + if (e2->left.expr->type != E_SYMBOL) + return NULL; + sym2 = e2->left.expr->left.sym; + } else + sym2 = e2->left.sym; + if (sym1 != sym2) + return NULL; + if (sym1->type != S_BOOLEAN && sym1->type != S_TRISTATE) + return NULL; + + if ((e1->type == E_SYMBOL && e2->type == E_EQUAL && e2->right.sym == &symbol_yes) || + (e2->type == E_SYMBOL && e1->type == E_EQUAL && e1->right.sym == &symbol_yes)) + // (a) && (a='y') -> (a='y') + return expr_alloc_comp(E_EQUAL, sym1, &symbol_yes); + + if ((e1->type == E_SYMBOL && e2->type == E_UNEQUAL && e2->right.sym == &symbol_no) || + (e2->type == E_SYMBOL && e1->type == E_UNEQUAL && e1->right.sym == &symbol_no)) + // (a) && (a!='n') -> (a) + return expr_alloc_symbol(sym1); + + if ((e1->type == E_SYMBOL && e2->type == E_UNEQUAL && e2->right.sym == &symbol_mod) || + (e2->type == E_SYMBOL && e1->type == E_UNEQUAL && e1->right.sym == &symbol_mod)) + // (a) && (a!='m') -> (a='y') + return expr_alloc_comp(E_EQUAL, sym1, &symbol_yes); + + if (sym1->type == S_TRISTATE) { + if (e1->type == E_EQUAL && e2->type == E_UNEQUAL) { + // (a='b') && (a!='c') -> 'b'='c' ? 'n' : a='b' + sym2 = e1->right.sym; + if ((e2->right.sym->flags & SYMBOL_CONST) && (sym2->flags & SYMBOL_CONST)) + return sym2 != e2->right.sym ? expr_alloc_comp(E_EQUAL, sym1, sym2) + : expr_alloc_symbol(&symbol_no); + } + if (e1->type == E_UNEQUAL && e2->type == E_EQUAL) { + // (a='b') && (a!='c') -> 'b'='c' ? 'n' : a='b' + sym2 = e2->right.sym; + if ((e1->right.sym->flags & SYMBOL_CONST) && (sym2->flags & SYMBOL_CONST)) + return sym2 != e1->right.sym ? expr_alloc_comp(E_EQUAL, sym1, sym2) + : expr_alloc_symbol(&symbol_no); + } + if (e1->type == E_UNEQUAL && e2->type == E_UNEQUAL && + ((e1->right.sym == &symbol_yes && e2->right.sym == &symbol_no) || + (e1->right.sym == &symbol_no && e2->right.sym == &symbol_yes))) + // (a!='y') && (a!='n') -> (a='m') + return expr_alloc_comp(E_EQUAL, sym1, &symbol_mod); + + if (e1->type == E_UNEQUAL && e2->type == E_UNEQUAL && + ((e1->right.sym == &symbol_yes && e2->right.sym == &symbol_mod) || + (e1->right.sym == &symbol_mod && e2->right.sym == &symbol_yes))) + // (a!='y') && (a!='m') -> (a='n') + return expr_alloc_comp(E_EQUAL, sym1, &symbol_no); + + if (e1->type == E_UNEQUAL && e2->type == E_UNEQUAL && + ((e1->right.sym == &symbol_mod && e2->right.sym == &symbol_no) || + (e1->right.sym == &symbol_no && e2->right.sym == &symbol_mod))) + // (a!='m') && (a!='n') -> (a='m') + return expr_alloc_comp(E_EQUAL, sym1, &symbol_yes); + + if ((e1->type == E_SYMBOL && e2->type == E_EQUAL && e2->right.sym == &symbol_mod) || + (e2->type == E_SYMBOL && e1->type == E_EQUAL && e1->right.sym == &symbol_mod) || + (e1->type == E_SYMBOL && e2->type == E_UNEQUAL && e2->right.sym == &symbol_yes) || + (e2->type == E_SYMBOL && e1->type == E_UNEQUAL && e1->right.sym == &symbol_yes)) + return NULL; + } + + if (DEBUG_EXPR) { + printf("optimize ("); + expr_fprint(e1, stdout); + printf(") && ("); + expr_fprint(e2, stdout); + printf(")?\n"); + } + return NULL; +} + +/* + * expr_eliminate_dups() helper. + * + * Walks the two expression trees given in 'ep1' and 'ep2'. Any node that does + * not have type 'type' (E_OR/E_AND) is considered a leaf, and is compared + * against all other leaves to look for simplifications. + */ +static void expr_eliminate_dups1(enum expr_type type, struct expr **ep1, struct expr **ep2) +{ +#define e1 (*ep1) +#define e2 (*ep2) + struct expr *tmp; + + /* Recurse down to leaves */ + + if (e1->type == type) { + expr_eliminate_dups1(type, &e1->left.expr, &e2); + expr_eliminate_dups1(type, &e1->right.expr, &e2); + return; + } + if (e2->type == type) { + expr_eliminate_dups1(type, &e1, &e2->left.expr); + expr_eliminate_dups1(type, &e1, &e2->right.expr); + return; + } + + /* e1 and e2 are leaves. Compare and process them. */ + + if (e1 == e2) + return; + + switch (e1->type) { + case E_OR: case E_AND: + expr_eliminate_dups1(e1->type, &e1, &e1); + default: + ; + } + + switch (type) { + case E_OR: + tmp = expr_join_or(e1, e2); + if (tmp) { + expr_free(e1); expr_free(e2); + e1 = expr_alloc_symbol(&symbol_no); + e2 = tmp; + trans_count++; + } + break; + case E_AND: + tmp = expr_join_and(e1, e2); + if (tmp) { + expr_free(e1); expr_free(e2); + e1 = expr_alloc_symbol(&symbol_yes); + e2 = tmp; + trans_count++; + } + break; + default: + ; + } +#undef e1 +#undef e2 +} + +/* + * Rewrites 'e' in-place to remove ("join") duplicate and other redundant + * operands. + * + * Example simplifications: + * + * A || B || A -> A || B + * A && B && A=y -> A=y && B + * + * Returns the deduplicated expression. + */ +struct expr *expr_eliminate_dups(struct expr *e) +{ + int oldcount; + if (!e) + return e; + + oldcount = trans_count; + while (1) { + trans_count = 0; + switch (e->type) { + case E_OR: case E_AND: + expr_eliminate_dups1(e->type, &e, &e); + default: + ; + } + if (!trans_count) + /* No simplifications done in this pass. We're done */ + break; + e = expr_eliminate_yn(e); + } + trans_count = oldcount; + return e; +} + +/* + * Performs various simplifications involving logical operators and + * comparisons. + * + * Allocates and returns a new expression. + */ +struct expr *expr_transform(struct expr *e) +{ + struct expr *tmp; + + if (!e) + return NULL; + switch (e->type) { + case E_EQUAL: + case E_GEQ: + case E_GTH: + case E_LEQ: + case E_LTH: + case E_UNEQUAL: + case E_SYMBOL: + case E_LIST: + break; + default: + e->left.expr = expr_transform(e->left.expr); + e->right.expr = expr_transform(e->right.expr); + } + + switch (e->type) { + case E_EQUAL: + if (e->left.sym->type != S_BOOLEAN) + break; + if (e->right.sym == &symbol_no) { + e->type = E_NOT; + e->left.expr = expr_alloc_symbol(e->left.sym); + e->right.sym = NULL; + break; + } + if (e->right.sym == &symbol_mod) { + printf("boolean symbol %s tested for 'm'? test forced to 'n'\n", e->left.sym->name); + e->type = E_SYMBOL; + e->left.sym = &symbol_no; + e->right.sym = NULL; + break; + } + if (e->right.sym == &symbol_yes) { + e->type = E_SYMBOL; + e->right.sym = NULL; + break; + } + break; + case E_UNEQUAL: + if (e->left.sym->type != S_BOOLEAN) + break; + if (e->right.sym == &symbol_no) { + e->type = E_SYMBOL; + e->right.sym = NULL; + break; + } + if (e->right.sym == &symbol_mod) { + printf("boolean symbol %s tested for 'm'? test forced to 'y'\n", e->left.sym->name); + e->type = E_SYMBOL; + e->left.sym = &symbol_yes; + e->right.sym = NULL; + break; + } + if (e->right.sym == &symbol_yes) { + e->type = E_NOT; + e->left.expr = expr_alloc_symbol(e->left.sym); + e->right.sym = NULL; + break; + } + break; + case E_NOT: + switch (e->left.expr->type) { + case E_NOT: + // !!a -> a + tmp = e->left.expr->left.expr; + free(e->left.expr); + free(e); + e = tmp; + e = expr_transform(e); + break; + case E_EQUAL: + case E_UNEQUAL: + // !a='x' -> a!='x' + tmp = e->left.expr; + free(e); + e = tmp; + e->type = e->type == E_EQUAL ? E_UNEQUAL : E_EQUAL; + break; + case E_LEQ: + case E_GEQ: + // !a<='x' -> a>'x' + tmp = e->left.expr; + free(e); + e = tmp; + e->type = e->type == E_LEQ ? E_GTH : E_LTH; + break; + case E_LTH: + case E_GTH: + // !a<'x' -> a>='x' + tmp = e->left.expr; + free(e); + e = tmp; + e->type = e->type == E_LTH ? E_GEQ : E_LEQ; + break; + case E_OR: + // !(a || b) -> !a && !b + tmp = e->left.expr; + e->type = E_AND; + e->right.expr = expr_alloc_one(E_NOT, tmp->right.expr); + tmp->type = E_NOT; + tmp->right.expr = NULL; + e = expr_transform(e); + break; + case E_AND: + // !(a && b) -> !a || !b + tmp = e->left.expr; + e->type = E_OR; + e->right.expr = expr_alloc_one(E_NOT, tmp->right.expr); + tmp->type = E_NOT; + tmp->right.expr = NULL; + e = expr_transform(e); + break; + case E_SYMBOL: + if (e->left.expr->left.sym == &symbol_yes) { + // !'y' -> 'n' + tmp = e->left.expr; + free(e); + e = tmp; + e->type = E_SYMBOL; + e->left.sym = &symbol_no; + break; + } + if (e->left.expr->left.sym == &symbol_mod) { + // !'m' -> 'm' + tmp = e->left.expr; + free(e); + e = tmp; + e->type = E_SYMBOL; + e->left.sym = &symbol_mod; + break; + } + if (e->left.expr->left.sym == &symbol_no) { + // !'n' -> 'y' + tmp = e->left.expr; + free(e); + e = tmp; + e->type = E_SYMBOL; + e->left.sym = &symbol_yes; + break; + } + break; + default: + ; + } + break; + default: + ; + } + return e; +} + +int expr_contains_symbol(struct expr *dep, struct symbol *sym) +{ + if (!dep) + return 0; + + switch (dep->type) { + case E_AND: + case E_OR: + return expr_contains_symbol(dep->left.expr, sym) || + expr_contains_symbol(dep->right.expr, sym); + case E_SYMBOL: + return dep->left.sym == sym; + case E_EQUAL: + case E_GEQ: + case E_GTH: + case E_LEQ: + case E_LTH: + case E_UNEQUAL: + return dep->left.sym == sym || + dep->right.sym == sym; + case E_NOT: + return expr_contains_symbol(dep->left.expr, sym); + default: + ; + } + return 0; +} + +bool expr_depends_symbol(struct expr *dep, struct symbol *sym) +{ + if (!dep) + return false; + + switch (dep->type) { + case E_AND: + return expr_depends_symbol(dep->left.expr, sym) || + expr_depends_symbol(dep->right.expr, sym); + case E_SYMBOL: + return dep->left.sym == sym; + case E_EQUAL: + if (dep->left.sym == sym) { + if (dep->right.sym == &symbol_yes || dep->right.sym == &symbol_mod) + return true; + } + break; + case E_UNEQUAL: + if (dep->left.sym == sym) { + if (dep->right.sym == &symbol_no) + return true; + } + break; + default: + ; + } + return false; +} + +/* + * Inserts explicit comparisons of type 'type' to symbol 'sym' into the + * expression 'e'. + * + * Examples transformations for type == E_UNEQUAL, sym == &symbol_no: + * + * A -> A!=n + * !A -> A=n + * A && B -> !(A=n || B=n) + * A || B -> !(A=n && B=n) + * A && (B || C) -> !(A=n || (B=n && C=n)) + * + * Allocates and returns a new expression. + */ +struct expr *expr_trans_compare(struct expr *e, enum expr_type type, struct symbol *sym) +{ + struct expr *e1, *e2; + + if (!e) { + e = expr_alloc_symbol(sym); + if (type == E_UNEQUAL) + e = expr_alloc_one(E_NOT, e); + return e; + } + switch (e->type) { + case E_AND: + e1 = expr_trans_compare(e->left.expr, E_EQUAL, sym); + e2 = expr_trans_compare(e->right.expr, E_EQUAL, sym); + if (sym == &symbol_yes) + e = expr_alloc_two(E_AND, e1, e2); + if (sym == &symbol_no) + e = expr_alloc_two(E_OR, e1, e2); + if (type == E_UNEQUAL) + e = expr_alloc_one(E_NOT, e); + return e; + case E_OR: + e1 = expr_trans_compare(e->left.expr, E_EQUAL, sym); + e2 = expr_trans_compare(e->right.expr, E_EQUAL, sym); + if (sym == &symbol_yes) + e = expr_alloc_two(E_OR, e1, e2); + if (sym == &symbol_no) + e = expr_alloc_two(E_AND, e1, e2); + if (type == E_UNEQUAL) + e = expr_alloc_one(E_NOT, e); + return e; + case E_NOT: + return expr_trans_compare(e->left.expr, type == E_EQUAL ? E_UNEQUAL : E_EQUAL, sym); + case E_UNEQUAL: + case E_LTH: + case E_LEQ: + case E_GTH: + case E_GEQ: + case E_EQUAL: + if (type == E_EQUAL) { + if (sym == &symbol_yes) + return expr_copy(e); + if (sym == &symbol_mod) + return expr_alloc_symbol(&symbol_no); + if (sym == &symbol_no) + return expr_alloc_one(E_NOT, expr_copy(e)); + } else { + if (sym == &symbol_yes) + return expr_alloc_one(E_NOT, expr_copy(e)); + if (sym == &symbol_mod) + return expr_alloc_symbol(&symbol_yes); + if (sym == &symbol_no) + return expr_copy(e); + } + break; + case E_SYMBOL: + return expr_alloc_comp(type, e->left.sym, sym); + case E_LIST: + case E_RANGE: + case E_NONE: + /* panic */; + } + return NULL; +} + +enum string_value_kind { + k_string, + k_signed, + k_unsigned, + k_invalid +}; + +union string_value { + unsigned long long u; + signed long long s; +}; + +static enum string_value_kind expr_parse_string(const char *str, + enum symbol_type type, + union string_value *val) +{ + char *tail; + enum string_value_kind kind; + + errno = 0; + switch (type) { + case S_BOOLEAN: + case S_TRISTATE: + val->s = !strcmp(str, "n") ? 0 : + !strcmp(str, "m") ? 1 : + !strcmp(str, "y") ? 2 : -1; + return k_signed; + case S_INT: + val->s = strtoll(str, &tail, 10); + kind = k_signed; + break; + case S_HEX: + val->u = strtoull(str, &tail, 16); + kind = k_unsigned; + break; + case S_STRING: + case S_UNKNOWN: + val->s = strtoll(str, &tail, 0); + kind = k_signed; + break; + default: + return k_invalid; + } + return !errno && !*tail && tail > str && isxdigit(tail[-1]) + ? kind : k_string; +} + +tristate expr_calc_value(struct expr *e) +{ + tristate val1, val2; + const char *str1, *str2; + enum string_value_kind k1 = k_string, k2 = k_string; + union string_value lval = {}, rval = {}; + int res; + + if (!e) + return yes; + + switch (e->type) { + case E_SYMBOL: + sym_calc_value(e->left.sym); + return e->left.sym->curr.tri; + case E_AND: + val1 = expr_calc_value(e->left.expr); + val2 = expr_calc_value(e->right.expr); + return EXPR_AND(val1, val2); + case E_OR: + val1 = expr_calc_value(e->left.expr); + val2 = expr_calc_value(e->right.expr); + return EXPR_OR(val1, val2); + case E_NOT: + val1 = expr_calc_value(e->left.expr); + return EXPR_NOT(val1); + case E_EQUAL: + case E_GEQ: + case E_GTH: + case E_LEQ: + case E_LTH: + case E_UNEQUAL: + break; + default: + printf("expr_calc_value: %d?\n", e->type); + return no; + } + + sym_calc_value(e->left.sym); + sym_calc_value(e->right.sym); + str1 = sym_get_string_value(e->left.sym); + str2 = sym_get_string_value(e->right.sym); + + if (e->left.sym->type != S_STRING || e->right.sym->type != S_STRING) { + k1 = expr_parse_string(str1, e->left.sym->type, &lval); + k2 = expr_parse_string(str2, e->right.sym->type, &rval); + } + + if (k1 == k_string || k2 == k_string) + res = strcmp(str1, str2); + else if (k1 == k_invalid || k2 == k_invalid) { + if (e->type != E_EQUAL && e->type != E_UNEQUAL) { + printf("Cannot compare \"%s\" and \"%s\"\n", str1, str2); + return no; + } + res = strcmp(str1, str2); + } else if (k1 == k_unsigned || k2 == k_unsigned) + res = (lval.u > rval.u) - (lval.u < rval.u); + else /* if (k1 == k_signed && k2 == k_signed) */ + res = (lval.s > rval.s) - (lval.s < rval.s); + + switch(e->type) { + case E_EQUAL: + return res ? no : yes; + case E_GEQ: + return res >= 0 ? yes : no; + case E_GTH: + return res > 0 ? yes : no; + case E_LEQ: + return res <= 0 ? yes : no; + case E_LTH: + return res < 0 ? yes : no; + case E_UNEQUAL: + return res ? yes : no; + default: + printf("expr_calc_value: relation %d?\n", e->type); + return no; + } +} + +static int expr_compare_type(enum expr_type t1, enum expr_type t2) +{ + if (t1 == t2) + return 0; + switch (t1) { + case E_LEQ: + case E_LTH: + case E_GEQ: + case E_GTH: + if (t2 == E_EQUAL || t2 == E_UNEQUAL) + return 1; + case E_EQUAL: + case E_UNEQUAL: + if (t2 == E_NOT) + return 1; + case E_NOT: + if (t2 == E_AND) + return 1; + case E_AND: + if (t2 == E_OR) + return 1; + case E_OR: + if (t2 == E_LIST) + return 1; + case E_LIST: + if (t2 == 0) + return 1; + default: + return -1; + } + printf("[%dgt%d?]", t1, t2); + return 0; +} + +void expr_print(struct expr *e, + void (*fn)(void *, struct symbol *, const char *), + void *data, int prevtoken) +{ + if (!e) { + fn(data, NULL, "y"); + return; + } + + if (expr_compare_type(prevtoken, e->type) > 0) + fn(data, NULL, "("); + switch (e->type) { + case E_SYMBOL: + if (e->left.sym->name) + fn(data, e->left.sym, e->left.sym->name); + else + fn(data, NULL, ""); + break; + case E_NOT: + fn(data, NULL, "!"); + expr_print(e->left.expr, fn, data, E_NOT); + break; + case E_EQUAL: + if (e->left.sym->name) + fn(data, e->left.sym, e->left.sym->name); + else + fn(data, NULL, ""); + fn(data, NULL, "="); + fn(data, e->right.sym, e->right.sym->name); + break; + case E_LEQ: + case E_LTH: + if (e->left.sym->name) + fn(data, e->left.sym, e->left.sym->name); + else + fn(data, NULL, ""); + fn(data, NULL, e->type == E_LEQ ? "<=" : "<"); + fn(data, e->right.sym, e->right.sym->name); + break; + case E_GEQ: + case E_GTH: + if (e->left.sym->name) + fn(data, e->left.sym, e->left.sym->name); + else + fn(data, NULL, ""); + fn(data, NULL, e->type == E_GEQ ? ">=" : ">"); + fn(data, e->right.sym, e->right.sym->name); + break; + case E_UNEQUAL: + if (e->left.sym->name) + fn(data, e->left.sym, e->left.sym->name); + else + fn(data, NULL, ""); + fn(data, NULL, "!="); + fn(data, e->right.sym, e->right.sym->name); + break; + case E_OR: + expr_print(e->left.expr, fn, data, E_OR); + fn(data, NULL, " || "); + expr_print(e->right.expr, fn, data, E_OR); + break; + case E_AND: + expr_print(e->left.expr, fn, data, E_AND); + fn(data, NULL, " && "); + expr_print(e->right.expr, fn, data, E_AND); + break; + case E_LIST: + fn(data, e->right.sym, e->right.sym->name); + if (e->left.expr) { + fn(data, NULL, " ^ "); + expr_print(e->left.expr, fn, data, E_LIST); + } + break; + case E_RANGE: + fn(data, NULL, "["); + fn(data, e->left.sym, e->left.sym->name); + fn(data, NULL, " "); + fn(data, e->right.sym, e->right.sym->name); + fn(data, NULL, "]"); + break; + default: + { + char buf[32]; + sprintf(buf, "", e->type); + fn(data, NULL, buf); + break; + } + } + if (expr_compare_type(prevtoken, e->type) > 0) + fn(data, NULL, ")"); +} + +static void expr_print_file_helper(void *data, struct symbol *sym, const char *str) +{ + xfwrite(str, strlen(str), 1, data); +} + +void expr_fprint(struct expr *e, FILE *out) +{ + expr_print(e, expr_print_file_helper, out, E_NONE); +} + +static void expr_print_gstr_helper(void *data, struct symbol *sym, const char *str) +{ + struct gstr *gs = (struct gstr*)data; + const char *sym_str = NULL; + + if (sym) + sym_str = sym_get_string_value(sym); + + if (gs->max_width) { + unsigned extra_length = strlen(str); + const char *last_cr = strrchr(gs->s, '\n'); + unsigned last_line_length; + + if (sym_str) + extra_length += 4 + strlen(sym_str); + + if (!last_cr) + last_cr = gs->s; + + last_line_length = strlen(gs->s) - (last_cr - gs->s); + + if ((last_line_length + extra_length) > gs->max_width) + str_append(gs, "\\\n"); + } + + str_append(gs, str); + if (sym && sym->type != S_UNKNOWN) + str_printf(gs, " [=%s]", sym_str); +} + +void expr_gstr_print(struct expr *e, struct gstr *gs) +{ + expr_print(e, expr_print_gstr_helper, gs, E_NONE); +} + +/* + * Transform the top level "||" tokens into newlines and prepend each + * line with a minus. This makes expressions much easier to read. + * Suitable for reverse dependency expressions. + */ +static void expr_print_revdep(struct expr *e, + void (*fn)(void *, struct symbol *, const char *), + void *data, tristate pr_type, const char **title) +{ + if (e->type == E_OR) { + expr_print_revdep(e->left.expr, fn, data, pr_type, title); + expr_print_revdep(e->right.expr, fn, data, pr_type, title); + } else if (expr_calc_value(e) == pr_type) { + if (*title) { + fn(data, NULL, *title); + *title = NULL; + } + + fn(data, NULL, " - "); + expr_print(e, fn, data, E_NONE); + fn(data, NULL, "\n"); + } +} + +void expr_gstr_print_revdep(struct expr *e, struct gstr *gs, + tristate pr_type, const char *title) +{ + expr_print_revdep(e, expr_print_gstr_helper, gs, pr_type, &title); +} diff --git a/support/kconfig/expr.h b/support/kconfig/expr.h new file mode 100644 index 00000000..94a383b2 --- /dev/null +++ b/support/kconfig/expr.h @@ -0,0 +1,329 @@ +/* + * Copyright (C) 2002 Roman Zippel + * Released under the terms of the GNU GPL v2.0. + */ + +#ifndef EXPR_H +#define EXPR_H + +#ifdef __cplusplus +extern "C" { +#endif + +#include +#include +#include "list.h" +#ifndef __cplusplus +#include +#endif + +struct file { + struct file *next; + struct file *parent; + const char *name; + int lineno; +}; + +typedef enum tristate { + no, mod, yes +} tristate; + +enum expr_type { + E_NONE, E_OR, E_AND, E_NOT, + E_EQUAL, E_UNEQUAL, E_LTH, E_LEQ, E_GTH, E_GEQ, + E_LIST, E_SYMBOL, E_RANGE +}; + +union expr_data { + struct expr *expr; + struct symbol *sym; +}; + +struct expr { + enum expr_type type; + union expr_data left, right; +}; + +#define EXPR_OR(dep1, dep2) (((dep1)>(dep2))?(dep1):(dep2)) +#define EXPR_AND(dep1, dep2) (((dep1)<(dep2))?(dep1):(dep2)) +#define EXPR_NOT(dep) (2-(dep)) + +#define expr_list_for_each_sym(l, e, s) \ + for (e = (l); e && (s = e->right.sym); e = e->left.expr) + +struct expr_value { + struct expr *expr; + tristate tri; +}; + +struct symbol_value { + void *val; + tristate tri; +}; + +enum symbol_type { + S_UNKNOWN, S_BOOLEAN, S_TRISTATE, S_INT, S_HEX, S_STRING, S_OTHER +}; + +/* enum values are used as index to symbol.def[] */ +enum { + S_DEF_USER, /* main user value */ + S_DEF_AUTO, /* values read from auto.conf */ + S_DEF_DEF3, /* Reserved for UI usage */ + S_DEF_DEF4, /* Reserved for UI usage */ + S_DEF_COUNT +}; + +/* + * Represents a configuration symbol. + * + * Choices are represented as a special kind of symbol and have the + * SYMBOL_CHOICE bit set in 'flags'. + */ +struct symbol { + /* The next symbol in the same bucket in the symbol hash table */ + struct symbol *next; + + /* The name of the symbol, e.g. "FOO" for 'config FOO' */ + char *name; + + /* S_BOOLEAN, S_TRISTATE, ... */ + enum symbol_type type; + + /* + * The calculated value of the symbol. The SYMBOL_VALID bit is set in + * 'flags' when this is up to date. Note that this value might differ + * from the user value set in e.g. a .config file, due to visibility. + */ + struct symbol_value curr; + + /* + * Values for the symbol provided from outside. def[S_DEF_USER] holds + * the .config value. + */ + struct symbol_value def[S_DEF_COUNT]; + + /* + * An upper bound on the tristate value the user can set for the symbol + * if it is a boolean or tristate. Calculated from prompt dependencies, + * which also inherit dependencies from enclosing menus, choices, and + * ifs. If 'n', the user value will be ignored. + * + * Symbols lacking prompts always have visibility 'n'. + */ + tristate visible; + + /* SYMBOL_* flags */ + int flags; + + /* List of properties. See prop_type. */ + struct property *prop; + + /* Dependencies from enclosing menus, choices, and ifs */ + struct expr_value dir_dep; + + /* Reverse dependencies through being selected by other symbols */ + struct expr_value rev_dep; + + /* + * "Weak" reverse dependencies through being implied by other symbols + */ + struct expr_value implied; +}; + +#define for_all_symbols(i, sym) for (i = 0; i < SYMBOL_HASHSIZE; i++) for (sym = symbol_hash[i]; sym; sym = sym->next) if (sym->type != S_OTHER) + +#define SYMBOL_CONST 0x0001 /* symbol is const */ +#define SYMBOL_CHECK 0x0008 /* used during dependency checking */ +#define SYMBOL_CHOICE 0x0010 /* start of a choice block (null name) */ +#define SYMBOL_CHOICEVAL 0x0020 /* used as a value in a choice block */ +#define SYMBOL_VALID 0x0080 /* set when symbol.curr is calculated */ +#define SYMBOL_OPTIONAL 0x0100 /* choice is optional - values can be 'n' */ +#define SYMBOL_WRITE 0x0200 /* write symbol to file (KCONFIG_CONFIG) */ +#define SYMBOL_CHANGED 0x0400 /* ? */ +#define SYMBOL_AUTO 0x1000 /* value from environment variable */ +#define SYMBOL_CHECKED 0x2000 /* used during dependency checking */ +#define SYMBOL_WARNED 0x8000 /* warning has been issued */ + +/* Set when symbol.def[] is used */ +#define SYMBOL_DEF 0x10000 /* First bit of SYMBOL_DEF */ +#define SYMBOL_DEF_USER 0x10000 /* symbol.def[S_DEF_USER] is valid */ +#define SYMBOL_DEF_AUTO 0x20000 /* symbol.def[S_DEF_AUTO] is valid */ +#define SYMBOL_DEF3 0x40000 /* symbol.def[S_DEF_3] is valid */ +#define SYMBOL_DEF4 0x80000 /* symbol.def[S_DEF_4] is valid */ + +/* choice values need to be set before calculating this symbol value */ +#define SYMBOL_NEED_SET_CHOICE_VALUES 0x100000 + +/* Set symbol to y if allnoconfig; used for symbols that hide others */ +#define SYMBOL_ALLNOCONFIG_Y 0x200000 + +#define SYMBOL_MAXLENGTH 256 +#define SYMBOL_HASHSIZE 9973 + +/* A property represent the config options that can be associated + * with a config "symbol". + * Sample: + * config FOO + * default y + * prompt "foo prompt" + * select BAR + * config BAZ + * int "BAZ Value" + * range 1..255 + */ +enum prop_type { + P_UNKNOWN, + P_PROMPT, /* prompt "foo prompt" or "BAZ Value" */ + P_COMMENT, /* text associated with a comment */ + P_MENU, /* prompt associated with a menu or menuconfig symbol */ + P_DEFAULT, /* default y */ + P_CHOICE, /* choice value */ + P_SELECT, /* select BAR */ + P_IMPLY, /* imply BAR */ + P_RANGE, /* range 7..100 (for a symbol) */ + P_ENV, /* value from environment variable */ + P_SYMBOL, /* where a symbol is defined */ +}; + +struct property { + struct property *next; /* next property - null if last */ + struct symbol *sym; /* the symbol for which the property is associated */ + enum prop_type type; /* type of property */ + const char *text; /* the prompt value - P_PROMPT, P_MENU, P_COMMENT */ + struct expr_value visible; + struct expr *expr; /* the optional conditional part of the property */ + struct menu *menu; /* the menu the property are associated with + * valid for: P_SELECT, P_RANGE, P_CHOICE, + * P_PROMPT, P_DEFAULT, P_MENU, P_COMMENT */ + struct file *file; /* what file was this property defined */ + int lineno; /* what lineno was this property defined */ +}; + +#define for_all_properties(sym, st, tok) \ + for (st = sym->prop; st; st = st->next) \ + if (st->type == (tok)) +#define for_all_defaults(sym, st) for_all_properties(sym, st, P_DEFAULT) +#define for_all_choices(sym, st) for_all_properties(sym, st, P_CHOICE) +#define for_all_prompts(sym, st) \ + for (st = sym->prop; st; st = st->next) \ + if (st->text) + +/* + * Represents a node in the menu tree, as seen in e.g. menuconfig (though used + * for all front ends). Each symbol, menu, etc. defined in the Kconfig files + * gets a node. A symbol defined in multiple locations gets one node at each + * location. + */ +struct menu { + /* The next menu node at the same level */ + struct menu *next; + + /* The parent menu node, corresponding to e.g. a menu or choice */ + struct menu *parent; + + /* The first child menu node, for e.g. menus and choices */ + struct menu *list; + + /* + * The symbol associated with the menu node. Choices are implemented as + * a special kind of symbol. NULL for menus, comments, and ifs. + */ + struct symbol *sym; + + /* + * The prompt associated with the node. This holds the prompt for a + * symbol as well as the text for a menu or comment, along with the + * type (P_PROMPT, P_MENU, etc.) + */ + struct property *prompt; + + /* + * 'visible if' dependencies. If more than one is given, they will be + * ANDed together. + */ + struct expr *visibility; + + /* + * Ordinary dependencies from e.g. 'depends on' and 'if', ANDed + * together + */ + struct expr *dep; + + /* MENU_* flags */ + unsigned int flags; + + /* Any help text associated with the node */ + char *help; + + /* The location where the menu node appears in the Kconfig files */ + struct file *file; + int lineno; + + /* For use by front ends that need to store auxiliary data */ + void *data; +}; + +/* + * Set on a menu node when the corresponding symbol changes state in some way. + * Can be checked by front ends. + */ +#define MENU_CHANGED 0x0001 + +#define MENU_ROOT 0x0002 + +struct jump_key { + struct list_head entries; + size_t offset; + struct menu *target; + int index; +}; + +#define JUMP_NB 9 + +extern struct file *file_list; +extern struct file *current_file; +struct file *lookup_file(const char *name); + +extern struct symbol symbol_yes, symbol_no, symbol_mod; +extern struct symbol *modules_sym; +extern struct symbol *sym_defconfig_list; +extern int cdebug; +struct expr *expr_alloc_symbol(struct symbol *sym); +struct expr *expr_alloc_one(enum expr_type type, struct expr *ce); +struct expr *expr_alloc_two(enum expr_type type, struct expr *e1, struct expr *e2); +struct expr *expr_alloc_comp(enum expr_type type, struct symbol *s1, struct symbol *s2); +struct expr *expr_alloc_and(struct expr *e1, struct expr *e2); +struct expr *expr_alloc_or(struct expr *e1, struct expr *e2); +struct expr *expr_copy(const struct expr *org); +void expr_free(struct expr *e); +void expr_eliminate_eq(struct expr **ep1, struct expr **ep2); +tristate expr_calc_value(struct expr *e); +struct expr *expr_trans_bool(struct expr *e); +struct expr *expr_eliminate_dups(struct expr *e); +struct expr *expr_transform(struct expr *e); +int expr_contains_symbol(struct expr *dep, struct symbol *sym); +bool expr_depends_symbol(struct expr *dep, struct symbol *sym); +struct expr *expr_trans_compare(struct expr *e, enum expr_type type, struct symbol *sym); + +void expr_fprint(struct expr *e, FILE *out); +struct gstr; /* forward */ +void expr_gstr_print(struct expr *e, struct gstr *gs); +void expr_gstr_print_revdep(struct expr *e, struct gstr *gs, + tristate pr_type, const char *title); + +static inline int expr_is_yes(struct expr *e) +{ + return !e || (e->type == E_SYMBOL && e->left.sym == &symbol_yes); +} + +static inline int expr_is_no(struct expr *e) +{ + return e && (e->type == E_SYMBOL && e->left.sym == &symbol_no); +} + +#ifdef __cplusplus +} +#endif + +#endif /* EXPR_H */ diff --git a/support/kconfig/foo.h b/support/kconfig/foo.h new file mode 100644 index 00000000..b9cfdf83 --- /dev/null +++ b/support/kconfig/foo.h @@ -0,0 +1,12 @@ +#ifndef __KCONFIG_FOO_H +#define __KCONFIG_FOO_H + +#ifndef __APPLE__ +#include +#endif +#include + +#ifndef PATH_MAX +#define PATH_MAX 1024 +#endif +#endif /* __KCONFIG_FOO_H */ diff --git a/support/kconfig/gconf.c b/support/kconfig/gconf.c new file mode 100644 index 00000000..0c2d1c18 --- /dev/null +++ b/support/kconfig/gconf.c @@ -0,0 +1,1521 @@ +/* Hey EMACS -*- linux-c -*- */ +/* + * + * Copyright (C) 2002-2003 Romain Lievin + * Released under the terms of the GNU GPL v2.0. + * + */ + +#ifdef HAVE_CONFIG_H +# include +#endif + +#include +#include "lkc.h" +#include "images.c" + +#include +#include +#include +#include + +#include +#include +#include +#include + +//#define DEBUG + +enum { + SINGLE_VIEW, SPLIT_VIEW, FULL_VIEW +}; + +enum { + OPT_NORMAL, OPT_ALL, OPT_PROMPT +}; + +static gint view_mode = FULL_VIEW; +static gboolean show_name = TRUE; +static gboolean show_range = TRUE; +static gboolean show_value = TRUE; +static gboolean resizeable = FALSE; +static int opt_mode = OPT_NORMAL; + +GtkWidget *main_wnd = NULL; +GtkWidget *tree1_w = NULL; // left frame +GtkWidget *tree2_w = NULL; // right frame +GtkWidget *text_w = NULL; +GtkWidget *hpaned = NULL; +GtkWidget *vpaned = NULL; +GtkWidget *back_btn = NULL; +GtkWidget *save_btn = NULL; +GtkWidget *save_menu_item = NULL; + +GtkTextTag *tag1, *tag2; +GdkColor color; + +GtkTreeStore *tree1, *tree2, *tree; +GtkTreeModel *model1, *model2; +static GtkTreeIter *parents[256]; +static gint indent; + +static struct menu *current; // current node for SINGLE view +static struct menu *browsed; // browsed node for SPLIT view + +enum { + COL_OPTION, COL_NAME, COL_NO, COL_MOD, COL_YES, COL_VALUE, + COL_MENU, COL_COLOR, COL_EDIT, COL_PIXBUF, + COL_PIXVIS, COL_BTNVIS, COL_BTNACT, COL_BTNINC, COL_BTNRAD, + COL_NUMBER +}; + +static void display_list(void); +static void display_tree(struct menu *menu); +static void display_tree_part(void); +static void update_tree(struct menu *src, GtkTreeIter * dst); +static void set_node(GtkTreeIter * node, struct menu *menu, gchar ** row); +static gchar **fill_row(struct menu *menu); +static void conf_changed(void); + +/* Helping/Debugging Functions */ + +const char *dbg_sym_flags(int val) +{ + static char buf[256]; + + bzero(buf, 256); + + if (val & SYMBOL_CONST) + strcat(buf, "const/"); + if (val & SYMBOL_CHECK) + strcat(buf, "check/"); + if (val & SYMBOL_CHOICE) + strcat(buf, "choice/"); + if (val & SYMBOL_CHOICEVAL) + strcat(buf, "choiceval/"); + if (val & SYMBOL_VALID) + strcat(buf, "valid/"); + if (val & SYMBOL_OPTIONAL) + strcat(buf, "optional/"); + if (val & SYMBOL_WRITE) + strcat(buf, "write/"); + if (val & SYMBOL_CHANGED) + strcat(buf, "changed/"); + if (val & SYMBOL_AUTO) + strcat(buf, "auto/"); + + buf[strlen(buf) - 1] = '\0'; + + return buf; +} + +void replace_button_icon(GladeXML * xml, GdkDrawable * window, + GtkStyle * style, gchar * btn_name, gchar ** xpm) +{ + GdkPixmap *pixmap; + GdkBitmap *mask; + GtkToolButton *button; + GtkWidget *image; + + pixmap = gdk_pixmap_create_from_xpm_d(window, &mask, + &style->bg[GTK_STATE_NORMAL], + xpm); + + button = GTK_TOOL_BUTTON(glade_xml_get_widget(xml, btn_name)); + image = gtk_image_new_from_pixmap(pixmap, mask); + gtk_widget_show(image); + gtk_tool_button_set_icon_widget(button, image); +} + +/* Main Window Initialization */ +void init_main_window(const gchar * glade_file) +{ + GladeXML *xml; + GtkWidget *widget; + GtkTextBuffer *txtbuf; + GtkStyle *style; + + xml = glade_xml_new(glade_file, "window1", NULL); + if (!xml) + g_error(_("GUI loading failed !\n")); + glade_xml_signal_autoconnect(xml); + + main_wnd = glade_xml_get_widget(xml, "window1"); + hpaned = glade_xml_get_widget(xml, "hpaned1"); + vpaned = glade_xml_get_widget(xml, "vpaned1"); + tree1_w = glade_xml_get_widget(xml, "treeview1"); + tree2_w = glade_xml_get_widget(xml, "treeview2"); + text_w = glade_xml_get_widget(xml, "textview3"); + + back_btn = glade_xml_get_widget(xml, "button1"); + gtk_widget_set_sensitive(back_btn, FALSE); + + widget = glade_xml_get_widget(xml, "show_name1"); + gtk_check_menu_item_set_active((GtkCheckMenuItem *) widget, + show_name); + + widget = glade_xml_get_widget(xml, "show_range1"); + gtk_check_menu_item_set_active((GtkCheckMenuItem *) widget, + show_range); + + widget = glade_xml_get_widget(xml, "show_data1"); + gtk_check_menu_item_set_active((GtkCheckMenuItem *) widget, + show_value); + + save_btn = glade_xml_get_widget(xml, "button3"); + save_menu_item = glade_xml_get_widget(xml, "save1"); + conf_set_changed_callback(conf_changed); + + style = gtk_widget_get_style(main_wnd); + widget = glade_xml_get_widget(xml, "toolbar1"); + + replace_button_icon(xml, main_wnd->window, style, + "button4", (gchar **) xpm_single_view); + replace_button_icon(xml, main_wnd->window, style, + "button5", (gchar **) xpm_split_view); + replace_button_icon(xml, main_wnd->window, style, + "button6", (gchar **) xpm_tree_view); + + txtbuf = gtk_text_view_get_buffer(GTK_TEXT_VIEW(text_w)); + tag1 = gtk_text_buffer_create_tag(txtbuf, "mytag1", + "foreground", "red", + "weight", PANGO_WEIGHT_BOLD, + NULL); + tag2 = gtk_text_buffer_create_tag(txtbuf, "mytag2", + /*"style", PANGO_STYLE_OBLIQUE, */ + NULL); + + gtk_window_set_title(GTK_WINDOW(main_wnd), rootmenu.prompt->text); + + gtk_widget_show(main_wnd); +} + +void init_tree_model(void) +{ + gint i; + + tree = tree2 = gtk_tree_store_new(COL_NUMBER, + G_TYPE_STRING, G_TYPE_STRING, + G_TYPE_STRING, G_TYPE_STRING, + G_TYPE_STRING, G_TYPE_STRING, + G_TYPE_POINTER, GDK_TYPE_COLOR, + G_TYPE_BOOLEAN, GDK_TYPE_PIXBUF, + G_TYPE_BOOLEAN, G_TYPE_BOOLEAN, + G_TYPE_BOOLEAN, G_TYPE_BOOLEAN, + G_TYPE_BOOLEAN); + model2 = GTK_TREE_MODEL(tree2); + + for (parents[0] = NULL, i = 1; i < 256; i++) + parents[i] = (GtkTreeIter *) g_malloc(sizeof(GtkTreeIter)); + + tree1 = gtk_tree_store_new(COL_NUMBER, + G_TYPE_STRING, G_TYPE_STRING, + G_TYPE_STRING, G_TYPE_STRING, + G_TYPE_STRING, G_TYPE_STRING, + G_TYPE_POINTER, GDK_TYPE_COLOR, + G_TYPE_BOOLEAN, GDK_TYPE_PIXBUF, + G_TYPE_BOOLEAN, G_TYPE_BOOLEAN, + G_TYPE_BOOLEAN, G_TYPE_BOOLEAN, + G_TYPE_BOOLEAN); + model1 = GTK_TREE_MODEL(tree1); +} + +void init_left_tree(void) +{ + GtkTreeView *view = GTK_TREE_VIEW(tree1_w); + GtkCellRenderer *renderer; + GtkTreeSelection *sel; + GtkTreeViewColumn *column; + + gtk_tree_view_set_model(view, model1); + gtk_tree_view_set_headers_visible(view, TRUE); + gtk_tree_view_set_rules_hint(view, TRUE); + + column = gtk_tree_view_column_new(); + gtk_tree_view_append_column(view, column); + gtk_tree_view_column_set_title(column, _("Options")); + + renderer = gtk_cell_renderer_toggle_new(); + gtk_tree_view_column_pack_start(GTK_TREE_VIEW_COLUMN(column), + renderer, FALSE); + gtk_tree_view_column_set_attributes(GTK_TREE_VIEW_COLUMN(column), + renderer, + "active", COL_BTNACT, + "inconsistent", COL_BTNINC, + "visible", COL_BTNVIS, + "radio", COL_BTNRAD, NULL); + renderer = gtk_cell_renderer_text_new(); + gtk_tree_view_column_pack_start(GTK_TREE_VIEW_COLUMN(column), + renderer, FALSE); + gtk_tree_view_column_set_attributes(GTK_TREE_VIEW_COLUMN(column), + renderer, + "text", COL_OPTION, + "foreground-gdk", + COL_COLOR, NULL); + + sel = gtk_tree_view_get_selection(view); + gtk_tree_selection_set_mode(sel, GTK_SELECTION_SINGLE); + gtk_widget_realize(tree1_w); +} + +static void renderer_edited(GtkCellRendererText * cell, + const gchar * path_string, + const gchar * new_text, gpointer user_data); + +void init_right_tree(void) +{ + GtkTreeView *view = GTK_TREE_VIEW(tree2_w); + GtkCellRenderer *renderer; + GtkTreeSelection *sel; + GtkTreeViewColumn *column; + gint i; + + gtk_tree_view_set_model(view, model2); + gtk_tree_view_set_headers_visible(view, TRUE); + gtk_tree_view_set_rules_hint(view, TRUE); + + column = gtk_tree_view_column_new(); + gtk_tree_view_append_column(view, column); + gtk_tree_view_column_set_title(column, _("Options")); + + renderer = gtk_cell_renderer_pixbuf_new(); + gtk_tree_view_column_pack_start(GTK_TREE_VIEW_COLUMN(column), + renderer, FALSE); + gtk_tree_view_column_set_attributes(GTK_TREE_VIEW_COLUMN(column), + renderer, + "pixbuf", COL_PIXBUF, + "visible", COL_PIXVIS, NULL); + renderer = gtk_cell_renderer_toggle_new(); + gtk_tree_view_column_pack_start(GTK_TREE_VIEW_COLUMN(column), + renderer, FALSE); + gtk_tree_view_column_set_attributes(GTK_TREE_VIEW_COLUMN(column), + renderer, + "active", COL_BTNACT, + "inconsistent", COL_BTNINC, + "visible", COL_BTNVIS, + "radio", COL_BTNRAD, NULL); + renderer = gtk_cell_renderer_text_new(); + gtk_tree_view_column_pack_start(GTK_TREE_VIEW_COLUMN(column), + renderer, FALSE); + gtk_tree_view_column_set_attributes(GTK_TREE_VIEW_COLUMN(column), + renderer, + "text", COL_OPTION, + "foreground-gdk", + COL_COLOR, NULL); + + renderer = gtk_cell_renderer_text_new(); + gtk_tree_view_insert_column_with_attributes(view, -1, + _("Name"), renderer, + "text", COL_NAME, + "foreground-gdk", + COL_COLOR, NULL); + renderer = gtk_cell_renderer_text_new(); + gtk_tree_view_insert_column_with_attributes(view, -1, + "N", renderer, + "text", COL_NO, + "foreground-gdk", + COL_COLOR, NULL); + renderer = gtk_cell_renderer_text_new(); + gtk_tree_view_insert_column_with_attributes(view, -1, + "M", renderer, + "text", COL_MOD, + "foreground-gdk", + COL_COLOR, NULL); + renderer = gtk_cell_renderer_text_new(); + gtk_tree_view_insert_column_with_attributes(view, -1, + "Y", renderer, + "text", COL_YES, + "foreground-gdk", + COL_COLOR, NULL); + renderer = gtk_cell_renderer_text_new(); + gtk_tree_view_insert_column_with_attributes(view, -1, + _("Value"), renderer, + "text", COL_VALUE, + "editable", + COL_EDIT, + "foreground-gdk", + COL_COLOR, NULL); + g_signal_connect(G_OBJECT(renderer), "edited", + G_CALLBACK(renderer_edited), NULL); + + column = gtk_tree_view_get_column(view, COL_NAME); + gtk_tree_view_column_set_visible(column, show_name); + column = gtk_tree_view_get_column(view, COL_NO); + gtk_tree_view_column_set_visible(column, show_range); + column = gtk_tree_view_get_column(view, COL_MOD); + gtk_tree_view_column_set_visible(column, show_range); + column = gtk_tree_view_get_column(view, COL_YES); + gtk_tree_view_column_set_visible(column, show_range); + column = gtk_tree_view_get_column(view, COL_VALUE); + gtk_tree_view_column_set_visible(column, show_value); + + if (resizeable) { + for (i = 0; i < COL_VALUE; i++) { + column = gtk_tree_view_get_column(view, i); + gtk_tree_view_column_set_resizable(column, TRUE); + } + } + + sel = gtk_tree_view_get_selection(view); + gtk_tree_selection_set_mode(sel, GTK_SELECTION_SINGLE); +} + + +/* Utility Functions */ + + +static void text_insert_help(struct menu *menu) +{ + GtkTextBuffer *buffer; + GtkTextIter start, end; + const char *prompt = _(menu_get_prompt(menu)); + struct gstr help = str_new(); + + menu_get_ext_help(menu, &help); + + buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(text_w)); + gtk_text_buffer_get_bounds(buffer, &start, &end); + gtk_text_buffer_delete(buffer, &start, &end); + gtk_text_view_set_left_margin(GTK_TEXT_VIEW(text_w), 15); + + gtk_text_buffer_get_end_iter(buffer, &end); + gtk_text_buffer_insert_with_tags(buffer, &end, prompt, -1, tag1, + NULL); + gtk_text_buffer_insert_at_cursor(buffer, "\n\n", 2); + gtk_text_buffer_get_end_iter(buffer, &end); + gtk_text_buffer_insert_with_tags(buffer, &end, str_get(&help), -1, tag2, + NULL); + str_free(&help); +} + + +static void text_insert_msg(const char *title, const char *message) +{ + GtkTextBuffer *buffer; + GtkTextIter start, end; + const char *msg = message; + + buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(text_w)); + gtk_text_buffer_get_bounds(buffer, &start, &end); + gtk_text_buffer_delete(buffer, &start, &end); + gtk_text_view_set_left_margin(GTK_TEXT_VIEW(text_w), 15); + + gtk_text_buffer_get_end_iter(buffer, &end); + gtk_text_buffer_insert_with_tags(buffer, &end, title, -1, tag1, + NULL); + gtk_text_buffer_insert_at_cursor(buffer, "\n\n", 2); + gtk_text_buffer_get_end_iter(buffer, &end); + gtk_text_buffer_insert_with_tags(buffer, &end, msg, -1, tag2, + NULL); +} + + +/* Main Windows Callbacks */ + +void on_save_activate(GtkMenuItem * menuitem, gpointer user_data); +gboolean on_window1_delete_event(GtkWidget * widget, GdkEvent * event, + gpointer user_data) +{ + GtkWidget *dialog, *label; + gint result; + + if (!conf_get_changed()) + return FALSE; + + dialog = gtk_dialog_new_with_buttons(_("Warning !"), + GTK_WINDOW(main_wnd), + (GtkDialogFlags) + (GTK_DIALOG_MODAL | + GTK_DIALOG_DESTROY_WITH_PARENT), + GTK_STOCK_OK, + GTK_RESPONSE_YES, + GTK_STOCK_NO, + GTK_RESPONSE_NO, + GTK_STOCK_CANCEL, + GTK_RESPONSE_CANCEL, NULL); + gtk_dialog_set_default_response(GTK_DIALOG(dialog), + GTK_RESPONSE_CANCEL); + + label = gtk_label_new(_("\nSave configuration ?\n")); + gtk_container_add(GTK_CONTAINER(GTK_DIALOG(dialog)->vbox), label); + gtk_widget_show(label); + + result = gtk_dialog_run(GTK_DIALOG(dialog)); + switch (result) { + case GTK_RESPONSE_YES: + on_save_activate(NULL, NULL); + return FALSE; + case GTK_RESPONSE_NO: + return FALSE; + case GTK_RESPONSE_CANCEL: + case GTK_RESPONSE_DELETE_EVENT: + default: + gtk_widget_destroy(dialog); + return TRUE; + } + + return FALSE; +} + + +void on_window1_destroy(GtkObject * object, gpointer user_data) +{ + gtk_main_quit(); +} + + +void +on_window1_size_request(GtkWidget * widget, + GtkRequisition * requisition, gpointer user_data) +{ + static gint old_h; + gint w, h; + + if (widget->window == NULL) + gtk_window_get_default_size(GTK_WINDOW(main_wnd), &w, &h); + else + gdk_window_get_size(widget->window, &w, &h); + + if (h == old_h) + return; + old_h = h; + + gtk_paned_set_position(GTK_PANED(vpaned), 2 * h / 3); +} + + +/* Menu & Toolbar Callbacks */ + + +static void +load_filename(GtkFileSelection * file_selector, gpointer user_data) +{ + const gchar *fn; + + fn = gtk_file_selection_get_filename(GTK_FILE_SELECTION + (user_data)); + + if (conf_read(fn)) + text_insert_msg(_("Error"), _("Unable to load configuration !")); + else + display_tree(&rootmenu); +} + +void on_load1_activate(GtkMenuItem * menuitem, gpointer user_data) +{ + GtkWidget *fs; + + fs = gtk_file_selection_new(_("Load file...")); + g_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(fs)->ok_button), + "clicked", + G_CALLBACK(load_filename), (gpointer) fs); + g_signal_connect_swapped(GTK_OBJECT + (GTK_FILE_SELECTION(fs)->ok_button), + "clicked", G_CALLBACK(gtk_widget_destroy), + (gpointer) fs); + g_signal_connect_swapped(GTK_OBJECT + (GTK_FILE_SELECTION(fs)->cancel_button), + "clicked", G_CALLBACK(gtk_widget_destroy), + (gpointer) fs); + gtk_widget_show(fs); +} + + +void on_save_activate(GtkMenuItem * menuitem, gpointer user_data) +{ + if (conf_write(NULL)) + text_insert_msg(_("Error"), _("Unable to save configuration !")); +} + + +static void +store_filename(GtkFileSelection * file_selector, gpointer user_data) +{ + const gchar *fn; + + fn = gtk_file_selection_get_filename(GTK_FILE_SELECTION + (user_data)); + + if (conf_write(fn)) + text_insert_msg(_("Error"), _("Unable to save configuration !")); + + gtk_widget_destroy(GTK_WIDGET(user_data)); +} + +void on_save_as1_activate(GtkMenuItem * menuitem, gpointer user_data) +{ + GtkWidget *fs; + + fs = gtk_file_selection_new(_("Save file as...")); + g_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(fs)->ok_button), + "clicked", + G_CALLBACK(store_filename), (gpointer) fs); + g_signal_connect_swapped(GTK_OBJECT + (GTK_FILE_SELECTION(fs)->ok_button), + "clicked", G_CALLBACK(gtk_widget_destroy), + (gpointer) fs); + g_signal_connect_swapped(GTK_OBJECT + (GTK_FILE_SELECTION(fs)->cancel_button), + "clicked", G_CALLBACK(gtk_widget_destroy), + (gpointer) fs); + gtk_widget_show(fs); +} + + +void on_quit1_activate(GtkMenuItem * menuitem, gpointer user_data) +{ + if (!on_window1_delete_event(NULL, NULL, NULL)) + gtk_widget_destroy(GTK_WIDGET(main_wnd)); +} + + +void on_show_name1_activate(GtkMenuItem * menuitem, gpointer user_data) +{ + GtkTreeViewColumn *col; + + show_name = GTK_CHECK_MENU_ITEM(menuitem)->active; + col = gtk_tree_view_get_column(GTK_TREE_VIEW(tree2_w), COL_NAME); + if (col) + gtk_tree_view_column_set_visible(col, show_name); +} + + +void on_show_range1_activate(GtkMenuItem * menuitem, gpointer user_data) +{ + GtkTreeViewColumn *col; + + show_range = GTK_CHECK_MENU_ITEM(menuitem)->active; + col = gtk_tree_view_get_column(GTK_TREE_VIEW(tree2_w), COL_NO); + if (col) + gtk_tree_view_column_set_visible(col, show_range); + col = gtk_tree_view_get_column(GTK_TREE_VIEW(tree2_w), COL_MOD); + if (col) + gtk_tree_view_column_set_visible(col, show_range); + col = gtk_tree_view_get_column(GTK_TREE_VIEW(tree2_w), COL_YES); + if (col) + gtk_tree_view_column_set_visible(col, show_range); + +} + + +void on_show_data1_activate(GtkMenuItem * menuitem, gpointer user_data) +{ + GtkTreeViewColumn *col; + + show_value = GTK_CHECK_MENU_ITEM(menuitem)->active; + col = gtk_tree_view_get_column(GTK_TREE_VIEW(tree2_w), COL_VALUE); + if (col) + gtk_tree_view_column_set_visible(col, show_value); +} + + +void +on_set_option_mode1_activate(GtkMenuItem *menuitem, gpointer user_data) +{ + opt_mode = OPT_NORMAL; + gtk_tree_store_clear(tree2); + display_tree(&rootmenu); /* instead of update_tree to speed-up */ +} + + +void +on_set_option_mode2_activate(GtkMenuItem *menuitem, gpointer user_data) +{ + opt_mode = OPT_ALL; + gtk_tree_store_clear(tree2); + display_tree(&rootmenu); /* instead of update_tree to speed-up */ +} + + +void +on_set_option_mode3_activate(GtkMenuItem *menuitem, gpointer user_data) +{ + opt_mode = OPT_PROMPT; + gtk_tree_store_clear(tree2); + display_tree(&rootmenu); /* instead of update_tree to speed-up */ +} + + +void on_introduction1_activate(GtkMenuItem * menuitem, gpointer user_data) +{ + GtkWidget *dialog; + const gchar *intro_text = _( + "Welcome to gkc, the GTK+ graphical configuration tool\n" + "For each option, a blank box indicates the feature is disabled, a\n" + "check indicates it is enabled, and a dot indicates that it is to\n" + "be compiled as a module. Clicking on the box will cycle through the three states.\n" + "\n" + "If you do not see an option (e.g., a device driver) that you\n" + "believe should be present, try turning on Show All Options\n" + "under the Options menu.\n" + "Although there is no cross reference yet to help you figure out\n" + "what other options must be enabled to support the option you\n" + "are interested in, you can still view the help of a grayed-out\n" + "option.\n" + "\n" + "Toggling Show Debug Info under the Options menu will show \n" + "the dependencies, which you can then match by examining other options."); + + dialog = gtk_message_dialog_new(GTK_WINDOW(main_wnd), + GTK_DIALOG_DESTROY_WITH_PARENT, + GTK_MESSAGE_INFO, + GTK_BUTTONS_CLOSE, "%s", intro_text); + g_signal_connect_swapped(GTK_OBJECT(dialog), "response", + G_CALLBACK(gtk_widget_destroy), + GTK_OBJECT(dialog)); + gtk_widget_show_all(dialog); +} + + +void on_about1_activate(GtkMenuItem * menuitem, gpointer user_data) +{ + GtkWidget *dialog; + const gchar *about_text = + _("gkc is copyright (c) 2002 Romain Lievin .\n" + "Based on the source code from Roman Zippel.\n"); + + dialog = gtk_message_dialog_new(GTK_WINDOW(main_wnd), + GTK_DIALOG_DESTROY_WITH_PARENT, + GTK_MESSAGE_INFO, + GTK_BUTTONS_CLOSE, "%s", about_text); + g_signal_connect_swapped(GTK_OBJECT(dialog), "response", + G_CALLBACK(gtk_widget_destroy), + GTK_OBJECT(dialog)); + gtk_widget_show_all(dialog); +} + + +void on_license1_activate(GtkMenuItem * menuitem, gpointer user_data) +{ + GtkWidget *dialog; + const gchar *license_text = + _("gkc is released under the terms of the GNU GPL v2.\n" + "For more information, please see the source code or\n" + "visit http://www.fsf.org/licenses/licenses.html\n"); + + dialog = gtk_message_dialog_new(GTK_WINDOW(main_wnd), + GTK_DIALOG_DESTROY_WITH_PARENT, + GTK_MESSAGE_INFO, + GTK_BUTTONS_CLOSE, "%s", license_text); + g_signal_connect_swapped(GTK_OBJECT(dialog), "response", + G_CALLBACK(gtk_widget_destroy), + GTK_OBJECT(dialog)); + gtk_widget_show_all(dialog); +} + + +void on_back_clicked(GtkButton * button, gpointer user_data) +{ + enum prop_type ptype; + + current = current->parent; + ptype = current->prompt ? current->prompt->type : P_UNKNOWN; + if (ptype != P_MENU) + current = current->parent; + display_tree_part(); + + if (current == &rootmenu) + gtk_widget_set_sensitive(back_btn, FALSE); +} + + +void on_load_clicked(GtkButton * button, gpointer user_data) +{ + on_load1_activate(NULL, user_data); +} + + +void on_single_clicked(GtkButton * button, gpointer user_data) +{ + view_mode = SINGLE_VIEW; + gtk_widget_hide(tree1_w); + current = &rootmenu; + display_tree_part(); +} + + +void on_split_clicked(GtkButton * button, gpointer user_data) +{ + gint w, h; + view_mode = SPLIT_VIEW; + gtk_widget_show(tree1_w); + gtk_window_get_default_size(GTK_WINDOW(main_wnd), &w, &h); + gtk_paned_set_position(GTK_PANED(hpaned), w / 2); + if (tree2) + gtk_tree_store_clear(tree2); + display_list(); + + /* Disable back btn, like in full mode. */ + gtk_widget_set_sensitive(back_btn, FALSE); +} + + +void on_full_clicked(GtkButton * button, gpointer user_data) +{ + view_mode = FULL_VIEW; + gtk_widget_hide(tree1_w); + if (tree2) + gtk_tree_store_clear(tree2); + display_tree(&rootmenu); + gtk_widget_set_sensitive(back_btn, FALSE); +} + + +void on_collapse_clicked(GtkButton * button, gpointer user_data) +{ + gtk_tree_view_collapse_all(GTK_TREE_VIEW(tree2_w)); +} + + +void on_expand_clicked(GtkButton * button, gpointer user_data) +{ + gtk_tree_view_expand_all(GTK_TREE_VIEW(tree2_w)); +} + + +/* CTree Callbacks */ + +/* Change hex/int/string value in the cell */ +static void renderer_edited(GtkCellRendererText * cell, + const gchar * path_string, + const gchar * new_text, gpointer user_data) +{ + GtkTreePath *path = gtk_tree_path_new_from_string(path_string); + GtkTreeIter iter; + const char *old_def, *new_def; + struct menu *menu; + struct symbol *sym; + + if (!gtk_tree_model_get_iter(model2, &iter, path)) + return; + + gtk_tree_model_get(model2, &iter, COL_MENU, &menu, -1); + sym = menu->sym; + + gtk_tree_model_get(model2, &iter, COL_VALUE, &old_def, -1); + new_def = new_text; + + sym_set_string_value(sym, new_def); + + update_tree(&rootmenu, NULL); + + gtk_tree_path_free(path); +} + +/* Change the value of a symbol and update the tree */ +static void change_sym_value(struct menu *menu, gint col) +{ + struct symbol *sym = menu->sym; + tristate newval; + + if (!sym) + return; + + if (col == COL_NO) + newval = no; + else if (col == COL_MOD) + newval = mod; + else if (col == COL_YES) + newval = yes; + else + return; + + switch (sym_get_type(sym)) { + case S_BOOLEAN: + case S_TRISTATE: + if (!sym_tristate_within_range(sym, newval)) + newval = yes; + sym_set_tristate_value(sym, newval); + if (view_mode == FULL_VIEW) + update_tree(&rootmenu, NULL); + else if (view_mode == SPLIT_VIEW) { + update_tree(browsed, NULL); + display_list(); + } + else if (view_mode == SINGLE_VIEW) + display_tree_part(); //fixme: keep exp/coll + break; + case S_INT: + case S_HEX: + case S_STRING: + default: + break; + } +} + +static void toggle_sym_value(struct menu *menu) +{ + if (!menu->sym) + return; + + sym_toggle_tristate_value(menu->sym); + if (view_mode == FULL_VIEW) + update_tree(&rootmenu, NULL); + else if (view_mode == SPLIT_VIEW) { + update_tree(browsed, NULL); + display_list(); + } + else if (view_mode == SINGLE_VIEW) + display_tree_part(); //fixme: keep exp/coll +} + +static gint column2index(GtkTreeViewColumn * column) +{ + gint i; + + for (i = 0; i < COL_NUMBER; i++) { + GtkTreeViewColumn *col; + + col = gtk_tree_view_get_column(GTK_TREE_VIEW(tree2_w), i); + if (col == column) + return i; + } + + return -1; +} + + +/* User click: update choice (full) or goes down (single) */ +gboolean +on_treeview2_button_press_event(GtkWidget * widget, + GdkEventButton * event, gpointer user_data) +{ + GtkTreeView *view = GTK_TREE_VIEW(widget); + GtkTreePath *path; + GtkTreeViewColumn *column; + GtkTreeIter iter; + struct menu *menu; + gint col; + +#if GTK_CHECK_VERSION(2,1,4) // bug in ctree with earlier version of GTK + gint tx = (gint) event->x; + gint ty = (gint) event->y; + gint cx, cy; + + gtk_tree_view_get_path_at_pos(view, tx, ty, &path, &column, &cx, + &cy); +#else + gtk_tree_view_get_cursor(view, &path, &column); +#endif + if (path == NULL) + return FALSE; + + if (!gtk_tree_model_get_iter(model2, &iter, path)) + return FALSE; + gtk_tree_model_get(model2, &iter, COL_MENU, &menu, -1); + + col = column2index(column); + if (event->type == GDK_2BUTTON_PRESS) { + enum prop_type ptype; + ptype = menu->prompt ? menu->prompt->type : P_UNKNOWN; + + if (ptype == P_MENU && view_mode != FULL_VIEW && col == COL_OPTION) { + // goes down into menu + current = menu; + display_tree_part(); + gtk_widget_set_sensitive(back_btn, TRUE); + } else if (col == COL_OPTION) { + toggle_sym_value(menu); + gtk_tree_view_expand_row(view, path, TRUE); + } + } else { + if (col == COL_VALUE) { + toggle_sym_value(menu); + gtk_tree_view_expand_row(view, path, TRUE); + } else if (col == COL_NO || col == COL_MOD + || col == COL_YES) { + change_sym_value(menu, col); + gtk_tree_view_expand_row(view, path, TRUE); + } + } + + return FALSE; +} + +/* Key pressed: update choice */ +gboolean +on_treeview2_key_press_event(GtkWidget * widget, + GdkEventKey * event, gpointer user_data) +{ + GtkTreeView *view = GTK_TREE_VIEW(widget); + GtkTreePath *path; + GtkTreeViewColumn *column; + GtkTreeIter iter; + struct menu *menu; + gint col; + + gtk_tree_view_get_cursor(view, &path, &column); + if (path == NULL) + return FALSE; + + if (event->keyval == GDK_space) { + if (gtk_tree_view_row_expanded(view, path)) + gtk_tree_view_collapse_row(view, path); + else + gtk_tree_view_expand_row(view, path, FALSE); + return TRUE; + } + if (event->keyval == GDK_KP_Enter) { + } + if (widget == tree1_w) + return FALSE; + + gtk_tree_model_get_iter(model2, &iter, path); + gtk_tree_model_get(model2, &iter, COL_MENU, &menu, -1); + + if (!strcasecmp(event->string, "n")) + col = COL_NO; + else if (!strcasecmp(event->string, "m")) + col = COL_MOD; + else if (!strcasecmp(event->string, "y")) + col = COL_YES; + else + col = -1; + change_sym_value(menu, col); + + return FALSE; +} + + +/* Row selection changed: update help */ +void +on_treeview2_cursor_changed(GtkTreeView * treeview, gpointer user_data) +{ + GtkTreeSelection *selection; + GtkTreeIter iter; + struct menu *menu; + + selection = gtk_tree_view_get_selection(treeview); + if (gtk_tree_selection_get_selected(selection, &model2, &iter)) { + gtk_tree_model_get(model2, &iter, COL_MENU, &menu, -1); + text_insert_help(menu); + } +} + + +/* User click: display sub-tree in the right frame. */ +gboolean +on_treeview1_button_press_event(GtkWidget * widget, + GdkEventButton * event, gpointer user_data) +{ + GtkTreeView *view = GTK_TREE_VIEW(widget); + GtkTreePath *path; + GtkTreeViewColumn *column; + GtkTreeIter iter; + struct menu *menu; + + gint tx = (gint) event->x; + gint ty = (gint) event->y; + gint cx, cy; + + gtk_tree_view_get_path_at_pos(view, tx, ty, &path, &column, &cx, + &cy); + if (path == NULL) + return FALSE; + + gtk_tree_model_get_iter(model1, &iter, path); + gtk_tree_model_get(model1, &iter, COL_MENU, &menu, -1); + + if (event->type == GDK_2BUTTON_PRESS) { + toggle_sym_value(menu); + current = menu; + display_tree_part(); + } else { + browsed = menu; + display_tree_part(); + } + + gtk_widget_realize(tree2_w); + gtk_tree_view_set_cursor(view, path, NULL, FALSE); + gtk_widget_grab_focus(tree2_w); + + return FALSE; +} + + +/* Fill a row of strings */ +static gchar **fill_row(struct menu *menu) +{ + static gchar *row[COL_NUMBER]; + struct symbol *sym = menu->sym; + const char *def; + int stype; + tristate val; + enum prop_type ptype; + int i; + + for (i = COL_OPTION; i <= COL_COLOR; i++) + g_free(row[i]); + bzero(row, sizeof(row)); + + row[COL_OPTION] = + g_strdup_printf("%s %s", _(menu_get_prompt(menu)), + sym && !sym_has_value(sym) ? "(NEW)" : ""); + + if (opt_mode == OPT_ALL && !menu_is_visible(menu)) + row[COL_COLOR] = g_strdup("DarkGray"); + else if (opt_mode == OPT_PROMPT && + menu_has_prompt(menu) && !menu_is_visible(menu)) + row[COL_COLOR] = g_strdup("DarkGray"); + else + row[COL_COLOR] = g_strdup("Black"); + + ptype = menu->prompt ? menu->prompt->type : P_UNKNOWN; + switch (ptype) { + case P_MENU: + row[COL_PIXBUF] = (gchar *) xpm_menu; + if (view_mode == SINGLE_VIEW) + row[COL_PIXVIS] = GINT_TO_POINTER(TRUE); + row[COL_BTNVIS] = GINT_TO_POINTER(FALSE); + break; + case P_COMMENT: + row[COL_PIXBUF] = (gchar *) xpm_void; + row[COL_PIXVIS] = GINT_TO_POINTER(FALSE); + row[COL_BTNVIS] = GINT_TO_POINTER(FALSE); + break; + default: + row[COL_PIXBUF] = (gchar *) xpm_void; + row[COL_PIXVIS] = GINT_TO_POINTER(FALSE); + row[COL_BTNVIS] = GINT_TO_POINTER(TRUE); + break; + } + + if (!sym) + return row; + row[COL_NAME] = g_strdup(sym->name); + + sym_calc_value(sym); + sym->flags &= ~SYMBOL_CHANGED; + + if (sym_is_choice(sym)) { // parse childs for getting final value + struct menu *child; + struct symbol *def_sym = sym_get_choice_value(sym); + struct menu *def_menu = NULL; + + row[COL_BTNVIS] = GINT_TO_POINTER(FALSE); + + for (child = menu->list; child; child = child->next) { + if (menu_is_visible(child) + && child->sym == def_sym) + def_menu = child; + } + + if (def_menu) + row[COL_VALUE] = + g_strdup(_(menu_get_prompt(def_menu))); + } + if (sym->flags & SYMBOL_CHOICEVAL) + row[COL_BTNRAD] = GINT_TO_POINTER(TRUE); + + stype = sym_get_type(sym); + switch (stype) { + case S_BOOLEAN: + if (GPOINTER_TO_INT(row[COL_PIXVIS]) == FALSE) + row[COL_BTNVIS] = GINT_TO_POINTER(TRUE); + if (sym_is_choice(sym)) + break; + /* fall through */ + case S_TRISTATE: + val = sym_get_tristate_value(sym); + switch (val) { + case no: + row[COL_NO] = g_strdup("N"); + row[COL_VALUE] = g_strdup("N"); + row[COL_BTNACT] = GINT_TO_POINTER(FALSE); + row[COL_BTNINC] = GINT_TO_POINTER(FALSE); + break; + case mod: + row[COL_MOD] = g_strdup("M"); + row[COL_VALUE] = g_strdup("M"); + row[COL_BTNINC] = GINT_TO_POINTER(TRUE); + break; + case yes: + row[COL_YES] = g_strdup("Y"); + row[COL_VALUE] = g_strdup("Y"); + row[COL_BTNACT] = GINT_TO_POINTER(TRUE); + row[COL_BTNINC] = GINT_TO_POINTER(FALSE); + break; + } + + if (val != no && sym_tristate_within_range(sym, no)) + row[COL_NO] = g_strdup("_"); + if (val != mod && sym_tristate_within_range(sym, mod)) + row[COL_MOD] = g_strdup("_"); + if (val != yes && sym_tristate_within_range(sym, yes)) + row[COL_YES] = g_strdup("_"); + break; + case S_INT: + case S_HEX: + case S_STRING: + def = sym_get_string_value(sym); + row[COL_VALUE] = g_strdup(def); + row[COL_EDIT] = GINT_TO_POINTER(TRUE); + row[COL_BTNVIS] = GINT_TO_POINTER(FALSE); + break; + } + + return row; +} + + +/* Set the node content with a row of strings */ +static void set_node(GtkTreeIter * node, struct menu *menu, gchar ** row) +{ + GdkColor color; + gboolean success; + GdkPixbuf *pix; + + pix = gdk_pixbuf_new_from_xpm_data((const char **) + row[COL_PIXBUF]); + + gdk_color_parse(row[COL_COLOR], &color); + gdk_colormap_alloc_colors(gdk_colormap_get_system(), &color, 1, + FALSE, FALSE, &success); + + gtk_tree_store_set(tree, node, + COL_OPTION, row[COL_OPTION], + COL_NAME, row[COL_NAME], + COL_NO, row[COL_NO], + COL_MOD, row[COL_MOD], + COL_YES, row[COL_YES], + COL_VALUE, row[COL_VALUE], + COL_MENU, (gpointer) menu, + COL_COLOR, &color, + COL_EDIT, GPOINTER_TO_INT(row[COL_EDIT]), + COL_PIXBUF, pix, + COL_PIXVIS, GPOINTER_TO_INT(row[COL_PIXVIS]), + COL_BTNVIS, GPOINTER_TO_INT(row[COL_BTNVIS]), + COL_BTNACT, GPOINTER_TO_INT(row[COL_BTNACT]), + COL_BTNINC, GPOINTER_TO_INT(row[COL_BTNINC]), + COL_BTNRAD, GPOINTER_TO_INT(row[COL_BTNRAD]), + -1); + + g_object_unref(pix); +} + + +/* Add a node to the tree */ +static void place_node(struct menu *menu, char **row) +{ + GtkTreeIter *parent = parents[indent - 1]; + GtkTreeIter *node = parents[indent]; + + gtk_tree_store_append(tree, node, parent); + set_node(node, menu, row); +} + + +/* Find a node in the GTK+ tree */ +static GtkTreeIter found; + +/* + * Find a menu in the GtkTree starting at parent. + */ +GtkTreeIter *gtktree_iter_find_node(GtkTreeIter * parent, + struct menu *tofind) +{ + GtkTreeIter iter; + GtkTreeIter *child = &iter; + gboolean valid; + GtkTreeIter *ret; + + valid = gtk_tree_model_iter_children(model2, child, parent); + while (valid) { + struct menu *menu; + + gtk_tree_model_get(model2, child, 6, &menu, -1); + + if (menu == tofind) { + memcpy(&found, child, sizeof(GtkTreeIter)); + return &found; + } + + ret = gtktree_iter_find_node(child, tofind); + if (ret) + return ret; + + valid = gtk_tree_model_iter_next(model2, child); + } + + return NULL; +} + + +/* + * Update the tree by adding/removing entries + * Does not change other nodes + */ +static void update_tree(struct menu *src, GtkTreeIter * dst) +{ + struct menu *child1; + GtkTreeIter iter, tmp; + GtkTreeIter *child2 = &iter; + gboolean valid; + GtkTreeIter *sibling; + struct symbol *sym; + struct menu *menu1, *menu2; + + if (src == &rootmenu) + indent = 1; + + valid = gtk_tree_model_iter_children(model2, child2, dst); + for (child1 = src->list; child1; child1 = child1->next) { + + sym = child1->sym; + + reparse: + menu1 = child1; + if (valid) + gtk_tree_model_get(model2, child2, COL_MENU, + &menu2, -1); + else + menu2 = NULL; // force adding of a first child + +#ifdef DEBUG + printf("%*c%s | %s\n", indent, ' ', + menu1 ? menu_get_prompt(menu1) : "nil", + menu2 ? menu_get_prompt(menu2) : "nil"); +#endif + + if ((opt_mode == OPT_NORMAL && !menu_is_visible(child1)) || + (opt_mode == OPT_PROMPT && !menu_has_prompt(child1)) || + (opt_mode == OPT_ALL && !menu_get_prompt(child1))) { + + /* remove node */ + if (gtktree_iter_find_node(dst, menu1) != NULL) { + memcpy(&tmp, child2, sizeof(GtkTreeIter)); + valid = gtk_tree_model_iter_next(model2, + child2); + gtk_tree_store_remove(tree2, &tmp); + if (!valid) + return; /* next parent */ + else + goto reparse; /* next child */ + } else + continue; + } + + if (menu1 != menu2) { + if (gtktree_iter_find_node(dst, menu1) == NULL) { // add node + if (!valid && !menu2) + sibling = NULL; + else + sibling = child2; + gtk_tree_store_insert_before(tree2, + child2, + dst, sibling); + set_node(child2, menu1, fill_row(menu1)); + if (menu2 == NULL) + valid = TRUE; + } else { // remove node + memcpy(&tmp, child2, sizeof(GtkTreeIter)); + valid = gtk_tree_model_iter_next(model2, + child2); + gtk_tree_store_remove(tree2, &tmp); + if (!valid) + return; // next parent + else + goto reparse; // next child + } + } else if (sym && (sym->flags & SYMBOL_CHANGED)) { + set_node(child2, menu1, fill_row(menu1)); + } + + indent++; + update_tree(child1, child2); + indent--; + + valid = gtk_tree_model_iter_next(model2, child2); + } +} + + +/* Display the whole tree (single/split/full view) */ +static void display_tree(struct menu *menu) +{ + struct symbol *sym; + struct property *prop; + struct menu *child; + enum prop_type ptype; + + if (menu == &rootmenu) { + indent = 1; + current = &rootmenu; + } + + for (child = menu->list; child; child = child->next) { + prop = child->prompt; + sym = child->sym; + ptype = prop ? prop->type : P_UNKNOWN; + + if (sym) + sym->flags &= ~SYMBOL_CHANGED; + + if ((view_mode == SPLIT_VIEW) + && !(child->flags & MENU_ROOT) && (tree == tree1)) + continue; + + if ((view_mode == SPLIT_VIEW) && (child->flags & MENU_ROOT) + && (tree == tree2)) + continue; + + if ((opt_mode == OPT_NORMAL && menu_is_visible(child)) || + (opt_mode == OPT_PROMPT && menu_has_prompt(child)) || + (opt_mode == OPT_ALL && menu_get_prompt(child))) + place_node(child, fill_row(child)); +#ifdef DEBUG + printf("%*c%s: ", indent, ' ', menu_get_prompt(child)); + printf("%s", child->flags & MENU_ROOT ? "rootmenu | " : ""); + printf("%s", prop_get_type_name(ptype)); + printf(" | "); + if (sym) { + printf("%s", sym_type_name(sym->type)); + printf(" | "); + printf("%s", dbg_sym_flags(sym->flags)); + printf("\n"); + } else + printf("\n"); +#endif + if ((view_mode != FULL_VIEW) && (ptype == P_MENU) + && (tree == tree2)) + continue; +/* + if (((menu != &rootmenu) && !(menu->flags & MENU_ROOT)) + || (view_mode == FULL_VIEW) + || (view_mode == SPLIT_VIEW))*/ + + /* Change paned position if the view is not in 'split mode' */ + if (view_mode == SINGLE_VIEW || view_mode == FULL_VIEW) { + gtk_paned_set_position(GTK_PANED(hpaned), 0); + } + + if (((view_mode == SINGLE_VIEW) && (menu->flags & MENU_ROOT)) + || (view_mode == FULL_VIEW) + || (view_mode == SPLIT_VIEW)) { + indent++; + display_tree(child); + indent--; + } + } +} + +/* Display a part of the tree starting at current node (single/split view) */ +static void display_tree_part(void) +{ + if (tree2) + gtk_tree_store_clear(tree2); + if (view_mode == SINGLE_VIEW) + display_tree(current); + else if (view_mode == SPLIT_VIEW) + display_tree(browsed); + gtk_tree_view_expand_all(GTK_TREE_VIEW(tree2_w)); +} + +/* Display the list in the left frame (split view) */ +static void display_list(void) +{ + if (tree1) + gtk_tree_store_clear(tree1); + + tree = tree1; + display_tree(&rootmenu); + gtk_tree_view_expand_all(GTK_TREE_VIEW(tree1_w)); + tree = tree2; +} + +void fixup_rootmenu(struct menu *menu) +{ + struct menu *child; + static int menu_cnt = 0; + + menu->flags |= MENU_ROOT; + for (child = menu->list; child; child = child->next) { + if (child->prompt && child->prompt->type == P_MENU) { + menu_cnt++; + fixup_rootmenu(child); + menu_cnt--; + } else if (!menu_cnt) + fixup_rootmenu(child); + } +} + + +/* Main */ +int main(int ac, char *av[]) +{ + const char *name; + char *env; + gchar *glade_file; + + bindtextdomain(PACKAGE, LOCALEDIR); + bind_textdomain_codeset(PACKAGE, "UTF-8"); + textdomain(PACKAGE); + + /* GTK stuffs */ + gtk_set_locale(); + gtk_init(&ac, &av); + glade_init(); + + //add_pixmap_directory (PACKAGE_DATA_DIR "/" PACKAGE "/pixmaps"); + //add_pixmap_directory (PACKAGE_SOURCE_DIR "/pixmaps"); + + /* Determine GUI path */ + env = getenv(SRCTREE); + if (env) + glade_file = g_strconcat(env, "/support/kconfig/gconf.glade", NULL); + else if (av[0][0] == '/') + glade_file = g_strconcat(av[0], ".glade", NULL); + else + glade_file = g_strconcat(g_get_current_dir(), "/", av[0], ".glade", NULL); + + /* Conf stuffs */ + if (ac > 1 && av[1][0] == '-') { + switch (av[1][1]) { + case 'a': + //showAll = 1; + break; + case 's': + conf_set_message_callback(NULL); + break; + case 'h': + case '?': + printf("%s [-s] \n", av[0]); + exit(0); + } + name = av[2]; + } else + name = av[1]; + + conf_parse(name); + fixup_rootmenu(&rootmenu); + conf_read(NULL); + + /* Load the interface and connect signals */ + init_main_window(glade_file); + init_tree_model(); + init_left_tree(); + init_right_tree(); + + switch (view_mode) { + case SINGLE_VIEW: + display_tree_part(); + break; + case SPLIT_VIEW: + display_list(); + break; + case FULL_VIEW: + display_tree(&rootmenu); + break; + } + + gtk_main(); + + return 0; +} + +static void conf_changed(void) +{ + bool changed = conf_get_changed(); + gtk_widget_set_sensitive(save_btn, changed); + gtk_widget_set_sensitive(save_menu_item, changed); +} diff --git a/support/kconfig/gconf.glade b/support/kconfig/gconf.glade new file mode 100644 index 00000000..6cbc1bb4 --- /dev/null +++ b/support/kconfig/gconf.glade @@ -0,0 +1,661 @@ + + + + + + True + Gtk Buildroot Configurator + GTK_WINDOW_TOPLEVEL + GTK_WIN_POS_NONE + False + 640 + 480 + True + False + True + False + False + GDK_WINDOW_TYPE_HINT_NORMAL + GDK_GRAVITY_NORTH_WEST + + + + + + + True + False + 0 + + + + True + + + + True + _File + True + + + + + + + True + Load a config file + _Load + True + + + + + + True + gtk-open + 1 + 0.5 + 0.5 + 0 + 0 + + + + + + + + True + Save the config in .config + _Save + True + + + + + + True + gtk-save + 1 + 0.5 + 0.5 + 0 + 0 + + + + + + + + True + Save the config in a file + Save _as + True + + + + + True + gtk-save-as + 1 + 0.5 + 0.5 + 0 + 0 + + + + + + + + True + + + + + + True + _Quit + True + + + + + + True + gtk-quit + 1 + 0.5 + 0.5 + 0 + 0 + + + + + + + + + + + + True + _Options + True + + + + + + + True + Show name + Show _name + True + False + + + + + + + True + Show range (Y/M/N) + Show _range + True + False + + + + + + + True + Show value of the option + Show _data + True + False + + + + + + + True + + + + + + True + Show normal options + Show normal options + True + True + + + + + + + True + Show all options + Show all _options + True + False + set_option_mode1 + + + + + + + True + Show all options with prompts + Show all prompt options + True + False + set_option_mode1 + + + + + + + + + + + + True + _Help + True + + + + + + + True + _Introduction + True + + + + + + True + gtk-dialog-question + 1 + 0.5 + 0.5 + 0 + 0 + + + + + + + + True + _About + True + + + + + + True + gtk-properties + 1 + 0.5 + 0.5 + 0 + 0 + + + + + + + + True + _License + True + + + + + True + gtk-justify-fill + 1 + 0.5 + 0.5 + 0 + 0 + + + + + + + + + + + 0 + False + False + + + + + + True + GTK_SHADOW_OUT + GTK_POS_LEFT + GTK_POS_TOP + + + + True + GTK_ORIENTATION_HORIZONTAL + GTK_TOOLBAR_BOTH + True + True + + + + True + Goes up of one level (single view) + Back + True + gtk-undo + True + True + False + + + + False + True + + + + + + True + True + True + False + + + + True + + + + + False + False + + + + + + True + Load a config file + Load + True + gtk-open + True + True + False + + + + False + True + + + + + + True + Save a config file + Save + True + gtk-save + True + True + False + + + + False + True + + + + + + True + True + True + False + + + + True + + + + + False + False + + + + + + True + Single view + Single + True + gtk-missing-image + True + True + False + + + + False + True + + + + + + True + Split view + Split + True + gtk-missing-image + True + True + False + + + + False + True + + + + + + True + Full view + Full + True + gtk-missing-image + True + True + False + + + + False + True + + + + + + True + True + True + False + + + + True + + + + + False + False + + + + + + True + Collapse the whole tree in the right frame + Collapse + True + gtk-remove + True + True + False + + + + False + True + + + + + + True + Expand the whole tree in the right frame + Expand + True + gtk-add + True + True + False + + + + False + True + + + + + + + 0 + False + False + + + + + + 1 + True + True + 0 + + + + True + GTK_POLICY_AUTOMATIC + GTK_POLICY_AUTOMATIC + GTK_SHADOW_IN + GTK_CORNER_TOP_LEFT + + + + True + True + True + False + False + False + + + + + + + + True + False + + + + + + True + True + 0 + + + + True + GTK_POLICY_AUTOMATIC + GTK_POLICY_AUTOMATIC + GTK_SHADOW_IN + GTK_CORNER_TOP_LEFT + + + + True + True + True + True + False + False + False + + + + + + + + True + False + + + + + + True + GTK_POLICY_NEVER + GTK_POLICY_AUTOMATIC + GTK_SHADOW_IN + GTK_CORNER_TOP_LEFT + + + + True + True + False + False + True + GTK_JUSTIFY_LEFT + GTK_WRAP_WORD + True + 0 + 0 + 0 + 0 + 0 + 0 + Sorry, no help available for this option yet. + + + + + True + True + + + + + True + True + + + + + 0 + True + True + + + + + + + diff --git a/support/kconfig/images.c b/support/kconfig/images.c new file mode 100644 index 00000000..d4f84bd4 --- /dev/null +++ b/support/kconfig/images.c @@ -0,0 +1,326 @@ +/* + * Copyright (C) 2002 Roman Zippel + * Released under the terms of the GNU GPL v2.0. + */ + +static const char *xpm_load[] = { +"22 22 5 1", +". c None", +"# c #000000", +"c c #838100", +"a c #ffff00", +"b c #ffffff", +"......................", +"......................", +"......................", +"............####....#.", +"...........#....##.##.", +"..................###.", +".................####.", +".####...........#####.", +"#abab##########.......", +"#babababababab#.......", +"#ababababababa#.......", +"#babababababab#.......", +"#ababab###############", +"#babab##cccccccccccc##", +"#abab##cccccccccccc##.", +"#bab##cccccccccccc##..", +"#ab##cccccccccccc##...", +"#b##cccccccccccc##....", +"###cccccccccccc##.....", +"##cccccccccccc##......", +"###############.......", +"......................"}; + +static const char *xpm_save[] = { +"22 22 5 1", +". c None", +"# c #000000", +"a c #838100", +"b c #c5c2c5", +"c c #cdb6d5", +"......................", +".####################.", +".#aa#bbbbbbbbbbbb#bb#.", +".#aa#bbbbbbbbbbbb#bb#.", +".#aa#bbbbbbbbbcbb####.", +".#aa#bbbccbbbbbbb#aa#.", +".#aa#bbbccbbbbbbb#aa#.", +".#aa#bbbbbbbbbbbb#aa#.", +".#aa#bbbbbbbbbbbb#aa#.", +".#aa#bbbbbbbbbbbb#aa#.", +".#aa#bbbbbbbbbbbb#aa#.", +".#aaa############aaa#.", +".#aaaaaaaaaaaaaaaaaa#.", +".#aaaaaaaaaaaaaaaaaa#.", +".#aaa#############aa#.", +".#aaa#########bbb#aa#.", +".#aaa#########bbb#aa#.", +".#aaa#########bbb#aa#.", +".#aaa#########bbb#aa#.", +".#aaa#########bbb#aa#.", +"..##################..", +"......................"}; + +static const char *xpm_back[] = { +"22 22 3 1", +". c None", +"# c #000083", +"a c #838183", +"......................", +"......................", +"......................", +"......................", +"......................", +"...........######a....", +"..#......##########...", +"..##...####......##a..", +"..###.###.........##..", +"..######..........##..", +"..#####...........##..", +"..######..........##..", +"..#######.........##..", +"..########.......##a..", +"...............a###...", +"...............###....", +"......................", +"......................", +"......................", +"......................", +"......................", +"......................"}; + +static const char *xpm_tree_view[] = { +"22 22 2 1", +". c None", +"# c #000000", +"......................", +"......................", +"......#...............", +"......#...............", +"......#...............", +"......#...............", +"......#...............", +"......########........", +"......#...............", +"......#...............", +"......#...............", +"......#...............", +"......#...............", +"......########........", +"......#...............", +"......#...............", +"......#...............", +"......#...............", +"......#...............", +"......########........", +"......................", +"......................"}; + +static const char *xpm_single_view[] = { +"22 22 2 1", +". c None", +"# c #000000", +"......................", +"......................", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"..........#...........", +"......................", +"......................"}; + +static const char *xpm_split_view[] = { +"22 22 2 1", +". c None", +"# c #000000", +"......................", +"......................", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......#......#........", +"......................", +"......................"}; + +static const char *xpm_symbol_no[] = { +"12 12 2 1", +" c white", +". c black", +" ", +" .......... ", +" . . ", +" . . ", +" . . ", +" . . ", +" . . ", +" . . ", +" . . ", +" . . ", +" .......... ", +" "}; + +static const char *xpm_symbol_mod[] = { +"12 12 2 1", +" c white", +". c black", +" ", +" .......... ", +" . . ", +" . . ", +" . .. . ", +" . .... . ", +" . .... . ", +" . .. . ", +" . . ", +" . . ", +" .......... ", +" "}; + +static const char *xpm_symbol_yes[] = { +"12 12 2 1", +" c white", +". c black", +" ", +" .......... ", +" . . ", +" . . ", +" . . . ", +" . .. . ", +" . . .. . ", +" . .... . ", +" . .. . ", +" . . ", +" .......... ", +" "}; + +static const char *xpm_choice_no[] = { +"12 12 2 1", +" c white", +". c black", +" ", +" .... ", +" .. .. ", +" . . ", +" . . ", +" . . ", +" . . ", +" . . ", +" . . ", +" .. .. ", +" .... ", +" "}; + +static const char *xpm_choice_yes[] = { +"12 12 2 1", +" c white", +". c black", +" ", +" .... ", +" .. .. ", +" . . ", +" . .. . ", +" . .... . ", +" . .... . ", +" . .. . ", +" . . ", +" .. .. ", +" .... ", +" "}; + +static const char *xpm_menu[] = { +"12 12 2 1", +" c white", +". c black", +" ", +" .......... ", +" . . ", +" . .. . ", +" . .... . ", +" . ...... . ", +" . ...... . ", +" . .... . ", +" . .. . ", +" . . ", +" .......... ", +" "}; + +static const char *xpm_menu_inv[] = { +"12 12 2 1", +" c white", +". c black", +" ", +" .......... ", +" .......... ", +" .. ...... ", +" .. .... ", +" .. .. ", +" .. .. ", +" .. .... ", +" .. ...... ", +" .......... ", +" .......... ", +" "}; + +static const char *xpm_menuback[] = { +"12 12 2 1", +" c white", +". c black", +" ", +" .......... ", +" . . ", +" . .. . ", +" . .... . ", +" . ...... . ", +" . ...... . ", +" . .... . ", +" . .. . ", +" . . ", +" .......... ", +" "}; + +static const char *xpm_void[] = { +"12 12 2 1", +" c white", +". c black", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" "}; diff --git a/support/kconfig/kconf_id.c b/support/kconfig/kconf_id.c new file mode 100644 index 00000000..3ea9c5f9 --- /dev/null +++ b/support/kconfig/kconf_id.c @@ -0,0 +1,53 @@ + +static struct kconf_id kconf_id_array[] = { + { "mainmenu", T_MAINMENU, TF_COMMAND }, + { "menu", T_MENU, TF_COMMAND }, + { "endmenu", T_ENDMENU, TF_COMMAND }, + { "source", T_SOURCE, TF_COMMAND }, + { "choice", T_CHOICE, TF_COMMAND }, + { "endchoice", T_ENDCHOICE, TF_COMMAND }, + { "comment", T_COMMENT, TF_COMMAND }, + { "config", T_CONFIG, TF_COMMAND }, + { "menuconfig", T_MENUCONFIG, TF_COMMAND }, + { "help", T_HELP, TF_COMMAND }, + { "---help---", T_HELP, TF_COMMAND }, + { "if", T_IF, TF_COMMAND|TF_PARAM }, + { "endif", T_ENDIF, TF_COMMAND }, + { "depends", T_DEPENDS, TF_COMMAND }, + { "optional", T_OPTIONAL, TF_COMMAND }, + { "default", T_DEFAULT, TF_COMMAND, S_UNKNOWN }, + { "prompt", T_PROMPT, TF_COMMAND }, + { "tristate", T_TYPE, TF_COMMAND, S_TRISTATE }, + { "def_tristate", T_DEFAULT, TF_COMMAND, S_TRISTATE }, + { "bool", T_TYPE, TF_COMMAND, S_BOOLEAN }, + { "def_bool", T_DEFAULT, TF_COMMAND, S_BOOLEAN }, + { "int", T_TYPE, TF_COMMAND, S_INT }, + { "hex", T_TYPE, TF_COMMAND, S_HEX }, + { "string", T_TYPE, TF_COMMAND, S_STRING }, + { "select", T_SELECT, TF_COMMAND }, + { "imply", T_IMPLY, TF_COMMAND }, + { "range", T_RANGE, TF_COMMAND }, + { "visible", T_VISIBLE, TF_COMMAND }, + { "option", T_OPTION, TF_COMMAND }, + { "on", T_ON, TF_PARAM }, + { "modules", T_OPT_MODULES, TF_OPTION }, + { "defconfig_list", T_OPT_DEFCONFIG_LIST, TF_OPTION }, + { "env", T_OPT_ENV, TF_OPTION }, + { "allnoconfig_y", T_OPT_ALLNOCONFIG_Y, TF_OPTION }, +}; + +#define KCONF_ID_ARRAY_SIZE (sizeof(kconf_id_array)/sizeof(struct kconf_id)) + +static const struct kconf_id *kconf_id_lookup(register const char *str, register unsigned int len) +{ + int i; + + for (i = 0; i < KCONF_ID_ARRAY_SIZE; i++) { + struct kconf_id *id = kconf_id_array+i; + int l = strlen(id->name); + + if (len == l && !memcmp(str, id->name, len)) + return id; + } + return NULL; +} diff --git a/support/kconfig/kxgettext.c b/support/kconfig/kxgettext.c new file mode 100644 index 00000000..240880a8 --- /dev/null +++ b/support/kconfig/kxgettext.c @@ -0,0 +1,235 @@ +/* + * Arnaldo Carvalho de Melo , 2005 + * + * Released under the terms of the GNU GPL v2.0 + */ + +#include +#include + +#include "lkc.h" + +static char *escape(const char* text, char *bf, int len) +{ + char *bfp = bf; + int multiline = strchr(text, '\n') != NULL; + int eol = 0; + int textlen = strlen(text); + + if ((textlen > 0) && (text[textlen-1] == '\n')) + eol = 1; + + *bfp++ = '"'; + --len; + + if (multiline) { + *bfp++ = '"'; + *bfp++ = '\n'; + *bfp++ = '"'; + len -= 3; + } + + while (*text != '\0' && len > 1) { + if (*text == '"') + *bfp++ = '\\'; + else if (*text == '\n') { + *bfp++ = '\\'; + *bfp++ = 'n'; + *bfp++ = '"'; + *bfp++ = '\n'; + *bfp++ = '"'; + len -= 5; + ++text; + goto next; + } + else if (*text == '\\') { + *bfp++ = '\\'; + len--; + } + *bfp++ = *text++; +next: + --len; + } + + if (multiline && eol) + bfp -= 3; + + *bfp++ = '"'; + *bfp = '\0'; + + return bf; +} + +struct file_line { + struct file_line *next; + const char *file; + int lineno; +}; + +static struct file_line *file_line__new(const char *file, int lineno) +{ + struct file_line *self = malloc(sizeof(*self)); + + if (self == NULL) + goto out; + + self->file = file; + self->lineno = lineno; + self->next = NULL; +out: + return self; +} + +struct message { + const char *msg; + const char *option; + struct message *next; + struct file_line *files; +}; + +static struct message *message__list; + +static struct message *message__new(const char *msg, char *option, + const char *file, int lineno) +{ + struct message *self = malloc(sizeof(*self)); + + if (self == NULL) + goto out; + + self->files = file_line__new(file, lineno); + if (self->files == NULL) + goto out_fail; + + self->msg = xstrdup(msg); + if (self->msg == NULL) + goto out_fail_msg; + + self->option = option; + self->next = NULL; +out: + return self; +out_fail_msg: + free(self->files); +out_fail: + free(self); + self = NULL; + goto out; +} + +static struct message *mesage__find(const char *msg) +{ + struct message *m = message__list; + + while (m != NULL) { + if (strcmp(m->msg, msg) == 0) + break; + m = m->next; + } + + return m; +} + +static int message__add_file_line(struct message *self, const char *file, + int lineno) +{ + int rc = -1; + struct file_line *fl = file_line__new(file, lineno); + + if (fl == NULL) + goto out; + + fl->next = self->files; + self->files = fl; + rc = 0; +out: + return rc; +} + +static int message__add(const char *msg, char *option, const char *file, + int lineno) +{ + int rc = 0; + char bf[16384]; + char *escaped = escape(msg, bf, sizeof(bf)); + struct message *m = mesage__find(escaped); + + if (m != NULL) + rc = message__add_file_line(m, file, lineno); + else { + m = message__new(escaped, option, file, lineno); + + if (m != NULL) { + m->next = message__list; + message__list = m; + } else + rc = -1; + } + return rc; +} + +static void menu_build_message_list(struct menu *menu) +{ + struct menu *child; + + message__add(menu_get_prompt(menu), NULL, + menu->file == NULL ? "Root Menu" : menu->file->name, + menu->lineno); + + if (menu->sym != NULL && menu_has_help(menu)) + message__add(menu_get_help(menu), menu->sym->name, + menu->file == NULL ? "Root Menu" : menu->file->name, + menu->lineno); + + for (child = menu->list; child != NULL; child = child->next) + if (child->prompt != NULL) + menu_build_message_list(child); +} + +static void message__print_file_lineno(struct message *self) +{ + struct file_line *fl = self->files; + + putchar('\n'); + if (self->option != NULL) + printf("# %s:00000\n", self->option); + + printf("#: %s:%d", fl->file, fl->lineno); + fl = fl->next; + + while (fl != NULL) { + printf(", %s:%d", fl->file, fl->lineno); + fl = fl->next; + } + + putchar('\n'); +} + +static void message__print_gettext_msgid_msgstr(struct message *self) +{ + message__print_file_lineno(self); + + printf("msgid %s\n" + "msgstr \"\"\n", self->msg); +} + +static void menu__xgettext(void) +{ + struct message *m = message__list; + + while (m != NULL) { + /* skip empty lines ("") */ + if (strlen(m->msg) > sizeof("\"\"")) + message__print_gettext_msgid_msgstr(m); + m = m->next; + } +} + +int main(int ac, char **av) +{ + conf_parse(av[1]); + + menu_build_message_list(menu_get_root_menu(NULL)); + menu__xgettext(); + return 0; +} diff --git a/support/kconfig/list.h b/support/kconfig/list.h new file mode 100644 index 00000000..45cb237a --- /dev/null +++ b/support/kconfig/list.h @@ -0,0 +1,132 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#ifndef LIST_H +#define LIST_H + +/* + * Copied from include/linux/... + */ + +#undef offsetof +#define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER) + +/** + * container_of - cast a member of a structure out to the containing structure + * @ptr: the pointer to the member. + * @type: the type of the container struct this is embedded in. + * @member: the name of the member within the struct. + * + */ +#define container_of(ptr, type, member) ({ \ + const typeof( ((type *)0)->member ) *__mptr = (ptr); \ + (type *)( (char *)__mptr - offsetof(type,member) );}) + + +struct list_head { + struct list_head *next, *prev; +}; + + +#define LIST_HEAD_INIT(name) { &(name), &(name) } + +#define LIST_HEAD(name) \ + struct list_head name = LIST_HEAD_INIT(name) + +/** + * list_entry - get the struct for this entry + * @ptr: the &struct list_head pointer. + * @type: the type of the struct this is embedded in. + * @member: the name of the list_head within the struct. + */ +#define list_entry(ptr, type, member) \ + container_of(ptr, type, member) + +/** + * list_for_each_entry - iterate over list of given type + * @pos: the type * to use as a loop cursor. + * @head: the head for your list. + * @member: the name of the list_head within the struct. + */ +#define list_for_each_entry(pos, head, member) \ + for (pos = list_entry((head)->next, typeof(*pos), member); \ + &pos->member != (head); \ + pos = list_entry(pos->member.next, typeof(*pos), member)) + +/** + * list_for_each_entry_safe - iterate over list of given type safe against removal of list entry + * @pos: the type * to use as a loop cursor. + * @n: another type * to use as temporary storage + * @head: the head for your list. + * @member: the name of the list_head within the struct. + */ +#define list_for_each_entry_safe(pos, n, head, member) \ + for (pos = list_entry((head)->next, typeof(*pos), member), \ + n = list_entry(pos->member.next, typeof(*pos), member); \ + &pos->member != (head); \ + pos = n, n = list_entry(n->member.next, typeof(*n), member)) + +/** + * list_empty - tests whether a list is empty + * @head: the list to test. + */ +static inline int list_empty(const struct list_head *head) +{ + return head->next == head; +} + +/* + * Insert a new entry between two known consecutive entries. + * + * This is only for internal list manipulation where we know + * the prev/next entries already! + */ +static inline void __list_add(struct list_head *_new, + struct list_head *prev, + struct list_head *next) +{ + next->prev = _new; + _new->next = next; + _new->prev = prev; + prev->next = _new; +} + +/** + * list_add_tail - add a new entry + * @new: new entry to be added + * @head: list head to add it before + * + * Insert a new entry before the specified head. + * This is useful for implementing queues. + */ +static inline void list_add_tail(struct list_head *_new, struct list_head *head) +{ + __list_add(_new, head->prev, head); +} + +/* + * Delete a list entry by making the prev/next entries + * point to each other. + * + * This is only for internal list manipulation where we know + * the prev/next entries already! + */ +static inline void __list_del(struct list_head *prev, struct list_head *next) +{ + next->prev = prev; + prev->next = next; +} + +#define LIST_POISON1 ((void *) 0x00100100) +#define LIST_POISON2 ((void *) 0x00200200) +/** + * list_del - deletes entry from list. + * @entry: the element to delete from the list. + * Note: list_empty() on entry does not return true after this, the entry is + * in an undefined state. + */ +static inline void list_del(struct list_head *entry) +{ + __list_del(entry->prev, entry->next); + entry->next = (struct list_head*)LIST_POISON1; + entry->prev = (struct list_head*)LIST_POISON2; +} +#endif diff --git a/support/kconfig/lkc.h b/support/kconfig/lkc.h new file mode 100644 index 00000000..f4394af6 --- /dev/null +++ b/support/kconfig/lkc.h @@ -0,0 +1,188 @@ +/* + * Copyright (C) 2002 Roman Zippel + * Released under the terms of the GNU GPL v2.0. + */ + +#ifndef LKC_H +#define LKC_H + +#include "expr.h" + +#ifndef KBUILD_NO_NLS +# include +#else +static inline const char *gettext(const char *txt) { return txt; } +static inline void textdomain(const char *domainname) {} +static inline void bindtextdomain(const char *name, const char *dir) {} +static inline char *bind_textdomain_codeset(const char *dn, char *c) { return c; } +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +#include "lkc_proto.h" + +#define SRCTREE "srctree" + +#ifndef PACKAGE +#define PACKAGE "linux" +#endif + +#define LOCALEDIR "/usr/share/locale" + +#define _(text) gettext(text) +#define N_(text) (text) + +#ifndef CONFIG_ +#define CONFIG_ "CONFIG_" +#endif +static inline const char *CONFIG_prefix(void) +{ + return getenv( "CONFIG_" ) ?: CONFIG_; +} +#undef CONFIG_ +#define CONFIG_ CONFIG_prefix() + +#define TF_COMMAND 0x0001 +#define TF_PARAM 0x0002 +#define TF_OPTION 0x0004 + +enum conf_def_mode { + def_default, + def_yes, + def_mod, + def_no, + def_random +}; + +#define T_OPT_MODULES 1 +#define T_OPT_DEFCONFIG_LIST 2 +#define T_OPT_ENV 3 +#define T_OPT_ALLNOCONFIG_Y 4 + +struct kconf_id { + const char *name; + int token; + unsigned int flags; + enum symbol_type stype; +}; + +extern int yylineno; +void zconfdump(FILE *out); +void zconf_starthelp(void); +FILE *zconf_fopen(const char *name); +void zconf_initscan(const char *name); +void zconf_nextfile(const char *name); +int zconf_lineno(void); +const char *zconf_curname(void); + +/* confdata.c */ +const char *conf_get_configname(void); +const char *conf_get_autoconfig_name(void); +char *conf_get_default_confname(void); +void sym_set_change_count(int count); +void sym_add_change_count(int count); +bool conf_set_all_new_symbols(enum conf_def_mode mode); +void set_all_choice_values(struct symbol *csym); + +/* confdata.c and expr.c */ +static inline void xfwrite(const void *str, size_t len, size_t count, FILE *out) +{ + assert(len != 0); + + if (fwrite(str, len, count, out) != count) + fprintf(stderr, "Error in writing or end of file.\n"); +} + +/* menu.c */ +void _menu_init(void); +void menu_warn(struct menu *menu, const char *fmt, ...); +struct menu *menu_add_menu(void); +void menu_end_menu(void); +void menu_add_entry(struct symbol *sym); +void menu_add_dep(struct expr *dep); +void menu_add_visibility(struct expr *dep); +struct property *menu_add_prompt(enum prop_type type, char *prompt, struct expr *dep); +void menu_add_expr(enum prop_type type, struct expr *expr, struct expr *dep); +void menu_add_symbol(enum prop_type type, struct symbol *sym, struct expr *dep); +void menu_add_option(int token, char *arg); +void menu_finalize(struct menu *parent); +void menu_set_type(int type); + +/* util.c */ +struct file *file_lookup(const char *name); +int file_write_dep(const char *name); +void *xmalloc(size_t size); +void *xcalloc(size_t nmemb, size_t size); +void *xrealloc(void *p, size_t size); +char *xstrdup(const char *s); + +struct gstr { + size_t len; + char *s; + /* + * when max_width is not zero long lines in string s (if any) get + * wrapped not to exceed the max_width value + */ + int max_width; +}; +struct gstr str_new(void); +void str_free(struct gstr *gs); +void str_append(struct gstr *gs, const char *s); +void str_printf(struct gstr *gs, const char *fmt, ...); +const char *str_get(struct gstr *gs); + +/* symbol.c */ +extern struct expr *sym_env_list; + +void sym_init(void); +void sym_clear_all_valid(void); +struct symbol *sym_choice_default(struct symbol *sym); +const char *sym_get_string_default(struct symbol *sym); +struct symbol *sym_check_deps(struct symbol *sym); +struct property *prop_alloc(enum prop_type type, struct symbol *sym); +struct symbol *prop_get_symbol(struct property *prop); +struct property *sym_get_env_prop(struct symbol *sym); + +static inline tristate sym_get_tristate_value(struct symbol *sym) +{ + return sym->curr.tri; +} + + +static inline struct symbol *sym_get_choice_value(struct symbol *sym) +{ + return (struct symbol *)sym->curr.val; +} + +static inline bool sym_set_choice_value(struct symbol *ch, struct symbol *chval) +{ + return sym_set_tristate_value(chval, yes); +} + +static inline bool sym_is_choice(struct symbol *sym) +{ + return sym->flags & SYMBOL_CHOICE ? true : false; +} + +static inline bool sym_is_choice_value(struct symbol *sym) +{ + return sym->flags & SYMBOL_CHOICEVAL ? true : false; +} + +static inline bool sym_is_optional(struct symbol *sym) +{ + return sym->flags & SYMBOL_OPTIONAL ? true : false; +} + +static inline bool sym_has_value(struct symbol *sym) +{ + return sym->flags & SYMBOL_DEF_USER ? true : false; +} + +#ifdef __cplusplus +} +#endif + +#endif /* LKC_H */ diff --git a/support/kconfig/lkc_proto.h b/support/kconfig/lkc_proto.h new file mode 100644 index 00000000..9dc8abfb --- /dev/null +++ b/support/kconfig/lkc_proto.h @@ -0,0 +1,53 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#include + +/* confdata.c */ +void conf_parse(const char *name); +int conf_read(const char *name); +int conf_read_simple(const char *name, int); +int conf_write_defconfig(const char *name); +int conf_write(const char *name); +int conf_write_autoconf(void); +bool conf_get_changed(void); +void conf_set_changed_callback(void (*fn)(void)); +void conf_set_message_callback(void (*fn)(const char *fmt, va_list ap)); + +/* menu.c */ +extern struct menu rootmenu; + +bool menu_is_empty(struct menu *menu); +bool menu_is_visible(struct menu *menu); +bool menu_has_prompt(struct menu *menu); +const char * menu_get_prompt(struct menu *menu); +struct menu * menu_get_root_menu(struct menu *menu); +struct menu * menu_get_parent_menu(struct menu *menu); +bool menu_has_help(struct menu *menu); +const char * menu_get_help(struct menu *menu); +struct gstr get_relations_str(struct symbol **sym_arr, struct list_head *head); +void menu_get_ext_help(struct menu *menu, struct gstr *help); + +/* symbol.c */ +extern struct symbol * symbol_hash[SYMBOL_HASHSIZE]; + +struct symbol * sym_lookup(const char *name, int flags); +struct symbol * sym_find(const char *name); +char *sym_expand_string_value(const char *in); +const char * sym_escape_string_value(const char *in); +struct symbol ** sym_re_search(const char *pattern); +const char * sym_type_name(enum symbol_type type); +void sym_calc_value(struct symbol *sym); +enum symbol_type sym_get_type(struct symbol *sym); +bool sym_tristate_within_range(struct symbol *sym,tristate tri); +bool sym_set_tristate_value(struct symbol *sym,tristate tri); +tristate sym_toggle_tristate_value(struct symbol *sym); +bool sym_string_valid(struct symbol *sym, const char *newval); +bool sym_string_within_range(struct symbol *sym, const char *str); +bool sym_set_string_value(struct symbol *sym, const char *newval); +bool sym_is_changable(struct symbol *sym); +struct property * sym_get_choice_prop(struct symbol *sym); +const char * sym_get_string_value(struct symbol *sym); + +const char * prop_get_type_name(enum prop_type type); + +/* expr.c */ +void expr_print(struct expr *e, void (*fn)(void *, struct symbol *, const char *), void *data, int prevtoken); diff --git a/support/kconfig/lxdialog/.gitignore b/support/kconfig/lxdialog/.gitignore new file mode 100644 index 00000000..90b08ff0 --- /dev/null +++ b/support/kconfig/lxdialog/.gitignore @@ -0,0 +1,4 @@ +# +# Generated files +# +lxdialog diff --git a/support/kconfig/lxdialog/BIG.FAT.WARNING b/support/kconfig/lxdialog/BIG.FAT.WARNING new file mode 100644 index 00000000..a8999d82 --- /dev/null +++ b/support/kconfig/lxdialog/BIG.FAT.WARNING @@ -0,0 +1,4 @@ +This is NOT the official version of dialog. This version has been +significantly modified from the original. It is for use by the Linux +kernel configuration script. Please do not bother Savio Lam with +questions about this program. diff --git a/support/kconfig/lxdialog/check-lxdialog.sh b/support/kconfig/lxdialog/check-lxdialog.sh new file mode 100755 index 00000000..16cd9a31 --- /dev/null +++ b/support/kconfig/lxdialog/check-lxdialog.sh @@ -0,0 +1,93 @@ +#!/bin/sh +# SPDX-License-Identifier: GPL-2.0 +# Check ncurses compatibility + +# What library to link +ldflags() +{ + pkg-config --libs ncursesw 2>/dev/null && exit + pkg-config --libs ncurses 2>/dev/null && exit + for ext in so a dll.a dylib ; do + for lib in ncursesw ncurses curses ; do + $cc -print-file-name=lib${lib}.${ext} | grep -q / + if [ $? -eq 0 ]; then + echo "-l${lib}" + exit + fi + done + done + exit 1 +} + +# Where is ncurses.h? +ccflags() +{ + if pkg-config --cflags ncursesw 2>/dev/null; then + echo '-DCURSES_LOC="" -DNCURSES_WIDECHAR=1' + elif pkg-config --cflags ncurses 2>/dev/null; then + echo '-DCURSES_LOC=""' + elif [ -f /usr/include/ncursesw/curses.h ]; then + echo '-I/usr/include/ncursesw -DCURSES_LOC=""' + echo ' -DNCURSES_WIDECHAR=1' + elif [ -f /usr/include/ncurses/ncurses.h ]; then + echo '-I/usr/include/ncurses -DCURSES_LOC=""' + elif [ -f /usr/include/ncurses/curses.h ]; then + echo '-I/usr/include/ncurses -DCURSES_LOC=""' + elif [ -f /usr/include/ncurses.h ]; then + echo '-DCURSES_LOC=""' + else + echo '-DCURSES_LOC=""' + fi +} + +# Temp file, try to clean up after us +tmp=$(mktemp) +trap "rm -f $tmp" 0 1 2 3 15 + +# Check if we can link to ncurses +check() { + $cc -x c - -o $tmp 2>/dev/null <<'EOF' +#include CURSES_LOC +main() {} +EOF + if [ $? != 0 ]; then + echo " *** Unable to find the ncurses libraries or the" 1>&2 + echo " *** required header files." 1>&2 + echo " *** 'make menuconfig' requires the ncurses libraries." 1>&2 + echo " *** " 1>&2 + echo " *** Install ncurses (ncurses-devel or libncurses-dev " 1>&2 + echo " *** depending on your distribution) and try again." 1>&2 + echo " *** " 1>&2 + exit 1 + fi +} + +usage() { + printf "Usage: $0 [-check compiler options|-ccflags|-ldflags compiler options]\n" +} + +if [ $# -eq 0 ]; then + usage + exit 1 +fi + +cc="" +case "$1" in + "-check") + shift + cc="$@" + check + ;; + "-ccflags") + ccflags + ;; + "-ldflags") + shift + cc="$@" + ldflags + ;; + "*") + usage + exit 1 + ;; +esac diff --git a/support/kconfig/lxdialog/checklist.c b/support/kconfig/lxdialog/checklist.c new file mode 100644 index 00000000..8d016faa --- /dev/null +++ b/support/kconfig/lxdialog/checklist.c @@ -0,0 +1,332 @@ +/* + * checklist.c -- implements the checklist box + * + * ORIGINAL AUTHOR: Savio Lam (lam836@cs.cuhk.hk) + * Stuart Herbert - S.Herbert@sheffield.ac.uk: radiolist extension + * Alessandro Rubini - rubini@ipvvis.unipv.it: merged the two + * MODIFIED FOR LINUX KERNEL CONFIG BY: William Roadcap (roadcap@cfw.com) + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include "dialog.h" + +static int list_width, check_x, item_x; + +/* + * Print list item + */ +static void print_item(WINDOW * win, int choice, int selected) +{ + int i; + char *list_item = malloc(list_width + 1); + + strncpy(list_item, item_str(), list_width - item_x); + list_item[list_width - item_x] = '\0'; + + /* Clear 'residue' of last item */ + wattrset(win, dlg.menubox.atr); + wmove(win, choice, 0); + for (i = 0; i < list_width; i++) + waddch(win, ' '); + + wmove(win, choice, check_x); + wattrset(win, selected ? dlg.check_selected.atr + : dlg.check.atr); + if (!item_is_tag(':')) + wprintw(win, "(%c)", item_is_tag('X') ? 'X' : ' '); + + wattrset(win, selected ? dlg.tag_selected.atr : dlg.tag.atr); + mvwaddch(win, choice, item_x, list_item[0]); + wattrset(win, selected ? dlg.item_selected.atr : dlg.item.atr); + waddstr(win, list_item + 1); + if (selected) { + wmove(win, choice, check_x + 1); + wrefresh(win); + } + free(list_item); +} + +/* + * Print the scroll indicators. + */ +static void print_arrows(WINDOW * win, int choice, int item_no, int scroll, + int y, int x, int height) +{ + wmove(win, y, x); + + if (scroll > 0) { + wattrset(win, dlg.uarrow.atr); + waddch(win, ACS_UARROW); + waddstr(win, "(-)"); + } else { + wattrset(win, dlg.menubox.atr); + waddch(win, ACS_HLINE); + waddch(win, ACS_HLINE); + waddch(win, ACS_HLINE); + waddch(win, ACS_HLINE); + } + + y = y + height + 1; + wmove(win, y, x); + + if ((height < item_no) && (scroll + choice < item_no - 1)) { + wattrset(win, dlg.darrow.atr); + waddch(win, ACS_DARROW); + waddstr(win, "(+)"); + } else { + wattrset(win, dlg.menubox_border.atr); + waddch(win, ACS_HLINE); + waddch(win, ACS_HLINE); + waddch(win, ACS_HLINE); + waddch(win, ACS_HLINE); + } +} + +/* + * Display the termination buttons + */ +static void print_buttons(WINDOW * dialog, int height, int width, int selected) +{ + int x = width / 2 - 11; + int y = height - 2; + + print_button(dialog, gettext("Select"), y, x, selected == 0); + print_button(dialog, gettext(" Help "), y, x + 14, selected == 1); + + wmove(dialog, y, x + 1 + 14 * selected); + wrefresh(dialog); +} + +/* + * Display a dialog box with a list of options that can be turned on or off + * in the style of radiolist (only one option turned on at a time). + */ +int dialog_checklist(const char *title, const char *prompt, int height, + int width, int list_height) +{ + int i, x, y, box_x, box_y; + int key = 0, button = 0, choice = 0, scroll = 0, max_choice; + WINDOW *dialog, *list; + + /* which item to highlight */ + item_foreach() { + if (item_is_tag('X')) + choice = item_n(); + if (item_is_selected()) { + choice = item_n(); + break; + } + } + +do_resize: + if (getmaxy(stdscr) < (height + CHECKLIST_HEIGTH_MIN)) + return -ERRDISPLAYTOOSMALL; + if (getmaxx(stdscr) < (width + CHECKLIST_WIDTH_MIN)) + return -ERRDISPLAYTOOSMALL; + + max_choice = MIN(list_height, item_count()); + + /* center dialog box on screen */ + x = (getmaxx(stdscr) - width) / 2; + y = (getmaxy(stdscr) - height) / 2; + + draw_shadow(stdscr, y, x, height, width); + + dialog = newwin(height, width, y, x); + keypad(dialog, TRUE); + + draw_box(dialog, 0, 0, height, width, + dlg.dialog.atr, dlg.border.atr); + wattrset(dialog, dlg.border.atr); + mvwaddch(dialog, height - 3, 0, ACS_LTEE); + for (i = 0; i < width - 2; i++) + waddch(dialog, ACS_HLINE); + wattrset(dialog, dlg.dialog.atr); + waddch(dialog, ACS_RTEE); + + print_title(dialog, title, width); + + wattrset(dialog, dlg.dialog.atr); + print_autowrap(dialog, prompt, width - 2, 1, 3); + + list_width = width - 6; + box_y = height - list_height - 5; + box_x = (width - list_width) / 2 - 1; + + /* create new window for the list */ + list = subwin(dialog, list_height, list_width, y + box_y + 1, + x + box_x + 1); + + keypad(list, TRUE); + + /* draw a box around the list items */ + draw_box(dialog, box_y, box_x, list_height + 2, list_width + 2, + dlg.menubox_border.atr, dlg.menubox.atr); + + /* Find length of longest item in order to center checklist */ + check_x = 0; + item_foreach() + check_x = MAX(check_x, strlen(item_str()) + 4); + check_x = MIN(check_x, list_width); + + check_x = (list_width - check_x) / 2; + item_x = check_x + 4; + + if (choice >= list_height) { + scroll = choice - list_height + 1; + choice -= scroll; + } + + /* Print the list */ + for (i = 0; i < max_choice; i++) { + item_set(scroll + i); + print_item(list, i, i == choice); + } + + print_arrows(dialog, choice, item_count(), scroll, + box_y, box_x + check_x + 5, list_height); + + print_buttons(dialog, height, width, 0); + + wnoutrefresh(dialog); + wnoutrefresh(list); + doupdate(); + + while (key != KEY_ESC) { + key = wgetch(dialog); + + for (i = 0; i < max_choice; i++) { + item_set(i + scroll); + if (toupper(key) == toupper(item_str()[0])) + break; + } + + if (i < max_choice || key == KEY_UP || key == KEY_DOWN || + key == '+' || key == '-') { + if (key == KEY_UP || key == '-') { + if (!choice) { + if (!scroll) + continue; + /* Scroll list down */ + if (list_height > 1) { + /* De-highlight current first item */ + item_set(scroll); + print_item(list, 0, FALSE); + scrollok(list, TRUE); + wscrl(list, -1); + scrollok(list, FALSE); + } + scroll--; + item_set(scroll); + print_item(list, 0, TRUE); + print_arrows(dialog, choice, item_count(), + scroll, box_y, box_x + check_x + 5, list_height); + + wnoutrefresh(dialog); + wrefresh(list); + + continue; /* wait for another key press */ + } else + i = choice - 1; + } else if (key == KEY_DOWN || key == '+') { + if (choice == max_choice - 1) { + if (scroll + choice >= item_count() - 1) + continue; + /* Scroll list up */ + if (list_height > 1) { + /* De-highlight current last item before scrolling up */ + item_set(scroll + max_choice - 1); + print_item(list, + max_choice - 1, + FALSE); + scrollok(list, TRUE); + wscrl(list, 1); + scrollok(list, FALSE); + } + scroll++; + item_set(scroll + max_choice - 1); + print_item(list, max_choice - 1, TRUE); + + print_arrows(dialog, choice, item_count(), + scroll, box_y, box_x + check_x + 5, list_height); + + wnoutrefresh(dialog); + wrefresh(list); + + continue; /* wait for another key press */ + } else + i = choice + 1; + } + if (i != choice) { + /* De-highlight current item */ + item_set(scroll + choice); + print_item(list, choice, FALSE); + /* Highlight new item */ + choice = i; + item_set(scroll + choice); + print_item(list, choice, TRUE); + wnoutrefresh(dialog); + wrefresh(list); + } + continue; /* wait for another key press */ + } + switch (key) { + case 'H': + case 'h': + case '?': + button = 1; + /* fall-through */ + case 'S': + case 's': + case ' ': + case '\n': + item_foreach() + item_set_selected(0); + item_set(scroll + choice); + item_set_selected(1); + delwin(list); + delwin(dialog); + return button; + case TAB: + case KEY_LEFT: + case KEY_RIGHT: + button = ((key == KEY_LEFT ? --button : ++button) < 0) + ? 1 : (button > 1 ? 0 : button); + + print_buttons(dialog, height, width, button); + wrefresh(dialog); + break; + case 'X': + case 'x': + key = KEY_ESC; + break; + case KEY_ESC: + key = on_key_esc(dialog); + break; + case KEY_RESIZE: + delwin(list); + delwin(dialog); + on_key_resize(); + goto do_resize; + } + + /* Now, update everything... */ + doupdate(); + } + delwin(list); + delwin(dialog); + return key; /* ESC pressed */ +} diff --git a/support/kconfig/lxdialog/dialog.h b/support/kconfig/lxdialog/dialog.h new file mode 100644 index 00000000..fcffd5b4 --- /dev/null +++ b/support/kconfig/lxdialog/dialog.h @@ -0,0 +1,257 @@ +/* + * dialog.h -- common declarations for all dialog modules + * + * AUTHOR: Savio Lam (lam836@cs.cuhk.hk) + * + * 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., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include +#include +#include +#include +#include +#include +#include + +#ifndef KBUILD_NO_NLS +# include +#else +# define gettext(Msgid) ((const char *) (Msgid)) +#endif + +#ifdef __sun__ +#define CURS_MACROS +#endif +#include CURSES_LOC + +/* + * Colors in ncurses 1.9.9e do not work properly since foreground and + * background colors are OR'd rather than separately masked. This version + * of dialog was hacked to work with ncurses 1.9.9e, making it incompatible + * with standard curses. The simplest fix (to make this work with standard + * curses) uses the wbkgdset() function, not used in the original hack. + * Turn it off if we're building with 1.9.9e, since it just confuses things. + */ +#if defined(NCURSES_VERSION) && defined(_NEED_WRAP) && !defined(GCC_PRINTFLIKE) +#define OLD_NCURSES 1 +#undef wbkgdset +#define wbkgdset(w,p) /*nothing */ +#else +#define OLD_NCURSES 0 +#endif + +#define TR(params) _tracef params + +#define KEY_ESC 27 +#define TAB 9 +#define MAX_LEN 2048 +#define BUF_SIZE (10*1024) +#define MIN(x,y) (x < y ? x : y) +#define MAX(x,y) (x > y ? x : y) + +#ifndef ACS_ULCORNER +#define ACS_ULCORNER '+' +#endif +#ifndef ACS_LLCORNER +#define ACS_LLCORNER '+' +#endif +#ifndef ACS_URCORNER +#define ACS_URCORNER '+' +#endif +#ifndef ACS_LRCORNER +#define ACS_LRCORNER '+' +#endif +#ifndef ACS_HLINE +#define ACS_HLINE '-' +#endif +#ifndef ACS_VLINE +#define ACS_VLINE '|' +#endif +#ifndef ACS_LTEE +#define ACS_LTEE '+' +#endif +#ifndef ACS_RTEE +#define ACS_RTEE '+' +#endif +#ifndef ACS_UARROW +#define ACS_UARROW '^' +#endif +#ifndef ACS_DARROW +#define ACS_DARROW 'v' +#endif + +/* error return codes */ +#define ERRDISPLAYTOOSMALL (KEY_MAX + 1) + +/* + * Color definitions + */ +struct dialog_color { + chtype atr; /* Color attribute */ + int fg; /* foreground */ + int bg; /* background */ + int hl; /* highlight this item */ +}; + +struct subtitle_list { + struct subtitle_list *next; + const char *text; +}; + +struct dialog_info { + const char *backtitle; + struct subtitle_list *subtitles; + struct dialog_color screen; + struct dialog_color shadow; + struct dialog_color dialog; + struct dialog_color title; + struct dialog_color border; + struct dialog_color button_active; + struct dialog_color button_inactive; + struct dialog_color button_key_active; + struct dialog_color button_key_inactive; + struct dialog_color button_label_active; + struct dialog_color button_label_inactive; + struct dialog_color inputbox; + struct dialog_color inputbox_border; + struct dialog_color searchbox; + struct dialog_color searchbox_title; + struct dialog_color searchbox_border; + struct dialog_color position_indicator; + struct dialog_color menubox; + struct dialog_color menubox_border; + struct dialog_color item; + struct dialog_color item_selected; + struct dialog_color tag; + struct dialog_color tag_selected; + struct dialog_color tag_key; + struct dialog_color tag_key_selected; + struct dialog_color check; + struct dialog_color check_selected; + struct dialog_color uarrow; + struct dialog_color darrow; +}; + +/* + * Global variables + */ +extern struct dialog_info dlg; +extern char dialog_input_result[]; +extern int saved_x, saved_y; /* Needed in signal handler in mconf.c */ + +/* + * Function prototypes + */ + +/* item list as used by checklist and menubox */ +void item_reset(void); +void item_make(const char *fmt, ...); +void item_add_str(const char *fmt, ...); +void item_set_tag(char tag); +void item_set_data(void *p); +void item_set_selected(int val); +int item_activate_selected(void); +void *item_data(void); +char item_tag(void); + +/* item list manipulation for lxdialog use */ +#define MAXITEMSTR 200 +struct dialog_item { + char str[MAXITEMSTR]; /* prompt displayed */ + char tag; + void *data; /* pointer to menu item - used by menubox+checklist */ + int selected; /* Set to 1 by dialog_*() function if selected. */ +}; + +/* list of lialog_items */ +struct dialog_list { + struct dialog_item node; + struct dialog_list *next; +}; + +extern struct dialog_list *item_cur; +extern struct dialog_list item_nil; +extern struct dialog_list *item_head; + +int item_count(void); +void item_set(int n); +int item_n(void); +const char *item_str(void); +int item_is_selected(void); +int item_is_tag(char tag); +#define item_foreach() \ + for (item_cur = item_head ? item_head: item_cur; \ + item_cur && (item_cur != &item_nil); item_cur = item_cur->next) + +/* generic key handlers */ +int on_key_esc(WINDOW *win); +int on_key_resize(void); + +/* minimum (re)size values */ +#define CHECKLIST_HEIGTH_MIN 6 /* For dialog_checklist() */ +#define CHECKLIST_WIDTH_MIN 6 +#define INPUTBOX_HEIGTH_MIN 2 /* For dialog_inputbox() */ +#define INPUTBOX_WIDTH_MIN 2 +#define MENUBOX_HEIGTH_MIN 15 /* For dialog_menu() */ +#define MENUBOX_WIDTH_MIN 65 +#define TEXTBOX_HEIGTH_MIN 8 /* For dialog_textbox() */ +#define TEXTBOX_WIDTH_MIN 8 +#define YESNO_HEIGTH_MIN 4 /* For dialog_yesno() */ +#define YESNO_WIDTH_MIN 4 +#define WINDOW_HEIGTH_MIN 19 /* For init_dialog() */ +#define WINDOW_WIDTH_MIN 80 + +int init_dialog(const char *backtitle); +void set_dialog_backtitle(const char *backtitle); +void set_dialog_subtitles(struct subtitle_list *subtitles); +void end_dialog(int x, int y); +void attr_clear(WINDOW * win, int height, int width, chtype attr); +void dialog_clear(void); +void print_autowrap(WINDOW * win, const char *prompt, int width, int y, int x); +void print_button(WINDOW * win, const char *label, int y, int x, int selected); +void print_title(WINDOW *dialog, const char *title, int width); +void draw_box(WINDOW * win, int y, int x, int height, int width, chtype box, + chtype border); +void draw_shadow(WINDOW * win, int y, int x, int height, int width); + +int first_alpha(const char *string, const char *exempt); +int dialog_yesno(const char *title, const char *prompt, int height, int width); +int dialog_msgbox(const char *title, const char *prompt, int height, + int width, int pause); + + +typedef void (*update_text_fn)(char *buf, size_t start, size_t end, void + *_data); +int dialog_textbox(const char *title, char *tbuf, int initial_height, + int initial_width, int *keys, int *_vscroll, int *_hscroll, + update_text_fn update_text, void *data); +int dialog_menu(const char *title, const char *prompt, + const void *selected, int *s_scroll); +int dialog_checklist(const char *title, const char *prompt, int height, + int width, int list_height); +int dialog_inputbox(const char *title, const char *prompt, int height, + int width, const char *init); + +/* + * This is the base for fictitious keys, which activate + * the buttons. + * + * Mouse-generated keys are the following: + * -- the first 32 are used as numbers, in addition to '0'-'9' + * -- the lowercase are used to signal mouse-enter events (M_EVENT + 'o') + * -- uppercase chars are used to invoke the button (M_EVENT + 'O') + */ +#define M_EVENT (KEY_MAX+1) diff --git a/support/kconfig/lxdialog/inputbox.c b/support/kconfig/lxdialog/inputbox.c new file mode 100644 index 00000000..d58de1dc --- /dev/null +++ b/support/kconfig/lxdialog/inputbox.c @@ -0,0 +1,301 @@ +/* + * inputbox.c -- implements the input box + * + * ORIGINAL AUTHOR: Savio Lam (lam836@cs.cuhk.hk) + * MODIFIED FOR LINUX KERNEL CONFIG BY: William Roadcap (roadcap@cfw.com) + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include "dialog.h" + +char dialog_input_result[MAX_LEN + 1]; + +/* + * Print the termination buttons + */ +static void print_buttons(WINDOW * dialog, int height, int width, int selected) +{ + int x = width / 2 - 11; + int y = height - 2; + + print_button(dialog, gettext(" Ok "), y, x, selected == 0); + print_button(dialog, gettext(" Help "), y, x + 14, selected == 1); + + wmove(dialog, y, x + 1 + 14 * selected); + wrefresh(dialog); +} + +/* + * Display a dialog box for inputing a string + */ +int dialog_inputbox(const char *title, const char *prompt, int height, int width, + const char *init) +{ + int i, x, y, box_y, box_x, box_width; + int input_x = 0, key = 0, button = -1; + int show_x, len, pos; + char *instr = dialog_input_result; + WINDOW *dialog; + + if (!init) + instr[0] = '\0'; + else + strcpy(instr, init); + +do_resize: + if (getmaxy(stdscr) <= (height - INPUTBOX_HEIGTH_MIN)) + return -ERRDISPLAYTOOSMALL; + if (getmaxx(stdscr) <= (width - INPUTBOX_WIDTH_MIN)) + return -ERRDISPLAYTOOSMALL; + + /* center dialog box on screen */ + x = (getmaxx(stdscr) - width) / 2; + y = (getmaxy(stdscr) - height) / 2; + + draw_shadow(stdscr, y, x, height, width); + + dialog = newwin(height, width, y, x); + keypad(dialog, TRUE); + + draw_box(dialog, 0, 0, height, width, + dlg.dialog.atr, dlg.border.atr); + wattrset(dialog, dlg.border.atr); + mvwaddch(dialog, height - 3, 0, ACS_LTEE); + for (i = 0; i < width - 2; i++) + waddch(dialog, ACS_HLINE); + wattrset(dialog, dlg.dialog.atr); + waddch(dialog, ACS_RTEE); + + print_title(dialog, title, width); + + wattrset(dialog, dlg.dialog.atr); + print_autowrap(dialog, prompt, width - 2, 1, 3); + + /* Draw the input field box */ + box_width = width - 6; + getyx(dialog, y, x); + box_y = y + 2; + box_x = (width - box_width) / 2; + draw_box(dialog, y + 1, box_x - 1, 3, box_width + 2, + dlg.dialog.atr, dlg.border.atr); + + print_buttons(dialog, height, width, 0); + + /* Set up the initial value */ + wmove(dialog, box_y, box_x); + wattrset(dialog, dlg.inputbox.atr); + + len = strlen(instr); + pos = len; + + if (len >= box_width) { + show_x = len - box_width + 1; + input_x = box_width - 1; + for (i = 0; i < box_width - 1; i++) + waddch(dialog, instr[show_x + i]); + } else { + show_x = 0; + input_x = len; + waddstr(dialog, instr); + } + + wmove(dialog, box_y, box_x + input_x); + + wrefresh(dialog); + + while (key != KEY_ESC) { + key = wgetch(dialog); + + if (button == -1) { /* Input box selected */ + switch (key) { + case TAB: + case KEY_UP: + case KEY_DOWN: + break; + case KEY_BACKSPACE: + case 127: + if (pos) { + wattrset(dialog, dlg.inputbox.atr); + if (input_x == 0) { + show_x--; + } else + input_x--; + + if (pos < len) { + for (i = pos - 1; i < len; i++) { + instr[i] = instr[i+1]; + } + } + + pos--; + len--; + instr[len] = '\0'; + wmove(dialog, box_y, box_x); + for (i = 0; i < box_width; i++) { + if (!instr[show_x + i]) { + waddch(dialog, ' '); + break; + } + waddch(dialog, instr[show_x + i]); + } + wmove(dialog, box_y, input_x + box_x); + wrefresh(dialog); + } + continue; + case KEY_LEFT: + if (pos > 0) { + if (input_x > 0) { + wmove(dialog, box_y, --input_x + box_x); + } else if (input_x == 0) { + show_x--; + wmove(dialog, box_y, box_x); + for (i = 0; i < box_width; i++) { + if (!instr[show_x + i]) { + waddch(dialog, ' '); + break; + } + waddch(dialog, instr[show_x + i]); + } + wmove(dialog, box_y, box_x); + } + pos--; + } + continue; + case KEY_RIGHT: + if (pos < len) { + if (input_x < box_width - 1) { + wmove(dialog, box_y, ++input_x + box_x); + } else if (input_x == box_width - 1) { + show_x++; + wmove(dialog, box_y, box_x); + for (i = 0; i < box_width; i++) { + if (!instr[show_x + i]) { + waddch(dialog, ' '); + break; + } + waddch(dialog, instr[show_x + i]); + } + wmove(dialog, box_y, input_x + box_x); + } + pos++; + } + continue; + default: + if (key < 0x100 && isprint(key)) { + if (len < MAX_LEN) { + wattrset(dialog, dlg.inputbox.atr); + if (pos < len) { + for (i = len; i > pos; i--) + instr[i] = instr[i-1]; + instr[pos] = key; + } else { + instr[len] = key; + } + pos++; + len++; + instr[len] = '\0'; + + if (input_x == box_width - 1) { + show_x++; + } else { + input_x++; + } + + wmove(dialog, box_y, box_x); + for (i = 0; i < box_width; i++) { + if (!instr[show_x + i]) { + waddch(dialog, ' '); + break; + } + waddch(dialog, instr[show_x + i]); + } + wmove(dialog, box_y, input_x + box_x); + wrefresh(dialog); + } else + flash(); /* Alarm user about overflow */ + continue; + } + } + } + switch (key) { + case 'O': + case 'o': + delwin(dialog); + return 0; + case 'H': + case 'h': + delwin(dialog); + return 1; + case KEY_UP: + case KEY_LEFT: + switch (button) { + case -1: + button = 1; /* Indicates "Help" button is selected */ + print_buttons(dialog, height, width, 1); + break; + case 0: + button = -1; /* Indicates input box is selected */ + print_buttons(dialog, height, width, 0); + wmove(dialog, box_y, box_x + input_x); + wrefresh(dialog); + break; + case 1: + button = 0; /* Indicates "OK" button is selected */ + print_buttons(dialog, height, width, 0); + break; + } + break; + case TAB: + case KEY_DOWN: + case KEY_RIGHT: + switch (button) { + case -1: + button = 0; /* Indicates "OK" button is selected */ + print_buttons(dialog, height, width, 0); + break; + case 0: + button = 1; /* Indicates "Help" button is selected */ + print_buttons(dialog, height, width, 1); + break; + case 1: + button = -1; /* Indicates input box is selected */ + print_buttons(dialog, height, width, 0); + wmove(dialog, box_y, box_x + input_x); + wrefresh(dialog); + break; + } + break; + case ' ': + case '\n': + delwin(dialog); + return (button == -1 ? 0 : button); + case 'X': + case 'x': + key = KEY_ESC; + break; + case KEY_ESC: + key = on_key_esc(dialog); + break; + case KEY_RESIZE: + delwin(dialog); + on_key_resize(); + goto do_resize; + } + } + + delwin(dialog); + return KEY_ESC; /* ESC pressed */ +} diff --git a/support/kconfig/lxdialog/menubox.c b/support/kconfig/lxdialog/menubox.c new file mode 100644 index 00000000..18552490 --- /dev/null +++ b/support/kconfig/lxdialog/menubox.c @@ -0,0 +1,437 @@ +/* + * menubox.c -- implements the menu box + * + * ORIGINAL AUTHOR: Savio Lam (lam836@cs.cuhk.hk) + * MODIFIED FOR LINUX KERNEL CONFIG BY: William Roadcap (roadcapw@cfw.com) + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +/* + * Changes by Clifford Wolf (god@clifford.at) + * + * [ 1998-06-13 ] + * + * *) A bugfix for the Page-Down problem + * + * *) Formerly when I used Page Down and Page Up, the cursor would be set + * to the first position in the menu box. Now lxdialog is a bit + * smarter and works more like other menu systems (just have a look at + * it). + * + * *) Formerly if I selected something my scrolling would be broken because + * lxdialog is re-invoked by the Menuconfig shell script, can't + * remember the last scrolling position, and just sets it so that the + * cursor is at the bottom of the box. Now it writes the temporary file + * lxdialog.scrltmp which contains this information. The file is + * deleted by lxdialog if the user leaves a submenu or enters a new + * one, but it would be nice if Menuconfig could make another "rm -f" + * just to be sure. Just try it out - you will recognise a difference! + * + * [ 1998-06-14 ] + * + * *) Now lxdialog is crash-safe against broken "lxdialog.scrltmp" files + * and menus change their size on the fly. + * + * *) If for some reason the last scrolling position is not saved by + * lxdialog, it sets the scrolling so that the selected item is in the + * middle of the menu box, not at the bottom. + * + * 02 January 1999, Michael Elizabeth Chastain (mec@shout.net) + * Reset 'scroll' to 0 if the value from lxdialog.scrltmp is bogus. + * This fixes a bug in Menuconfig where using ' ' to descend into menus + * would leave mis-synchronized lxdialog.scrltmp files lying around, + * fscanf would read in 'scroll', and eventually that value would get used. + */ + +#include "dialog.h" + +static int menu_width, item_x; + +/* + * Print menu item + */ +static void do_print_item(WINDOW * win, const char *item, int line_y, + int selected, int hotkey) +{ + int j; + char *menu_item = malloc(menu_width + 1); + + strncpy(menu_item, item, menu_width - item_x); + menu_item[menu_width - item_x] = '\0'; + j = first_alpha(menu_item, "YyNnMmHh"); + + /* Clear 'residue' of last item */ + wattrset(win, dlg.menubox.atr); + wmove(win, line_y, 0); +#if OLD_NCURSES + { + int i; + for (i = 0; i < menu_width; i++) + waddch(win, ' '); + } +#else + wclrtoeol(win); +#endif + wattrset(win, selected ? dlg.item_selected.atr : dlg.item.atr); + mvwaddstr(win, line_y, item_x, menu_item); + if (hotkey) { + wattrset(win, selected ? dlg.tag_key_selected.atr + : dlg.tag_key.atr); + mvwaddch(win, line_y, item_x + j, menu_item[j]); + } + if (selected) { + wmove(win, line_y, item_x + 1); + } + free(menu_item); + wrefresh(win); +} + +#define print_item(index, choice, selected) \ +do { \ + item_set(index); \ + do_print_item(menu, item_str(), choice, selected, !item_is_tag(':')); \ +} while (0) + +/* + * Print the scroll indicators. + */ +static void print_arrows(WINDOW * win, int item_no, int scroll, int y, int x, + int height) +{ + int cur_y, cur_x; + + getyx(win, cur_y, cur_x); + + wmove(win, y, x); + + if (scroll > 0) { + wattrset(win, dlg.uarrow.atr); + waddch(win, ACS_UARROW); + waddstr(win, "(-)"); + } else { + wattrset(win, dlg.menubox.atr); + waddch(win, ACS_HLINE); + waddch(win, ACS_HLINE); + waddch(win, ACS_HLINE); + waddch(win, ACS_HLINE); + } + + y = y + height + 1; + wmove(win, y, x); + wrefresh(win); + + if ((height < item_no) && (scroll + height < item_no)) { + wattrset(win, dlg.darrow.atr); + waddch(win, ACS_DARROW); + waddstr(win, "(+)"); + } else { + wattrset(win, dlg.menubox_border.atr); + waddch(win, ACS_HLINE); + waddch(win, ACS_HLINE); + waddch(win, ACS_HLINE); + waddch(win, ACS_HLINE); + } + + wmove(win, cur_y, cur_x); + wrefresh(win); +} + +/* + * Display the termination buttons. + */ +static void print_buttons(WINDOW * win, int height, int width, int selected) +{ + int x = width / 2 - 28; + int y = height - 2; + + print_button(win, gettext("Select"), y, x, selected == 0); + print_button(win, gettext(" Exit "), y, x + 12, selected == 1); + print_button(win, gettext(" Help "), y, x + 24, selected == 2); + print_button(win, gettext(" Save "), y, x + 36, selected == 3); + print_button(win, gettext(" Load "), y, x + 48, selected == 4); + + wmove(win, y, x + 1 + 12 * selected); + wrefresh(win); +} + +/* scroll up n lines (n may be negative) */ +static void do_scroll(WINDOW *win, int *scroll, int n) +{ + /* Scroll menu up */ + scrollok(win, TRUE); + wscrl(win, n); + scrollok(win, FALSE); + *scroll = *scroll + n; + wrefresh(win); +} + +/* + * Display a menu for choosing among a number of options + */ +int dialog_menu(const char *title, const char *prompt, + const void *selected, int *s_scroll) +{ + int i, j, x, y, box_x, box_y; + int height, width, menu_height; + int key = 0, button = 0, scroll = 0, choice = 0; + int first_item = 0, max_choice; + WINDOW *dialog, *menu; + +do_resize: + height = getmaxy(stdscr); + width = getmaxx(stdscr); + if (height < MENUBOX_HEIGTH_MIN || width < MENUBOX_WIDTH_MIN) + return -ERRDISPLAYTOOSMALL; + + height -= 4; + width -= 5; + menu_height = height - 10; + + max_choice = MIN(menu_height, item_count()); + + /* center dialog box on screen */ + x = (getmaxx(stdscr) - width) / 2; + y = (getmaxy(stdscr) - height) / 2; + + draw_shadow(stdscr, y, x, height, width); + + dialog = newwin(height, width, y, x); + keypad(dialog, TRUE); + + draw_box(dialog, 0, 0, height, width, + dlg.dialog.atr, dlg.border.atr); + wattrset(dialog, dlg.border.atr); + mvwaddch(dialog, height - 3, 0, ACS_LTEE); + for (i = 0; i < width - 2; i++) + waddch(dialog, ACS_HLINE); + wattrset(dialog, dlg.dialog.atr); + wbkgdset(dialog, dlg.dialog.atr & A_COLOR); + waddch(dialog, ACS_RTEE); + + print_title(dialog, title, width); + + wattrset(dialog, dlg.dialog.atr); + print_autowrap(dialog, prompt, width - 2, 1, 3); + + menu_width = width - 6; + box_y = height - menu_height - 5; + box_x = (width - menu_width) / 2 - 1; + + /* create new window for the menu */ + menu = subwin(dialog, menu_height, menu_width, + y + box_y + 1, x + box_x + 1); + keypad(menu, TRUE); + + /* draw a box around the menu items */ + draw_box(dialog, box_y, box_x, menu_height + 2, menu_width + 2, + dlg.menubox_border.atr, dlg.menubox.atr); + + if (menu_width >= 80) + item_x = (menu_width - 70) / 2; + else + item_x = 4; + + /* Set choice to default item */ + item_foreach() + if (selected && (selected == item_data())) + choice = item_n(); + /* get the saved scroll info */ + scroll = *s_scroll; + if ((scroll <= choice) && (scroll + max_choice > choice) && + (scroll >= 0) && (scroll + max_choice <= item_count())) { + first_item = scroll; + choice = choice - scroll; + } else { + scroll = 0; + } + if ((choice >= max_choice)) { + if (choice >= item_count() - max_choice / 2) + scroll = first_item = item_count() - max_choice; + else + scroll = first_item = choice - max_choice / 2; + choice = choice - scroll; + } + + /* Print the menu */ + for (i = 0; i < max_choice; i++) { + print_item(first_item + i, i, i == choice); + } + + wnoutrefresh(menu); + + print_arrows(dialog, item_count(), scroll, + box_y, box_x + item_x + 1, menu_height); + + print_buttons(dialog, height, width, 0); + wmove(menu, choice, item_x + 1); + wrefresh(menu); + + while (key != KEY_ESC) { + key = wgetch(menu); + + if (key < 256 && isalpha(key)) + key = tolower(key); + + if (strchr("ynmh ", key)) + i = max_choice; + else { + for (i = choice + 1; i < max_choice; i++) { + item_set(scroll + i); + j = first_alpha(item_str(), "YyNnMmHh"); + if (key == tolower(item_str()[j])) + break; + } + if (i == max_choice) + for (i = 0; i < max_choice; i++) { + item_set(scroll + i); + j = first_alpha(item_str(), "YyNnMmHh"); + if (key == tolower(item_str()[j])) + break; + } + } + + if (item_count() != 0 && + (i < max_choice || + key == KEY_UP || key == KEY_DOWN || + key == '-' || key == '+' || + key == KEY_PPAGE || key == KEY_NPAGE)) { + /* Remove highligt of current item */ + print_item(scroll + choice, choice, FALSE); + + if (key == KEY_UP || key == '-') { + if (choice < 2 && scroll) { + /* Scroll menu down */ + do_scroll(menu, &scroll, -1); + + print_item(scroll, 0, FALSE); + } else + choice = MAX(choice - 1, 0); + + } else if (key == KEY_DOWN || key == '+') { + print_item(scroll+choice, choice, FALSE); + + if ((choice > max_choice - 3) && + (scroll + max_choice < item_count())) { + /* Scroll menu up */ + do_scroll(menu, &scroll, 1); + + print_item(scroll+max_choice - 1, + max_choice - 1, FALSE); + } else + choice = MIN(choice + 1, max_choice - 1); + + } else if (key == KEY_PPAGE) { + scrollok(menu, TRUE); + for (i = 0; (i < max_choice); i++) { + if (scroll > 0) { + do_scroll(menu, &scroll, -1); + print_item(scroll, 0, FALSE); + } else { + if (choice > 0) + choice--; + } + } + + } else if (key == KEY_NPAGE) { + for (i = 0; (i < max_choice); i++) { + if (scroll + max_choice < item_count()) { + do_scroll(menu, &scroll, 1); + print_item(scroll+max_choice-1, + max_choice - 1, FALSE); + } else { + if (choice + 1 < max_choice) + choice++; + } + } + } else + choice = i; + + print_item(scroll + choice, choice, TRUE); + + print_arrows(dialog, item_count(), scroll, + box_y, box_x + item_x + 1, menu_height); + + wnoutrefresh(dialog); + wrefresh(menu); + + continue; /* wait for another key press */ + } + + switch (key) { + case KEY_LEFT: + case TAB: + case KEY_RIGHT: + button = ((key == KEY_LEFT ? --button : ++button) < 0) + ? 4 : (button > 4 ? 0 : button); + + print_buttons(dialog, height, width, button); + wrefresh(menu); + break; + case ' ': + case 's': + case 'y': + case 'n': + case 'm': + case '/': + case 'h': + case '?': + case 'z': + case '\n': + /* save scroll info */ + *s_scroll = scroll; + delwin(menu); + delwin(dialog); + item_set(scroll + choice); + item_set_selected(1); + switch (key) { + case 'h': + case '?': + return 2; + case 's': + case 'y': + return 5; + case 'n': + return 6; + case 'm': + return 7; + case ' ': + return 8; + case '/': + return 9; + case 'z': + return 10; + case '\n': + return button; + } + return 0; + case 'e': + case 'x': + key = KEY_ESC; + break; + case KEY_ESC: + key = on_key_esc(menu); + break; + case KEY_RESIZE: + on_key_resize(); + delwin(menu); + delwin(dialog); + goto do_resize; + } + } + delwin(menu); + delwin(dialog); + return key; /* ESC pressed */ +} diff --git a/support/kconfig/lxdialog/textbox.c b/support/kconfig/lxdialog/textbox.c new file mode 100644 index 00000000..1773319b --- /dev/null +++ b/support/kconfig/lxdialog/textbox.c @@ -0,0 +1,408 @@ +/* + * textbox.c -- implements the text box + * + * ORIGINAL AUTHOR: Savio Lam (lam836@cs.cuhk.hk) + * MODIFIED FOR LINUX KERNEL CONFIG BY: William Roadcap (roadcap@cfw.com) + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include "dialog.h" + +static void back_lines(int n); +static void print_page(WINDOW *win, int height, int width, update_text_fn + update_text, void *data); +static void print_line(WINDOW *win, int row, int width); +static char *get_line(void); +static void print_position(WINDOW * win); + +static int hscroll; +static int begin_reached, end_reached, page_length; +static char *buf; +static char *page; + +/* + * refresh window content + */ +static void refresh_text_box(WINDOW *dialog, WINDOW *box, int boxh, int boxw, + int cur_y, int cur_x, update_text_fn update_text, + void *data) +{ + print_page(box, boxh, boxw, update_text, data); + print_position(dialog); + wmove(dialog, cur_y, cur_x); /* Restore cursor position */ + wrefresh(dialog); +} + + +/* + * Display text from a file in a dialog box. + * + * keys is a null-terminated array + * update_text() may not add or remove any '\n' or '\0' in tbuf + */ +int dialog_textbox(const char *title, char *tbuf, int initial_height, + int initial_width, int *keys, int *_vscroll, int *_hscroll, + update_text_fn update_text, void *data) +{ + int i, x, y, cur_x, cur_y, key = 0; + int height, width, boxh, boxw; + WINDOW *dialog, *box; + bool done = false; + + begin_reached = 1; + end_reached = 0; + page_length = 0; + hscroll = 0; + buf = tbuf; + page = buf; /* page is pointer to start of page to be displayed */ + + if (_vscroll && *_vscroll) { + begin_reached = 0; + + for (i = 0; i < *_vscroll; i++) + get_line(); + } + if (_hscroll) + hscroll = *_hscroll; + +do_resize: + getmaxyx(stdscr, height, width); + if (height < TEXTBOX_HEIGTH_MIN || width < TEXTBOX_WIDTH_MIN) + return -ERRDISPLAYTOOSMALL; + if (initial_height != 0) + height = initial_height; + else + if (height > 4) + height -= 4; + else + height = 0; + if (initial_width != 0) + width = initial_width; + else + if (width > 5) + width -= 5; + else + width = 0; + + /* center dialog box on screen */ + x = (getmaxx(stdscr) - width) / 2; + y = (getmaxy(stdscr) - height) / 2; + + draw_shadow(stdscr, y, x, height, width); + + dialog = newwin(height, width, y, x); + keypad(dialog, TRUE); + + /* Create window for box region, used for scrolling text */ + boxh = height - 4; + boxw = width - 2; + box = subwin(dialog, boxh, boxw, y + 1, x + 1); + wattrset(box, dlg.dialog.atr); + wbkgdset(box, dlg.dialog.atr & A_COLOR); + + keypad(box, TRUE); + + /* register the new window, along with its borders */ + draw_box(dialog, 0, 0, height, width, + dlg.dialog.atr, dlg.border.atr); + + wattrset(dialog, dlg.border.atr); + mvwaddch(dialog, height - 3, 0, ACS_LTEE); + for (i = 0; i < width - 2; i++) + waddch(dialog, ACS_HLINE); + wattrset(dialog, dlg.dialog.atr); + wbkgdset(dialog, dlg.dialog.atr & A_COLOR); + waddch(dialog, ACS_RTEE); + + print_title(dialog, title, width); + + print_button(dialog, gettext(" Exit "), height - 2, width / 2 - 4, TRUE); + wnoutrefresh(dialog); + getyx(dialog, cur_y, cur_x); /* Save cursor position */ + + /* Print first page of text */ + attr_clear(box, boxh, boxw, dlg.dialog.atr); + refresh_text_box(dialog, box, boxh, boxw, cur_y, cur_x, update_text, + data); + + while (!done) { + key = wgetch(dialog); + switch (key) { + case 'E': /* Exit */ + case 'e': + case 'X': + case 'x': + case 'q': + case '\n': + done = true; + break; + case 'g': /* First page */ + case KEY_HOME: + if (!begin_reached) { + begin_reached = 1; + page = buf; + refresh_text_box(dialog, box, boxh, boxw, + cur_y, cur_x, update_text, + data); + } + break; + case 'G': /* Last page */ + case KEY_END: + + end_reached = 1; + /* point to last char in buf */ + page = buf + strlen(buf); + back_lines(boxh); + refresh_text_box(dialog, box, boxh, boxw, cur_y, + cur_x, update_text, data); + break; + case 'K': /* Previous line */ + case 'k': + case KEY_UP: + if (begin_reached) + break; + + back_lines(page_length + 1); + refresh_text_box(dialog, box, boxh, boxw, cur_y, + cur_x, update_text, data); + break; + case 'B': /* Previous page */ + case 'b': + case 'u': + case KEY_PPAGE: + if (begin_reached) + break; + back_lines(page_length + boxh); + refresh_text_box(dialog, box, boxh, boxw, cur_y, + cur_x, update_text, data); + break; + case 'J': /* Next line */ + case 'j': + case KEY_DOWN: + if (end_reached) + break; + + back_lines(page_length - 1); + refresh_text_box(dialog, box, boxh, boxw, cur_y, + cur_x, update_text, data); + break; + case KEY_NPAGE: /* Next page */ + case ' ': + case 'd': + if (end_reached) + break; + + begin_reached = 0; + refresh_text_box(dialog, box, boxh, boxw, cur_y, + cur_x, update_text, data); + break; + case '0': /* Beginning of line */ + case 'H': /* Scroll left */ + case 'h': + case KEY_LEFT: + if (hscroll <= 0) + break; + + if (key == '0') + hscroll = 0; + else + hscroll--; + /* Reprint current page to scroll horizontally */ + back_lines(page_length); + refresh_text_box(dialog, box, boxh, boxw, cur_y, + cur_x, update_text, data); + break; + case 'L': /* Scroll right */ + case 'l': + case KEY_RIGHT: + if (hscroll >= MAX_LEN) + break; + hscroll++; + /* Reprint current page to scroll horizontally */ + back_lines(page_length); + refresh_text_box(dialog, box, boxh, boxw, cur_y, + cur_x, update_text, data); + break; + case KEY_ESC: + if (on_key_esc(dialog) == KEY_ESC) + done = true; + break; + case KEY_RESIZE: + back_lines(height); + delwin(box); + delwin(dialog); + on_key_resize(); + goto do_resize; + default: + for (i = 0; keys[i]; i++) { + if (key == keys[i]) { + done = true; + break; + } + } + } + } + delwin(box); + delwin(dialog); + if (_vscroll) { + const char *s; + + s = buf; + *_vscroll = 0; + back_lines(page_length); + while (s < page && (s = strchr(s, '\n'))) { + (*_vscroll)++; + s++; + } + } + if (_hscroll) + *_hscroll = hscroll; + return key; +} + +/* + * Go back 'n' lines in text. Called by dialog_textbox(). + * 'page' will be updated to point to the desired line in 'buf'. + */ +static void back_lines(int n) +{ + int i; + + begin_reached = 0; + /* Go back 'n' lines */ + for (i = 0; i < n; i++) { + if (*page == '\0') { + if (end_reached) { + end_reached = 0; + continue; + } + } + if (page == buf) { + begin_reached = 1; + return; + } + page--; + do { + if (page == buf) { + begin_reached = 1; + return; + } + page--; + } while (*page != '\n'); + page++; + } +} + +/* + * Print a new page of text. + */ +static void print_page(WINDOW *win, int height, int width, update_text_fn + update_text, void *data) +{ + int i, passed_end = 0; + + if (update_text) { + char *end; + + for (i = 0; i < height; i++) + get_line(); + end = page; + back_lines(height); + update_text(buf, page - buf, end - buf, data); + } + + page_length = 0; + for (i = 0; i < height; i++) { + print_line(win, i, width); + if (!passed_end) + page_length++; + if (end_reached && !passed_end) + passed_end = 1; + } + wnoutrefresh(win); +} + +/* + * Print a new line of text. + */ +static void print_line(WINDOW * win, int row, int width) +{ + char *line; + + line = get_line(); + line += MIN(strlen(line), hscroll); /* Scroll horizontally */ + wmove(win, row, 0); /* move cursor to correct line */ + waddch(win, ' '); + waddnstr(win, line, MIN(strlen(line), width - 2)); + + /* Clear 'residue' of previous line */ +#if OLD_NCURSES + { + int x = getcurx(win); + int i; + for (i = 0; i < width - x; i++) + waddch(win, ' '); + } +#else + wclrtoeol(win); +#endif +} + +/* + * Return current line of text. Called by dialog_textbox() and print_line(). + * 'page' should point to start of current line before calling, and will be + * updated to point to start of next line. + */ +static char *get_line(void) +{ + int i = 0; + static char line[MAX_LEN + 1]; + + end_reached = 0; + while (*page != '\n') { + if (*page == '\0') { + end_reached = 1; + break; + } else if (i < MAX_LEN) + line[i++] = *(page++); + else { + /* Truncate lines longer than MAX_LEN characters */ + if (i == MAX_LEN) + line[i++] = '\0'; + page++; + } + } + if (i <= MAX_LEN) + line[i] = '\0'; + if (!end_reached) + page++; /* move past '\n' */ + + return line; +} + +/* + * Print current position + */ +static void print_position(WINDOW * win) +{ + int percent; + + wattrset(win, dlg.position_indicator.atr); + wbkgdset(win, dlg.position_indicator.atr & A_COLOR); + percent = (page - buf) * 100 / strlen(buf); + wmove(win, getmaxy(win) - 3, getmaxx(win) - 9); + wprintw(win, "(%3d%%)", percent); +} diff --git a/support/kconfig/lxdialog/util.c b/support/kconfig/lxdialog/util.c new file mode 100644 index 00000000..f7abdeb9 --- /dev/null +++ b/support/kconfig/lxdialog/util.c @@ -0,0 +1,713 @@ +/* + * util.c + * + * ORIGINAL AUTHOR: Savio Lam (lam836@cs.cuhk.hk) + * MODIFIED FOR LINUX KERNEL CONFIG BY: William Roadcap (roadcap@cfw.com) + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include + +#include "dialog.h" + +/* Needed in signal handler in mconf.c */ +int saved_x, saved_y; + +struct dialog_info dlg; + +static void set_mono_theme(void) +{ + dlg.screen.atr = A_NORMAL; + dlg.shadow.atr = A_NORMAL; + dlg.dialog.atr = A_NORMAL; + dlg.title.atr = A_BOLD; + dlg.border.atr = A_NORMAL; + dlg.button_active.atr = A_REVERSE; + dlg.button_inactive.atr = A_DIM; + dlg.button_key_active.atr = A_REVERSE; + dlg.button_key_inactive.atr = A_BOLD; + dlg.button_label_active.atr = A_REVERSE; + dlg.button_label_inactive.atr = A_NORMAL; + dlg.inputbox.atr = A_NORMAL; + dlg.inputbox_border.atr = A_NORMAL; + dlg.searchbox.atr = A_NORMAL; + dlg.searchbox_title.atr = A_BOLD; + dlg.searchbox_border.atr = A_NORMAL; + dlg.position_indicator.atr = A_BOLD; + dlg.menubox.atr = A_NORMAL; + dlg.menubox_border.atr = A_NORMAL; + dlg.item.atr = A_NORMAL; + dlg.item_selected.atr = A_REVERSE; + dlg.tag.atr = A_BOLD; + dlg.tag_selected.atr = A_REVERSE; + dlg.tag_key.atr = A_BOLD; + dlg.tag_key_selected.atr = A_REVERSE; + dlg.check.atr = A_BOLD; + dlg.check_selected.atr = A_REVERSE; + dlg.uarrow.atr = A_BOLD; + dlg.darrow.atr = A_BOLD; +} + +#define DLG_COLOR(dialog, f, b, h) \ +do { \ + dlg.dialog.fg = (f); \ + dlg.dialog.bg = (b); \ + dlg.dialog.hl = (h); \ +} while (0) + +static void set_classic_theme(void) +{ + DLG_COLOR(screen, COLOR_CYAN, COLOR_BLUE, true); + DLG_COLOR(shadow, COLOR_BLACK, COLOR_BLACK, true); + DLG_COLOR(dialog, COLOR_BLACK, COLOR_WHITE, false); + DLG_COLOR(title, COLOR_YELLOW, COLOR_WHITE, true); + DLG_COLOR(border, COLOR_WHITE, COLOR_WHITE, true); + DLG_COLOR(button_active, COLOR_WHITE, COLOR_BLUE, true); + DLG_COLOR(button_inactive, COLOR_BLACK, COLOR_WHITE, false); + DLG_COLOR(button_key_active, COLOR_WHITE, COLOR_BLUE, true); + DLG_COLOR(button_key_inactive, COLOR_RED, COLOR_WHITE, false); + DLG_COLOR(button_label_active, COLOR_YELLOW, COLOR_BLUE, true); + DLG_COLOR(button_label_inactive, COLOR_BLACK, COLOR_WHITE, true); + DLG_COLOR(inputbox, COLOR_BLACK, COLOR_WHITE, false); + DLG_COLOR(inputbox_border, COLOR_BLACK, COLOR_WHITE, false); + DLG_COLOR(searchbox, COLOR_BLACK, COLOR_WHITE, false); + DLG_COLOR(searchbox_title, COLOR_YELLOW, COLOR_WHITE, true); + DLG_COLOR(searchbox_border, COLOR_WHITE, COLOR_WHITE, true); + DLG_COLOR(position_indicator, COLOR_YELLOW, COLOR_WHITE, true); + DLG_COLOR(menubox, COLOR_BLACK, COLOR_WHITE, false); + DLG_COLOR(menubox_border, COLOR_WHITE, COLOR_WHITE, true); + DLG_COLOR(item, COLOR_BLACK, COLOR_WHITE, false); + DLG_COLOR(item_selected, COLOR_WHITE, COLOR_BLUE, true); + DLG_COLOR(tag, COLOR_YELLOW, COLOR_WHITE, true); + DLG_COLOR(tag_selected, COLOR_YELLOW, COLOR_BLUE, true); + DLG_COLOR(tag_key, COLOR_YELLOW, COLOR_WHITE, true); + DLG_COLOR(tag_key_selected, COLOR_YELLOW, COLOR_BLUE, true); + DLG_COLOR(check, COLOR_BLACK, COLOR_WHITE, false); + DLG_COLOR(check_selected, COLOR_WHITE, COLOR_BLUE, true); + DLG_COLOR(uarrow, COLOR_GREEN, COLOR_WHITE, true); + DLG_COLOR(darrow, COLOR_GREEN, COLOR_WHITE, true); +} + +static void set_blackbg_theme(void) +{ + DLG_COLOR(screen, COLOR_RED, COLOR_BLACK, true); + DLG_COLOR(shadow, COLOR_BLACK, COLOR_BLACK, false); + DLG_COLOR(dialog, COLOR_WHITE, COLOR_BLACK, false); + DLG_COLOR(title, COLOR_RED, COLOR_BLACK, false); + DLG_COLOR(border, COLOR_BLACK, COLOR_BLACK, true); + + DLG_COLOR(button_active, COLOR_YELLOW, COLOR_RED, false); + DLG_COLOR(button_inactive, COLOR_YELLOW, COLOR_BLACK, false); + DLG_COLOR(button_key_active, COLOR_YELLOW, COLOR_RED, true); + DLG_COLOR(button_key_inactive, COLOR_RED, COLOR_BLACK, false); + DLG_COLOR(button_label_active, COLOR_WHITE, COLOR_RED, false); + DLG_COLOR(button_label_inactive, COLOR_BLACK, COLOR_BLACK, true); + + DLG_COLOR(inputbox, COLOR_YELLOW, COLOR_BLACK, false); + DLG_COLOR(inputbox_border, COLOR_YELLOW, COLOR_BLACK, false); + + DLG_COLOR(searchbox, COLOR_YELLOW, COLOR_BLACK, false); + DLG_COLOR(searchbox_title, COLOR_YELLOW, COLOR_BLACK, true); + DLG_COLOR(searchbox_border, COLOR_BLACK, COLOR_BLACK, true); + + DLG_COLOR(position_indicator, COLOR_RED, COLOR_BLACK, false); + + DLG_COLOR(menubox, COLOR_YELLOW, COLOR_BLACK, false); + DLG_COLOR(menubox_border, COLOR_BLACK, COLOR_BLACK, true); + + DLG_COLOR(item, COLOR_WHITE, COLOR_BLACK, false); + DLG_COLOR(item_selected, COLOR_WHITE, COLOR_RED, false); + + DLG_COLOR(tag, COLOR_RED, COLOR_BLACK, false); + DLG_COLOR(tag_selected, COLOR_YELLOW, COLOR_RED, true); + DLG_COLOR(tag_key, COLOR_RED, COLOR_BLACK, false); + DLG_COLOR(tag_key_selected, COLOR_YELLOW, COLOR_RED, true); + + DLG_COLOR(check, COLOR_YELLOW, COLOR_BLACK, false); + DLG_COLOR(check_selected, COLOR_YELLOW, COLOR_RED, true); + + DLG_COLOR(uarrow, COLOR_RED, COLOR_BLACK, false); + DLG_COLOR(darrow, COLOR_RED, COLOR_BLACK, false); +} + +static void set_bluetitle_theme(void) +{ + set_classic_theme(); + DLG_COLOR(title, COLOR_BLUE, COLOR_WHITE, true); + DLG_COLOR(button_key_active, COLOR_YELLOW, COLOR_BLUE, true); + DLG_COLOR(button_label_active, COLOR_WHITE, COLOR_BLUE, true); + DLG_COLOR(searchbox_title, COLOR_BLUE, COLOR_WHITE, true); + DLG_COLOR(position_indicator, COLOR_BLUE, COLOR_WHITE, true); + DLG_COLOR(tag, COLOR_BLUE, COLOR_WHITE, true); + DLG_COLOR(tag_key, COLOR_BLUE, COLOR_WHITE, true); + +} + +/* + * Select color theme + */ +static int set_theme(const char *theme) +{ + int use_color = 1; + if (!theme) + set_bluetitle_theme(); + else if (strcmp(theme, "classic") == 0) + set_classic_theme(); + else if (strcmp(theme, "bluetitle") == 0) + set_bluetitle_theme(); + else if (strcmp(theme, "blackbg") == 0) + set_blackbg_theme(); + else if (strcmp(theme, "mono") == 0) + use_color = 0; + + return use_color; +} + +static void init_one_color(struct dialog_color *color) +{ + static int pair = 0; + + pair++; + init_pair(pair, color->fg, color->bg); + if (color->hl) + color->atr = A_BOLD | COLOR_PAIR(pair); + else + color->atr = COLOR_PAIR(pair); +} + +static void init_dialog_colors(void) +{ + init_one_color(&dlg.screen); + init_one_color(&dlg.shadow); + init_one_color(&dlg.dialog); + init_one_color(&dlg.title); + init_one_color(&dlg.border); + init_one_color(&dlg.button_active); + init_one_color(&dlg.button_inactive); + init_one_color(&dlg.button_key_active); + init_one_color(&dlg.button_key_inactive); + init_one_color(&dlg.button_label_active); + init_one_color(&dlg.button_label_inactive); + init_one_color(&dlg.inputbox); + init_one_color(&dlg.inputbox_border); + init_one_color(&dlg.searchbox); + init_one_color(&dlg.searchbox_title); + init_one_color(&dlg.searchbox_border); + init_one_color(&dlg.position_indicator); + init_one_color(&dlg.menubox); + init_one_color(&dlg.menubox_border); + init_one_color(&dlg.item); + init_one_color(&dlg.item_selected); + init_one_color(&dlg.tag); + init_one_color(&dlg.tag_selected); + init_one_color(&dlg.tag_key); + init_one_color(&dlg.tag_key_selected); + init_one_color(&dlg.check); + init_one_color(&dlg.check_selected); + init_one_color(&dlg.uarrow); + init_one_color(&dlg.darrow); +} + +/* + * Setup for color display + */ +static void color_setup(const char *theme) +{ + int use_color; + + use_color = set_theme(theme); + if (use_color && has_colors()) { + start_color(); + init_dialog_colors(); + } else + set_mono_theme(); +} + +/* + * Set window to attribute 'attr' + */ +void attr_clear(WINDOW * win, int height, int width, chtype attr) +{ + int i, j; + + wattrset(win, attr); + for (i = 0; i < height; i++) { + wmove(win, i, 0); + for (j = 0; j < width; j++) + waddch(win, ' '); + } + touchwin(win); +} + +void dialog_clear(void) +{ + int lines, columns; + + lines = getmaxy(stdscr); + columns = getmaxx(stdscr); + + attr_clear(stdscr, lines, columns, dlg.screen.atr); + /* Display background title if it exists ... - SLH */ + if (dlg.backtitle != NULL) { + int i, len = 0, skip = 0; + struct subtitle_list *pos; + + wattrset(stdscr, dlg.screen.atr); + mvwaddstr(stdscr, 0, 1, (char *)dlg.backtitle); + + for (pos = dlg.subtitles; pos != NULL; pos = pos->next) { + /* 3 is for the arrow and spaces */ + len += strlen(pos->text) + 3; + } + + wmove(stdscr, 1, 1); + if (len > columns - 2) { + const char *ellipsis = "[...] "; + waddstr(stdscr, ellipsis); + skip = len - (columns - 2 - strlen(ellipsis)); + } + + for (pos = dlg.subtitles; pos != NULL; pos = pos->next) { + if (skip == 0) + waddch(stdscr, ACS_RARROW); + else + skip--; + + if (skip == 0) + waddch(stdscr, ' '); + else + skip--; + + if (skip < strlen(pos->text)) { + waddstr(stdscr, pos->text + skip); + skip = 0; + } else + skip -= strlen(pos->text); + + if (skip == 0) + waddch(stdscr, ' '); + else + skip--; + } + + for (i = len + 1; i < columns - 1; i++) + waddch(stdscr, ACS_HLINE); + } + wnoutrefresh(stdscr); +} + +/* + * Do some initialization for dialog + */ +int init_dialog(const char *backtitle) +{ + int height, width; + + initscr(); /* Init curses */ + + /* Get current cursor position for signal handler in mconf.c */ + getyx(stdscr, saved_y, saved_x); + + getmaxyx(stdscr, height, width); + if (height < WINDOW_HEIGTH_MIN || width < WINDOW_WIDTH_MIN) { + endwin(); + return -ERRDISPLAYTOOSMALL; + } + + dlg.backtitle = backtitle; + color_setup(getenv("MENUCONFIG_COLOR")); + + keypad(stdscr, TRUE); + cbreak(); + noecho(); + dialog_clear(); + + return 0; +} + +void set_dialog_backtitle(const char *backtitle) +{ + dlg.backtitle = backtitle; +} + +void set_dialog_subtitles(struct subtitle_list *subtitles) +{ + dlg.subtitles = subtitles; +} + +/* + * End using dialog functions. + */ +void end_dialog(int x, int y) +{ + /* move cursor back to original position */ + move(y, x); + refresh(); + endwin(); +} + +/* Print the title of the dialog. Center the title and truncate + * tile if wider than dialog (- 2 chars). + **/ +void print_title(WINDOW *dialog, const char *title, int width) +{ + if (title) { + int tlen = MIN(width - 2, strlen(title)); + wattrset(dialog, dlg.title.atr); + mvwaddch(dialog, 0, (width - tlen) / 2 - 1, ' '); + mvwaddnstr(dialog, 0, (width - tlen)/2, title, tlen); + waddch(dialog, ' '); + } +} + +/* + * Print a string of text in a window, automatically wrap around to the + * next line if the string is too long to fit on one line. Newline + * characters '\n' are propperly processed. We start on a new line + * if there is no room for at least 4 nonblanks following a double-space. + */ +void print_autowrap(WINDOW * win, const char *prompt, int width, int y, int x) +{ + int newl, cur_x, cur_y; + int prompt_len, room, wlen; + char tempstr[MAX_LEN + 1], *word, *sp, *sp2, *newline_separator = 0; + + strcpy(tempstr, prompt); + + prompt_len = strlen(tempstr); + + if (prompt_len <= width - x * 2) { /* If prompt is short */ + wmove(win, y, (width - prompt_len) / 2); + waddstr(win, tempstr); + } else { + cur_x = x; + cur_y = y; + newl = 1; + word = tempstr; + while (word && *word) { + sp = strpbrk(word, "\n "); + if (sp && *sp == '\n') + newline_separator = sp; + + if (sp) + *sp++ = 0; + + /* Wrap to next line if either the word does not fit, + or it is the first word of a new sentence, and it is + short, and the next word does not fit. */ + room = width - cur_x; + wlen = strlen(word); + if (wlen > room || + (newl && wlen < 4 && sp + && wlen + 1 + strlen(sp) > room + && (!(sp2 = strpbrk(sp, "\n ")) + || wlen + 1 + (sp2 - sp) > room))) { + cur_y++; + cur_x = x; + } + wmove(win, cur_y, cur_x); + waddstr(win, word); + getyx(win, cur_y, cur_x); + + /* Move to the next line if the word separator was a newline */ + if (newline_separator) { + cur_y++; + cur_x = x; + newline_separator = 0; + } else + cur_x++; + + if (sp && *sp == ' ') { + cur_x++; /* double space */ + while (*++sp == ' ') ; + newl = 1; + } else + newl = 0; + word = sp; + } + } +} + +/* + * Print a button + */ +void print_button(WINDOW * win, const char *label, int y, int x, int selected) +{ + int i, temp; + + wmove(win, y, x); + wattrset(win, selected ? dlg.button_active.atr + : dlg.button_inactive.atr); + waddstr(win, "<"); + temp = strspn(label, " "); + label += temp; + wattrset(win, selected ? dlg.button_label_active.atr + : dlg.button_label_inactive.atr); + for (i = 0; i < temp; i++) + waddch(win, ' '); + wattrset(win, selected ? dlg.button_key_active.atr + : dlg.button_key_inactive.atr); + waddch(win, label[0]); + wattrset(win, selected ? dlg.button_label_active.atr + : dlg.button_label_inactive.atr); + waddstr(win, (char *)label + 1); + wattrset(win, selected ? dlg.button_active.atr + : dlg.button_inactive.atr); + waddstr(win, ">"); + wmove(win, y, x + temp + 1); +} + +/* + * Draw a rectangular box with line drawing characters + */ +void +draw_box(WINDOW * win, int y, int x, int height, int width, + chtype box, chtype border) +{ + int i, j; + + wattrset(win, 0); + for (i = 0; i < height; i++) { + wmove(win, y + i, x); + for (j = 0; j < width; j++) + if (!i && !j) + waddch(win, border | ACS_ULCORNER); + else if (i == height - 1 && !j) + waddch(win, border | ACS_LLCORNER); + else if (!i && j == width - 1) + waddch(win, box | ACS_URCORNER); + else if (i == height - 1 && j == width - 1) + waddch(win, box | ACS_LRCORNER); + else if (!i) + waddch(win, border | ACS_HLINE); + else if (i == height - 1) + waddch(win, box | ACS_HLINE); + else if (!j) + waddch(win, border | ACS_VLINE); + else if (j == width - 1) + waddch(win, box | ACS_VLINE); + else + waddch(win, box | ' '); + } +} + +/* + * Draw shadows along the right and bottom edge to give a more 3D look + * to the boxes + */ +void draw_shadow(WINDOW * win, int y, int x, int height, int width) +{ + int i; + + if (has_colors()) { /* Whether terminal supports color? */ + wattrset(win, dlg.shadow.atr); + wmove(win, y + height, x + 2); + for (i = 0; i < width; i++) + waddch(win, winch(win) & A_CHARTEXT); + for (i = y + 1; i < y + height + 1; i++) { + wmove(win, i, x + width); + waddch(win, winch(win) & A_CHARTEXT); + waddch(win, winch(win) & A_CHARTEXT); + } + wnoutrefresh(win); + } +} + +/* + * Return the position of the first alphabetic character in a string. + */ +int first_alpha(const char *string, const char *exempt) +{ + int i, in_paren = 0, c; + + for (i = 0; i < strlen(string); i++) { + c = tolower(string[i]); + + if (strchr("<[(", c)) + ++in_paren; + if (strchr(">])", c) && in_paren > 0) + --in_paren; + + if ((!in_paren) && isalpha(c) && strchr(exempt, c) == 0) + return i; + } + + return 0; +} + +/* + * ncurses uses ESC to detect escaped char sequences. This resutl in + * a small timeout before ESC is actually delivered to the application. + * lxdialog suggest which is correctly translated to two + * times esc. But then we need to ignore the second esc to avoid stepping + * out one menu too much. Filter away all escaped key sequences since + * keypad(FALSE) turn off ncurses support for escape sequences - and thats + * needed to make notimeout() do as expected. + */ +int on_key_esc(WINDOW *win) +{ + int key; + int key2; + int key3; + + nodelay(win, TRUE); + keypad(win, FALSE); + key = wgetch(win); + key2 = wgetch(win); + do { + key3 = wgetch(win); + } while (key3 != ERR); + nodelay(win, FALSE); + keypad(win, TRUE); + if (key == KEY_ESC && key2 == ERR) + return KEY_ESC; + else if (key != ERR && key != KEY_ESC && key2 == ERR) + ungetch(key); + + return -1; +} + +/* redraw screen in new size */ +int on_key_resize(void) +{ + dialog_clear(); + return KEY_RESIZE; +} + +struct dialog_list *item_cur; +struct dialog_list item_nil; +struct dialog_list *item_head; + +void item_reset(void) +{ + struct dialog_list *p, *next; + + for (p = item_head; p; p = next) { + next = p->next; + free(p); + } + item_head = NULL; + item_cur = &item_nil; +} + +void item_make(const char *fmt, ...) +{ + va_list ap; + struct dialog_list *p = malloc(sizeof(*p)); + + if (item_head) + item_cur->next = p; + else + item_head = p; + item_cur = p; + memset(p, 0, sizeof(*p)); + + va_start(ap, fmt); + vsnprintf(item_cur->node.str, sizeof(item_cur->node.str), fmt, ap); + va_end(ap); +} + +void item_add_str(const char *fmt, ...) +{ + va_list ap; + size_t avail; + + avail = sizeof(item_cur->node.str) - strlen(item_cur->node.str); + + va_start(ap, fmt); + vsnprintf(item_cur->node.str + strlen(item_cur->node.str), + avail, fmt, ap); + item_cur->node.str[sizeof(item_cur->node.str) - 1] = '\0'; + va_end(ap); +} + +void item_set_tag(char tag) +{ + item_cur->node.tag = tag; +} +void item_set_data(void *ptr) +{ + item_cur->node.data = ptr; +} + +void item_set_selected(int val) +{ + item_cur->node.selected = val; +} + +int item_activate_selected(void) +{ + item_foreach() + if (item_is_selected()) + return 1; + return 0; +} + +void *item_data(void) +{ + return item_cur->node.data; +} + +char item_tag(void) +{ + return item_cur->node.tag; +} + +int item_count(void) +{ + int n = 0; + struct dialog_list *p; + + for (p = item_head; p; p = p->next) + n++; + return n; +} + +void item_set(int n) +{ + int i = 0; + item_foreach() + if (i++ == n) + return; +} + +int item_n(void) +{ + int n = 0; + struct dialog_list *p; + + for (p = item_head; p; p = p->next) { + if (p == item_cur) + return n; + n++; + } + return 0; +} + +const char *item_str(void) +{ + return item_cur->node.str; +} + +int item_is_selected(void) +{ + return (item_cur->node.selected != 0); +} + +int item_is_tag(char tag) +{ + return (item_cur->node.tag == tag); +} diff --git a/support/kconfig/lxdialog/yesno.c b/support/kconfig/lxdialog/yesno.c new file mode 100644 index 00000000..676fb2f8 --- /dev/null +++ b/support/kconfig/lxdialog/yesno.c @@ -0,0 +1,114 @@ +/* + * yesno.c -- implements the yes/no box + * + * ORIGINAL AUTHOR: Savio Lam (lam836@cs.cuhk.hk) + * MODIFIED FOR LINUX KERNEL CONFIG BY: William Roadcap (roadcap@cfw.com) + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include "dialog.h" + +/* + * Display termination buttons + */ +static void print_buttons(WINDOW * dialog, int height, int width, int selected) +{ + int x = width / 2 - 10; + int y = height - 2; + + print_button(dialog, gettext(" Yes "), y, x, selected == 0); + print_button(dialog, gettext(" No "), y, x + 13, selected == 1); + + wmove(dialog, y, x + 1 + 13 * selected); + wrefresh(dialog); +} + +/* + * Display a dialog box with two buttons - Yes and No + */ +int dialog_yesno(const char *title, const char *prompt, int height, int width) +{ + int i, x, y, key = 0, button = 0; + WINDOW *dialog; + +do_resize: + if (getmaxy(stdscr) < (height + YESNO_HEIGTH_MIN)) + return -ERRDISPLAYTOOSMALL; + if (getmaxx(stdscr) < (width + YESNO_WIDTH_MIN)) + return -ERRDISPLAYTOOSMALL; + + /* center dialog box on screen */ + x = (getmaxx(stdscr) - width) / 2; + y = (getmaxy(stdscr) - height) / 2; + + draw_shadow(stdscr, y, x, height, width); + + dialog = newwin(height, width, y, x); + keypad(dialog, TRUE); + + draw_box(dialog, 0, 0, height, width, + dlg.dialog.atr, dlg.border.atr); + wattrset(dialog, dlg.border.atr); + mvwaddch(dialog, height - 3, 0, ACS_LTEE); + for (i = 0; i < width - 2; i++) + waddch(dialog, ACS_HLINE); + wattrset(dialog, dlg.dialog.atr); + waddch(dialog, ACS_RTEE); + + print_title(dialog, title, width); + + wattrset(dialog, dlg.dialog.atr); + print_autowrap(dialog, prompt, width - 2, 1, 3); + + print_buttons(dialog, height, width, 0); + + while (key != KEY_ESC) { + key = wgetch(dialog); + switch (key) { + case 'Y': + case 'y': + delwin(dialog); + return 0; + case 'N': + case 'n': + delwin(dialog); + return 1; + + case TAB: + case KEY_LEFT: + case KEY_RIGHT: + button = ((key == KEY_LEFT ? --button : ++button) < 0) ? 1 : (button > 1 ? 0 : button); + + print_buttons(dialog, height, width, button); + wrefresh(dialog); + break; + case ' ': + case '\n': + delwin(dialog); + return button; + case KEY_ESC: + key = on_key_esc(dialog); + break; + case KEY_RESIZE: + delwin(dialog); + on_key_resize(); + goto do_resize; + } + } + + delwin(dialog); + return key; /* ESC pressed */ +} diff --git a/support/kconfig/mconf.c b/support/kconfig/mconf.c new file mode 100644 index 00000000..279f4552 --- /dev/null +++ b/support/kconfig/mconf.c @@ -0,0 +1,1047 @@ +/* + * Copyright (C) 2002 Roman Zippel + * Released under the terms of the GNU GPL v2.0. + * + * Introduced single menu mode (show all sub-menus in one large tree). + * 2002-11-06 Petr Baudis + * + * i18n, 2005, Arnaldo Carvalho de Melo + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "lkc.h" +#include "lxdialog/dialog.h" + +static const char mconf_readme[] = N_( +"Overview\n" +"--------\n" +"This interface lets you select features and parameters for the build.\n" +"Features can either be built-in, modularized, or ignored. Parameters\n" +"must be entered in as decimal or hexadecimal numbers or text.\n" +"\n" +"Menu items beginning with following braces represent features that\n" +" [ ] can be built in or removed\n" +" < > can be built in, modularized or removed\n" +" { } can be built in or modularized (selected by other feature)\n" +" - - are selected by other feature,\n" +"while *, M or whitespace inside braces means to build in, build as\n" +"a module or to exclude the feature respectively.\n" +"\n" +"To change any of these features, highlight it with the cursor\n" +"keys and press to build it in, to make it a module or\n" +" to remove it. You may also press the to cycle\n" +"through the available options (i.e. Y->N->M->Y).\n" +"\n" +"Some additional keyboard hints:\n" +"\n" +"Menus\n" +"----------\n" +"o Use the Up/Down arrow keys (cursor keys) to highlight the item you\n" +" wish to change or the submenu you wish to select and press .\n" +" Submenus are designated by \"--->\", empty ones by \"----\".\n" +"\n" +" Shortcut: Press the option's highlighted letter (hotkey).\n" +" Pressing a hotkey more than once will sequence\n" +" through all visible items which use that hotkey.\n" +"\n" +" You may also use the and keys to scroll\n" +" unseen options into view.\n" +"\n" +"o To exit a menu use the cursor keys to highlight the button\n" +" and press .\n" +"\n" +" Shortcut: Press or or if there is no hotkey\n" +" using those letters. You may press a single , but\n" +" there is a delayed response which you may find annoying.\n" +"\n" +" Also, the and cursor keys will cycle between and\n" +" \n" +"\n" +"\n" +"Data Entry\n" +"-----------\n" +"o Enter the requested information and press \n" +" If you are entering hexadecimal values, it is not necessary to\n" +" add the '0x' prefix to the entry.\n" +"\n" +"o For help, use the or cursor keys to highlight the help option\n" +" and press . You can try as well.\n" +"\n" +"\n" +"Text Box (Help Window)\n" +"--------\n" +"o Use the cursor keys to scroll up/down/left/right. The VI editor\n" +" keys h,j,k,l function here as do , , and for\n" +" those who are familiar with less and lynx.\n" +"\n" +"o Press , , , or to exit.\n" +"\n" +"\n" +"Alternate Configuration Files\n" +"-----------------------------\n" +"Menuconfig supports the use of alternate configuration files for\n" +"those who, for various reasons, find it necessary to switch\n" +"between different configurations.\n" +"\n" +"The button will let you save the current configuration to\n" +"a file of your choosing. Use the button to load a previously\n" +"saved alternate configuration.\n" +"\n" +"Even if you don't use alternate configuration files, but you find\n" +"during a Menuconfig session that you have completely messed up your\n" +"settings, you may use the button to restore your previously\n" +"saved settings from \".config\" without restarting Menuconfig.\n" +"\n" +"Other information\n" +"-----------------\n" +"If you use Menuconfig in an XTERM window, make sure you have your\n" +"$TERM variable set to point to an xterm definition which supports\n" +"color. Otherwise, Menuconfig will look rather bad. Menuconfig will\n" +"not display correctly in an RXVT window because rxvt displays only one\n" +"intensity of color, bright.\n" +"\n" +"Menuconfig will display larger menus on screens or xterms which are\n" +"set to display more than the standard 25 row by 80 column geometry.\n" +"In order for this to work, the \"stty size\" command must be able to\n" +"display the screen's current row and column geometry. I STRONGLY\n" +"RECOMMEND that you make sure you do NOT have the shell variables\n" +"LINES and COLUMNS exported into your environment. Some distributions\n" +"export those variables via /etc/profile. Some ncurses programs can\n" +"become confused when those variables (LINES & COLUMNS) don't reflect\n" +"the true screen size.\n" +"\n" +"Optional personality available\n" +"------------------------------\n" +"If you prefer to have all of the options listed in a single menu,\n" +"rather than the default multimenu hierarchy, run the menuconfig with\n" +"MENUCONFIG_MODE environment variable set to single_menu. Example:\n" +"\n" +"make MENUCONFIG_MODE=single_menu menuconfig\n" +"\n" +" will then unroll the appropriate category, or enfold it if it\n" +"is already unrolled.\n" +"\n" +"Note that this mode can eventually be a little more CPU expensive\n" +"(especially with a larger number of unrolled categories) than the\n" +"default mode.\n" +"\n" +"Different color themes available\n" +"--------------------------------\n" +"It is possible to select different color themes using the variable\n" +"MENUCONFIG_COLOR. To select a theme use:\n" +"\n" +"make MENUCONFIG_COLOR= menuconfig\n" +"\n" +"Available themes are\n" +" mono => selects colors suitable for monochrome displays\n" +" blackbg => selects a color scheme with black background\n" +" classic => theme with blue background. The classic look\n" +" bluetitle => an LCD friendly version of classic. (default)\n" +"\n"), +menu_instructions[] = N_( + "Arrow keys navigate the menu. " + " selects submenus ---> (or empty submenus ----). " + "Highlighted letters are hotkeys. " + "Pressing selects a feature, while excludes a feature. " + "Press to exit, for Help, for Search. " + "Legend: [*] feature is selected [ ] feature is excluded"), +radiolist_instructions[] = N_( + "Use the arrow keys to navigate this window or " + "press the hotkey of the item you wish to select " + "followed by the . " + "Press for additional information about this option."), +inputbox_instructions_int[] = N_( + "Please enter a decimal value. " + "Fractions will not be accepted. " + "Use the key to move from the input field to the buttons below it."), +inputbox_instructions_hex[] = N_( + "Please enter a hexadecimal value. " + "Use the key to move from the input field to the buttons below it."), +inputbox_instructions_string[] = N_( + "Please enter a string value. " + "Use the key to move from the input field to the buttons below it."), +setmod_text[] = N_( + "This feature depends on another which has been configured as a module.\n" + "As a result, this feature will be built as a module."), +load_config_text[] = N_( + "Enter the name of the configuration file you wish to load. " + "Accept the name shown to restore the configuration you " + "last retrieved. Leave blank to abort."), +load_config_help[] = N_( + "\n" + "For various reasons, one may wish to keep several different\n" + "configurations available on a single machine.\n" + "\n" + "If you have saved a previous configuration in a file other than the\n" + "default one, entering its name here will allow you to modify that\n" + "configuration.\n" + "\n" + "If you are uncertain, then you have probably never used alternate\n" + "configuration files. You should therefore leave this blank to abort.\n"), +save_config_text[] = N_( + "Enter a filename to which this configuration should be saved " + "as an alternate. Leave blank to abort."), +save_config_help[] = N_( + "\n" + "For various reasons, one may wish to keep different configurations\n" + "available on a single machine.\n" + "\n" + "Entering a file name here will allow you to later retrieve, modify\n" + "and use the current configuration as an alternate to whatever\n" + "configuration options you have selected at that time.\n" + "\n" + "If you are uncertain what all this means then you should probably\n" + "leave this blank.\n"), +search_help[] = N_( + "\n" + "Search for symbols and display their relations.\n" + "Regular expressions are allowed.\n" + "Example: search for \"^FOO\"\n" + "Result:\n" + "-----------------------------------------------------------------\n" + "Symbol: FOO [=m]\n" + "Type : tristate\n" + "Prompt: Foo bus is used to drive the bar HW\n" + " Location:\n" + " -> Bus options (PCI, PCMCIA, EISA, ISA)\n" + " -> PCI support (PCI [=y])\n" + "(1) -> PCI access mode ( [=y])\n" + " Defined at drivers/pci/Kconfig:47\n" + " Depends on: X86_LOCAL_APIC && X86_IO_APIC || IA64\n" + " Selects: LIBCRC32\n" + " Selected by: BAR [=n]\n" + "-----------------------------------------------------------------\n" + "o The line 'Type:' shows the type of the configuration option for\n" + " this symbol (bool, tristate, string, ...)\n" + "o The line 'Prompt:' shows the text used in the menu structure for\n" + " this symbol\n" + "o The 'Defined at' line tells at what file / line number the symbol\n" + " is defined\n" + "o The 'Depends on:' line tells what symbols need to be defined for\n" + " this symbol to be visible in the menu (selectable)\n" + "o The 'Location:' lines tells where in the menu structure this symbol\n" + " is located\n" + " A location followed by a [=y] indicates that this is a\n" + " selectable menu item - and the current value is displayed inside\n" + " brackets.\n" + " Press the key in the (#) prefix to jump directly to that\n" + " location. You will be returned to the current search results\n" + " after exiting this new menu.\n" + "o The 'Selects:' line tells what symbols will be automatically\n" + " selected if this symbol is selected (y or m)\n" + "o The 'Selected by' line tells what symbol has selected this symbol\n" + "\n" + "Only relevant lines are shown.\n" + "\n\n" + "Search examples:\n" + "Examples: USB => find all symbols containing USB\n" + " ^USB => find all symbols starting with USB\n" + " USB$ => find all symbols ending with USB\n" + "\n"); + +static int indent; +static struct menu *current_menu; +static int child_count; +static int single_menu_mode; +static int show_all_options; +static int save_and_exit; +static int silent; + +static void conf(struct menu *menu, struct menu *active_menu); +static void conf_choice(struct menu *menu); +static void conf_string(struct menu *menu); +static void conf_load(void); +static void conf_save(void); +static int show_textbox_ext(const char *title, char *text, int r, int c, + int *keys, int *vscroll, int *hscroll, + update_text_fn update_text, void *data); +static void show_textbox(const char *title, const char *text, int r, int c); +static void show_helptext(const char *title, const char *text); +static void show_help(struct menu *menu); + +static char filename[PATH_MAX+1]; +static void set_config_filename(const char *config_filename) +{ + static char menu_backtitle[PATH_MAX+128]; + int size; + + size = snprintf(menu_backtitle, sizeof(menu_backtitle), + "%s - %s", config_filename, rootmenu.prompt->text); + if (size >= sizeof(menu_backtitle)) + menu_backtitle[sizeof(menu_backtitle)-1] = '\0'; + set_dialog_backtitle(menu_backtitle); + + size = snprintf(filename, sizeof(filename), "%s", config_filename); + if (size >= sizeof(filename)) + filename[sizeof(filename)-1] = '\0'; +} + +struct subtitle_part { + struct list_head entries; + const char *text; +}; +static LIST_HEAD(trail); + +static struct subtitle_list *subtitles; +static void set_subtitle(void) +{ + struct subtitle_part *sp; + struct subtitle_list *pos, *tmp; + + for (pos = subtitles; pos != NULL; pos = tmp) { + tmp = pos->next; + free(pos); + } + + subtitles = NULL; + list_for_each_entry(sp, &trail, entries) { + if (sp->text) { + if (pos) { + pos->next = xcalloc(1, sizeof(*pos)); + pos = pos->next; + } else { + subtitles = pos = xcalloc(1, sizeof(*pos)); + } + pos->text = sp->text; + } + } + + set_dialog_subtitles(subtitles); +} + +static void reset_subtitle(void) +{ + struct subtitle_list *pos, *tmp; + + for (pos = subtitles; pos != NULL; pos = tmp) { + tmp = pos->next; + free(pos); + } + subtitles = NULL; + set_dialog_subtitles(subtitles); +} + +struct search_data { + struct list_head *head; + struct menu **targets; + int *keys; +}; + +static void update_text(char *buf, size_t start, size_t end, void *_data) +{ + struct search_data *data = _data; + struct jump_key *pos; + int k = 0; + + list_for_each_entry(pos, data->head, entries) { + if (pos->offset >= start && pos->offset < end) { + char header[4]; + + if (k < JUMP_NB) { + int key = '0' + (pos->index % JUMP_NB) + 1; + + sprintf(header, "(%c)", key); + data->keys[k] = key; + data->targets[k] = pos->target; + k++; + } else { + sprintf(header, " "); + } + + memcpy(buf + pos->offset, header, sizeof(header) - 1); + } + } + data->keys[k] = 0; +} + +static void search_conf(void) +{ + struct symbol **sym_arr; + struct gstr res; + struct gstr title; + char *dialog_input; + int dres, vscroll = 0, hscroll = 0; + bool again; + struct gstr sttext; + struct subtitle_part stpart; + + title = str_new(); + str_printf( &title, _("Enter (sub)string or regexp to search for " + "(with or without \"%s\")"), CONFIG_); + +again: + dialog_clear(); + dres = dialog_inputbox(_("Search Configuration Parameter"), + str_get(&title), + 10, 75, ""); + switch (dres) { + case 0: + break; + case 1: + show_helptext(_("Search Configuration"), search_help); + goto again; + default: + str_free(&title); + return; + } + + /* strip the prefix if necessary */ + dialog_input = dialog_input_result; + if (strncasecmp(dialog_input_result, CONFIG_, strlen(CONFIG_)) == 0) + dialog_input += strlen(CONFIG_); + + sttext = str_new(); + str_printf(&sttext, "Search (%s)", dialog_input_result); + stpart.text = str_get(&sttext); + list_add_tail(&stpart.entries, &trail); + + sym_arr = sym_re_search(dialog_input); + do { + LIST_HEAD(head); + struct menu *targets[JUMP_NB]; + int keys[JUMP_NB + 1], i; + struct search_data data = { + .head = &head, + .targets = targets, + .keys = keys, + }; + struct jump_key *pos, *tmp; + + res = get_relations_str(sym_arr, &head); + set_subtitle(); + dres = show_textbox_ext(_("Search Results"), (char *) + str_get(&res), 0, 0, keys, &vscroll, + &hscroll, &update_text, (void *) + &data); + again = false; + for (i = 0; i < JUMP_NB && keys[i]; i++) + if (dres == keys[i]) { + conf(targets[i]->parent, targets[i]); + again = true; + } + str_free(&res); + list_for_each_entry_safe(pos, tmp, &head, entries) + free(pos); + } while (again); + free(sym_arr); + str_free(&title); + list_del(trail.prev); + str_free(&sttext); +} + +static void build_conf(struct menu *menu) +{ + struct symbol *sym; + struct property *prop; + struct menu *child; + int type, tmp, doint = 2; + tristate val; + char ch; + bool visible; + + /* + * note: menu_is_visible() has side effect that it will + * recalc the value of the symbol. + */ + visible = menu_is_visible(menu); + if (show_all_options && !menu_has_prompt(menu)) + return; + else if (!show_all_options && !visible) + return; + + sym = menu->sym; + prop = menu->prompt; + if (!sym) { + if (prop && menu != current_menu) { + const char *prompt = menu_get_prompt(menu); + switch (prop->type) { + case P_MENU: + child_count++; + prompt = _(prompt); + if (single_menu_mode) { + item_make("%s%*c%s", + menu->data ? "-->" : "++>", + indent + 1, ' ', prompt); + } else + item_make(" %*c%s %s", + indent + 1, ' ', prompt, + menu_is_empty(menu) ? "----" : "--->"); + item_set_tag('m'); + item_set_data(menu); + if (single_menu_mode && menu->data) + goto conf_childs; + return; + case P_COMMENT: + if (prompt) { + child_count++; + item_make(" %*c*** %s ***", indent + 1, ' ', _(prompt)); + item_set_tag(':'); + item_set_data(menu); + } + break; + default: + if (prompt) { + child_count++; + item_make("---%*c%s", indent + 1, ' ', _(prompt)); + item_set_tag(':'); + item_set_data(menu); + } + } + } else + doint = 0; + goto conf_childs; + } + + type = sym_get_type(sym); + if (sym_is_choice(sym)) { + struct symbol *def_sym = sym_get_choice_value(sym); + struct menu *def_menu = NULL; + + child_count++; + for (child = menu->list; child; child = child->next) { + if (menu_is_visible(child) && child->sym == def_sym) + def_menu = child; + } + + val = sym_get_tristate_value(sym); + if (sym_is_changable(sym)) { + switch (type) { + case S_BOOLEAN: + item_make("[%c]", val == no ? ' ' : '*'); + break; + case S_TRISTATE: + switch (val) { + case yes: ch = '*'; break; + case mod: ch = 'M'; break; + default: ch = ' '; break; + } + item_make("<%c>", ch); + break; + } + item_set_tag('t'); + item_set_data(menu); + } else { + item_make(" "); + item_set_tag(def_menu ? 't' : ':'); + item_set_data(menu); + } + + item_add_str("%*c%s", indent + 1, ' ', _(menu_get_prompt(menu))); + if (val == yes) { + if (def_menu) { + item_add_str(" (%s)", _(menu_get_prompt(def_menu))); + item_add_str(" --->"); + if (def_menu->list) { + indent += 2; + build_conf(def_menu); + indent -= 2; + } + } + return; + } + } else { + if (menu == current_menu) { + item_make("---%*c%s", indent + 1, ' ', _(menu_get_prompt(menu))); + item_set_tag(':'); + item_set_data(menu); + goto conf_childs; + } + child_count++; + val = sym_get_tristate_value(sym); + if (sym_is_choice_value(sym) && val == yes) { + item_make(" "); + item_set_tag(':'); + item_set_data(menu); + } else { + switch (type) { + case S_BOOLEAN: + if (sym_is_changable(sym)) + item_make("[%c]", val == no ? ' ' : '*'); + else + item_make("-%c-", val == no ? ' ' : '*'); + item_set_tag('t'); + item_set_data(menu); + break; + case S_TRISTATE: + switch (val) { + case yes: ch = '*'; break; + case mod: ch = 'M'; break; + default: ch = ' '; break; + } + if (sym_is_changable(sym)) { + if (sym->rev_dep.tri == mod) + item_make("{%c}", ch); + else + item_make("<%c>", ch); + } else + item_make("-%c-", ch); + item_set_tag('t'); + item_set_data(menu); + break; + default: + tmp = 2 + strlen(sym_get_string_value(sym)); /* () = 2 */ + item_make("(%s)", sym_get_string_value(sym)); + tmp = indent - tmp + 4; + if (tmp < 0) + tmp = 0; + item_add_str("%*c%s%s", tmp, ' ', _(menu_get_prompt(menu)), + (sym_has_value(sym) || !sym_is_changable(sym)) ? + "" : _(" (NEW)")); + item_set_tag('s'); + item_set_data(menu); + goto conf_childs; + } + } + item_add_str("%*c%s%s", indent + 1, ' ', _(menu_get_prompt(menu)), + (sym_has_value(sym) || !sym_is_changable(sym)) ? + "" : _(" (NEW)")); + if (menu->prompt->type == P_MENU) { + item_add_str(" %s", menu_is_empty(menu) ? "----" : "--->"); + return; + } + } + +conf_childs: + indent += doint; + for (child = menu->list; child; child = child->next) + build_conf(child); + indent -= doint; +} + +static void conf(struct menu *menu, struct menu *active_menu) +{ + struct menu *submenu; + const char *prompt = menu_get_prompt(menu); + struct subtitle_part stpart; + struct symbol *sym; + int res; + int s_scroll = 0; + + if (menu != &rootmenu) + stpart.text = menu_get_prompt(menu); + else + stpart.text = NULL; + list_add_tail(&stpart.entries, &trail); + + while (1) { + item_reset(); + current_menu = menu; + build_conf(menu); + if (!child_count) + break; + set_subtitle(); + dialog_clear(); + res = dialog_menu(prompt ? _(prompt) : _("Main Menu"), + _(menu_instructions), + active_menu, &s_scroll); + if (res == 1 || res == KEY_ESC || res == -ERRDISPLAYTOOSMALL) + break; + if (item_count() != 0) { + if (!item_activate_selected()) + continue; + if (!item_tag()) + continue; + } + submenu = item_data(); + active_menu = item_data(); + if (submenu) + sym = submenu->sym; + else + sym = NULL; + + switch (res) { + case 0: + switch (item_tag()) { + case 'm': + if (single_menu_mode) + submenu->data = (void *) (long) !submenu->data; + else + conf(submenu, NULL); + break; + case 't': + if (sym_is_choice(sym) && sym_get_tristate_value(sym) == yes) + conf_choice(submenu); + else if (submenu->prompt->type == P_MENU) + conf(submenu, NULL); + break; + case 's': + conf_string(submenu); + break; + } + break; + case 2: + if (sym) + show_help(submenu); + else { + reset_subtitle(); + show_helptext(_("README"), _(mconf_readme)); + } + break; + case 3: + reset_subtitle(); + conf_save(); + break; + case 4: + reset_subtitle(); + conf_load(); + break; + case 5: + if (item_is_tag('t')) { + if (sym_set_tristate_value(sym, yes)) + break; + if (sym_set_tristate_value(sym, mod)) + show_textbox(NULL, setmod_text, 6, 74); + } + break; + case 6: + if (item_is_tag('t')) + sym_set_tristate_value(sym, no); + break; + case 7: + if (item_is_tag('t')) + sym_set_tristate_value(sym, mod); + break; + case 8: + if (item_is_tag('t')) + sym_toggle_tristate_value(sym); + else if (item_is_tag('m')) + conf(submenu, NULL); + break; + case 9: + search_conf(); + break; + case 10: + show_all_options = !show_all_options; + break; + } + } + + list_del(trail.prev); +} + +static int show_textbox_ext(const char *title, char *text, int r, int c, int + *keys, int *vscroll, int *hscroll, update_text_fn + update_text, void *data) +{ + dialog_clear(); + return dialog_textbox(title, text, r, c, keys, vscroll, hscroll, + update_text, data); +} + +static void show_textbox(const char *title, const char *text, int r, int c) +{ + show_textbox_ext(title, (char *) text, r, c, (int []) {0}, NULL, NULL, + NULL, NULL); +} + +static void show_helptext(const char *title, const char *text) +{ + show_textbox(title, text, 0, 0); +} + +static void conf_message_callback(const char *fmt, va_list ap) +{ + char buf[PATH_MAX+1]; + + vsnprintf(buf, sizeof(buf), fmt, ap); + if (save_and_exit) { + if (!silent) + printf("%s", buf); + } else { + show_textbox(NULL, buf, 6, 60); + } +} + +static void show_help(struct menu *menu) +{ + struct gstr help = str_new(); + + help.max_width = getmaxx(stdscr) - 10; + menu_get_ext_help(menu, &help); + + show_helptext(_(menu_get_prompt(menu)), str_get(&help)); + str_free(&help); +} + +static void conf_choice(struct menu *menu) +{ + const char *prompt = _(menu_get_prompt(menu)); + struct menu *child; + struct symbol *active; + + active = sym_get_choice_value(menu->sym); + while (1) { + int res; + int selected; + item_reset(); + + current_menu = menu; + for (child = menu->list; child; child = child->next) { + if (!menu_is_visible(child)) + continue; + if (child->sym) + item_make("%s", _(menu_get_prompt(child))); + else { + item_make("*** %s ***", _(menu_get_prompt(child))); + item_set_tag(':'); + } + item_set_data(child); + if (child->sym == active) + item_set_selected(1); + if (child->sym == sym_get_choice_value(menu->sym)) + item_set_tag('X'); + } + dialog_clear(); + res = dialog_checklist(prompt ? _(prompt) : _("Main Menu"), + _(radiolist_instructions), + MENUBOX_HEIGTH_MIN, + MENUBOX_WIDTH_MIN, + CHECKLIST_HEIGTH_MIN); + selected = item_activate_selected(); + switch (res) { + case 0: + if (selected) { + child = item_data(); + if (!child->sym) + break; + + sym_set_tristate_value(child->sym, yes); + } + return; + case 1: + if (selected) { + child = item_data(); + show_help(child); + active = child->sym; + } else + show_help(menu); + break; + case KEY_ESC: + return; + case -ERRDISPLAYTOOSMALL: + return; + } + } +} + +static void conf_string(struct menu *menu) +{ + const char *prompt = menu_get_prompt(menu); + + while (1) { + int res; + const char *heading; + + switch (sym_get_type(menu->sym)) { + case S_INT: + heading = _(inputbox_instructions_int); + break; + case S_HEX: + heading = _(inputbox_instructions_hex); + break; + case S_STRING: + heading = _(inputbox_instructions_string); + break; + default: + heading = _("Internal mconf error!"); + } + dialog_clear(); + res = dialog_inputbox(prompt ? _(prompt) : _("Main Menu"), + heading, 10, 75, + sym_get_string_value(menu->sym)); + switch (res) { + case 0: + if (sym_set_string_value(menu->sym, dialog_input_result)) + return; + show_textbox(NULL, _("You have made an invalid entry."), 5, 43); + break; + case 1: + show_help(menu); + break; + case KEY_ESC: + return; + } + } +} + +static void conf_load(void) +{ + + while (1) { + int res; + dialog_clear(); + res = dialog_inputbox(NULL, load_config_text, + 11, 55, filename); + switch(res) { + case 0: + if (!dialog_input_result[0]) + return; + if (!conf_read(dialog_input_result)) { + set_config_filename(dialog_input_result); + sym_set_change_count(1); + return; + } + show_textbox(NULL, _("File does not exist!"), 5, 38); + break; + case 1: + show_helptext(_("Load Alternate Configuration"), load_config_help); + break; + case KEY_ESC: + return; + } + } +} + +static void conf_save(void) +{ + while (1) { + int res; + dialog_clear(); + res = dialog_inputbox(NULL, save_config_text, + 11, 55, filename); + switch(res) { + case 0: + if (!dialog_input_result[0]) + return; + if (!conf_write(dialog_input_result)) { + set_config_filename(dialog_input_result); + return; + } + show_textbox(NULL, _("Can't create file! Probably a nonexistent directory."), 5, 60); + break; + case 1: + show_helptext(_("Save Alternate Configuration"), save_config_help); + break; + case KEY_ESC: + return; + } + } +} + +static int handle_exit(void) +{ + int res; + + save_and_exit = 1; + reset_subtitle(); + dialog_clear(); + if (conf_get_changed()) + res = dialog_yesno(NULL, + _("Do you wish to save your new configuration?\n" + "(Press to continue Buildroot configuration.)"), + 6, 60); + else + res = -1; + + end_dialog(saved_x, saved_y); + + switch (res) { + case 0: + if (conf_write(filename)) { + fprintf(stderr, _("\n\n" + "Error while writing of the configuration.\n" + "Your configuration changes were NOT saved." + "\n\n")); + return 1; + } + /* fall through */ + case -1: + if (!silent) + printf(_("\n\n" + "*** End of the configuration.\n" + "*** Execute 'make' to start the build or try 'make help'." + "\n\n")); + res = 0; + break; + default: + if (!silent) + fprintf(stderr, _("\n\n" + "Your configuration changes were NOT saved." + "\n\n")); + if (res != KEY_ESC) + res = 0; + } + + return res; +} + +static void sig_handler(int signo) +{ + exit(handle_exit()); +} + +int main(int ac, char **av) +{ + char *mode; + int res; + + setlocale(LC_ALL, ""); + bindtextdomain(PACKAGE, LOCALEDIR); + textdomain(PACKAGE); + + signal(SIGINT, sig_handler); + + if (ac > 1 && strcmp(av[1], "-s") == 0) { + silent = 1; + /* Silence conf_read() until the real callback is set up */ + conf_set_message_callback(NULL); + av++; + } + conf_parse(av[1]); + conf_read(NULL); + + mode = getenv("MENUCONFIG_MODE"); + if (mode) { + if (!strcasecmp(mode, "single_menu")) + single_menu_mode = 1; + } + + if (init_dialog(NULL)) { + fprintf(stderr, N_("Your display is too small to run Menuconfig!\n")); + fprintf(stderr, N_("It must be at least 19 lines by 80 columns.\n")); + return 1; + } + + set_config_filename(conf_get_configname()); + conf_set_message_callback(conf_message_callback); + do { + conf(&rootmenu, NULL); + res = handle_exit(); + } while (res == KEY_ESC); + + return res; +} diff --git a/support/kconfig/menu.c b/support/kconfig/menu.c new file mode 100644 index 00000000..5c5c1374 --- /dev/null +++ b/support/kconfig/menu.c @@ -0,0 +1,873 @@ +/* + * Copyright (C) 2002 Roman Zippel + * Released under the terms of the GNU GPL v2.0. + */ + +#include +#include +#include +#include + +#include "lkc.h" + +static const char nohelp_text[] = "There is no help available for this option."; + +struct menu rootmenu; +static struct menu **last_entry_ptr; + +struct file *file_list; +struct file *current_file; + +void menu_warn(struct menu *menu, const char *fmt, ...) +{ + va_list ap; + va_start(ap, fmt); + fprintf(stderr, "%s:%d:warning: ", menu->file->name, menu->lineno); + vfprintf(stderr, fmt, ap); + fprintf(stderr, "\n"); + va_end(ap); +} + +static void prop_warn(struct property *prop, const char *fmt, ...) +{ + va_list ap; + va_start(ap, fmt); + fprintf(stderr, "%s:%d:warning: ", prop->file->name, prop->lineno); + vfprintf(stderr, fmt, ap); + fprintf(stderr, "\n"); + va_end(ap); +} + +void _menu_init(void) +{ + current_entry = current_menu = &rootmenu; + last_entry_ptr = &rootmenu.list; +} + +void menu_add_entry(struct symbol *sym) +{ + struct menu *menu; + + menu = xmalloc(sizeof(*menu)); + memset(menu, 0, sizeof(*menu)); + menu->sym = sym; + menu->parent = current_menu; + menu->file = current_file; + menu->lineno = zconf_lineno(); + + *last_entry_ptr = menu; + last_entry_ptr = &menu->next; + current_entry = menu; + if (sym) + menu_add_symbol(P_SYMBOL, sym, NULL); +} + +struct menu *menu_add_menu(void) +{ + last_entry_ptr = ¤t_entry->list; + return current_menu = current_entry; +} + +void menu_end_menu(void) +{ + last_entry_ptr = ¤t_menu->next; + current_menu = current_menu->parent; +} + +/* + * Rewrites 'm' to 'm' && MODULES, so that it evaluates to 'n' when running + * without modules + */ +static struct expr *rewrite_m(struct expr *e) +{ + if (!e) + return e; + + switch (e->type) { + case E_NOT: + e->left.expr = rewrite_m(e->left.expr); + break; + case E_OR: + case E_AND: + e->left.expr = rewrite_m(e->left.expr); + e->right.expr = rewrite_m(e->right.expr); + break; + case E_SYMBOL: + /* change 'm' into 'm' && MODULES */ + if (e->left.sym == &symbol_mod) + return expr_alloc_and(e, expr_alloc_symbol(modules_sym)); + break; + default: + break; + } + return e; +} + +void menu_add_dep(struct expr *dep) +{ + current_entry->dep = expr_alloc_and(current_entry->dep, dep); +} + +void menu_set_type(int type) +{ + struct symbol *sym = current_entry->sym; + + if (sym->type == type) + return; + if (sym->type == S_UNKNOWN) { + sym->type = type; + return; + } + menu_warn(current_entry, + "ignoring type redefinition of '%s' from '%s' to '%s'", + sym->name ? sym->name : "", + sym_type_name(sym->type), sym_type_name(type)); +} + +static struct property *menu_add_prop(enum prop_type type, char *prompt, struct expr *expr, struct expr *dep) +{ + struct property *prop = prop_alloc(type, current_entry->sym); + + prop->menu = current_entry; + prop->expr = expr; + prop->visible.expr = dep; + + if (prompt) { + if (isspace(*prompt)) { + prop_warn(prop, "leading whitespace ignored"); + while (isspace(*prompt)) + prompt++; + } + if (current_entry->prompt && current_entry != &rootmenu) + prop_warn(prop, "prompt redefined"); + + /* Apply all upper menus' visibilities to actual prompts. */ + if(type == P_PROMPT) { + struct menu *menu = current_entry; + + while ((menu = menu->parent) != NULL) { + struct expr *dup_expr; + + if (!menu->visibility) + continue; + /* + * Do not add a reference to the + * menu's visibility expression but + * use a copy of it. Otherwise the + * expression reduction functions + * will modify expressions that have + * multiple references which can + * cause unwanted side effects. + */ + dup_expr = expr_copy(menu->visibility); + + prop->visible.expr + = expr_alloc_and(prop->visible.expr, + dup_expr); + } + } + + current_entry->prompt = prop; + } + prop->text = prompt; + + return prop; +} + +struct property *menu_add_prompt(enum prop_type type, char *prompt, struct expr *dep) +{ + return menu_add_prop(type, prompt, NULL, dep); +} + +void menu_add_visibility(struct expr *expr) +{ + current_entry->visibility = expr_alloc_and(current_entry->visibility, + expr); +} + +void menu_add_expr(enum prop_type type, struct expr *expr, struct expr *dep) +{ + menu_add_prop(type, NULL, expr, dep); +} + +void menu_add_symbol(enum prop_type type, struct symbol *sym, struct expr *dep) +{ + menu_add_prop(type, NULL, expr_alloc_symbol(sym), dep); +} + +void menu_add_option(int token, char *arg) +{ + switch (token) { + case T_OPT_MODULES: + if (modules_sym) + zconf_error("symbol '%s' redefines option 'modules'" + " already defined by symbol '%s'", + current_entry->sym->name, + modules_sym->name + ); + modules_sym = current_entry->sym; + break; + case T_OPT_DEFCONFIG_LIST: + if (!sym_defconfig_list) + sym_defconfig_list = current_entry->sym; + else if (sym_defconfig_list != current_entry->sym) + zconf_error("trying to redefine defconfig symbol"); + sym_defconfig_list->flags |= SYMBOL_AUTO; + break; + case T_OPT_ENV: + prop_add_env(arg); + break; + case T_OPT_ALLNOCONFIG_Y: + current_entry->sym->flags |= SYMBOL_ALLNOCONFIG_Y; + break; + } +} + +static int menu_validate_number(struct symbol *sym, struct symbol *sym2) +{ + return sym2->type == S_INT || sym2->type == S_HEX || + (sym2->type == S_UNKNOWN && sym_string_valid(sym, sym2->name)); +} + +static void sym_check_prop(struct symbol *sym) +{ + struct property *prop; + struct symbol *sym2; + char *use; + + for (prop = sym->prop; prop; prop = prop->next) { + switch (prop->type) { + case P_DEFAULT: + if ((sym->type == S_STRING || sym->type == S_INT || sym->type == S_HEX) && + prop->expr->type != E_SYMBOL) + prop_warn(prop, + "default for config symbol '%s'" + " must be a single symbol", sym->name); + if (prop->expr->type != E_SYMBOL) + break; + sym2 = prop_get_symbol(prop); + if (sym->type == S_HEX || sym->type == S_INT) { + if (!menu_validate_number(sym, sym2)) + prop_warn(prop, + "'%s': number is invalid", + sym->name); + } + if (sym_is_choice(sym)) { + struct property *choice_prop = + sym_get_choice_prop(sym2); + + if (!choice_prop || + prop_get_symbol(choice_prop) != sym) + prop_warn(prop, + "choice default symbol '%s' is not contained in the choice", + sym2->name); + } + break; + case P_SELECT: + case P_IMPLY: + use = prop->type == P_SELECT ? "select" : "imply"; + sym2 = prop_get_symbol(prop); + if (sym->type != S_BOOLEAN && sym->type != S_TRISTATE) + prop_warn(prop, + "config symbol '%s' uses %s, but is " + "not bool or tristate", sym->name, use); + else if (sym2->type != S_UNKNOWN && + sym2->type != S_BOOLEAN && + sym2->type != S_TRISTATE) + prop_warn(prop, + "'%s' has wrong type. '%s' only " + "accept arguments of bool and " + "tristate type", sym2->name, use); + break; + case P_RANGE: + if (sym->type != S_INT && sym->type != S_HEX) + prop_warn(prop, "range is only allowed " + "for int or hex symbols"); + if (!menu_validate_number(sym, prop->expr->left.sym) || + !menu_validate_number(sym, prop->expr->right.sym)) + prop_warn(prop, "range is invalid"); + break; + default: + ; + } + } +} + +void menu_finalize(struct menu *parent) +{ + struct menu *menu, *last_menu; + struct symbol *sym; + struct property *prop; + struct expr *parentdep, *basedep, *dep, *dep2, **ep; + + sym = parent->sym; + if (parent->list) { + /* + * This menu node has children. We (recursively) process them + * and propagate parent dependencies before moving on. + */ + + if (sym && sym_is_choice(sym)) { + if (sym->type == S_UNKNOWN) { + /* find the first choice value to find out choice type */ + current_entry = parent; + for (menu = parent->list; menu; menu = menu->next) { + if (menu->sym && menu->sym->type != S_UNKNOWN) { + menu_set_type(menu->sym->type); + break; + } + } + } + /* set the type of the remaining choice values */ + for (menu = parent->list; menu; menu = menu->next) { + current_entry = menu; + if (menu->sym && menu->sym->type == S_UNKNOWN) + menu_set_type(sym->type); + } + + /* + * Use the choice itself as the parent dependency of + * the contained items. This turns the mode of the + * choice into an upper bound on the visibility of the + * choice value symbols. + */ + parentdep = expr_alloc_symbol(sym); + } else if (parent->prompt) + /* Menu node for 'menu' */ + parentdep = parent->prompt->visible.expr; + else + /* Menu node for 'if' */ + parentdep = parent->dep; + + /* For each child menu node... */ + for (menu = parent->list; menu; menu = menu->next) { + /* + * Propagate parent dependencies to the child menu + * node, also rewriting and simplifying expressions + */ + basedep = rewrite_m(menu->dep); + basedep = expr_transform(basedep); + basedep = expr_alloc_and(expr_copy(parentdep), basedep); + basedep = expr_eliminate_dups(basedep); + menu->dep = basedep; + + if (menu->sym) + /* + * Note: For symbols, all prompts are included + * too in the symbol's own property list + */ + prop = menu->sym->prop; + else + /* + * For non-symbol menu nodes, we just need to + * handle the prompt + */ + prop = menu->prompt; + + /* For each property... */ + for (; prop; prop = prop->next) { + if (prop->menu != menu) + /* + * Two possibilities: + * + * 1. The property lacks dependencies + * and so isn't location-specific, + * e.g. an 'option' + * + * 2. The property belongs to a symbol + * defined in multiple locations and + * is from some other location. It + * will be handled there in that + * case. + * + * Skip the property. + */ + continue; + + /* + * Propagate parent dependencies to the + * property's condition, rewriting and + * simplifying expressions at the same time + */ + dep = rewrite_m(prop->visible.expr); + dep = expr_transform(dep); + dep = expr_alloc_and(expr_copy(basedep), dep); + dep = expr_eliminate_dups(dep); + if (menu->sym && menu->sym->type != S_TRISTATE) + dep = expr_trans_bool(dep); + prop->visible.expr = dep; + + /* + * Handle selects and implies, which modify the + * dependencies of the selected/implied symbol + */ + if (prop->type == P_SELECT) { + struct symbol *es = prop_get_symbol(prop); + es->rev_dep.expr = expr_alloc_or(es->rev_dep.expr, + expr_alloc_and(expr_alloc_symbol(menu->sym), expr_copy(dep))); + } else if (prop->type == P_IMPLY) { + struct symbol *es = prop_get_symbol(prop); + es->implied.expr = expr_alloc_or(es->implied.expr, + expr_alloc_and(expr_alloc_symbol(menu->sym), expr_copy(dep))); + } + } + } + + if (sym && sym_is_choice(sym)) + expr_free(parentdep); + + /* + * Recursively process children in the same fashion before + * moving on + */ + for (menu = parent->list; menu; menu = menu->next) + menu_finalize(menu); + } else if (sym) { + /* + * Automatic submenu creation. If sym is a symbol and A, B, C, + * ... are consecutive items (symbols, menus, ifs, etc.) that + * all depend on sym, then the following menu structure is + * created: + * + * sym + * +-A + * +-B + * +-C + * ... + * + * This also works recursively, giving the following structure + * if A is a symbol and B depends on A: + * + * sym + * +-A + * | +-B + * +-C + * ... + */ + + basedep = parent->prompt ? parent->prompt->visible.expr : NULL; + basedep = expr_trans_compare(basedep, E_UNEQUAL, &symbol_no); + basedep = expr_eliminate_dups(expr_transform(basedep)); + + /* Examine consecutive elements after sym */ + last_menu = NULL; + for (menu = parent->next; menu; menu = menu->next) { + dep = menu->prompt ? menu->prompt->visible.expr : menu->dep; + if (!expr_contains_symbol(dep, sym)) + /* No dependency, quit */ + break; + if (expr_depends_symbol(dep, sym)) + /* Absolute dependency, put in submenu */ + goto next; + + /* + * Also consider it a dependency on sym if our + * dependencies contain sym and are a "superset" of + * sym's dependencies, e.g. '(sym || Q) && R' when sym + * depends on R. + * + * Note that 'R' might be from an enclosing menu or if, + * making this a more common case than it might seem. + */ + dep = expr_trans_compare(dep, E_UNEQUAL, &symbol_no); + dep = expr_eliminate_dups(expr_transform(dep)); + dep2 = expr_copy(basedep); + expr_eliminate_eq(&dep, &dep2); + expr_free(dep); + if (!expr_is_yes(dep2)) { + /* Not superset, quit */ + expr_free(dep2); + break; + } + /* Superset, put in submenu */ + expr_free(dep2); + next: + menu_finalize(menu); + menu->parent = parent; + last_menu = menu; + } + expr_free(basedep); + if (last_menu) { + parent->list = parent->next; + parent->next = last_menu->next; + last_menu->next = NULL; + } + + sym->dir_dep.expr = expr_alloc_or(sym->dir_dep.expr, parent->dep); + } + for (menu = parent->list; menu; menu = menu->next) { + if (sym && sym_is_choice(sym) && + menu->sym && !sym_is_choice_value(menu->sym)) { + current_entry = menu; + menu->sym->flags |= SYMBOL_CHOICEVAL; + if (!menu->prompt) + menu_warn(menu, "choice value must have a prompt"); + for (prop = menu->sym->prop; prop; prop = prop->next) { + if (prop->type == P_DEFAULT) + prop_warn(prop, "defaults for choice " + "values not supported"); + if (prop->menu == menu) + continue; + if (prop->type == P_PROMPT && + prop->menu->parent->sym != sym) + prop_warn(prop, "choice value used outside its choice group"); + } + /* Non-tristate choice values of tristate choices must + * depend on the choice being set to Y. The choice + * values' dependencies were propagated to their + * properties above, so the change here must be re- + * propagated. + */ + if (sym->type == S_TRISTATE && menu->sym->type != S_TRISTATE) { + basedep = expr_alloc_comp(E_EQUAL, sym, &symbol_yes); + menu->dep = expr_alloc_and(basedep, menu->dep); + for (prop = menu->sym->prop; prop; prop = prop->next) { + if (prop->menu != menu) + continue; + prop->visible.expr = expr_alloc_and(expr_copy(basedep), + prop->visible.expr); + } + } + menu_add_symbol(P_CHOICE, sym, NULL); + prop = sym_get_choice_prop(sym); + for (ep = &prop->expr; *ep; ep = &(*ep)->left.expr) + ; + *ep = expr_alloc_one(E_LIST, NULL); + (*ep)->right.sym = menu->sym; + } + + /* + * This code serves two purposes: + * + * (1) Flattening 'if' blocks, which do not specify a submenu + * and only add dependencies. + * + * (Automatic submenu creation might still create a submenu + * from an 'if' before this code runs.) + * + * (2) "Undoing" any automatic submenus created earlier below + * promptless symbols. + * + * Before: + * + * A + * if ... (or promptless symbol) + * +-B + * +-C + * D + * + * After: + * + * A + * if ... (or promptless symbol) + * B + * C + * D + */ + if (menu->list && (!menu->prompt || !menu->prompt->text)) { + for (last_menu = menu->list; ; last_menu = last_menu->next) { + last_menu->parent = parent; + if (!last_menu->next) + break; + } + last_menu->next = menu->next; + menu->next = menu->list; + menu->list = NULL; + } + } + + if (sym && !(sym->flags & SYMBOL_WARNED)) { + if (sym->type == S_UNKNOWN) + menu_warn(parent, "config symbol defined without type"); + + if (sym_is_choice(sym) && !parent->prompt) + menu_warn(parent, "choice must have a prompt"); + + /* Check properties connected to this symbol */ + sym_check_prop(sym); + sym->flags |= SYMBOL_WARNED; + } + + /* + * For non-optional choices, add a reverse dependency (corresponding to + * a select) of ' && m'. This prevents the user from + * setting the choice mode to 'n' when the choice is visible. + * + * This would also work for non-choice symbols, but only non-optional + * choices clear SYMBOL_OPTIONAL as of writing. Choices are implemented + * as a type of symbol. + */ + if (sym && !sym_is_optional(sym) && parent->prompt) { + sym->rev_dep.expr = expr_alloc_or(sym->rev_dep.expr, + expr_alloc_and(parent->prompt->visible.expr, + expr_alloc_symbol(&symbol_mod))); + } +} + +bool menu_has_prompt(struct menu *menu) +{ + if (!menu->prompt) + return false; + return true; +} + +/* + * Determine if a menu is empty. + * A menu is considered empty if it contains no or only + * invisible entries. + */ +bool menu_is_empty(struct menu *menu) +{ + struct menu *child; + + for (child = menu->list; child; child = child->next) { + if (menu_is_visible(child)) + return(false); + } + return(true); +} + +bool menu_is_visible(struct menu *menu) +{ + struct menu *child; + struct symbol *sym; + tristate visible; + + if (!menu->prompt) + return false; + + if (menu->visibility) { + if (expr_calc_value(menu->visibility) == no) + return false; + } + + sym = menu->sym; + if (sym) { + sym_calc_value(sym); + visible = menu->prompt->visible.tri; + } else + visible = menu->prompt->visible.tri = expr_calc_value(menu->prompt->visible.expr); + + if (visible != no) + return true; + + if (!sym || sym_get_tristate_value(menu->sym) == no) + return false; + + for (child = menu->list; child; child = child->next) { + if (menu_is_visible(child)) { + if (sym) + sym->flags |= SYMBOL_DEF_USER; + return true; + } + } + + return false; +} + +const char *menu_get_prompt(struct menu *menu) +{ + if (menu->prompt) + return menu->prompt->text; + else if (menu->sym) + return menu->sym->name; + return NULL; +} + +struct menu *menu_get_root_menu(struct menu *menu) +{ + return &rootmenu; +} + +struct menu *menu_get_parent_menu(struct menu *menu) +{ + enum prop_type type; + + for (; menu != &rootmenu; menu = menu->parent) { + type = menu->prompt ? menu->prompt->type : 0; + if (type == P_MENU) + break; + } + return menu; +} + +bool menu_has_help(struct menu *menu) +{ + return menu->help != NULL; +} + +const char *menu_get_help(struct menu *menu) +{ + if (menu->help) + return menu->help; + else + return ""; +} + +static void get_prompt_str(struct gstr *r, struct property *prop, + struct list_head *head) +{ + int i, j; + struct menu *submenu[8], *menu, *location = NULL; + struct jump_key *jump = NULL; + + str_printf(r, _("Prompt: %s\n"), _(prop->text)); + menu = prop->menu->parent; + for (i = 0; menu != &rootmenu && i < 8; menu = menu->parent) { + bool accessible = menu_is_visible(menu); + + submenu[i++] = menu; + if (location == NULL && accessible) + location = menu; + } + if (head && location) { + jump = xmalloc(sizeof(struct jump_key)); + + if (menu_is_visible(prop->menu)) { + /* + * There is not enough room to put the hint at the + * beginning of the "Prompt" line. Put the hint on the + * last "Location" line even when it would belong on + * the former. + */ + jump->target = prop->menu; + } else + jump->target = location; + + if (list_empty(head)) + jump->index = 0; + else + jump->index = list_entry(head->prev, struct jump_key, + entries)->index + 1; + + list_add_tail(&jump->entries, head); + } + + if (i > 0) { + str_printf(r, _(" Location:\n")); + for (j = 4; --i >= 0; j += 2) { + menu = submenu[i]; + if (jump && menu == location) + jump->offset = strlen(r->s); + str_printf(r, "%*c-> %s", j, ' ', + _(menu_get_prompt(menu))); + if (menu->sym) { + str_printf(r, " (%s [=%s])", menu->sym->name ? + menu->sym->name : _(""), + sym_get_string_value(menu->sym)); + } + str_append(r, "\n"); + } + } +} + +/* + * get property of type P_SYMBOL + */ +static struct property *get_symbol_prop(struct symbol *sym) +{ + struct property *prop = NULL; + + for_all_properties(sym, prop, P_SYMBOL) + break; + return prop; +} + +static void get_symbol_props_str(struct gstr *r, struct symbol *sym, + enum prop_type tok, const char *prefix) +{ + bool hit = false; + struct property *prop; + + for_all_properties(sym, prop, tok) { + if (!hit) { + str_append(r, prefix); + hit = true; + } else + str_printf(r, " && "); + expr_gstr_print(prop->expr, r); + } + if (hit) + str_append(r, "\n"); +} + +/* + * head is optional and may be NULL + */ +static void get_symbol_str(struct gstr *r, struct symbol *sym, + struct list_head *head) +{ + struct property *prop; + + if (sym && sym->name) { + str_printf(r, "Symbol: %s [=%s]\n", sym->name, + sym_get_string_value(sym)); + str_printf(r, "Type : %s\n", sym_type_name(sym->type)); + if (sym->type == S_INT || sym->type == S_HEX) { + prop = sym_get_range_prop(sym); + if (prop) { + str_printf(r, "Range : "); + expr_gstr_print(prop->expr, r); + str_append(r, "\n"); + } + } + } + for_all_prompts(sym, prop) + get_prompt_str(r, prop, head); + + prop = get_symbol_prop(sym); + if (prop) { + str_printf(r, _(" Defined at %s:%d\n"), prop->menu->file->name, + prop->menu->lineno); + if (!expr_is_yes(prop->visible.expr)) { + str_append(r, _(" Depends on: ")); + expr_gstr_print(prop->visible.expr, r); + str_append(r, "\n"); + } + } + + get_symbol_props_str(r, sym, P_SELECT, _(" Selects: ")); + if (sym->rev_dep.expr) { + expr_gstr_print_revdep(sym->rev_dep.expr, r, yes, " Selected by [y]:\n"); + expr_gstr_print_revdep(sym->rev_dep.expr, r, mod, " Selected by [m]:\n"); + expr_gstr_print_revdep(sym->rev_dep.expr, r, no, " Selected by [n]:\n"); + } + + get_symbol_props_str(r, sym, P_IMPLY, _(" Implies: ")); + if (sym->implied.expr) { + expr_gstr_print_revdep(sym->implied.expr, r, yes, " Implied by [y]:\n"); + expr_gstr_print_revdep(sym->implied.expr, r, mod, " Implied by [m]:\n"); + expr_gstr_print_revdep(sym->implied.expr, r, no, " Implied by [n]:\n"); + } + + str_append(r, "\n\n"); +} + +struct gstr get_relations_str(struct symbol **sym_arr, struct list_head *head) +{ + struct symbol *sym; + struct gstr res = str_new(); + int i; + + for (i = 0; sym_arr && (sym = sym_arr[i]); i++) + get_symbol_str(&res, sym, head); + if (!i) + str_append(&res, _("No matches found.\n")); + return res; +} + + +void menu_get_ext_help(struct menu *menu, struct gstr *help) +{ + struct symbol *sym = menu->sym; + const char *help_text = nohelp_text; + + if (menu_has_help(menu)) { + if (sym->name) + str_printf(help, "%s%s:\n\n", CONFIG_, sym->name); + help_text = menu_get_help(menu); + } + str_printf(help, "%s\n", _(help_text)); + if (sym) + get_symbol_str(help, sym, NULL); +} diff --git a/support/kconfig/merge_config.sh b/support/kconfig/merge_config.sh new file mode 100755 index 00000000..14917806 --- /dev/null +++ b/support/kconfig/merge_config.sh @@ -0,0 +1,182 @@ +#!/bin/sh +# merge_config.sh - Takes a list of config fragment values, and merges +# them one by one. Provides warnings on overridden values, and specified +# values that did not make it to the resulting .config file (due to missed +# dependencies or config symbol removal). +# +# Portions reused from kconf_check and generate_cfg: +# http://git.yoctoproject.org/cgit/cgit.cgi/yocto-kernel-tools/tree/tools/kconf_check +# http://git.yoctoproject.org/cgit/cgit.cgi/yocto-kernel-tools/tree/tools/generate_cfg +# +# Copyright (c) 2009-2010 Wind River Systems, Inc. +# Copyright 2011 Linaro +# +# 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. + +clean_up() { + rm -f $TMP_FILE + exit +} +trap clean_up HUP INT TERM + +usage() { + echo "Usage: $0 [OPTIONS] [CONFIG [...]]" + echo " -h display this help text" + echo " -m only merge the fragments, do not execute the make command" + echo " -n use allnoconfig instead of alldefconfig" + echo " -r list redundant entries when merging fragments" + echo " -O dir to put generated output files. Consider setting \$KCONFIG_CONFIG instead." + echo " -e colon-separated list of br2-external trees to use (optional)" + echo + echo "Used prefix: '$CONFIG_PREFIX'. You can redefine it with \$CONFIG_ + environment variable." +} + +RUNMAKE=true +ALLTARGET=alldefconfig +WARNREDUN=false +OUTPUT=. +CONFIG_PREFIX=${CONFIG_-CONFIG_} + +while true; do + case $1 in + "-n") + ALLTARGET=allnoconfig + shift + continue + ;; + "-m") + RUNMAKE=false + shift + continue + ;; + "-h") + usage + exit + ;; + "-r") + WARNREDUN=true + shift + continue + ;; + "-O") + if [ -d $2 ];then + OUTPUT=$(echo $2 | sed 's/\/*$//') + else + echo "output directory $2 does not exist" 1>&2 + exit 1 + fi + shift 2 + continue + ;; + "-e") + EXTERNAL_ARG="BR2_EXTERNAL=$2" + shift 2 + continue + ;; + *) + break + ;; + esac +done + +if [ "$#" -lt 1 ] ; then + usage + exit +fi + +if [ -z "$KCONFIG_CONFIG" ]; then + if [ "$OUTPUT" != . ]; then + KCONFIG_CONFIG=$(readlink -m -- "$OUTPUT/.config") + else + KCONFIG_CONFIG=.config + fi +fi + +INITFILE=$1 +shift; + +if [ ! -r "$INITFILE" ]; then + echo "The base file '$INITFILE' does not exist. Exit." >&2 + exit 1 +fi + +MERGE_LIST=$* +SED_CONFIG_EXP1="s/^\(${CONFIG_PREFIX}[a-zA-Z0-9_]*\)=.*/\1/p" +SED_CONFIG_EXP2="s/^# \(${CONFIG_PREFIX}[a-zA-Z0-9_]*\) is not set$/\1/p" + +TMP_FILE=$(mktemp -t .tmp.config.XXXXXXXXXX) + +echo "Using $INITFILE as base" +cat $INITFILE > $TMP_FILE + +# Merge files, printing warnings on overridden values +for MERGE_FILE in $MERGE_LIST ; do + echo "Merging $MERGE_FILE" + if [ ! -r "$MERGE_FILE" ]; then + echo "The merge file '$MERGE_FILE' does not exist. Exit." >&2 + exit 1 + fi + CFG_LIST=$(sed -n -e "$SED_CONFIG_EXP1" -e "$SED_CONFIG_EXP2" $MERGE_FILE) + + for CFG in $CFG_LIST ; do + grep -q -w $CFG $TMP_FILE || continue + PREV_VAL=$(grep -w $CFG $TMP_FILE) + NEW_VAL=$(grep -w $CFG $MERGE_FILE) + if [ "x$PREV_VAL" != "x$NEW_VAL" ] ; then + echo Value of $CFG is redefined by fragment $MERGE_FILE: + echo Previous value: $PREV_VAL + echo New value: $NEW_VAL + echo + elif [ "$WARNREDUN" = "true" ]; then + echo Value of $CFG is redundant by fragment $MERGE_FILE: + fi + sed -i "/$CFG[ =]/d" $TMP_FILE + done + cat $MERGE_FILE >> $TMP_FILE +done + +if [ "$RUNMAKE" = "false" ]; then + cp -T -- "$TMP_FILE" "$KCONFIG_CONFIG" + echo "#" + echo "# merged configuration written to $KCONFIG_CONFIG (needs make)" + echo "#" + clean_up + exit +fi + +# If we have an output dir, setup the O= argument, otherwise leave +# it blank, since O=. will create an unnecessary ./source softlink +OUTPUT_ARG="" +if [ "$OUTPUT" != "." ] ; then + OUTPUT_ARG="O=$OUTPUT" +fi + + +# Use the merged file as the starting point for: +# alldefconfig: Fills in any missing symbols with Kconfig default +# allnoconfig: Fills in any missing symbols with # CONFIG_* is not set +make KCONFIG_ALLCONFIG=$TMP_FILE $EXTERNAL_ARG $OUTPUT_ARG $ALLTARGET + + +# Check all specified config values took (might have missed-dependency issues) +for CFG in $(sed -n -e "$SED_CONFIG_EXP1" -e "$SED_CONFIG_EXP2" $TMP_FILE); do + + REQUESTED_VAL=$(grep -w -e "$CFG" $TMP_FILE) + ACTUAL_VAL=$(grep -w -e "$CFG" "$KCONFIG_CONFIG") + if [ "x$REQUESTED_VAL" != "x$ACTUAL_VAL" ] ; then + echo "Value requested for $CFG not in final .config" + echo "Requested value: $REQUESTED_VAL" + echo "Actual value: $ACTUAL_VAL" + echo "" + fi +done + +clean_up diff --git a/support/kconfig/nconf.c b/support/kconfig/nconf.c new file mode 100644 index 00000000..00311477 --- /dev/null +++ b/support/kconfig/nconf.c @@ -0,0 +1,1563 @@ +/* + * Copyright (C) 2008 Nir Tzachar +#include + +#include "lkc.h" +#include "nconf.h" +#include + +static const char nconf_global_help[] = N_( +"Help windows\n" +"------------\n" +"o Global help: Unless in a data entry window, pressing will give \n" +" you the global help window, which you are just reading.\n" +"\n" +"o A short version of the global help is available by pressing .\n" +"\n" +"o Local help: To get help related to the current menu entry, use any\n" +" of , or if in a data entry window then press .\n" +"\n" +"\n" +"Menu entries\n" +"------------\n" +"This interface lets you select features and parameters for the kernel\n" +"build. Kernel features can either be built-in, modularized, or removed.\n" +"Parameters must be entered as text or decimal or hexadecimal numbers.\n" +"\n" +"Menu entries beginning with following braces represent features that\n" +" [ ] can be built in or removed\n" +" < > can be built in, modularized or removed\n" +" { } can be built in or modularized, are selected by another feature\n" +" - - are selected by another feature\n" +" XXX cannot be selected. Symbol Info tells you why.\n" +"*, M or whitespace inside braces means to build in, build as a module\n" +"or to exclude the feature respectively.\n" +"\n" +"To change any of these features, highlight it with the movement keys\n" +"listed below and press to build it in, to make it a module or\n" +" to remove it. You may press the key to cycle through the\n" +"available options.\n" +"\n" +"A trailing \"--->\" designates a submenu, a trailing \"----\" an\n" +"empty submenu.\n" +"\n" +"Menu navigation keys\n" +"----------------------------------------------------------------------\n" +"Linewise up \n" +"Linewise down \n" +"Pagewise up \n" +"Pagewise down \n" +"First entry \n" +"Last entry \n" +"Enter a submenu \n" +"Go back to parent menu \n" +"Close a help window \n" +"Close entry window, apply \n" +"Close entry window, forget \n" +"Start incremental, case-insensitive search for STRING in menu entries,\n" +" no regex support, STRING is displayed in upper left corner\n" +" STRING\n" +" Remove last character \n" +" Jump to next hit \n" +" Jump to previous hit \n" +"Exit menu search mode \n" +"Search for configuration variables with or without leading CONFIG_\n" +" RegExpr\n" +"Verbose search help \n" +"----------------------------------------------------------------------\n" +"\n" +"Unless in a data entry window, key <1> may be used instead of ,\n" +"<2> instead of , etc.\n" +"\n" +"\n" +"Radiolist (Choice list)\n" +"-----------------------\n" +"Use the movement keys listed above to select the option you wish to set\n" +"and press .\n" +"\n" +"\n" +"Data entry\n" +"----------\n" +"Enter the requested information and press . Hexadecimal values\n" +"may be entered without the \"0x\" prefix.\n" +"\n" +"\n" +"Text Box (Help Window)\n" +"----------------------\n" +"Use movement keys as listed in table above.\n" +"\n" +"Press any of to exit.\n" +"\n" +"\n" +"Alternate configuration files\n" +"-----------------------------\n" +"nconfig supports switching between different configurations.\n" +"Press to save your current configuration. Press and enter\n" +"a file name to load a previously saved configuration.\n" +"\n" +"\n" +"Terminal configuration\n" +"----------------------\n" +"If you use nconfig in a xterm window, make sure your TERM environment\n" +"variable specifies a terminal configuration which supports at least\n" +"16 colors. Otherwise nconfig will look rather bad.\n" +"\n" +"If the \"stty size\" command reports the current terminalsize correctly,\n" +"nconfig will adapt to sizes larger than the traditional 80x25 \"standard\"\n" +"and display longer menus properly.\n" +"\n" +"\n" +"Single menu mode\n" +"----------------\n" +"If you prefer to have all of the menu entries listed in a single menu,\n" +"rather than the default multimenu hierarchy, run nconfig with\n" +"NCONFIG_MODE environment variable set to single_menu. Example:\n" +"\n" +"make NCONFIG_MODE=single_menu nconfig\n" +"\n" +" will then unfold the appropriate category, or fold it if it\n" +"is already unfolded. Folded menu entries will be designated by a\n" +"leading \"++>\" and unfolded entries by a leading \"-->\".\n" +"\n" +"Note that this mode can eventually be a little more CPU expensive than\n" +"the default mode, especially with a larger number of unfolded submenus.\n" +"\n"), +menu_no_f_instructions[] = N_( +"Legend: [*] built-in [ ] excluded module < > module capable.\n" +"Submenus are designated by a trailing \"--->\", empty ones by \"----\".\n" +"\n" +"Use the following keys to navigate the menus:\n" +"Move up or down with and .\n" +"Enter a submenu with or .\n" +"Exit a submenu to its parent menu with or .\n" +"Pressing includes, excludes, modularizes features.\n" +"Pressing cycles through the available options.\n" +"To search for menu entries press .\n" +" always leaves the current window.\n" +"\n" +"You do not have function keys support.\n" +"Press <1> instead of , <2> instead of , etc.\n" +"For verbose global help use key <1>.\n" +"For help related to the current menu entry press or .\n"), +menu_instructions[] = N_( +"Legend: [*] built-in [ ] excluded module < > module capable.\n" +"Submenus are designated by a trailing \"--->\", empty ones by \"----\".\n" +"\n" +"Use the following keys to navigate the menus:\n" +"Move up or down with or .\n" +"Enter a submenu with or .\n" +"Exit a submenu to its parent menu with or .\n" +"Pressing includes, excludes, modularizes features.\n" +"Pressing cycles through the available options.\n" +"To search for menu entries press .\n" +" always leaves the current window.\n" +"\n" +"Pressing <1> may be used instead of , <2> instead of , etc.\n" +"For verbose global help press .\n" +"For help related to the current menu entry press or .\n"), +radiolist_instructions[] = N_( +"Press , , or to navigate a radiolist, select\n" +"with .\n" +"For help related to the current entry press or .\n" +"For global help press .\n"), +inputbox_instructions_int[] = N_( +"Please enter a decimal value.\n" +"Fractions will not be accepted.\n" +"Press to apply, to cancel."), +inputbox_instructions_hex[] = N_( +"Please enter a hexadecimal value.\n" +"Press to apply, to cancel."), +inputbox_instructions_string[] = N_( +"Please enter a string value.\n" +"Press to apply, to cancel."), +setmod_text[] = N_( +"This feature depends on another feature which has been configured as a\n" +"module. As a result, the current feature will be built as a module too."), +load_config_text[] = N_( +"Enter the name of the configuration file you wish to load.\n" +"Accept the name shown to restore the configuration you last\n" +"retrieved. Leave empty to abort."), +load_config_help[] = N_( +"For various reasons, one may wish to keep several different\n" +"configurations available on a single machine.\n" +"\n" +"If you have saved a previous configuration in a file other than the\n" +"default one, entering its name here will allow you to load and modify\n" +"that configuration.\n" +"\n" +"Leave empty to abort.\n"), +save_config_text[] = N_( +"Enter a filename to which this configuration should be saved\n" +"as an alternate. Leave empty to abort."), +save_config_help[] = N_( +"For various reasons, one may wish to keep several different\n" +"configurations available on a single machine.\n" +"\n" +"Entering a file name here will allow you to later retrieve, modify\n" +"and use the current configuration as an alternate to whatever\n" +"configuration options you have selected at that time.\n" +"\n" +"Leave empty to abort.\n"), +search_help[] = N_( +"Search for symbols (configuration variable names CONFIG_*) and display\n" +"their relations. Regular expressions are supported.\n" +"Example: Search for \"^FOO\".\n" +"Result:\n" +"-----------------------------------------------------------------\n" +"Symbol: FOO [ = m]\n" +"Prompt: Foo bus is used to drive the bar HW\n" +"Defined at drivers/pci/Kconfig:47\n" +"Depends on: X86_LOCAL_APIC && X86_IO_APIC || IA64\n" +"Location:\n" +" -> Bus options (PCI, PCMCIA, EISA, ISA)\n" +" -> PCI support (PCI [ = y])\n" +" -> PCI access mode ( [ = y])\n" +"Selects: LIBCRC32\n" +"Selected by: BAR\n" +"-----------------------------------------------------------------\n" +"o The line 'Prompt:' shows the text displayed for this symbol in\n" +" the menu hierarchy.\n" +"o The 'Defined at' line tells at what file / line number the symbol is\n" +" defined.\n" +"o The 'Depends on:' line lists symbols that need to be defined for\n" +" this symbol to be visible and selectable in the menu.\n" +"o The 'Location:' lines tell, where in the menu structure this symbol\n" +" is located. A location followed by a [ = y] indicates that this is\n" +" a selectable menu item, and the current value is displayed inside\n" +" brackets.\n" +"o The 'Selects:' line tells, what symbol will be automatically selected\n" +" if this symbol is selected (y or m).\n" +"o The 'Selected by' line tells what symbol has selected this symbol.\n" +"\n" +"Only relevant lines are shown.\n" +"\n\n" +"Search examples:\n" +"USB => find all symbols containing USB\n" +"^USB => find all symbols starting with USB\n" +"USB$ => find all symbols ending with USB\n" +"\n"); + +struct mitem { + char str[256]; + char tag; + void *usrptr; + int is_visible; +}; + +#define MAX_MENU_ITEMS 4096 +static int show_all_items; +static int indent; +static struct menu *current_menu; +static int child_count; +static int single_menu_mode; +/* the window in which all information appears */ +static WINDOW *main_window; +/* the largest size of the menu window */ +static int mwin_max_lines; +static int mwin_max_cols; +/* the window in which we show option buttons */ +static MENU *curses_menu; +static ITEM *curses_menu_items[MAX_MENU_ITEMS]; +static struct mitem k_menu_items[MAX_MENU_ITEMS]; +static int items_num; +static int global_exit; +/* the currently selected button */ +static const char *current_instructions = menu_instructions; + +static char *dialog_input_result; +static int dialog_input_result_len; + +static void conf(struct menu *menu); +static void conf_choice(struct menu *menu); +static void conf_string(struct menu *menu); +static void conf_load(void); +static void conf_save(void); +static void show_help(struct menu *menu); +static int do_exit(void); +static void setup_windows(void); +static void search_conf(void); + +typedef void (*function_key_handler_t)(int *key, struct menu *menu); +static void handle_f1(int *key, struct menu *current_item); +static void handle_f2(int *key, struct menu *current_item); +static void handle_f3(int *key, struct menu *current_item); +static void handle_f4(int *key, struct menu *current_item); +static void handle_f5(int *key, struct menu *current_item); +static void handle_f6(int *key, struct menu *current_item); +static void handle_f7(int *key, struct menu *current_item); +static void handle_f8(int *key, struct menu *current_item); +static void handle_f9(int *key, struct menu *current_item); + +struct function_keys { + const char *key_str; + const char *func; + function_key key; + function_key_handler_t handler; +}; + +static const int function_keys_num = 9; +static struct function_keys function_keys[] = { + { + .key_str = "F1", + .func = "Help", + .key = F_HELP, + .handler = handle_f1, + }, + { + .key_str = "F2", + .func = "SymInfo", + .key = F_SYMBOL, + .handler = handle_f2, + }, + { + .key_str = "F3", + .func = "Help 2", + .key = F_INSTS, + .handler = handle_f3, + }, + { + .key_str = "F4", + .func = "ShowAll", + .key = F_CONF, + .handler = handle_f4, + }, + { + .key_str = "F5", + .func = "Back", + .key = F_BACK, + .handler = handle_f5, + }, + { + .key_str = "F6", + .func = "Save", + .key = F_SAVE, + .handler = handle_f6, + }, + { + .key_str = "F7", + .func = "Load", + .key = F_LOAD, + .handler = handle_f7, + }, + { + .key_str = "F8", + .func = "SymSearch", + .key = F_SEARCH, + .handler = handle_f8, + }, + { + .key_str = "F9", + .func = "Exit", + .key = F_EXIT, + .handler = handle_f9, + }, +}; + +static void print_function_line(void) +{ + int i; + int offset = 1; + const int skip = 1; + int lines = getmaxy(stdscr); + + for (i = 0; i < function_keys_num; i++) { + (void) wattrset(main_window, attributes[FUNCTION_HIGHLIGHT]); + mvwprintw(main_window, lines-3, offset, + "%s", + function_keys[i].key_str); + (void) wattrset(main_window, attributes[FUNCTION_TEXT]); + offset += strlen(function_keys[i].key_str); + mvwprintw(main_window, lines-3, + offset, "%s", + function_keys[i].func); + offset += strlen(function_keys[i].func) + skip; + } + (void) wattrset(main_window, attributes[NORMAL]); +} + +/* help */ +static void handle_f1(int *key, struct menu *current_item) +{ + show_scroll_win(main_window, + _("Global help"), _(nconf_global_help)); + return; +} + +/* symbole help */ +static void handle_f2(int *key, struct menu *current_item) +{ + show_help(current_item); + return; +} + +/* instructions */ +static void handle_f3(int *key, struct menu *current_item) +{ + show_scroll_win(main_window, + _("Short help"), + _(current_instructions)); + return; +} + +/* config */ +static void handle_f4(int *key, struct menu *current_item) +{ + int res = btn_dialog(main_window, + _("Show all symbols?"), + 2, + " ", + ""); + if (res == 0) + show_all_items = 1; + else if (res == 1) + show_all_items = 0; + + return; +} + +/* back */ +static void handle_f5(int *key, struct menu *current_item) +{ + *key = KEY_LEFT; + return; +} + +/* save */ +static void handle_f6(int *key, struct menu *current_item) +{ + conf_save(); + return; +} + +/* load */ +static void handle_f7(int *key, struct menu *current_item) +{ + conf_load(); + return; +} + +/* search */ +static void handle_f8(int *key, struct menu *current_item) +{ + search_conf(); + return; +} + +/* exit */ +static void handle_f9(int *key, struct menu *current_item) +{ + do_exit(); + return; +} + +/* return != 0 to indicate the key was handles */ +static int process_special_keys(int *key, struct menu *menu) +{ + int i; + + if (*key == KEY_RESIZE) { + setup_windows(); + return 1; + } + + for (i = 0; i < function_keys_num; i++) { + if (*key == KEY_F(function_keys[i].key) || + *key == '0' + function_keys[i].key){ + function_keys[i].handler(key, menu); + return 1; + } + } + + return 0; +} + +static void clean_items(void) +{ + int i; + for (i = 0; curses_menu_items[i]; i++) + free_item(curses_menu_items[i]); + bzero(curses_menu_items, sizeof(curses_menu_items)); + bzero(k_menu_items, sizeof(k_menu_items)); + items_num = 0; +} + +typedef enum {MATCH_TINKER_PATTERN_UP, MATCH_TINKER_PATTERN_DOWN, + FIND_NEXT_MATCH_DOWN, FIND_NEXT_MATCH_UP} match_f; + +/* return the index of the matched item, or -1 if no such item exists */ +static int get_mext_match(const char *match_str, match_f flag) +{ + int match_start = item_index(current_item(curses_menu)); + int index; + + if (flag == FIND_NEXT_MATCH_DOWN) + ++match_start; + else if (flag == FIND_NEXT_MATCH_UP) + --match_start; + + index = match_start; + index = (index + items_num) % items_num; + while (true) { + char *str = k_menu_items[index].str; + if (strcasestr(str, match_str) != NULL) + return index; + if (flag == FIND_NEXT_MATCH_UP || + flag == MATCH_TINKER_PATTERN_UP) + --index; + else + ++index; + index = (index + items_num) % items_num; + if (index == match_start) + return -1; + } +} + +/* Make a new item. */ +static void item_make(struct menu *menu, char tag, const char *fmt, ...) +{ + va_list ap; + + if (items_num > MAX_MENU_ITEMS-1) + return; + + bzero(&k_menu_items[items_num], sizeof(k_menu_items[0])); + k_menu_items[items_num].tag = tag; + k_menu_items[items_num].usrptr = menu; + if (menu != NULL) + k_menu_items[items_num].is_visible = + menu_is_visible(menu); + else + k_menu_items[items_num].is_visible = 1; + + va_start(ap, fmt); + vsnprintf(k_menu_items[items_num].str, + sizeof(k_menu_items[items_num].str), + fmt, ap); + va_end(ap); + + if (!k_menu_items[items_num].is_visible) + memcpy(k_menu_items[items_num].str, "XXX", 3); + + curses_menu_items[items_num] = new_item( + k_menu_items[items_num].str, + k_menu_items[items_num].str); + set_item_userptr(curses_menu_items[items_num], + &k_menu_items[items_num]); + /* + if (!k_menu_items[items_num].is_visible) + item_opts_off(curses_menu_items[items_num], O_SELECTABLE); + */ + + items_num++; + curses_menu_items[items_num] = NULL; +} + +/* very hackish. adds a string to the last item added */ +static void item_add_str(const char *fmt, ...) +{ + va_list ap; + int index = items_num-1; + char new_str[256]; + char tmp_str[256]; + + if (index < 0) + return; + + va_start(ap, fmt); + vsnprintf(new_str, sizeof(new_str), fmt, ap); + va_end(ap); + snprintf(tmp_str, sizeof(tmp_str), "%s%s", + k_menu_items[index].str, new_str); + strncpy(k_menu_items[index].str, + tmp_str, + sizeof(k_menu_items[index].str)); + + free_item(curses_menu_items[index]); + curses_menu_items[index] = new_item( + k_menu_items[index].str, + k_menu_items[index].str); + set_item_userptr(curses_menu_items[index], + &k_menu_items[index]); +} + +/* get the tag of the currently selected item */ +static char item_tag(void) +{ + ITEM *cur; + struct mitem *mcur; + + cur = current_item(curses_menu); + if (cur == NULL) + return 0; + mcur = (struct mitem *) item_userptr(cur); + return mcur->tag; +} + +static int curses_item_index(void) +{ + return item_index(current_item(curses_menu)); +} + +static void *item_data(void) +{ + ITEM *cur; + struct mitem *mcur; + + cur = current_item(curses_menu); + if (!cur) + return NULL; + mcur = (struct mitem *) item_userptr(cur); + return mcur->usrptr; + +} + +static int item_is_tag(char tag) +{ + return item_tag() == tag; +} + +static char filename[PATH_MAX+1]; +static char menu_backtitle[PATH_MAX+128]; +static const char *set_config_filename(const char *config_filename) +{ + int size; + + size = snprintf(menu_backtitle, sizeof(menu_backtitle), + "%s - %s", config_filename, rootmenu.prompt->text); + if (size >= sizeof(menu_backtitle)) + menu_backtitle[sizeof(menu_backtitle)-1] = '\0'; + + size = snprintf(filename, sizeof(filename), "%s", config_filename); + if (size >= sizeof(filename)) + filename[sizeof(filename)-1] = '\0'; + return menu_backtitle; +} + +/* return = 0 means we are successful. + * -1 means go on doing what you were doing + */ +static int do_exit(void) +{ + int res; + if (!conf_get_changed()) { + global_exit = 1; + return 0; + } + res = btn_dialog(main_window, + _("Do you wish to save your new configuration?\n" + " to cancel and resume nconfig."), + 2, + " ", + ""); + if (res == KEY_EXIT) { + global_exit = 0; + return -1; + } + + /* if we got here, the user really wants to exit */ + switch (res) { + case 0: + res = conf_write(filename); + if (res) + btn_dialog( + main_window, + _("Error during writing of configuration.\n" + "Your configuration changes were NOT saved."), + 1, + ""); + break; + default: + btn_dialog( + main_window, + _("Your configuration changes were NOT saved."), + 1, + ""); + break; + } + global_exit = 1; + return 0; +} + + +static void search_conf(void) +{ + struct symbol **sym_arr; + struct gstr res; + struct gstr title; + char *dialog_input; + int dres; + + title = str_new(); + str_printf( &title, _("Enter (sub)string or regexp to search for " + "(with or without \"%s\")"), CONFIG_); + +again: + dres = dialog_inputbox(main_window, + _("Search Configuration Parameter"), + str_get(&title), + "", &dialog_input_result, &dialog_input_result_len); + switch (dres) { + case 0: + break; + case 1: + show_scroll_win(main_window, + _("Search Configuration"), search_help); + goto again; + default: + str_free(&title); + return; + } + + /* strip the prefix if necessary */ + dialog_input = dialog_input_result; + if (strncasecmp(dialog_input_result, CONFIG_, strlen(CONFIG_)) == 0) + dialog_input += strlen(CONFIG_); + + sym_arr = sym_re_search(dialog_input); + res = get_relations_str(sym_arr, NULL); + free(sym_arr); + show_scroll_win(main_window, + _("Search Results"), str_get(&res)); + str_free(&res); + str_free(&title); +} + + +static void build_conf(struct menu *menu) +{ + struct symbol *sym; + struct property *prop; + struct menu *child; + int type, tmp, doint = 2; + tristate val; + char ch; + + if (!menu || (!show_all_items && !menu_is_visible(menu))) + return; + + sym = menu->sym; + prop = menu->prompt; + if (!sym) { + if (prop && menu != current_menu) { + const char *prompt = menu_get_prompt(menu); + enum prop_type ptype; + ptype = menu->prompt ? menu->prompt->type : P_UNKNOWN; + switch (ptype) { + case P_MENU: + child_count++; + prompt = _(prompt); + if (single_menu_mode) { + item_make(menu, 'm', + "%s%*c%s", + menu->data ? "-->" : "++>", + indent + 1, ' ', prompt); + } else + item_make(menu, 'm', + " %*c%s %s", + indent + 1, ' ', prompt, + menu_is_empty(menu) ? "----" : "--->"); + + if (single_menu_mode && menu->data) + goto conf_childs; + return; + case P_COMMENT: + if (prompt) { + child_count++; + item_make(menu, ':', + " %*c*** %s ***", + indent + 1, ' ', + _(prompt)); + } + break; + default: + if (prompt) { + child_count++; + item_make(menu, ':', "---%*c%s", + indent + 1, ' ', + _(prompt)); + } + } + } else + doint = 0; + goto conf_childs; + } + + type = sym_get_type(sym); + if (sym_is_choice(sym)) { + struct symbol *def_sym = sym_get_choice_value(sym); + struct menu *def_menu = NULL; + + child_count++; + for (child = menu->list; child; child = child->next) { + if (menu_is_visible(child) && child->sym == def_sym) + def_menu = child; + } + + val = sym_get_tristate_value(sym); + if (sym_is_changable(sym)) { + switch (type) { + case S_BOOLEAN: + item_make(menu, 't', "[%c]", + val == no ? ' ' : '*'); + break; + case S_TRISTATE: + switch (val) { + case yes: + ch = '*'; + break; + case mod: + ch = 'M'; + break; + default: + ch = ' '; + break; + } + item_make(menu, 't', "<%c>", ch); + break; + } + } else { + item_make(menu, def_menu ? 't' : ':', " "); + } + + item_add_str("%*c%s", indent + 1, + ' ', _(menu_get_prompt(menu))); + if (val == yes) { + if (def_menu) { + item_add_str(" (%s)", + _(menu_get_prompt(def_menu))); + item_add_str(" --->"); + if (def_menu->list) { + indent += 2; + build_conf(def_menu); + indent -= 2; + } + } + return; + } + } else { + if (menu == current_menu) { + item_make(menu, ':', + "---%*c%s", indent + 1, + ' ', _(menu_get_prompt(menu))); + goto conf_childs; + } + child_count++; + val = sym_get_tristate_value(sym); + if (sym_is_choice_value(sym) && val == yes) { + item_make(menu, ':', " "); + } else { + switch (type) { + case S_BOOLEAN: + if (sym_is_changable(sym)) + item_make(menu, 't', "[%c]", + val == no ? ' ' : '*'); + else + item_make(menu, 't', "-%c-", + val == no ? ' ' : '*'); + break; + case S_TRISTATE: + switch (val) { + case yes: + ch = '*'; + break; + case mod: + ch = 'M'; + break; + default: + ch = ' '; + break; + } + if (sym_is_changable(sym)) { + if (sym->rev_dep.tri == mod) + item_make(menu, + 't', "{%c}", ch); + else + item_make(menu, + 't', "<%c>", ch); + } else + item_make(menu, 't', "-%c-", ch); + break; + default: + tmp = 2 + strlen(sym_get_string_value(sym)); + item_make(menu, 's', " (%s)", + sym_get_string_value(sym)); + tmp = indent - tmp + 4; + if (tmp < 0) + tmp = 0; + item_add_str("%*c%s%s", tmp, ' ', + _(menu_get_prompt(menu)), + (sym_has_value(sym) || + !sym_is_changable(sym)) ? "" : + _(" (NEW)")); + goto conf_childs; + } + } + item_add_str("%*c%s%s", indent + 1, ' ', + _(menu_get_prompt(menu)), + (sym_has_value(sym) || !sym_is_changable(sym)) ? + "" : _(" (NEW)")); + if (menu->prompt && menu->prompt->type == P_MENU) { + item_add_str(" %s", menu_is_empty(menu) ? "----" : "--->"); + return; + } + } + +conf_childs: + indent += doint; + for (child = menu->list; child; child = child->next) + build_conf(child); + indent -= doint; +} + +static void reset_menu(void) +{ + unpost_menu(curses_menu); + clean_items(); +} + +/* adjust the menu to show this item. + * prefer not to scroll the menu if possible*/ +static void center_item(int selected_index, int *last_top_row) +{ + int toprow; + + set_top_row(curses_menu, *last_top_row); + toprow = top_row(curses_menu); + if (selected_index < toprow || + selected_index >= toprow+mwin_max_lines) { + toprow = max(selected_index-mwin_max_lines/2, 0); + if (toprow >= item_count(curses_menu)-mwin_max_lines) + toprow = item_count(curses_menu)-mwin_max_lines; + set_top_row(curses_menu, toprow); + } + set_current_item(curses_menu, + curses_menu_items[selected_index]); + *last_top_row = toprow; + post_menu(curses_menu); + refresh_all_windows(main_window); +} + +/* this function assumes reset_menu has been called before */ +static void show_menu(const char *prompt, const char *instructions, + int selected_index, int *last_top_row) +{ + int maxx, maxy; + WINDOW *menu_window; + + current_instructions = instructions; + + clear(); + (void) wattrset(main_window, attributes[NORMAL]); + print_in_middle(stdscr, 1, 0, getmaxx(stdscr), + menu_backtitle, + attributes[MAIN_HEADING]); + + (void) wattrset(main_window, attributes[MAIN_MENU_BOX]); + box(main_window, 0, 0); + (void) wattrset(main_window, attributes[MAIN_MENU_HEADING]); + mvwprintw(main_window, 0, 3, " %s ", prompt); + (void) wattrset(main_window, attributes[NORMAL]); + + set_menu_items(curses_menu, curses_menu_items); + + /* position the menu at the middle of the screen */ + scale_menu(curses_menu, &maxy, &maxx); + maxx = min(maxx, mwin_max_cols-2); + maxy = mwin_max_lines; + menu_window = derwin(main_window, + maxy, + maxx, + 2, + (mwin_max_cols-maxx)/2); + keypad(menu_window, TRUE); + set_menu_win(curses_menu, menu_window); + set_menu_sub(curses_menu, menu_window); + + /* must reassert this after changing items, otherwise returns to a + * default of 16 + */ + set_menu_format(curses_menu, maxy, 1); + center_item(selected_index, last_top_row); + set_menu_format(curses_menu, maxy, 1); + + print_function_line(); + + /* Post the menu */ + post_menu(curses_menu); + refresh_all_windows(main_window); +} + +static void adj_match_dir(match_f *match_direction) +{ + if (*match_direction == FIND_NEXT_MATCH_DOWN) + *match_direction = + MATCH_TINKER_PATTERN_DOWN; + else if (*match_direction == FIND_NEXT_MATCH_UP) + *match_direction = + MATCH_TINKER_PATTERN_UP; + /* else, do no change.. */ +} + +struct match_state +{ + int in_search; + match_f match_direction; + char pattern[256]; +}; + +/* Return 0 means I have handled the key. In such a case, ans should hold the + * item to center, or -1 otherwise. + * Else return -1 . + */ +static int do_match(int key, struct match_state *state, int *ans) +{ + char c = (char) key; + int terminate_search = 0; + *ans = -1; + if (key == '/' || (state->in_search && key == 27)) { + move(0, 0); + refresh(); + clrtoeol(); + state->in_search = 1-state->in_search; + bzero(state->pattern, sizeof(state->pattern)); + state->match_direction = MATCH_TINKER_PATTERN_DOWN; + return 0; + } else if (!state->in_search) + return 1; + + if (isalnum(c) || isgraph(c) || c == ' ') { + state->pattern[strlen(state->pattern)] = c; + state->pattern[strlen(state->pattern)] = '\0'; + adj_match_dir(&state->match_direction); + *ans = get_mext_match(state->pattern, + state->match_direction); + } else if (key == KEY_DOWN) { + state->match_direction = FIND_NEXT_MATCH_DOWN; + *ans = get_mext_match(state->pattern, + state->match_direction); + } else if (key == KEY_UP) { + state->match_direction = FIND_NEXT_MATCH_UP; + *ans = get_mext_match(state->pattern, + state->match_direction); + } else if (key == KEY_BACKSPACE || key == 127) { + state->pattern[strlen(state->pattern)-1] = '\0'; + adj_match_dir(&state->match_direction); + } else + terminate_search = 1; + + if (terminate_search) { + state->in_search = 0; + bzero(state->pattern, sizeof(state->pattern)); + move(0, 0); + refresh(); + clrtoeol(); + return -1; + } + return 0; +} + +static void conf(struct menu *menu) +{ + struct menu *submenu = NULL; + const char *prompt = menu_get_prompt(menu); + struct symbol *sym; + int res; + int current_index = 0; + int last_top_row = 0; + struct match_state match_state = { + .in_search = 0, + .match_direction = MATCH_TINKER_PATTERN_DOWN, + .pattern = "", + }; + + while (!global_exit) { + reset_menu(); + current_menu = menu; + build_conf(menu); + if (!child_count) + break; + + show_menu(prompt ? _(prompt) : _("Main Menu"), + _(menu_instructions), + current_index, &last_top_row); + keypad((menu_win(curses_menu)), TRUE); + while (!global_exit) { + if (match_state.in_search) { + mvprintw(0, 0, + "searching: %s", match_state.pattern); + clrtoeol(); + } + refresh_all_windows(main_window); + res = wgetch(menu_win(curses_menu)); + if (!res) + break; + if (do_match(res, &match_state, ¤t_index) == 0) { + if (current_index != -1) + center_item(current_index, + &last_top_row); + continue; + } + if (process_special_keys(&res, + (struct menu *) item_data())) + break; + switch (res) { + case KEY_DOWN: + menu_driver(curses_menu, REQ_DOWN_ITEM); + break; + case KEY_UP: + menu_driver(curses_menu, REQ_UP_ITEM); + break; + case KEY_NPAGE: + menu_driver(curses_menu, REQ_SCR_DPAGE); + break; + case KEY_PPAGE: + menu_driver(curses_menu, REQ_SCR_UPAGE); + break; + case KEY_HOME: + menu_driver(curses_menu, REQ_FIRST_ITEM); + break; + case KEY_END: + menu_driver(curses_menu, REQ_LAST_ITEM); + break; + case 'h': + case '?': + show_help((struct menu *) item_data()); + break; + } + if (res == 10 || res == 27 || + res == 32 || res == 'n' || res == 'y' || + res == KEY_LEFT || res == KEY_RIGHT || + res == 'm') + break; + refresh_all_windows(main_window); + } + + refresh_all_windows(main_window); + /* if ESC or left*/ + if (res == 27 || (menu != &rootmenu && res == KEY_LEFT)) + break; + + /* remember location in the menu */ + last_top_row = top_row(curses_menu); + current_index = curses_item_index(); + + if (!item_tag()) + continue; + + submenu = (struct menu *) item_data(); + if (!submenu || !menu_is_visible(submenu)) + continue; + sym = submenu->sym; + + switch (res) { + case ' ': + if (item_is_tag('t')) + sym_toggle_tristate_value(sym); + else if (item_is_tag('m')) + conf(submenu); + break; + case KEY_RIGHT: + case 10: /* ENTER WAS PRESSED */ + switch (item_tag()) { + case 'm': + if (single_menu_mode) + submenu->data = + (void *) (long) !submenu->data; + else + conf(submenu); + break; + case 't': + if (sym_is_choice(sym) && + sym_get_tristate_value(sym) == yes) + conf_choice(submenu); + else if (submenu->prompt && + submenu->prompt->type == P_MENU) + conf(submenu); + else if (res == 10) + sym_toggle_tristate_value(sym); + break; + case 's': + conf_string(submenu); + break; + } + break; + case 'y': + if (item_is_tag('t')) { + if (sym_set_tristate_value(sym, yes)) + break; + if (sym_set_tristate_value(sym, mod)) + btn_dialog(main_window, setmod_text, 0); + } + break; + case 'n': + if (item_is_tag('t')) + sym_set_tristate_value(sym, no); + break; + case 'm': + if (item_is_tag('t')) + sym_set_tristate_value(sym, mod); + break; + } + } +} + +static void conf_message_callback(const char *fmt, va_list ap) +{ + char buf[1024]; + + vsnprintf(buf, sizeof(buf), fmt, ap); + btn_dialog(main_window, buf, 1, ""); +} + +static void show_help(struct menu *menu) +{ + struct gstr help; + + if (!menu) + return; + + help = str_new(); + menu_get_ext_help(menu, &help); + show_scroll_win(main_window, _(menu_get_prompt(menu)), str_get(&help)); + str_free(&help); +} + +static void conf_choice(struct menu *menu) +{ + const char *prompt = _(menu_get_prompt(menu)); + struct menu *child = NULL; + struct symbol *active; + int selected_index = 0; + int last_top_row = 0; + int res, i = 0; + struct match_state match_state = { + .in_search = 0, + .match_direction = MATCH_TINKER_PATTERN_DOWN, + .pattern = "", + }; + + active = sym_get_choice_value(menu->sym); + /* this is mostly duplicated from the conf() function. */ + while (!global_exit) { + reset_menu(); + + for (i = 0, child = menu->list; child; child = child->next) { + if (!show_all_items && !menu_is_visible(child)) + continue; + + if (child->sym == sym_get_choice_value(menu->sym)) + item_make(child, ':', " %s", + _(menu_get_prompt(child))); + else if (child->sym) + item_make(child, ':', " %s", + _(menu_get_prompt(child))); + else + item_make(child, ':', "*** %s ***", + _(menu_get_prompt(child))); + + if (child->sym == active){ + last_top_row = top_row(curses_menu); + selected_index = i; + } + i++; + } + show_menu(prompt ? _(prompt) : _("Choice Menu"), + _(radiolist_instructions), + selected_index, + &last_top_row); + while (!global_exit) { + if (match_state.in_search) { + mvprintw(0, 0, "searching: %s", + match_state.pattern); + clrtoeol(); + } + refresh_all_windows(main_window); + res = wgetch(menu_win(curses_menu)); + if (!res) + break; + if (do_match(res, &match_state, &selected_index) == 0) { + if (selected_index != -1) + center_item(selected_index, + &last_top_row); + continue; + } + if (process_special_keys( + &res, + (struct menu *) item_data())) + break; + switch (res) { + case KEY_DOWN: + menu_driver(curses_menu, REQ_DOWN_ITEM); + break; + case KEY_UP: + menu_driver(curses_menu, REQ_UP_ITEM); + break; + case KEY_NPAGE: + menu_driver(curses_menu, REQ_SCR_DPAGE); + break; + case KEY_PPAGE: + menu_driver(curses_menu, REQ_SCR_UPAGE); + break; + case KEY_HOME: + menu_driver(curses_menu, REQ_FIRST_ITEM); + break; + case KEY_END: + menu_driver(curses_menu, REQ_LAST_ITEM); + break; + case 'h': + case '?': + show_help((struct menu *) item_data()); + break; + } + if (res == 10 || res == 27 || res == ' ' || + res == KEY_LEFT){ + break; + } + refresh_all_windows(main_window); + } + /* if ESC or left */ + if (res == 27 || res == KEY_LEFT) + break; + + child = item_data(); + if (!child || !menu_is_visible(child) || !child->sym) + continue; + switch (res) { + case ' ': + case 10: + case KEY_RIGHT: + sym_set_tristate_value(child->sym, yes); + return; + case 'h': + case '?': + show_help(child); + active = child->sym; + break; + case KEY_EXIT: + return; + } + } +} + +static void conf_string(struct menu *menu) +{ + const char *prompt = menu_get_prompt(menu); + + while (1) { + int res; + const char *heading; + + switch (sym_get_type(menu->sym)) { + case S_INT: + heading = _(inputbox_instructions_int); + break; + case S_HEX: + heading = _(inputbox_instructions_hex); + break; + case S_STRING: + heading = _(inputbox_instructions_string); + break; + default: + heading = _("Internal nconf error!"); + } + res = dialog_inputbox(main_window, + prompt ? _(prompt) : _("Main Menu"), + heading, + sym_get_string_value(menu->sym), + &dialog_input_result, + &dialog_input_result_len); + switch (res) { + case 0: + if (sym_set_string_value(menu->sym, + dialog_input_result)) + return; + btn_dialog(main_window, + _("You have made an invalid entry."), 0); + break; + case 1: + show_help(menu); + break; + case KEY_EXIT: + return; + } + } +} + +static void conf_load(void) +{ + while (1) { + int res; + res = dialog_inputbox(main_window, + NULL, load_config_text, + filename, + &dialog_input_result, + &dialog_input_result_len); + switch (res) { + case 0: + if (!dialog_input_result[0]) + return; + if (!conf_read(dialog_input_result)) { + set_config_filename(dialog_input_result); + sym_set_change_count(1); + return; + } + btn_dialog(main_window, _("File does not exist!"), 0); + break; + case 1: + show_scroll_win(main_window, + _("Load Alternate Configuration"), + load_config_help); + break; + case KEY_EXIT: + return; + } + } +} + +static void conf_save(void) +{ + while (1) { + int res; + res = dialog_inputbox(main_window, + NULL, save_config_text, + filename, + &dialog_input_result, + &dialog_input_result_len); + switch (res) { + case 0: + if (!dialog_input_result[0]) + return; + res = conf_write(dialog_input_result); + if (!res) { + set_config_filename(dialog_input_result); + return; + } + btn_dialog(main_window, _("Can't create file! " + "Probably a nonexistent directory."), + 1, ""); + break; + case 1: + show_scroll_win(main_window, + _("Save Alternate Configuration"), + save_config_help); + break; + case KEY_EXIT: + return; + } + } +} + +static void setup_windows(void) +{ + int lines, columns; + + getmaxyx(stdscr, lines, columns); + + if (main_window != NULL) + delwin(main_window); + + /* set up the menu and menu window */ + main_window = newwin(lines-2, columns-2, 2, 1); + keypad(main_window, TRUE); + mwin_max_lines = lines-7; + mwin_max_cols = columns-6; + + /* panels order is from bottom to top */ + new_panel(main_window); +} + +int main(int ac, char **av) +{ + int lines, columns; + char *mode; + + setlocale(LC_ALL, ""); + bindtextdomain(PACKAGE, LOCALEDIR); + textdomain(PACKAGE); + + if (ac > 1 && strcmp(av[1], "-s") == 0) { + /* Silence conf_read() until the real callback is set up */ + conf_set_message_callback(NULL); + av++; + } + conf_parse(av[1]); + conf_read(NULL); + + mode = getenv("NCONFIG_MODE"); + if (mode) { + if (!strcasecmp(mode, "single_menu")) + single_menu_mode = 1; + } + + /* Initialize curses */ + initscr(); + /* set color theme */ + set_colors(); + + cbreak(); + noecho(); + keypad(stdscr, TRUE); + curs_set(0); + + getmaxyx(stdscr, lines, columns); + if (columns < 75 || lines < 20) { + endwin(); + printf("Your terminal should have at " + "least 20 lines and 75 columns\n"); + return 1; + } + + notimeout(stdscr, FALSE); +#if NCURSES_REENTRANT + set_escdelay(1); +#else + ESCDELAY = 1; +#endif + + /* set btns menu */ + curses_menu = new_menu(curses_menu_items); + menu_opts_off(curses_menu, O_SHOWDESC); + menu_opts_on(curses_menu, O_SHOWMATCH); + menu_opts_on(curses_menu, O_ONEVALUE); + menu_opts_on(curses_menu, O_NONCYCLIC); + menu_opts_on(curses_menu, O_IGNORECASE); + set_menu_mark(curses_menu, " "); + set_menu_fore(curses_menu, attributes[MAIN_MENU_FORE]); + set_menu_back(curses_menu, attributes[MAIN_MENU_BACK]); + set_menu_grey(curses_menu, attributes[MAIN_MENU_GREY]); + + set_config_filename(conf_get_configname()); + setup_windows(); + + /* check for KEY_FUNC(1) */ + if (has_key(KEY_F(1)) == FALSE) { + show_scroll_win(main_window, + _("Instructions"), + _(menu_no_f_instructions)); + } + + conf_set_message_callback(conf_message_callback); + /* do the work */ + while (!global_exit) { + conf(&rootmenu); + if (!global_exit && do_exit() == 0) + break; + } + /* ok, we are done */ + unpost_menu(curses_menu); + free_menu(curses_menu); + delwin(main_window); + clear(); + refresh(); + endwin(); + return 0; +} diff --git a/support/kconfig/nconf.gui.c b/support/kconfig/nconf.gui.c new file mode 100644 index 00000000..88874acf --- /dev/null +++ b/support/kconfig/nconf.gui.c @@ -0,0 +1,664 @@ +/* + * Copyright (C) 2008 Nir Tzachar 0) + win_rows = msg_lines+4; + else + win_rows = msg_lines+2; + + win = newwin(win_rows, total_width+4, y, x); + keypad(win, TRUE); + menu_win = derwin(win, 1, btns_width, win_rows-2, + 1+(total_width+2-btns_width)/2); + menu = new_menu(btns); + msg_win = derwin(win, win_rows-2, msg_width, 1, + 1+(total_width+2-msg_width)/2); + + set_menu_fore(menu, attributes[DIALOG_MENU_FORE]); + set_menu_back(menu, attributes[DIALOG_MENU_BACK]); + + (void) wattrset(win, attributes[DIALOG_BOX]); + box(win, 0, 0); + + /* print message */ + (void) wattrset(msg_win, attributes[DIALOG_TEXT]); + fill_window(msg_win, msg); + + set_menu_win(menu, win); + set_menu_sub(menu, menu_win); + set_menu_format(menu, 1, btn_num); + menu_opts_off(menu, O_SHOWDESC); + menu_opts_off(menu, O_SHOWMATCH); + menu_opts_on(menu, O_ONEVALUE); + menu_opts_on(menu, O_NONCYCLIC); + set_menu_mark(menu, ""); + post_menu(menu); + + + touchwin(win); + refresh_all_windows(main_window); + while ((res = wgetch(win))) { + switch (res) { + case KEY_LEFT: + menu_driver(menu, REQ_LEFT_ITEM); + break; + case KEY_RIGHT: + menu_driver(menu, REQ_RIGHT_ITEM); + break; + case 10: /* ENTER */ + case 27: /* ESCAPE */ + case ' ': + case KEY_F(F_BACK): + case KEY_F(F_EXIT): + break; + } + touchwin(win); + refresh_all_windows(main_window); + + if (res == 10 || res == ' ') { + res = item_index(current_item(menu)); + break; + } else if (res == 27 || res == KEY_F(F_BACK) || + res == KEY_F(F_EXIT)) { + res = KEY_EXIT; + break; + } + } + + unpost_menu(menu); + free_menu(menu); + for (i = 0; i < btn_num; i++) + free_item(btns[i]); + + delwin(win); + return res; +} + +int dialog_inputbox(WINDOW *main_window, + const char *title, const char *prompt, + const char *init, char **resultp, int *result_len) +{ + int prompt_lines = 0; + int prompt_width = 0; + WINDOW *win; + WINDOW *prompt_win; + WINDOW *form_win; + PANEL *panel; + int i, x, y, lines, columns, win_lines, win_cols; + int res = -1; + int cursor_position = strlen(init); + int cursor_form_win; + char *result = *resultp; + + getmaxyx(stdscr, lines, columns); + + if (strlen(init)+1 > *result_len) { + *result_len = strlen(init)+1; + *resultp = result = xrealloc(result, *result_len); + } + + /* find the widest line of msg: */ + prompt_lines = get_line_no(prompt); + for (i = 0; i < prompt_lines; i++) { + const char *line = get_line(prompt, i); + int len = get_line_length(line); + prompt_width = max(prompt_width, len); + } + + if (title) + prompt_width = max(prompt_width, strlen(title)); + + win_lines = min(prompt_lines+6, lines-2); + win_cols = min(prompt_width+7, columns-2); + prompt_lines = max(win_lines-6, 0); + prompt_width = max(win_cols-7, 0); + + /* place dialog in middle of screen */ + y = (lines-win_lines)/2; + x = (columns-win_cols)/2; + + strncpy(result, init, *result_len); + + /* create the windows */ + win = newwin(win_lines, win_cols, y, x); + prompt_win = derwin(win, prompt_lines+1, prompt_width, 2, 2); + form_win = derwin(win, 1, prompt_width, prompt_lines+3, 2); + keypad(form_win, TRUE); + + (void) wattrset(form_win, attributes[INPUT_FIELD]); + + (void) wattrset(win, attributes[INPUT_BOX]); + box(win, 0, 0); + (void) wattrset(win, attributes[INPUT_HEADING]); + if (title) + mvwprintw(win, 0, 3, "%s", title); + + /* print message */ + (void) wattrset(prompt_win, attributes[INPUT_TEXT]); + fill_window(prompt_win, prompt); + + mvwprintw(form_win, 0, 0, "%*s", prompt_width, " "); + cursor_form_win = min(cursor_position, prompt_width-1); + mvwprintw(form_win, 0, 0, "%s", + result + cursor_position-cursor_form_win); + + /* create panels */ + panel = new_panel(win); + + /* show the cursor */ + curs_set(1); + + touchwin(win); + refresh_all_windows(main_window); + while ((res = wgetch(form_win))) { + int len = strlen(result); + switch (res) { + case 10: /* ENTER */ + case 27: /* ESCAPE */ + case KEY_F(F_HELP): + case KEY_F(F_EXIT): + case KEY_F(F_BACK): + break; + case 127: + case KEY_BACKSPACE: + if (cursor_position > 0) { + memmove(&result[cursor_position-1], + &result[cursor_position], + len-cursor_position+1); + cursor_position--; + cursor_form_win--; + len--; + } + break; + case KEY_DC: + if (cursor_position >= 0 && cursor_position < len) { + memmove(&result[cursor_position], + &result[cursor_position+1], + len-cursor_position+1); + len--; + } + break; + case KEY_UP: + case KEY_RIGHT: + if (cursor_position < len) { + cursor_position++; + cursor_form_win++; + } + break; + case KEY_DOWN: + case KEY_LEFT: + if (cursor_position > 0) { + cursor_position--; + cursor_form_win--; + } + break; + case KEY_HOME: + cursor_position = 0; + cursor_form_win = 0; + break; + case KEY_END: + cursor_position = len; + cursor_form_win = min(cursor_position, prompt_width-1); + break; + default: + if ((isgraph(res) || isspace(res))) { + /* one for new char, one for '\0' */ + if (len+2 > *result_len) { + *result_len = len+2; + *resultp = result = realloc(result, + *result_len); + } + /* insert the char at the proper position */ + memmove(&result[cursor_position+1], + &result[cursor_position], + len-cursor_position+1); + result[cursor_position] = res; + cursor_position++; + cursor_form_win++; + len++; + } else { + mvprintw(0, 0, "unknown key: %d\n", res); + } + break; + } + if (cursor_form_win < 0) + cursor_form_win = 0; + else if (cursor_form_win > prompt_width-1) + cursor_form_win = prompt_width-1; + + wmove(form_win, 0, 0); + wclrtoeol(form_win); + mvwprintw(form_win, 0, 0, "%*s", prompt_width, " "); + mvwprintw(form_win, 0, 0, "%s", + result + cursor_position-cursor_form_win); + wmove(form_win, 0, cursor_form_win); + touchwin(win); + refresh_all_windows(main_window); + + if (res == 10) { + res = 0; + break; + } else if (res == 27 || res == KEY_F(F_BACK) || + res == KEY_F(F_EXIT)) { + res = KEY_EXIT; + break; + } else if (res == KEY_F(F_HELP)) { + res = 1; + break; + } + } + + /* hide the cursor */ + curs_set(0); + del_panel(panel); + delwin(prompt_win); + delwin(form_win); + delwin(win); + return res; +} + +/* refresh all windows in the correct order */ +void refresh_all_windows(WINDOW *main_window) +{ + update_panels(); + touchwin(main_window); + refresh(); +} + +/* layman's scrollable window... */ +void show_scroll_win(WINDOW *main_window, + const char *title, + const char *text) +{ + int res; + int total_lines = get_line_no(text); + int x, y, lines, columns; + int start_x = 0, start_y = 0; + int text_lines = 0, text_cols = 0; + int total_cols = 0; + int win_cols = 0; + int win_lines = 0; + int i = 0; + WINDOW *win; + WINDOW *pad; + PANEL *panel; + + getmaxyx(stdscr, lines, columns); + + /* find the widest line of msg: */ + total_lines = get_line_no(text); + for (i = 0; i < total_lines; i++) { + const char *line = get_line(text, i); + int len = get_line_length(line); + total_cols = max(total_cols, len+2); + } + + /* create the pad */ + pad = newpad(total_lines+10, total_cols+10); + (void) wattrset(pad, attributes[SCROLLWIN_TEXT]); + fill_window(pad, text); + + win_lines = min(total_lines+4, lines-2); + win_cols = min(total_cols+2, columns-2); + text_lines = max(win_lines-4, 0); + text_cols = max(win_cols-2, 0); + + /* place window in middle of screen */ + y = (lines-win_lines)/2; + x = (columns-win_cols)/2; + + win = newwin(win_lines, win_cols, y, x); + keypad(win, TRUE); + /* show the help in the help window, and show the help panel */ + (void) wattrset(win, attributes[SCROLLWIN_BOX]); + box(win, 0, 0); + (void) wattrset(win, attributes[SCROLLWIN_HEADING]); + mvwprintw(win, 0, 3, " %s ", title); + panel = new_panel(win); + + /* handle scrolling */ + do { + + copywin(pad, win, start_y, start_x, 2, 2, text_lines, + text_cols, 0); + print_in_middle(win, + text_lines+2, + 0, + text_cols, + "", + attributes[DIALOG_MENU_FORE]); + wrefresh(win); + + res = wgetch(win); + switch (res) { + case KEY_NPAGE: + case ' ': + case 'd': + start_y += text_lines-2; + break; + case KEY_PPAGE: + case 'u': + start_y -= text_lines+2; + break; + case KEY_HOME: + start_y = 0; + break; + case KEY_END: + start_y = total_lines-text_lines; + break; + case KEY_DOWN: + case 'j': + start_y++; + break; + case KEY_UP: + case 'k': + start_y--; + break; + case KEY_LEFT: + case 'h': + start_x--; + break; + case KEY_RIGHT: + case 'l': + start_x++; + break; + } + if (res == 10 || res == 27 || res == 'q' || + res == KEY_F(F_HELP) || res == KEY_F(F_BACK) || + res == KEY_F(F_EXIT)) + break; + if (start_y < 0) + start_y = 0; + if (start_y >= total_lines-text_lines) + start_y = total_lines-text_lines; + if (start_x < 0) + start_x = 0; + if (start_x >= total_cols-text_cols) + start_x = total_cols-text_cols; + } while (res); + + del_panel(panel); + delwin(win); + refresh_all_windows(main_window); +} diff --git a/support/kconfig/nconf.h b/support/kconfig/nconf.h new file mode 100644 index 00000000..9f6f21d3 --- /dev/null +++ b/support/kconfig/nconf.h @@ -0,0 +1,94 @@ +/* + * Copyright (C) 2008 Nir Tzachar +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +#define max(a, b) ({\ + typeof(a) _a = a;\ + typeof(b) _b = b;\ + _a > _b ? _a : _b; }) + +#define min(a, b) ({\ + typeof(a) _a = a;\ + typeof(b) _b = b;\ + _a < _b ? _a : _b; }) + +typedef enum { + NORMAL = 1, + MAIN_HEADING, + MAIN_MENU_BOX, + MAIN_MENU_FORE, + MAIN_MENU_BACK, + MAIN_MENU_GREY, + MAIN_MENU_HEADING, + SCROLLWIN_TEXT, + SCROLLWIN_HEADING, + SCROLLWIN_BOX, + DIALOG_TEXT, + DIALOG_MENU_FORE, + DIALOG_MENU_BACK, + DIALOG_BOX, + INPUT_BOX, + INPUT_HEADING, + INPUT_TEXT, + INPUT_FIELD, + FUNCTION_TEXT, + FUNCTION_HIGHLIGHT, + ATTR_MAX +} attributes_t; +extern attributes_t attributes[]; + +typedef enum { + F_HELP = 1, + F_SYMBOL = 2, + F_INSTS = 3, + F_CONF = 4, + F_BACK = 5, + F_SAVE = 6, + F_LOAD = 7, + F_SEARCH = 8, + F_EXIT = 9, +} function_key; + +void set_colors(void); + +/* this changes the windows attributes !!! */ +void print_in_middle(WINDOW *win, + int starty, + int startx, + int width, + const char *string, + chtype color); +int get_line_length(const char *line); +int get_line_no(const char *text); +const char *get_line(const char *text, int line_no); +void fill_window(WINDOW *win, const char *text); +int btn_dialog(WINDOW *main_window, const char *msg, int btn_num, ...); +int dialog_inputbox(WINDOW *main_window, + const char *title, const char *prompt, + const char *init, char **resultp, int *result_len); +void refresh_all_windows(WINDOW *main_window); +void show_scroll_win(WINDOW *main_window, + const char *title, + const char *text); diff --git a/support/kconfig/patches/01-kconfig-kernel-to-buildroot.patch b/support/kconfig/patches/01-kconfig-kernel-to-buildroot.patch new file mode 100644 index 00000000..43ae61a9 --- /dev/null +++ b/support/kconfig/patches/01-kconfig-kernel-to-buildroot.patch @@ -0,0 +1,107 @@ +--- + confdata.c | 4 ++-- + gconf.glade | 2 +- + mconf.c | 4 ++-- + zconf.tab.c_shipped | 2 +- + zconf.y | 2 +- + 5 files changed, 7 insertions(+), 7 deletions(-) + +Index: kconfig/gconf.glade +=================================================================== +--- kconfig.orig/gconf.glade ++++ kconfig/gconf.glade +@@ -4,7 +4,7 @@ + + + True +- Gtk Kernel Configurator ++ Gtk Buildroot Configurator + GTK_WINDOW_TOPLEVEL + GTK_WIN_POS_NONE + False +Index: kconfig/mconf.c +=================================================================== +--- kconfig.orig/mconf.c ++++ kconfig/mconf.c +@@ -176,9 +176,9 @@ menu_instructions[] = N_( + "Arrow keys navigate the menu. " + " selects submenus ---> (or empty submenus ----). " + "Highlighted letters are hotkeys. " +- "Pressing includes, excludes, modularizes features. " ++ "Pressing selects a feature, while excludes a feature. " + "Press to exit, for Help, for Search. " +- "Legend: [*] built-in [ ] excluded module < > module capable"), ++ "Legend: [*] feature is selected [ ] feature is excluded"), + radiolist_instructions[] = N_( + "Use the arrow keys to navigate this window or " + "press the hotkey of the item you wish to select " +@@ -962,7 +962,7 @@ static int handle_exit(void) + if (conf_get_changed()) + res = dialog_yesno(NULL, + _("Do you wish to save your new configuration?\n" +- "(Press to continue kernel configuration.)"), ++ "(Press to continue Buildroot configuration.)"), + 6, 60); + else + res = -1; +Index: kconfig/zconf.tab.c_shipped +=================================================================== +--- kconfig.orig/zconf.tab.c_shipped ++++ kconfig/zconf.tab.c_shipped +@@ -1515,7 +1515,7 @@ yyreduce: + * later regardless of whether it comes from the 'prompt' in + * mainmenu_stmt or here + */ +- menu_add_prompt(P_MENU, xstrdup("Linux Kernel Configuration"), NULL); ++ menu_add_prompt(P_MENU, xstrdup("Buildroot Configuration"), NULL); + } + + break; +Index: kconfig/zconf.y +=================================================================== +--- kconfig.orig/zconf.y ++++ kconfig/zconf.y +@@ -127,7 +127,7 @@ no_mainmenu_stmt: /* empty */ + * later regardless of whether it comes from the 'prompt' in + * mainmenu_stmt or here + */ +- menu_add_prompt(P_MENU, xstrdup("Linux Kernel Configuration"), NULL); ++ menu_add_prompt(P_MENU, xstrdup("Buildroot Configuration"), NULL); + }; + + +Index: kconfig/confdata.c +=================================================================== +--- kconfig.orig/confdata.c ++++ kconfig/confdata.c +@@ -30,7 +30,7 @@ static void conf_message(const char *fmt + static const char *conf_filename; + static int conf_lineno, conf_warnings; + +-const char conf_defname[] = "arch/$ARCH/defconfig"; ++const char conf_defname[] = ".defconfig"; + + static void conf_warning(const char *fmt, ...) + { +@@ -69,7 +69,7 @@ static void conf_message(const char *fmt + + const char *conf_get_configname(void) + { +- char *name = getenv("KCONFIG_CONFIG"); ++ char *name = getenv("BR2_CONFIG"); + + return name ? name : ".config"; + } +Index: kconfig/qconf.cc +=================================================================== +--- kconfig.orig/qconf.cc ++++ kconfig/qconf.cc +@@ -55,7 +55,7 @@ static inline QString qgettext(const QSt + } + + ConfigSettings::ConfigSettings() +- : QSettings("kernel.org", "qconf") ++ : QSettings("buildroot.org", "qconf") + { + } + diff --git a/support/kconfig/patches/06-br-build-system-integration.patch b/support/kconfig/patches/06-br-build-system-integration.patch new file mode 100644 index 00000000..35420cbb --- /dev/null +++ b/support/kconfig/patches/06-br-build-system-integration.patch @@ -0,0 +1,74 @@ +Index: kconfig/Makefile +=================================================================== +--- kconfig.orig/Makefile ++++ kconfig/Makefile +@@ -205,7 +205,35 @@ qconf-cxxobjs := qconf.o + qconf-objs := zconf.tab.o + gconf-objs := gconf.o zconf.tab.o + +-hostprogs-y := conf nconf mconf kxgettext qconf gconf ++hostprogs-y := conf ++ ++ifeq ($(MAKECMDGOALS),nconf) ++ hostprogs-y += nconf ++endif ++ ++ifeq ($(MAKECMDGOALS),mconf) ++ hostprogs-y += mconf ++endif ++ ++ifeq ($(MAKECMDGOALS),update-po-config) ++ hostprogs-y += kxgettext ++endif ++ ++ifeq ($(MAKECMDGOALS),qconf) ++ qconf-target := 1 ++endif ++ ++ifeq ($(MAKECMDGOALS),gconf) ++ gconf-target := 1 ++endif ++ ++ifeq ($(qconf-target),1) ++ hostprogs-y += qconf ++endif ++ ++ifeq ($(gconf-target),1) ++ hostprogs-y += gconf ++endif + + targets += zconf.lex.c + clean-files := qconf.moc .tmp_qtcheck .tmp_gtkcheck +@@ -243,7 +271,7 @@ HOSTLOADLIBES_nconf = $(shell \ + || echo "-lmenu -lpanel -lncurses" ) + $(obj)/qconf.o: $(obj)/.tmp_qtcheck + +-ifeq ($(MAKECMDGOALS),xconfig) ++ifeq ($(MAKECMDGOALS),qconf) + $(obj)/.tmp_qtcheck: $(src)/Makefile + -include $(obj)/.tmp_qtcheck + +@@ -270,9 +298,8 @@ $(obj)/.tmp_qtcheck: + echo "KC_QT_MOC=$$moc" >> $@ + endif + ++ifeq ($(MAKECMDGOALS),gconf) + $(obj)/gconf.o: $(obj)/.tmp_gtkcheck +- +-ifeq ($(MAKECMDGOALS),gconfig) + -include $(obj)/.tmp_gtkcheck + + # GTK+ needs some extra effort, too... +@@ -300,11 +327,8 @@ $(obj)/zconf.tab.o: $(obj)/zconf.lex.c + + $(obj)/qconf.o: $(obj)/qconf.moc + +-quiet_cmd_moc = MOC $@ +- cmd_moc = $(KC_QT_MOC) -i $< -o $@ +- + $(obj)/%.moc: $(src)/%.h $(obj)/.tmp_qtcheck +- $(call cmd,moc) ++ $(KC_QT_MOC) -i $< -o $@ + + # Extract gconf menu items for i18n support + $(obj)/gconf.glade.h: $(obj)/gconf.glade diff --git a/support/kconfig/patches/10-br-build-system.patch b/support/kconfig/patches/10-br-build-system.patch new file mode 100644 index 00000000..abf24636 --- /dev/null +++ b/support/kconfig/patches/10-br-build-system.patch @@ -0,0 +1,80 @@ +--- + Makefile.br | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ + foo.h | 12 ++++++++++++ + 2 files changed, 65 insertions(+) + +Index: kconfig/Makefile.br +=================================================================== +--- /dev/null ++++ kconfig/Makefile.br +@@ -0,0 +1,53 @@ ++src := . ++top_srcdir=../../ ++top_builddir=../../ ++srctree := . ++obj ?= . ++ ++include Makefile ++#HOSTCFLAGS+=-Dinline="" -include foo.h ++-include $(obj)/.depend ++$(obj)/.depend: $(wildcard *.h *.c) ++ $(HOSTCC) $(HOST_EXTRACFLAGS) $(HOSTCFLAGS) -MM *.c > $@ 2>/dev/null || : ++ ++__hostprogs := $(sort $(hostprogs-y) $(hostprogs-m)) ++host-csingle := $(foreach m,$(__hostprogs),$(if $($(m)-objs),,$(m))) ++host-cmulti := $(foreach m,$(__hostprogs),\ ++ $(if $($(m)-cxxobjs),,$(if $($(m)-objs),$(m)))) ++host-cxxmulti := $(foreach m,$(__hostprogs),\ ++ $(if $($(m)-cxxobjs),$(m),$(if $($(m)-objs),))) ++host-cobjs := $(addprefix $(obj)/,$(sort $(foreach m,$(__hostprogs),$($(m)-objs)))) ++host-cxxobjs := $(addprefix $(obj)/,$(sort $(foreach m,$(__hostprogs),$($(m)-cxxobjs)))) ++ ++HOST_EXTRACFLAGS += -I$(obj) -DCONFIG_=\"\" ++ ++$(host-csingle): %: %.c ++ $(HOSTCC) $(HOST_EXTRACFLAGS) $(HOSTCFLAGS) $(HOSTCFLAGS_$@) $< -o $(obj)/$@ ++ ++$(host-cmulti): %: $(host-cobjs) $(host-cshlib) ++ $(HOSTCC) $(HOST_EXTRACFLAGS) $(HOSTCFLAGS) $(HOSTCFLAGS_$@) $(addprefix $(obj)/,$($(@F)-objs)) $(HOSTLOADLIBES_$(@F)) -o $(obj)/$@ ++ ++$(host-cxxmulti): %: $(host-cxxobjs) $(host-cobjs) $(host-cshlib) ++ $(HOSTCXX) $(HOST_EXTRACFLAGS) $(HOSTCFLAGS) $(HOSTCXXFLAGS_$@) $(addprefix $(obj)/,$($(@F)-objs) $($(@F)-cxxobjs)) $(HOSTLOADLIBES_$(@F)) -o $(obj)/$@ ++ ++$(obj)/%.o: %.c ++ $(HOSTCC) $(HOST_EXTRACFLAGS) $(HOSTCFLAGS) $(HOSTCFLAGS_$(@F)) -c $< -o $@ ++ ++$(obj)/%.o: $(obj)/%.c ++ $(HOSTCC) $(HOST_EXTRACFLAGS) $(HOSTCFLAGS) $(HOSTCFLAGS_$(@F)) -c $< -o $@ ++ ++$(obj)/%.o: %.cc ++ $(HOSTCC) $(HOST_EXTRACFLAGS) $(HOSTCFLAGS) $(HOSTCXXFLAGS_$(@F)) -c $< -o $@ ++ ++$(obj)/%:: $(src)/%_shipped ++ $(Q)cat $< > $@ ++ ++clean: ++ $(Q)rm -f $(addprefix $(obj)/,$(clean-files)) ++distclean: clean ++ $(Q)rm -f $(addprefix $(obj)/,$(lxdialog) $(conf-objs) $(mconf-objs) $(kxgettext-objs) \ ++ $(hostprogs-y) $(qconf-cxxobjs) $(qconf-objs) $(gconf-objs) \ ++ mconf .depend) ++ ++FORCE: ++.PHONY: FORCE clean distclean +Index: kconfig/foo.h +=================================================================== +--- /dev/null ++++ kconfig/foo.h +@@ -0,0 +1,12 @@ ++#ifndef __KCONFIG_FOO_H ++#define __KCONFIG_FOO_H ++ ++#ifndef __APPLE__ ++#include ++#endif ++#include ++ ++#ifndef PATH_MAX ++#define PATH_MAX 1024 ++#endif ++#endif /* __KCONFIG_FOO_H */ diff --git a/support/kconfig/patches/11-use-mktemp-for-lxdialog.patch b/support/kconfig/patches/11-use-mktemp-for-lxdialog.patch new file mode 100644 index 00000000..387c633a --- /dev/null +++ b/support/kconfig/patches/11-use-mktemp-for-lxdialog.patch @@ -0,0 +1,17 @@ +--- + lxdialog/check-lxdialog.sh | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +Index: kconfig/lxdialog/check-lxdialog.sh +=================================================================== +--- kconfig.orig/lxdialog/check-lxdialog.sh ++++ kconfig/lxdialog/check-lxdialog.sh +@@ -41,7 +41,7 @@ ccflags() + } + + # Temp file, try to clean up after us +-tmp=.lxdialog.tmp ++tmp=$(mktemp) + trap "rm -f $tmp" 0 1 2 3 15 + + # Check if we can link to ncurses diff --git a/support/kconfig/patches/12-fix-glade-file-path.patch b/support/kconfig/patches/12-fix-glade-file-path.patch new file mode 100644 index 00000000..7d5941fc --- /dev/null +++ b/support/kconfig/patches/12-fix-glade-file-path.patch @@ -0,0 +1,17 @@ +--- + gconf.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +Index: kconfig/gconf.c +=================================================================== +--- kconfig.orig/gconf.c ++++ kconfig/gconf.c +@@ -1462,7 +1462,7 @@ int main(int ac, char *av[]) + /* Determine GUI path */ + env = getenv(SRCTREE); + if (env) +- glade_file = g_strconcat(env, "/scripts/kconfig/gconf.glade", NULL); ++ glade_file = g_strconcat(env, "/support/kconfig/gconf.glade", NULL); + else if (av[0][0] == '/') + glade_file = g_strconcat(av[0], ".glade", NULL); + else diff --git a/support/kconfig/patches/14-support-out-of-tree-config.patch b/support/kconfig/patches/14-support-out-of-tree-config.patch new file mode 100644 index 00000000..a3b33ba6 --- /dev/null +++ b/support/kconfig/patches/14-support-out-of-tree-config.patch @@ -0,0 +1,207 @@ +--- + conf.c | 1 + confdata.c | 62 ++++++++++++++++++++++++++++++++++++++++++++++--------------- + util.c | 16 +++++++++++++-- + 3 files changed, 61 insertions(+), 18 deletions(-) + +Index: kconfig/conf.c +=================================================================== +--- kconfig.orig/conf.c ++++ kconfig/conf.c +@@ -565,7 +565,6 @@ int main(int ac, char **av) + } + name = av[optind]; + conf_parse(name); +- //zconfdump(stdout); + if (sync_kconfig) { + name = conf_get_configname(); + if (stat(name, &tmpstat)) { +Index: kconfig/confdata.c +=================================================================== +--- kconfig.orig/confdata.c ++++ kconfig/confdata.c +@@ -13,6 +13,7 @@ + #include + #include + #include ++#include + + #include "lkc.h" + +@@ -76,9 +77,7 @@ const char *conf_get_configname(void) + + const char *conf_get_autoconfig_name(void) + { +- char *name = getenv("KCONFIG_AUTOCONFIG"); +- +- return name ? name : "include/config/auto.conf"; ++ return getenv("KCONFIG_AUTOCONFIG"); + } + + static char *conf_expand_value(const char *in) +@@ -748,6 +747,9 @@ int conf_write(const char *name) + char dirname[PATH_MAX+1], tmpname[PATH_MAX+1], newname[PATH_MAX+1]; + char *env; + ++ if (!name) ++ name = conf_get_configname(); ++ + dirname[0] = 0; + if (name && name[0]) { + struct stat st; +@@ -842,6 +844,7 @@ static int conf_split_config(void) + { + const char *name; + char path[PATH_MAX+1]; ++ char *opwd, *dir, *_name; + char *s, *d, c; + struct symbol *sym; + struct stat sb; +@@ -851,8 +854,20 @@ static int conf_split_config(void) + conf_read_simple(name, S_DEF_AUTO); + sym_calc_value(modules_sym); + +- if (chdir("include/config")) +- return 1; ++ opwd = malloc(256); ++ _name = strdup(name); ++ if (opwd == NULL || _name == NULL) ++ return 1; ++ opwd = getcwd(opwd, 256); ++ dir = dirname(_name); ++ if (dir == NULL) { ++ res = 1; ++ goto err; ++ } ++ if (chdir(dir)) { ++ res = 1; ++ goto err; ++ } + + res = 0; + for_all_symbols(i, sym) { +@@ -945,9 +960,11 @@ static int conf_split_config(void) + close(fd); + } + out: +- if (chdir("../..")) +- return 1; +- ++ if (chdir(opwd)) ++ res = 1; ++err: ++ free(opwd); ++ free(_name); + return res; + } + +@@ -957,25 +974,38 @@ int conf_write_autoconf(void) + const char *name; + FILE *out, *tristate, *out_h; + int i; ++ char dir[PATH_MAX+1], buf[PATH_MAX+1]; ++ char *s; ++ ++ strcpy(dir, conf_get_configname()); ++ s = strrchr(dir, '/'); ++ if (s) ++ s[1] = 0; ++ else ++ dir[0] = 0; + + sym_clear_all_valid(); + +- file_write_dep("include/config/auto.conf.cmd"); ++ sprintf(buf, "%s.config.cmd", dir); ++ file_write_dep(buf); + + if (conf_split_config()) + return 1; + +- out = fopen(".tmpconfig", "w"); ++ sprintf(buf, "%s.tmpconfig", dir); ++ out = fopen(buf, "w"); + if (!out) + return 1; + +- tristate = fopen(".tmpconfig_tristate", "w"); ++ sprintf(buf, "%s.tmpconfig_tristate", dir); ++ tristate = fopen(buf, "w"); + if (!tristate) { + fclose(out); + return 1; + } + +- out_h = fopen(".tmpconfig.h", "w"); ++ sprintf(buf, "%s.tmpconfig.h", dir); ++ out_h = fopen(buf, "w"); + if (!out_h) { + fclose(out); + fclose(tristate); +@@ -1007,19 +1037,22 @@ int conf_write_autoconf(void) + name = getenv("KCONFIG_AUTOHEADER"); + if (!name) + name = "include/generated/autoconf.h"; +- if (rename(".tmpconfig.h", name)) ++ sprintf(buf, "%s.tmpconfig.h", dir); ++ if (rename(buf, name)) + return 1; + name = getenv("KCONFIG_TRISTATE"); + if (!name) + name = "include/config/tristate.conf"; +- if (rename(".tmpconfig_tristate", name)) ++ sprintf(buf, "%s.tmpconfig_tristate", dir); ++ if (rename(buf, name)) + return 1; + name = conf_get_autoconfig_name(); + /* + * This must be the last step, kbuild has a dependency on auto.conf + * and this marks the successful completion of the previous steps. + */ +- if (rename(".tmpconfig", name)) ++ sprintf(buf, "%s.tmpconfig", dir); ++ if (rename(buf, name)) + return 1; + + return 0; +Index: kconfig/util.c +=================================================================== +--- kconfig.orig/util.c ++++ kconfig/util.c +@@ -34,6 +34,8 @@ struct file *file_lookup(const char *nam + /* write a dependency file as used by kbuild to track dependencies */ + int file_write_dep(const char *name) + { ++ char *str; ++ char buf[PATH_MAX+1], buf2[PATH_MAX+1], dir[PATH_MAX+1]; + struct symbol *sym, *env_sym; + struct expr *e; + struct file *file; +@@ -41,7 +43,16 @@ int file_write_dep(const char *name) + + if (!name) + name = ".kconfig.d"; +- out = fopen("..config.tmp", "w"); ++ ++ strcpy(dir, conf_get_configname()); ++ str = strrchr(dir, '/'); ++ if (str) ++ str[1] = 0; ++ else ++ dir[0] = 0; ++ ++ sprintf(buf, "%s..config.tmp", dir); ++ out = fopen(buf, "w"); + if (!out) + return 1; + fprintf(out, "deps_config := \\\n"); +@@ -72,7 +83,8 @@ int file_write_dep(const char *name) + + fprintf(out, "\n$(deps_config): ;\n"); + fclose(out); +- rename("..config.tmp", name); ++ sprintf(buf2, "%s%s", dir, name); ++ rename(buf, buf2); + return 0; + } + diff --git a/support/kconfig/patches/16-fix-space-to-de-select-options.patch b/support/kconfig/patches/16-fix-space-to-de-select-options.patch new file mode 100644 index 00000000..08f7ec5d --- /dev/null +++ b/support/kconfig/patches/16-fix-space-to-de-select-options.patch @@ -0,0 +1,41 @@ +commit 6faa447282fe90d42e0513af46c13f20b4b327d4 +Author: Yann E. MORIN +Date: Wed Nov 13 22:45:02 2013 +0100 + + support/kconfig: fix 'space' to (de)select options + + In case a menu has comment without letters/numbers (eg. characters + matching the regexp '^[^[:alpha:][:digit:]]+$', for example - or *), + hitting space will cycle through those comments, rather than + selecting/deselecting the currently-highlighted option. + + This is the behaviour of hitting any letter/digit: jump to the next + option which prompt starts with that letter. The only letters that + do not behave as such are 'y' 'm' and 'n'. Prompts that start with + one of those three letters are instead matched on the first letter + that is not 'y', 'm' or 'n'. + + Fix that by treating 'space' as we treat y/m/n, ie. as an action key, + not as shortcut to jump to prompt. + + Signed-off-by: "Yann E. MORIN" + Cc: Thomas Petazzoni + Cc: Peter Korsgaard + Cc: Samuel Martin + Cc: Thomas De Schampheleire + --- + Note: I'll be running this upstream soonish. + +Index: kconfig/lxdialog/menubox.c +=================================================================== +--- kconfig.orig/lxdialog/menubox.c ++++ kconfig/lxdialog/menubox.c +@@ -285,7 +285,7 @@ do_resize: + if (key < 256 && isalpha(key)) + key = tolower(key); + +- if (strchr("ynmh", key)) ++ if (strchr("ynmh ", key)) + i = max_choice; + else { + for (i = choice + 1; i < max_choice; i++) { diff --git a/support/kconfig/patches/17-backport-kecho.patch b/support/kconfig/patches/17-backport-kecho.patch new file mode 100644 index 00000000..9d138766 --- /dev/null +++ b/support/kconfig/patches/17-backport-kecho.patch @@ -0,0 +1,26 @@ +This commit added kecho to scripts/Kbuild.include (and doc). +Backported just Kbuild.include part to Makefile + +commit 5410ecc0def8955ab99810c5626cc7e156991896 +Author: Mike Frysinger +Date: Thu Nov 6 03:31:34 2008 -0500 + + kbuild: introduce $(kecho) convenience echo + +Index: kconfig/Makefile +=================================================================== +--- kconfig.orig/Makefile ++++ kconfig/Makefile +@@ -6,6 +6,12 @@ + PHONY += xconfig gconfig menuconfig config syncconfig update-po-config \ + localmodconfig localyesconfig + ++# Easy method for doing a status message ++ kecho := : ++ quiet_kecho := echo ++silent_kecho := : ++kecho := $($(quiet)kecho) ++ + ifdef KBUILD_KCONFIG + Kconfig := $(KBUILD_KCONFIG) + else diff --git a/support/kconfig/patches/18-merge-config.sh-create-temporary-files-in-tmp.patch b/support/kconfig/patches/18-merge-config.sh-create-temporary-files-in-tmp.patch new file mode 100644 index 00000000..f2a261f3 --- /dev/null +++ b/support/kconfig/patches/18-merge-config.sh-create-temporary-files-in-tmp.patch @@ -0,0 +1,27 @@ +commit 0f56304521db42bd2c05867fd78a247104a4ad95 +Author: Henrique Marks +Date: Mon, 7 Dec 2015 12:08:45 -0200 + + merge_config.sh: create temporary files in /tmp + + Creating temporary files in /tmp (or the path pointed by $TMPDIR) allows the + buildroot top directory to be read-only and shareable between multible builds. + This follows what other scripts do, e.g. check-kernel-headers.sh. + + Signed-off-by: Henrique Marks + Signed-off-by: Carlos Santos + Signed-off-by: Peter Korsgaard + +Index: kconfig/merge_config.sh +=================================================================== +--- kconfig.orig/merge_config.sh ++++ kconfig/merge_config.sh +@@ -100,7 +100,7 @@ fi + + MERGE_LIST=$* + SED_CONFIG_EXP="s/^\(# \)\{0,1\}\(CONFIG_[a-zA-Z0-9_]*\)[= ].*/\2/p" +-TMP_FILE=$(mktemp ./.tmp.config.XXXXXXXXXX) ++TMP_FILE=$(mktemp -t .tmp.config.XXXXXXXXXX) + + echo "Using $INITFILE as base" + cat $INITFILE > $TMP_FILE diff --git a/support/kconfig/patches/19-merge_config.sh-add-br2-external-support.patch b/support/kconfig/patches/19-merge_config.sh-add-br2-external-support.patch new file mode 100644 index 00000000..1d0ef323 --- /dev/null +++ b/support/kconfig/patches/19-merge_config.sh-add-br2-external-support.patch @@ -0,0 +1,47 @@ +commit 28fac3973b3c693c453594b007c08c1e1e5c4af3 +Author: Ilya Kuzmich +Date: Tue, 9 Jan 2018 14:37:43 +0300 + + merge_config.sh: add br2-external support + + Pass BR2_EXTERNAL value via -e option. + This will prevent merge_config.sh from silently eating any symbols defined in + external trees on a clean buildroot tree invocation. + + Signed-off-by: Ilya Kuzmich + Acked-by: "Yann E. MORIN" + Signed-off-by: Peter Korsgaard + +Index: kconfig/merge_config.sh +=================================================================== +--- kconfig.orig/merge_config.sh ++++ kconfig/merge_config.sh +@@ -33,6 +33,7 @@ usage() { + echo " -n use allnoconfig instead of alldefconfig" + echo " -r list redundant entries when merging fragments" + echo " -O dir to put generated output files. Consider setting \$KCONFIG_CONFIG instead." ++ echo " -e colon-separated list of br2-external trees to use (optional)" + } + + RUNMAKE=true +@@ -71,6 +72,11 @@ while true; do + shift 2 + continue + ;; ++ "-e") ++ EXTERNAL_ARG="BR2_EXTERNAL=$2" ++ shift 2 ++ continue ++ ;; + *) + break + ;; +@@ -151,7 +157,7 @@ fi + # Use the merged file as the starting point for: + # alldefconfig: Fills in any missing symbols with Kconfig default + # allnoconfig: Fills in any missing symbols with # CONFIG_* is not set +-make KCONFIG_ALLCONFIG=$TMP_FILE $OUTPUT_ARG $ALLTARGET ++make KCONFIG_ALLCONFIG=$TMP_FILE $EXTERNAL_ARG $OUTPUT_ARG $ALLTARGET + + + # Check all specified config values took (might have missed-dependency issues) diff --git a/support/kconfig/patches/20-merge_config.sh-Allow-to-define-config-prefix.patch b/support/kconfig/patches/20-merge_config.sh-Allow-to-define-config-prefix.patch new file mode 100644 index 00000000..645043b1 --- /dev/null +++ b/support/kconfig/patches/20-merge_config.sh-Allow-to-define-config-prefix.patch @@ -0,0 +1,31 @@ +Index: kconfig/merge_config.sh +=================================================================== +--- kconfig.orig/merge_config.sh ++++ kconfig/merge_config.sh +@@ -34,12 +34,16 @@ usage() { + echo " -r list redundant entries when merging fragments" + echo " -O dir to put generated output files. Consider setting \$KCONFIG_CONFIG instead." + echo " -e colon-separated list of br2-external trees to use (optional)" ++ echo ++ echo "Used prefix: '$CONFIG_PREFIX'. You can redefine it with \$CONFIG_ ++ environment variable." + } + + RUNMAKE=true + ALLTARGET=alldefconfig + WARNREDUN=false + OUTPUT=. ++CONFIG_PREFIX=${CONFIG_-CONFIG_} + + while true; do + case $1 in +@@ -105,7 +109,8 @@ if [ ! -r "$INITFILE" ]; then + fi + + MERGE_LIST=$* +-SED_CONFIG_EXP="s/^\(# \)\{0,1\}\(CONFIG_[a-zA-Z0-9_]*\)[= ].*/\2/p" ++SED_CONFIG_EXP="s/^\(# \)\{0,1\}\(${CONFIG_PREFIX}[a-zA-Z0-9_]*\)[= ].*/\2/p" ++ + TMP_FILE=$(mktemp -t .tmp.config.XXXXXXXXXX) + + echo "Using $INITFILE as base" diff --git a/support/kconfig/patches/21-Avoid-false-positive-matches-from-comment-lines.patch b/support/kconfig/patches/21-Avoid-false-positive-matches-from-comment-lines.patch new file mode 100644 index 00000000..c11144e4 --- /dev/null +++ b/support/kconfig/patches/21-Avoid-false-positive-matches-from-comment-lines.patch @@ -0,0 +1,32 @@ +Index: kconfig/merge_config.sh +=================================================================== +--- kconfig.orig/merge_config.sh ++++ kconfig/merge_config.sh +@@ -109,7 +109,8 @@ if [ ! -r "$INITFILE" ]; then + fi + + MERGE_LIST=$* +-SED_CONFIG_EXP="s/^\(# \)\{0,1\}\(${CONFIG_PREFIX}[a-zA-Z0-9_]*\)[= ].*/\2/p" ++SED_CONFIG_EXP1="s/^\(${CONFIG_PREFIX}[a-zA-Z0-9_]*\)=.*/\1/p" ++SED_CONFIG_EXP2="s/^# \(${CONFIG_PREFIX}[a-zA-Z0-9_]*\) is not set$/\1/p" + + TMP_FILE=$(mktemp -t .tmp.config.XXXXXXXXXX) + +@@ -123,7 +124,7 @@ for MERGE_FILE in $MERGE_LIST ; do + echo "The merge file '$MERGE_FILE' does not exist. Exit." >&2 + exit 1 + fi +- CFG_LIST=$(sed -n "$SED_CONFIG_EXP" $MERGE_FILE) ++ CFG_LIST=$(sed -n -e "$SED_CONFIG_EXP1" -e "$SED_CONFIG_EXP2" $MERGE_FILE) + + for CFG in $CFG_LIST ; do + grep -q -w $CFG $TMP_FILE || continue +@@ -166,7 +167,7 @@ make KCONFIG_ALLCONFIG=$TMP_FILE $EXTERN + + + # Check all specified config values took (might have missed-dependency issues) +-for CFG in $(sed -n "$SED_CONFIG_EXP" $TMP_FILE); do ++for CFG in $(sed -n -e "$SED_CONFIG_EXP1" -e "$SED_CONFIG_EXP2" $TMP_FILE); do + + REQUESTED_VAL=$(grep -w -e "$CFG" $TMP_FILE) + ACTUAL_VAL=$(grep -w -e "$CFG" "$KCONFIG_CONFIG") diff --git a/support/kconfig/patches/series b/support/kconfig/patches/series new file mode 100644 index 00000000..e5a6f69d --- /dev/null +++ b/support/kconfig/patches/series @@ -0,0 +1,12 @@ +01-kconfig-kernel-to-buildroot.patch +06-br-build-system-integration.patch +10-br-build-system.patch +11-use-mktemp-for-lxdialog.patch +12-fix-glade-file-path.patch +14-support-out-of-tree-config.patch +16-fix-space-to-de-select-options.patch +17-backport-kecho.patch +18-merge-config.sh-create-temporary-files-in-tmp.patch +19-merge_config.sh-add-br2-external-support.patch +20-merge_config.sh-Allow-to-define-config-prefix.patch +21-Avoid-false-positive-matches-from-comment-lines.patch diff --git a/support/kconfig/qconf.cc b/support/kconfig/qconf.cc new file mode 100644 index 00000000..7896b584 --- /dev/null +++ b/support/kconfig/qconf.cc @@ -0,0 +1,1879 @@ +/* + * Copyright (C) 2002 Roman Zippel + * Copyright (C) 2015 Boris Barbulovski + * Released under the terms of the GNU GPL v2.0. + */ + +#include + +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +#include "lkc.h" +#include "qconf.h" + +#include "qconf.moc" +#include "images.c" + +#ifdef _ +# undef _ +# define _ qgettext +#endif + +static QApplication *configApp; +static ConfigSettings *configSettings; + +QAction *ConfigMainWindow::saveAction; + +static inline QString qgettext(const char* str) +{ + return QString::fromLocal8Bit(gettext(str)); +} + +static inline QString qgettext(const QString& str) +{ + return QString::fromLocal8Bit(gettext(str.toLatin1())); +} + +ConfigSettings::ConfigSettings() + : QSettings("buildroot.org", "qconf") +{ +} + +/** + * Reads a list of integer values from the application settings. + */ +QList ConfigSettings::readSizes(const QString& key, bool *ok) +{ + QList result; + + if (contains(key)) + { + QStringList entryList = value(key).toStringList(); + QStringList::Iterator it; + + for (it = entryList.begin(); it != entryList.end(); ++it) + result.push_back((*it).toInt()); + + *ok = true; + } + else + *ok = false; + + return result; +} + +/** + * Writes a list of integer values to the application settings. + */ +bool ConfigSettings::writeSizes(const QString& key, const QList& value) +{ + QStringList stringList; + QList::ConstIterator it; + + for (it = value.begin(); it != value.end(); ++it) + stringList.push_back(QString::number(*it)); + setValue(key, stringList); + + return true; +} + + +/* + * set the new data + * TODO check the value + */ +void ConfigItem::okRename(int col) +{ +} + +/* + * update the displayed of a menu entry + */ +void ConfigItem::updateMenu(void) +{ + ConfigList* list; + struct symbol* sym; + struct property *prop; + QString prompt; + int type; + tristate expr; + + list = listView(); + if (goParent) { + setPixmap(promptColIdx, list->menuBackPix); + prompt = ".."; + goto set_prompt; + } + + sym = menu->sym; + prop = menu->prompt; + prompt = _(menu_get_prompt(menu)); + + if (prop) switch (prop->type) { + case P_MENU: + if (list->mode == singleMode || list->mode == symbolMode) { + /* a menuconfig entry is displayed differently + * depending whether it's at the view root or a child. + */ + if (sym && list->rootEntry == menu) + break; + setPixmap(promptColIdx, list->menuPix); + } else { + if (sym) + break; + setPixmap(promptColIdx, QIcon()); + } + goto set_prompt; + case P_COMMENT: + setPixmap(promptColIdx, QIcon()); + goto set_prompt; + default: + ; + } + if (!sym) + goto set_prompt; + + setText(nameColIdx, QString::fromLocal8Bit(sym->name)); + + type = sym_get_type(sym); + switch (type) { + case S_BOOLEAN: + case S_TRISTATE: + char ch; + + if (!sym_is_changable(sym) && list->optMode == normalOpt) { + setPixmap(promptColIdx, QIcon()); + setText(noColIdx, QString::null); + setText(modColIdx, QString::null); + setText(yesColIdx, QString::null); + break; + } + expr = sym_get_tristate_value(sym); + switch (expr) { + case yes: + if (sym_is_choice_value(sym) && type == S_BOOLEAN) + setPixmap(promptColIdx, list->choiceYesPix); + else + setPixmap(promptColIdx, list->symbolYesPix); + setText(yesColIdx, "Y"); + ch = 'Y'; + break; + case mod: + setPixmap(promptColIdx, list->symbolModPix); + setText(modColIdx, "M"); + ch = 'M'; + break; + default: + if (sym_is_choice_value(sym) && type == S_BOOLEAN) + setPixmap(promptColIdx, list->choiceNoPix); + else + setPixmap(promptColIdx, list->symbolNoPix); + setText(noColIdx, "N"); + ch = 'N'; + break; + } + if (expr != no) + setText(noColIdx, sym_tristate_within_range(sym, no) ? "_" : 0); + if (expr != mod) + setText(modColIdx, sym_tristate_within_range(sym, mod) ? "_" : 0); + if (expr != yes) + setText(yesColIdx, sym_tristate_within_range(sym, yes) ? "_" : 0); + + setText(dataColIdx, QChar(ch)); + break; + case S_INT: + case S_HEX: + case S_STRING: + const char* data; + + data = sym_get_string_value(sym); + + setText(dataColIdx, data); + if (type == S_STRING) + prompt = QString("%1: %2").arg(prompt).arg(data); + else + prompt = QString("(%2) %1").arg(prompt).arg(data); + break; + } + if (!sym_has_value(sym) && visible) + prompt += _(" (NEW)"); +set_prompt: + setText(promptColIdx, prompt); +} + +void ConfigItem::testUpdateMenu(bool v) +{ + ConfigItem* i; + + visible = v; + if (!menu) + return; + + sym_calc_value(menu->sym); + if (menu->flags & MENU_CHANGED) { + /* the menu entry changed, so update all list items */ + menu->flags &= ~MENU_CHANGED; + for (i = (ConfigItem*)menu->data; i; i = i->nextItem) + i->updateMenu(); + } else if (listView()->updateAll) + updateMenu(); +} + + +/* + * construct a menu entry + */ +void ConfigItem::init(void) +{ + if (menu) { + ConfigList* list = listView(); + nextItem = (ConfigItem*)menu->data; + menu->data = this; + + if (list->mode != fullMode) + setExpanded(true); + sym_calc_value(menu->sym); + } + updateMenu(); +} + +/* + * destruct a menu entry + */ +ConfigItem::~ConfigItem(void) +{ + if (menu) { + ConfigItem** ip = (ConfigItem**)&menu->data; + for (; *ip; ip = &(*ip)->nextItem) { + if (*ip == this) { + *ip = nextItem; + break; + } + } + } +} + +ConfigLineEdit::ConfigLineEdit(ConfigView* parent) + : Parent(parent) +{ + connect(this, SIGNAL(editingFinished()), SLOT(hide())); +} + +void ConfigLineEdit::show(ConfigItem* i) +{ + item = i; + if (sym_get_string_value(item->menu->sym)) + setText(QString::fromLocal8Bit(sym_get_string_value(item->menu->sym))); + else + setText(QString::null); + Parent::show(); + setFocus(); +} + +void ConfigLineEdit::keyPressEvent(QKeyEvent* e) +{ + switch (e->key()) { + case Qt::Key_Escape: + break; + case Qt::Key_Return: + case Qt::Key_Enter: + sym_set_string_value(item->menu->sym, text().toLatin1()); + parent()->updateList(item); + break; + default: + Parent::keyPressEvent(e); + return; + } + e->accept(); + parent()->list->setFocus(); + hide(); +} + +ConfigList::ConfigList(ConfigView* p, const char *name) + : Parent(p), + updateAll(false), + symbolYesPix(xpm_symbol_yes), symbolModPix(xpm_symbol_mod), symbolNoPix(xpm_symbol_no), + choiceYesPix(xpm_choice_yes), choiceNoPix(xpm_choice_no), + menuPix(xpm_menu), menuInvPix(xpm_menu_inv), menuBackPix(xpm_menuback), voidPix(xpm_void), + showName(false), showRange(false), showData(false), mode(singleMode), optMode(normalOpt), + rootEntry(0), headerPopup(0) +{ + int i; + + setObjectName(name); + setSortingEnabled(false); + setRootIsDecorated(true); + + setVerticalScrollMode(ScrollPerPixel); + setHorizontalScrollMode(ScrollPerPixel); + + setHeaderLabels(QStringList() << _("Option") << _("Name") << "N" << "M" << "Y" << _("Value")); + + connect(this, SIGNAL(itemSelectionChanged(void)), + SLOT(updateSelection(void))); + + if (name) { + configSettings->beginGroup(name); + showName = configSettings->value("/showName", false).toBool(); + showRange = configSettings->value("/showRange", false).toBool(); + showData = configSettings->value("/showData", false).toBool(); + optMode = (enum optionMode)configSettings->value("/optionMode", 0).toInt(); + configSettings->endGroup(); + connect(configApp, SIGNAL(aboutToQuit()), SLOT(saveSettings())); + } + + addColumn(promptColIdx); + + reinit(); +} + +bool ConfigList::menuSkip(struct menu *menu) +{ + if (optMode == normalOpt && menu_is_visible(menu)) + return false; + if (optMode == promptOpt && menu_has_prompt(menu)) + return false; + if (optMode == allOpt) + return false; + return true; +} + +void ConfigList::reinit(void) +{ + removeColumn(dataColIdx); + removeColumn(yesColIdx); + removeColumn(modColIdx); + removeColumn(noColIdx); + removeColumn(nameColIdx); + + if (showName) + addColumn(nameColIdx); + if (showRange) { + addColumn(noColIdx); + addColumn(modColIdx); + addColumn(yesColIdx); + } + if (showData) + addColumn(dataColIdx); + + updateListAll(); +} + +void ConfigList::saveSettings(void) +{ + if (!objectName().isEmpty()) { + configSettings->beginGroup(objectName()); + configSettings->setValue("/showName", showName); + configSettings->setValue("/showRange", showRange); + configSettings->setValue("/showData", showData); + configSettings->setValue("/optionMode", (int)optMode); + configSettings->endGroup(); + } +} + +ConfigItem* ConfigList::findConfigItem(struct menu *menu) +{ + ConfigItem* item = (ConfigItem*)menu->data; + + for (; item; item = item->nextItem) { + if (this == item->listView()) + break; + } + + return item; +} + +void ConfigList::updateSelection(void) +{ + struct menu *menu; + enum prop_type type; + + if (selectedItems().count() == 0) + return; + + ConfigItem* item = (ConfigItem*)selectedItems().first(); + if (!item) + return; + + menu = item->menu; + emit menuChanged(menu); + if (!menu) + return; + type = menu->prompt ? menu->prompt->type : P_UNKNOWN; + if (mode == menuMode && type == P_MENU) + emit menuSelected(menu); +} + +void ConfigList::updateList(ConfigItem* item) +{ + ConfigItem* last = 0; + + if (!rootEntry) { + if (mode != listMode) + goto update; + QTreeWidgetItemIterator it(this); + ConfigItem* item; + + while (*it) { + item = (ConfigItem*)(*it); + if (!item->menu) + continue; + item->testUpdateMenu(menu_is_visible(item->menu)); + + ++it; + } + return; + } + + if (rootEntry != &rootmenu && (mode == singleMode || + (mode == symbolMode && rootEntry->parent != &rootmenu))) { + item = (ConfigItem *)topLevelItem(0); + if (!item) + item = new ConfigItem(this, 0, true); + last = item; + } + if ((mode == singleMode || (mode == symbolMode && !(rootEntry->flags & MENU_ROOT))) && + rootEntry->sym && rootEntry->prompt) { + item = last ? last->nextSibling() : firstChild(); + if (!item) + item = new ConfigItem(this, last, rootEntry, true); + else + item->testUpdateMenu(true); + + updateMenuList(item, rootEntry); + update(); + resizeColumnToContents(0); + return; + } +update: + updateMenuList(this, rootEntry); + update(); + resizeColumnToContents(0); +} + +void ConfigList::setValue(ConfigItem* item, tristate val) +{ + struct symbol* sym; + int type; + tristate oldval; + + sym = item->menu ? item->menu->sym : 0; + if (!sym) + return; + + type = sym_get_type(sym); + switch (type) { + case S_BOOLEAN: + case S_TRISTATE: + oldval = sym_get_tristate_value(sym); + + if (!sym_set_tristate_value(sym, val)) + return; + if (oldval == no && item->menu->list) + item->setExpanded(true); + parent()->updateList(item); + break; + } +} + +void ConfigList::changeValue(ConfigItem* item) +{ + struct symbol* sym; + struct menu* menu; + int type, oldexpr, newexpr; + + menu = item->menu; + if (!menu) + return; + sym = menu->sym; + if (!sym) { + if (item->menu->list) + item->setExpanded(!item->isExpanded()); + return; + } + + type = sym_get_type(sym); + switch (type) { + case S_BOOLEAN: + case S_TRISTATE: + oldexpr = sym_get_tristate_value(sym); + newexpr = sym_toggle_tristate_value(sym); + if (item->menu->list) { + if (oldexpr == newexpr) + item->setExpanded(!item->isExpanded()); + else if (oldexpr == no) + item->setExpanded(true); + } + if (oldexpr != newexpr) + parent()->updateList(item); + break; + case S_INT: + case S_HEX: + case S_STRING: + parent()->lineEdit->show(item); + break; + } +} + +void ConfigList::setRootMenu(struct menu *menu) +{ + enum prop_type type; + + if (rootEntry == menu) + return; + type = menu && menu->prompt ? menu->prompt->type : P_UNKNOWN; + if (type != P_MENU) + return; + updateMenuList(this, 0); + rootEntry = menu; + updateListAll(); + if (currentItem()) { + currentItem()->setSelected(hasFocus()); + scrollToItem(currentItem()); + } +} + +void ConfigList::setParentMenu(void) +{ + ConfigItem* item; + struct menu *oldroot; + + oldroot = rootEntry; + if (rootEntry == &rootmenu) + return; + setRootMenu(menu_get_parent_menu(rootEntry->parent)); + + QTreeWidgetItemIterator it(this); + while (*it) { + item = (ConfigItem *)(*it); + if (item->menu == oldroot) { + setCurrentItem(item); + scrollToItem(item); + break; + } + + ++it; + } +} + +/* + * update all the children of a menu entry + * removes/adds the entries from the parent widget as necessary + * + * parent: either the menu list widget or a menu entry widget + * menu: entry to be updated + */ +void ConfigList::updateMenuList(ConfigItem *parent, struct menu* menu) +{ + struct menu* child; + ConfigItem* item; + ConfigItem* last; + bool visible; + enum prop_type type; + + if (!menu) { + while (parent->childCount() > 0) + { + delete parent->takeChild(0); + } + + return; + } + + last = parent->firstChild(); + if (last && !last->goParent) + last = 0; + for (child = menu->list; child; child = child->next) { + item = last ? last->nextSibling() : parent->firstChild(); + type = child->prompt ? child->prompt->type : P_UNKNOWN; + + switch (mode) { + case menuMode: + if (!(child->flags & MENU_ROOT)) + goto hide; + break; + case symbolMode: + if (child->flags & MENU_ROOT) + goto hide; + break; + default: + break; + } + + visible = menu_is_visible(child); + if (!menuSkip(child)) { + if (!child->sym && !child->list && !child->prompt) + continue; + if (!item || item->menu != child) + item = new ConfigItem(parent, last, child, visible); + else + item->testUpdateMenu(visible); + + if (mode == fullMode || mode == menuMode || type != P_MENU) + updateMenuList(item, child); + else + updateMenuList(item, 0); + last = item; + continue; + } + hide: + if (item && item->menu == child) { + last = parent->firstChild(); + if (last == item) + last = 0; + else while (last->nextSibling() != item) + last = last->nextSibling(); + delete item; + } + } +} + +void ConfigList::updateMenuList(ConfigList *parent, struct menu* menu) +{ + struct menu* child; + ConfigItem* item; + ConfigItem* last; + bool visible; + enum prop_type type; + + if (!menu) { + while (parent->topLevelItemCount() > 0) + { + delete parent->takeTopLevelItem(0); + } + + return; + } + + last = (ConfigItem*)parent->topLevelItem(0); + if (last && !last->goParent) + last = 0; + for (child = menu->list; child; child = child->next) { + item = last ? last->nextSibling() : (ConfigItem*)parent->topLevelItem(0); + type = child->prompt ? child->prompt->type : P_UNKNOWN; + + switch (mode) { + case menuMode: + if (!(child->flags & MENU_ROOT)) + goto hide; + break; + case symbolMode: + if (child->flags & MENU_ROOT) + goto hide; + break; + default: + break; + } + + visible = menu_is_visible(child); + if (!menuSkip(child)) { + if (!child->sym && !child->list && !child->prompt) + continue; + if (!item || item->menu != child) + item = new ConfigItem(parent, last, child, visible); + else + item->testUpdateMenu(visible); + + if (mode == fullMode || mode == menuMode || type != P_MENU) + updateMenuList(item, child); + else + updateMenuList(item, 0); + last = item; + continue; + } + hide: + if (item && item->menu == child) { + last = (ConfigItem*)parent->topLevelItem(0); + if (last == item) + last = 0; + else while (last->nextSibling() != item) + last = last->nextSibling(); + delete item; + } + } +} + +void ConfigList::keyPressEvent(QKeyEvent* ev) +{ + QTreeWidgetItem* i = currentItem(); + ConfigItem* item; + struct menu *menu; + enum prop_type type; + + if (ev->key() == Qt::Key_Escape && mode != fullMode && mode != listMode) { + emit parentSelected(); + ev->accept(); + return; + } + + if (!i) { + Parent::keyPressEvent(ev); + return; + } + item = (ConfigItem*)i; + + switch (ev->key()) { + case Qt::Key_Return: + case Qt::Key_Enter: + if (item->goParent) { + emit parentSelected(); + break; + } + menu = item->menu; + if (!menu) + break; + type = menu->prompt ? menu->prompt->type : P_UNKNOWN; + if (type == P_MENU && rootEntry != menu && + mode != fullMode && mode != menuMode) { + emit menuSelected(menu); + break; + } + case Qt::Key_Space: + changeValue(item); + break; + case Qt::Key_N: + setValue(item, no); + break; + case Qt::Key_M: + setValue(item, mod); + break; + case Qt::Key_Y: + setValue(item, yes); + break; + default: + Parent::keyPressEvent(ev); + return; + } + ev->accept(); +} + +void ConfigList::mousePressEvent(QMouseEvent* e) +{ + //QPoint p(contentsToViewport(e->pos())); + //printf("contentsMousePressEvent: %d,%d\n", p.x(), p.y()); + Parent::mousePressEvent(e); +} + +void ConfigList::mouseReleaseEvent(QMouseEvent* e) +{ + QPoint p = e->pos(); + ConfigItem* item = (ConfigItem*)itemAt(p); + struct menu *menu; + enum prop_type ptype; + QIcon icon; + int idx, x; + + if (!item) + goto skip; + + menu = item->menu; + x = header()->offset() + p.x(); + idx = header()->logicalIndexAt(x); + switch (idx) { + case promptColIdx: + icon = item->pixmap(promptColIdx); + if (!icon.isNull()) { + int off = header()->sectionPosition(0) + visualRect(indexAt(p)).x() + 4; // 4 is Hardcoded image offset. There might be a way to do it properly. + if (x >= off && x < off + icon.availableSizes().first().width()) { + if (item->goParent) { + emit parentSelected(); + break; + } else if (!menu) + break; + ptype = menu->prompt ? menu->prompt->type : P_UNKNOWN; + if (ptype == P_MENU && rootEntry != menu && + mode != fullMode && mode != menuMode) + emit menuSelected(menu); + else + changeValue(item); + } + } + break; + case noColIdx: + setValue(item, no); + break; + case modColIdx: + setValue(item, mod); + break; + case yesColIdx: + setValue(item, yes); + break; + case dataColIdx: + changeValue(item); + break; + } + +skip: + //printf("contentsMouseReleaseEvent: %d,%d\n", p.x(), p.y()); + Parent::mouseReleaseEvent(e); +} + +void ConfigList::mouseMoveEvent(QMouseEvent* e) +{ + //QPoint p(contentsToViewport(e->pos())); + //printf("contentsMouseMoveEvent: %d,%d\n", p.x(), p.y()); + Parent::mouseMoveEvent(e); +} + +void ConfigList::mouseDoubleClickEvent(QMouseEvent* e) +{ + QPoint p = e->pos(); // TODO: Check if this works(was contentsToViewport). + ConfigItem* item = (ConfigItem*)itemAt(p); + struct menu *menu; + enum prop_type ptype; + + if (!item) + goto skip; + if (item->goParent) { + emit parentSelected(); + goto skip; + } + menu = item->menu; + if (!menu) + goto skip; + ptype = menu->prompt ? menu->prompt->type : P_UNKNOWN; + if (ptype == P_MENU && (mode == singleMode || mode == symbolMode)) + emit menuSelected(menu); + else if (menu->sym) + changeValue(item); + +skip: + //printf("contentsMouseDoubleClickEvent: %d,%d\n", p.x(), p.y()); + Parent::mouseDoubleClickEvent(e); +} + +void ConfigList::focusInEvent(QFocusEvent *e) +{ + struct menu *menu = NULL; + + Parent::focusInEvent(e); + + ConfigItem* item = (ConfigItem *)currentItem(); + if (item) { + item->setSelected(true); + menu = item->menu; + } + emit gotFocus(menu); +} + +void ConfigList::contextMenuEvent(QContextMenuEvent *e) +{ + if (e->y() <= header()->geometry().bottom()) { + if (!headerPopup) { + QAction *action; + + headerPopup = new QMenu(this); + action = new QAction(_("Show Name"), this); + action->setCheckable(true); + connect(action, SIGNAL(toggled(bool)), + parent(), SLOT(setShowName(bool))); + connect(parent(), SIGNAL(showNameChanged(bool)), + action, SLOT(setOn(bool))); + action->setChecked(showName); + headerPopup->addAction(action); + action = new QAction(_("Show Range"), this); + action->setCheckable(true); + connect(action, SIGNAL(toggled(bool)), + parent(), SLOT(setShowRange(bool))); + connect(parent(), SIGNAL(showRangeChanged(bool)), + action, SLOT(setOn(bool))); + action->setChecked(showRange); + headerPopup->addAction(action); + action = new QAction(_("Show Data"), this); + action->setCheckable(true); + connect(action, SIGNAL(toggled(bool)), + parent(), SLOT(setShowData(bool))); + connect(parent(), SIGNAL(showDataChanged(bool)), + action, SLOT(setOn(bool))); + action->setChecked(showData); + headerPopup->addAction(action); + } + headerPopup->exec(e->globalPos()); + e->accept(); + } else + e->ignore(); +} + +ConfigView*ConfigView::viewList; +QAction *ConfigView::showNormalAction; +QAction *ConfigView::showAllAction; +QAction *ConfigView::showPromptAction; + +ConfigView::ConfigView(QWidget* parent, const char *name) + : Parent(parent) +{ + setObjectName(name); + QVBoxLayout *verticalLayout = new QVBoxLayout(this); + verticalLayout->setContentsMargins(0, 0, 0, 0); + + list = new ConfigList(this); + verticalLayout->addWidget(list); + lineEdit = new ConfigLineEdit(this); + lineEdit->hide(); + verticalLayout->addWidget(lineEdit); + + this->nextView = viewList; + viewList = this; +} + +ConfigView::~ConfigView(void) +{ + ConfigView** vp; + + for (vp = &viewList; *vp; vp = &(*vp)->nextView) { + if (*vp == this) { + *vp = nextView; + break; + } + } +} + +void ConfigView::setOptionMode(QAction *act) +{ + if (act == showNormalAction) + list->optMode = normalOpt; + else if (act == showAllAction) + list->optMode = allOpt; + else + list->optMode = promptOpt; + + list->updateListAll(); +} + +void ConfigView::setShowName(bool b) +{ + if (list->showName != b) { + list->showName = b; + list->reinit(); + emit showNameChanged(b); + } +} + +void ConfigView::setShowRange(bool b) +{ + if (list->showRange != b) { + list->showRange = b; + list->reinit(); + emit showRangeChanged(b); + } +} + +void ConfigView::setShowData(bool b) +{ + if (list->showData != b) { + list->showData = b; + list->reinit(); + emit showDataChanged(b); + } +} + +void ConfigList::setAllOpen(bool open) +{ + QTreeWidgetItemIterator it(this); + + while (*it) { + (*it)->setExpanded(open); + + ++it; + } +} + +void ConfigView::updateList(ConfigItem* item) +{ + ConfigView* v; + + for (v = viewList; v; v = v->nextView) + v->list->updateList(item); +} + +void ConfigView::updateListAll(void) +{ + ConfigView* v; + + for (v = viewList; v; v = v->nextView) + v->list->updateListAll(); +} + +ConfigInfoView::ConfigInfoView(QWidget* parent, const char *name) + : Parent(parent), sym(0), _menu(0) +{ + setObjectName(name); + + + if (!objectName().isEmpty()) { + configSettings->beginGroup(objectName()); + setShowDebug(configSettings->value("/showDebug", false).toBool()); + configSettings->endGroup(); + connect(configApp, SIGNAL(aboutToQuit()), SLOT(saveSettings())); + } +} + +void ConfigInfoView::saveSettings(void) +{ + if (!objectName().isEmpty()) { + configSettings->beginGroup(objectName()); + configSettings->setValue("/showDebug", showDebug()); + configSettings->endGroup(); + } +} + +void ConfigInfoView::setShowDebug(bool b) +{ + if (_showDebug != b) { + _showDebug = b; + if (_menu) + menuInfo(); + else if (sym) + symbolInfo(); + emit showDebugChanged(b); + } +} + +void ConfigInfoView::setInfo(struct menu *m) +{ + if (_menu == m) + return; + _menu = m; + sym = NULL; + if (!_menu) + clear(); + else + menuInfo(); +} + +void ConfigInfoView::symbolInfo(void) +{ + QString str; + + str += "Symbol: "; + str += print_filter(sym->name); + str += "

    value: "; + str += print_filter(sym_get_string_value(sym)); + str += "
    visibility: "; + str += sym->visible == yes ? "y" : sym->visible == mod ? "m" : "n"; + str += "
    "; + str += debug_info(sym); + + setText(str); +} + +void ConfigInfoView::menuInfo(void) +{ + struct symbol* sym; + QString head, debug, help; + + sym = _menu->sym; + if (sym) { + if (_menu->prompt) { + head += ""; + head += print_filter(_(_menu->prompt->text)); + head += ""; + if (sym->name) { + head += " ("; + if (showDebug()) + head += QString().sprintf("
    ", sym); + head += print_filter(sym->name); + if (showDebug()) + head += ""; + head += ")"; + } + } else if (sym->name) { + head += ""; + if (showDebug()) + head += QString().sprintf("", sym); + head += print_filter(sym->name); + if (showDebug()) + head += ""; + head += ""; + } + head += "

    "; + + if (showDebug()) + debug = debug_info(sym); + + struct gstr help_gstr = str_new(); + menu_get_ext_help(_menu, &help_gstr); + help = print_filter(str_get(&help_gstr)); + str_free(&help_gstr); + } else if (_menu->prompt) { + head += ""; + head += print_filter(_(_menu->prompt->text)); + head += "

    "; + if (showDebug()) { + if (_menu->prompt->visible.expr) { + debug += "  dep: "; + expr_print(_menu->prompt->visible.expr, expr_print_help, &debug, E_NONE); + debug += "

    "; + } + } + } + if (showDebug()) + debug += QString().sprintf("defined at %s:%d

    ", _menu->file->name, _menu->lineno); + + setText(head + debug + help); +} + +QString ConfigInfoView::debug_info(struct symbol *sym) +{ + QString debug; + + debug += "type: "; + debug += print_filter(sym_type_name(sym->type)); + if (sym_is_choice(sym)) + debug += " (choice)"; + debug += "
    "; + if (sym->rev_dep.expr) { + debug += "reverse dep: "; + expr_print(sym->rev_dep.expr, expr_print_help, &debug, E_NONE); + debug += "
    "; + } + for (struct property *prop = sym->prop; prop; prop = prop->next) { + switch (prop->type) { + case P_PROMPT: + case P_MENU: + debug += QString().sprintf("prompt: ", prop->menu); + debug += print_filter(_(prop->text)); + debug += "
    "; + break; + case P_DEFAULT: + case P_SELECT: + case P_RANGE: + case P_ENV: + debug += prop_get_type_name(prop->type); + debug += ": "; + expr_print(prop->expr, expr_print_help, &debug, E_NONE); + debug += "
    "; + break; + case P_CHOICE: + if (sym_is_choice(sym)) { + debug += "choice: "; + expr_print(prop->expr, expr_print_help, &debug, E_NONE); + debug += "
    "; + } + break; + default: + debug += "unknown property: "; + debug += prop_get_type_name(prop->type); + debug += "
    "; + } + if (prop->visible.expr) { + debug += "    dep: "; + expr_print(prop->visible.expr, expr_print_help, &debug, E_NONE); + debug += "
    "; + } + } + debug += "
    "; + + return debug; +} + +QString ConfigInfoView::print_filter(const QString &str) +{ + QRegExp re("[<>&\"\\n]"); + QString res = str; + for (int i = 0; (i = res.indexOf(re, i)) >= 0;) { + switch (res[i].toLatin1()) { + case '<': + res.replace(i, 1, "<"); + i += 4; + break; + case '>': + res.replace(i, 1, ">"); + i += 4; + break; + case '&': + res.replace(i, 1, "&"); + i += 5; + break; + case '"': + res.replace(i, 1, """); + i += 6; + break; + case '\n': + res.replace(i, 1, "
    "); + i += 4; + break; + } + } + return res; +} + +void ConfigInfoView::expr_print_help(void *data, struct symbol *sym, const char *str) +{ + QString* text = reinterpret_cast(data); + QString str2 = print_filter(str); + + if (sym && sym->name && !(sym->flags & SYMBOL_CONST)) { + *text += QString().sprintf("", sym); + *text += str2; + *text += ""; + } else + *text += str2; +} + +QMenu* ConfigInfoView::createStandardContextMenu(const QPoint & pos) +{ + QMenu* popup = Parent::createStandardContextMenu(pos); + QAction* action = new QAction(_("Show Debug Info"), popup); + action->setCheckable(true); + connect(action, SIGNAL(toggled(bool)), SLOT(setShowDebug(bool))); + connect(this, SIGNAL(showDebugChanged(bool)), action, SLOT(setOn(bool))); + action->setChecked(showDebug()); + popup->addSeparator(); + popup->addAction(action); + return popup; +} + +void ConfigInfoView::contextMenuEvent(QContextMenuEvent *e) +{ + Parent::contextMenuEvent(e); +} + +ConfigSearchWindow::ConfigSearchWindow(ConfigMainWindow* parent, const char *name) + : Parent(parent), result(NULL) +{ + setObjectName(name); + setWindowTitle("Search Config"); + + QVBoxLayout* layout1 = new QVBoxLayout(this); + layout1->setContentsMargins(11, 11, 11, 11); + layout1->setSpacing(6); + QHBoxLayout* layout2 = new QHBoxLayout(0); + layout2->setContentsMargins(0, 0, 0, 0); + layout2->setSpacing(6); + layout2->addWidget(new QLabel(_("Find:"), this)); + editField = new QLineEdit(this); + connect(editField, SIGNAL(returnPressed()), SLOT(search())); + layout2->addWidget(editField); + searchButton = new QPushButton(_("Search"), this); + searchButton->setAutoDefault(false); + connect(searchButton, SIGNAL(clicked()), SLOT(search())); + layout2->addWidget(searchButton); + layout1->addLayout(layout2); + + split = new QSplitter(this); + split->setOrientation(Qt::Vertical); + list = new ConfigView(split, name); + list->list->mode = listMode; + info = new ConfigInfoView(split, name); + connect(list->list, SIGNAL(menuChanged(struct menu *)), + info, SLOT(setInfo(struct menu *))); + connect(list->list, SIGNAL(menuChanged(struct menu *)), + parent, SLOT(setMenuLink(struct menu *))); + + layout1->addWidget(split); + + if (name) { + QVariant x, y; + int width, height; + bool ok; + + configSettings->beginGroup(name); + width = configSettings->value("/window width", parent->width() / 2).toInt(); + height = configSettings->value("/window height", parent->height() / 2).toInt(); + resize(width, height); + x = configSettings->value("/window x"); + y = configSettings->value("/window y"); + if ((x.isValid())&&(y.isValid())) + move(x.toInt(), y.toInt()); + QList sizes = configSettings->readSizes("/split", &ok); + if (ok) + split->setSizes(sizes); + configSettings->endGroup(); + connect(configApp, SIGNAL(aboutToQuit()), SLOT(saveSettings())); + } +} + +void ConfigSearchWindow::saveSettings(void) +{ + if (!objectName().isEmpty()) { + configSettings->beginGroup(objectName()); + configSettings->setValue("/window x", pos().x()); + configSettings->setValue("/window y", pos().y()); + configSettings->setValue("/window width", size().width()); + configSettings->setValue("/window height", size().height()); + configSettings->writeSizes("/split", split->sizes()); + configSettings->endGroup(); + } +} + +void ConfigSearchWindow::search(void) +{ + struct symbol **p; + struct property *prop; + ConfigItem *lastItem = NULL; + + free(result); + list->list->clear(); + info->clear(); + + result = sym_re_search(editField->text().toLatin1()); + if (!result) + return; + for (p = result; *p; p++) { + for_all_prompts((*p), prop) + lastItem = new ConfigItem(list->list, lastItem, prop->menu, + menu_is_visible(prop->menu)); + } +} + +/* + * Construct the complete config widget + */ +ConfigMainWindow::ConfigMainWindow(void) + : searchWindow(0) +{ + QMenuBar* menu; + bool ok = true; + QVariant x, y; + int width, height; + char title[256]; + + QDesktopWidget *d = configApp->desktop(); + snprintf(title, sizeof(title), "%s%s", + rootmenu.prompt->text, + "" + ); + setWindowTitle(title); + + width = configSettings->value("/window width", d->width() - 64).toInt(); + height = configSettings->value("/window height", d->height() - 64).toInt(); + resize(width, height); + x = configSettings->value("/window x"); + y = configSettings->value("/window y"); + if ((x.isValid())&&(y.isValid())) + move(x.toInt(), y.toInt()); + + split1 = new QSplitter(this); + split1->setOrientation(Qt::Horizontal); + setCentralWidget(split1); + + menuView = new ConfigView(split1, "menu"); + menuList = menuView->list; + + split2 = new QSplitter(split1); + split2->setOrientation(Qt::Vertical); + + // create config tree + configView = new ConfigView(split2, "config"); + configList = configView->list; + + helpText = new ConfigInfoView(split2, "help"); + + setTabOrder(configList, helpText); + configList->setFocus(); + + menu = menuBar(); + toolBar = new QToolBar("Tools", this); + addToolBar(toolBar); + + backAction = new QAction(QPixmap(xpm_back), _("Back"), this); + connect(backAction, SIGNAL(triggered(bool)), SLOT(goBack())); + backAction->setEnabled(false); + QAction *quitAction = new QAction(_("&Quit"), this); + quitAction->setShortcut(Qt::CTRL + Qt::Key_Q); + connect(quitAction, SIGNAL(triggered(bool)), SLOT(close())); + QAction *loadAction = new QAction(QPixmap(xpm_load), _("&Load"), this); + loadAction->setShortcut(Qt::CTRL + Qt::Key_L); + connect(loadAction, SIGNAL(triggered(bool)), SLOT(loadConfig())); + saveAction = new QAction(QPixmap(xpm_save), _("&Save"), this); + saveAction->setShortcut(Qt::CTRL + Qt::Key_S); + connect(saveAction, SIGNAL(triggered(bool)), SLOT(saveConfig())); + conf_set_changed_callback(conf_changed); + // Set saveAction's initial state + conf_changed(); + QAction *saveAsAction = new QAction(_("Save &As..."), this); + connect(saveAsAction, SIGNAL(triggered(bool)), SLOT(saveConfigAs())); + QAction *searchAction = new QAction(_("&Find"), this); + searchAction->setShortcut(Qt::CTRL + Qt::Key_F); + connect(searchAction, SIGNAL(triggered(bool)), SLOT(searchConfig())); + singleViewAction = new QAction(QPixmap(xpm_single_view), _("Single View"), this); + singleViewAction->setCheckable(true); + connect(singleViewAction, SIGNAL(triggered(bool)), SLOT(showSingleView())); + splitViewAction = new QAction(QPixmap(xpm_split_view), _("Split View"), this); + splitViewAction->setCheckable(true); + connect(splitViewAction, SIGNAL(triggered(bool)), SLOT(showSplitView())); + fullViewAction = new QAction(QPixmap(xpm_tree_view), _("Full View"), this); + fullViewAction->setCheckable(true); + connect(fullViewAction, SIGNAL(triggered(bool)), SLOT(showFullView())); + + QAction *showNameAction = new QAction(_("Show Name"), this); + showNameAction->setCheckable(true); + connect(showNameAction, SIGNAL(toggled(bool)), configView, SLOT(setShowName(bool))); + showNameAction->setChecked(configView->showName()); + QAction *showRangeAction = new QAction(_("Show Range"), this); + showRangeAction->setCheckable(true); + connect(showRangeAction, SIGNAL(toggled(bool)), configView, SLOT(setShowRange(bool))); + QAction *showDataAction = new QAction(_("Show Data"), this); + showDataAction->setCheckable(true); + connect(showDataAction, SIGNAL(toggled(bool)), configView, SLOT(setShowData(bool))); + + QActionGroup *optGroup = new QActionGroup(this); + optGroup->setExclusive(true); + connect(optGroup, SIGNAL(triggered(QAction*)), configView, + SLOT(setOptionMode(QAction *))); + connect(optGroup, SIGNAL(triggered(QAction *)), menuView, + SLOT(setOptionMode(QAction *))); + + configView->showNormalAction = new QAction(_("Show Normal Options"), optGroup); + configView->showAllAction = new QAction(_("Show All Options"), optGroup); + configView->showPromptAction = new QAction(_("Show Prompt Options"), optGroup); + configView->showNormalAction->setCheckable(true); + configView->showAllAction->setCheckable(true); + configView->showPromptAction->setCheckable(true); + + QAction *showDebugAction = new QAction( _("Show Debug Info"), this); + showDebugAction->setCheckable(true); + connect(showDebugAction, SIGNAL(toggled(bool)), helpText, SLOT(setShowDebug(bool))); + showDebugAction->setChecked(helpText->showDebug()); + + QAction *showIntroAction = new QAction( _("Introduction"), this); + connect(showIntroAction, SIGNAL(triggered(bool)), SLOT(showIntro())); + QAction *showAboutAction = new QAction( _("About"), this); + connect(showAboutAction, SIGNAL(triggered(bool)), SLOT(showAbout())); + + // init tool bar + toolBar->addAction(backAction); + toolBar->addSeparator(); + toolBar->addAction(loadAction); + toolBar->addAction(saveAction); + toolBar->addSeparator(); + toolBar->addAction(singleViewAction); + toolBar->addAction(splitViewAction); + toolBar->addAction(fullViewAction); + + // create config menu + QMenu* config = menu->addMenu(_("&File")); + config->addAction(loadAction); + config->addAction(saveAction); + config->addAction(saveAsAction); + config->addSeparator(); + config->addAction(quitAction); + + // create edit menu + QMenu* editMenu = menu->addMenu(_("&Edit")); + editMenu->addAction(searchAction); + + // create options menu + QMenu* optionMenu = menu->addMenu(_("&Option")); + optionMenu->addAction(showNameAction); + optionMenu->addAction(showRangeAction); + optionMenu->addAction(showDataAction); + optionMenu->addSeparator(); + optionMenu->addActions(optGroup->actions()); + optionMenu->addSeparator(); + optionMenu->addAction(showDebugAction); + + // create help menu + menu->addSeparator(); + QMenu* helpMenu = menu->addMenu(_("&Help")); + helpMenu->addAction(showIntroAction); + helpMenu->addAction(showAboutAction); + + connect(configList, SIGNAL(menuChanged(struct menu *)), + helpText, SLOT(setInfo(struct menu *))); + connect(configList, SIGNAL(menuSelected(struct menu *)), + SLOT(changeMenu(struct menu *))); + connect(configList, SIGNAL(parentSelected()), + SLOT(goBack())); + connect(menuList, SIGNAL(menuChanged(struct menu *)), + helpText, SLOT(setInfo(struct menu *))); + connect(menuList, SIGNAL(menuSelected(struct menu *)), + SLOT(changeMenu(struct menu *))); + + connect(configList, SIGNAL(gotFocus(struct menu *)), + helpText, SLOT(setInfo(struct menu *))); + connect(menuList, SIGNAL(gotFocus(struct menu *)), + helpText, SLOT(setInfo(struct menu *))); + connect(menuList, SIGNAL(gotFocus(struct menu *)), + SLOT(listFocusChanged(void))); + connect(helpText, SIGNAL(menuSelected(struct menu *)), + SLOT(setMenuLink(struct menu *))); + + QString listMode = configSettings->value("/listMode", "symbol").toString(); + if (listMode == "single") + showSingleView(); + else if (listMode == "full") + showFullView(); + else /*if (listMode == "split")*/ + showSplitView(); + + // UI setup done, restore splitter positions + QList sizes = configSettings->readSizes("/split1", &ok); + if (ok) + split1->setSizes(sizes); + + sizes = configSettings->readSizes("/split2", &ok); + if (ok) + split2->setSizes(sizes); +} + +void ConfigMainWindow::loadConfig(void) +{ + QString s = QFileDialog::getOpenFileName(this, "", conf_get_configname()); + if (s.isNull()) + return; + if (conf_read(QFile::encodeName(s))) + QMessageBox::information(this, "qconf", _("Unable to load configuration!")); + ConfigView::updateListAll(); +} + +bool ConfigMainWindow::saveConfig(void) +{ + if (conf_write(NULL)) { + QMessageBox::information(this, "qconf", _("Unable to save configuration!")); + return false; + } + return true; +} + +void ConfigMainWindow::saveConfigAs(void) +{ + QString s = QFileDialog::getSaveFileName(this, "", conf_get_configname()); + if (s.isNull()) + return; + saveConfig(); +} + +void ConfigMainWindow::searchConfig(void) +{ + if (!searchWindow) + searchWindow = new ConfigSearchWindow(this, "search"); + searchWindow->show(); +} + +void ConfigMainWindow::changeMenu(struct menu *menu) +{ + configList->setRootMenu(menu); + if (configList->rootEntry->parent == &rootmenu) + backAction->setEnabled(false); + else + backAction->setEnabled(true); +} + +void ConfigMainWindow::setMenuLink(struct menu *menu) +{ + struct menu *parent; + ConfigList* list = NULL; + ConfigItem* item; + + if (configList->menuSkip(menu)) + return; + + switch (configList->mode) { + case singleMode: + list = configList; + parent = menu_get_parent_menu(menu); + if (!parent) + return; + list->setRootMenu(parent); + break; + case symbolMode: + if (menu->flags & MENU_ROOT) { + configList->setRootMenu(menu); + configList->clearSelection(); + list = menuList; + } else { + list = configList; + parent = menu_get_parent_menu(menu->parent); + if (!parent) + return; + item = menuList->findConfigItem(parent); + if (item) { + item->setSelected(true); + menuList->scrollToItem(item); + } + list->setRootMenu(parent); + } + break; + case fullMode: + list = configList; + break; + default: + break; + } + + if (list) { + item = list->findConfigItem(menu); + if (item) { + item->setSelected(true); + list->scrollToItem(item); + list->setFocus(); + } + } +} + +void ConfigMainWindow::listFocusChanged(void) +{ + if (menuList->mode == menuMode) + configList->clearSelection(); +} + +void ConfigMainWindow::goBack(void) +{ + ConfigItem* item, *oldSelection; + + configList->setParentMenu(); + if (configList->rootEntry == &rootmenu) + backAction->setEnabled(false); + + if (menuList->selectedItems().count() == 0) + return; + + item = (ConfigItem*)menuList->selectedItems().first(); + oldSelection = item; + while (item) { + if (item->menu == configList->rootEntry) { + oldSelection->setSelected(false); + item->setSelected(true); + break; + } + item = (ConfigItem*)item->parent(); + } +} + +void ConfigMainWindow::showSingleView(void) +{ + singleViewAction->setEnabled(false); + singleViewAction->setChecked(true); + splitViewAction->setEnabled(true); + splitViewAction->setChecked(false); + fullViewAction->setEnabled(true); + fullViewAction->setChecked(false); + + menuView->hide(); + menuList->setRootMenu(0); + configList->mode = singleMode; + if (configList->rootEntry == &rootmenu) + configList->updateListAll(); + else + configList->setRootMenu(&rootmenu); + configList->setFocus(); +} + +void ConfigMainWindow::showSplitView(void) +{ + singleViewAction->setEnabled(true); + singleViewAction->setChecked(false); + splitViewAction->setEnabled(false); + splitViewAction->setChecked(true); + fullViewAction->setEnabled(true); + fullViewAction->setChecked(false); + + configList->mode = symbolMode; + if (configList->rootEntry == &rootmenu) + configList->updateListAll(); + else + configList->setRootMenu(&rootmenu); + configList->setAllOpen(true); + configApp->processEvents(); + menuList->mode = menuMode; + menuList->setRootMenu(&rootmenu); + menuList->setAllOpen(true); + menuView->show(); + menuList->setFocus(); +} + +void ConfigMainWindow::showFullView(void) +{ + singleViewAction->setEnabled(true); + singleViewAction->setChecked(false); + splitViewAction->setEnabled(true); + splitViewAction->setChecked(false); + fullViewAction->setEnabled(false); + fullViewAction->setChecked(true); + + menuView->hide(); + menuList->setRootMenu(0); + configList->mode = fullMode; + if (configList->rootEntry == &rootmenu) + configList->updateListAll(); + else + configList->setRootMenu(&rootmenu); + configList->setFocus(); +} + +/* + * ask for saving configuration before quitting + * TODO ask only when something changed + */ +void ConfigMainWindow::closeEvent(QCloseEvent* e) +{ + if (!conf_get_changed()) { + e->accept(); + return; + } + QMessageBox mb("qconf", _("Save configuration?"), QMessageBox::Warning, + QMessageBox::Yes | QMessageBox::Default, QMessageBox::No, QMessageBox::Cancel | QMessageBox::Escape); + mb.setButtonText(QMessageBox::Yes, _("&Save Changes")); + mb.setButtonText(QMessageBox::No, _("&Discard Changes")); + mb.setButtonText(QMessageBox::Cancel, _("Cancel Exit")); + switch (mb.exec()) { + case QMessageBox::Yes: + if (saveConfig()) + e->accept(); + else + e->ignore(); + break; + case QMessageBox::No: + e->accept(); + break; + case QMessageBox::Cancel: + e->ignore(); + break; + } +} + +void ConfigMainWindow::showIntro(void) +{ + static const QString str = _("Welcome to the qconf graphical configuration tool.\n\n" + "For each option, a blank box indicates the feature is disabled, a check\n" + "indicates it is enabled, and a dot indicates that it is to be compiled\n" + "as a module. Clicking on the box will cycle through the three states.\n\n" + "If you do not see an option (e.g., a device driver) that you believe\n" + "should be present, try turning on Show All Options under the Options menu.\n" + "Although there is no cross reference yet to help you figure out what other\n" + "options must be enabled to support the option you are interested in, you can\n" + "still view the help of a grayed-out option.\n\n" + "Toggling Show Debug Info under the Options menu will show the dependencies,\n" + "which you can then match by examining other options.\n\n"); + + QMessageBox::information(this, "qconf", str); +} + +void ConfigMainWindow::showAbout(void) +{ + static const QString str = _("qconf is Copyright (C) 2002 Roman Zippel .\n" + "Copyright (C) 2015 Boris Barbulovski .\n\n" + "Bug reports and feature request can also be entered at http://bugzilla.kernel.org/\n"); + + QMessageBox::information(this, "qconf", str); +} + +void ConfigMainWindow::saveSettings(void) +{ + configSettings->setValue("/window x", pos().x()); + configSettings->setValue("/window y", pos().y()); + configSettings->setValue("/window width", size().width()); + configSettings->setValue("/window height", size().height()); + + QString entry; + switch(configList->mode) { + case singleMode : + entry = "single"; + break; + + case symbolMode : + entry = "split"; + break; + + case fullMode : + entry = "full"; + break; + + default: + break; + } + configSettings->setValue("/listMode", entry); + + configSettings->writeSizes("/split1", split1->sizes()); + configSettings->writeSizes("/split2", split2->sizes()); +} + +void ConfigMainWindow::conf_changed(void) +{ + if (saveAction) + saveAction->setEnabled(conf_get_changed()); +} + +void fixup_rootmenu(struct menu *menu) +{ + struct menu *child; + static int menu_cnt = 0; + + menu->flags |= MENU_ROOT; + for (child = menu->list; child; child = child->next) { + if (child->prompt && child->prompt->type == P_MENU) { + menu_cnt++; + fixup_rootmenu(child); + menu_cnt--; + } else if (!menu_cnt) + fixup_rootmenu(child); + } +} + +static const char *progname; + +static void usage(void) +{ + printf(_("%s [-s] \n").toLatin1().constData(), progname); + exit(0); +} + +int main(int ac, char** av) +{ + ConfigMainWindow* v; + const char *name; + + bindtextdomain(PACKAGE, LOCALEDIR); + textdomain(PACKAGE); + + progname = av[0]; + configApp = new QApplication(ac, av); + if (ac > 1 && av[1][0] == '-') { + switch (av[1][1]) { + case 's': + conf_set_message_callback(NULL); + break; + case 'h': + case '?': + usage(); + } + name = av[2]; + } else + name = av[1]; + if (!name) + usage(); + + conf_parse(name); + fixup_rootmenu(&rootmenu); + conf_read(NULL); + //zconfdump(stdout); + + configSettings = new ConfigSettings(); + configSettings->beginGroup("/kconfig/qconf"); + v = new ConfigMainWindow(); + + //zconfdump(stdout); + configApp->connect(configApp, SIGNAL(lastWindowClosed()), SLOT(quit())); + configApp->connect(configApp, SIGNAL(aboutToQuit()), v, SLOT(saveSettings())); + v->show(); + configApp->exec(); + + configSettings->endGroup(); + delete configSettings; + delete v; + delete configApp; + + return 0; +} diff --git a/support/kconfig/qconf.h b/support/kconfig/qconf.h new file mode 100644 index 00000000..a40036d1 --- /dev/null +++ b/support/kconfig/qconf.h @@ -0,0 +1,330 @@ +/* + * Copyright (C) 2002 Roman Zippel + * Released under the terms of the GNU GPL v2.0. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "expr.h" + +class ConfigView; +class ConfigList; +class ConfigItem; +class ConfigLineEdit; +class ConfigMainWindow; + +class ConfigSettings : public QSettings { +public: + ConfigSettings(); + QList readSizes(const QString& key, bool *ok); + bool writeSizes(const QString& key, const QList& value); +}; + +enum colIdx { + promptColIdx, nameColIdx, noColIdx, modColIdx, yesColIdx, dataColIdx, colNr +}; +enum listMode { + singleMode, menuMode, symbolMode, fullMode, listMode +}; +enum optionMode { + normalOpt = 0, allOpt, promptOpt +}; + +class ConfigList : public QTreeWidget { + Q_OBJECT + typedef class QTreeWidget Parent; +public: + ConfigList(ConfigView* p, const char *name = 0); + void reinit(void); + ConfigView* parent(void) const + { + return (ConfigView*)Parent::parent(); + } + ConfigItem* findConfigItem(struct menu *); + +protected: + void keyPressEvent(QKeyEvent *e); + void mousePressEvent(QMouseEvent *e); + void mouseReleaseEvent(QMouseEvent *e); + void mouseMoveEvent(QMouseEvent *e); + void mouseDoubleClickEvent(QMouseEvent *e); + void focusInEvent(QFocusEvent *e); + void contextMenuEvent(QContextMenuEvent *e); + +public slots: + void setRootMenu(struct menu *menu); + + void updateList(ConfigItem *item); + void setValue(ConfigItem* item, tristate val); + void changeValue(ConfigItem* item); + void updateSelection(void); + void saveSettings(void); +signals: + void menuChanged(struct menu *menu); + void menuSelected(struct menu *menu); + void parentSelected(void); + void gotFocus(struct menu *); + +public: + void updateListAll(void) + { + updateAll = true; + updateList(NULL); + updateAll = false; + } + ConfigList* listView() + { + return this; + } + ConfigItem* firstChild() const + { + return (ConfigItem *)children().first(); + } + void addColumn(colIdx idx) + { + showColumn(idx); + } + void removeColumn(colIdx idx) + { + hideColumn(idx); + } + void setAllOpen(bool open); + void setParentMenu(void); + + bool menuSkip(struct menu *); + + void updateMenuList(ConfigItem *parent, struct menu*); + void updateMenuList(ConfigList *parent, struct menu*); + + bool updateAll; + + QPixmap symbolYesPix, symbolModPix, symbolNoPix; + QPixmap choiceYesPix, choiceNoPix; + QPixmap menuPix, menuInvPix, menuBackPix, voidPix; + + bool showName, showRange, showData; + enum listMode mode; + enum optionMode optMode; + struct menu *rootEntry; + QPalette disabledColorGroup; + QPalette inactivedColorGroup; + QMenu* headerPopup; +}; + +class ConfigItem : public QTreeWidgetItem { + typedef class QTreeWidgetItem Parent; +public: + ConfigItem(ConfigList *parent, ConfigItem *after, struct menu *m, bool v) + : Parent(parent, after), nextItem(0), menu(m), visible(v), goParent(false) + { + init(); + } + ConfigItem(ConfigItem *parent, ConfigItem *after, struct menu *m, bool v) + : Parent(parent, after), nextItem(0), menu(m), visible(v), goParent(false) + { + init(); + } + ConfigItem(ConfigList *parent, ConfigItem *after, bool v) + : Parent(parent, after), nextItem(0), menu(0), visible(v), goParent(true) + { + init(); + } + ~ConfigItem(void); + void init(void); + void okRename(int col); + void updateMenu(void); + void testUpdateMenu(bool v); + ConfigList* listView() const + { + return (ConfigList*)Parent::treeWidget(); + } + ConfigItem* firstChild() const + { + return (ConfigItem *)Parent::child(0); + } + ConfigItem* nextSibling() + { + ConfigItem *ret = NULL; + ConfigItem *_parent = (ConfigItem *)parent(); + + if(_parent) { + ret = (ConfigItem *)_parent->child(_parent->indexOfChild(this)+1); + } else { + QTreeWidget *_treeWidget = treeWidget(); + ret = (ConfigItem *)_treeWidget->topLevelItem(_treeWidget->indexOfTopLevelItem(this)+1); + } + + return ret; + } + void setText(colIdx idx, const QString& text) + { + Parent::setText(idx, text); + } + QString text(colIdx idx) const + { + return Parent::text(idx); + } + void setPixmap(colIdx idx, const QIcon &icon) + { + Parent::setIcon(idx, icon); + } + const QIcon pixmap(colIdx idx) const + { + return icon(idx); + } + // TODO: Implement paintCell + + ConfigItem* nextItem; + struct menu *menu; + bool visible; + bool goParent; +}; + +class ConfigLineEdit : public QLineEdit { + Q_OBJECT + typedef class QLineEdit Parent; +public: + ConfigLineEdit(ConfigView* parent); + ConfigView* parent(void) const + { + return (ConfigView*)Parent::parent(); + } + void show(ConfigItem *i); + void keyPressEvent(QKeyEvent *e); + +public: + ConfigItem *item; +}; + +class ConfigView : public QWidget { + Q_OBJECT + typedef class QWidget Parent; +public: + ConfigView(QWidget* parent, const char *name = 0); + ~ConfigView(void); + static void updateList(ConfigItem* item); + static void updateListAll(void); + + bool showName(void) const { return list->showName; } + bool showRange(void) const { return list->showRange; } + bool showData(void) const { return list->showData; } +public slots: + void setShowName(bool); + void setShowRange(bool); + void setShowData(bool); + void setOptionMode(QAction *); +signals: + void showNameChanged(bool); + void showRangeChanged(bool); + void showDataChanged(bool); +public: + ConfigList* list; + ConfigLineEdit* lineEdit; + + static ConfigView* viewList; + ConfigView* nextView; + + static QAction *showNormalAction; + static QAction *showAllAction; + static QAction *showPromptAction; +}; + +class ConfigInfoView : public QTextBrowser { + Q_OBJECT + typedef class QTextBrowser Parent; +public: + ConfigInfoView(QWidget* parent, const char *name = 0); + bool showDebug(void) const { return _showDebug; } + +public slots: + void setInfo(struct menu *menu); + void saveSettings(void); + void setShowDebug(bool); + +signals: + void showDebugChanged(bool); + void menuSelected(struct menu *); + +protected: + void symbolInfo(void); + void menuInfo(void); + QString debug_info(struct symbol *sym); + static QString print_filter(const QString &str); + static void expr_print_help(void *data, struct symbol *sym, const char *str); + QMenu *createStandardContextMenu(const QPoint & pos); + void contextMenuEvent(QContextMenuEvent *e); + + struct symbol *sym; + struct menu *_menu; + bool _showDebug; +}; + +class ConfigSearchWindow : public QDialog { + Q_OBJECT + typedef class QDialog Parent; +public: + ConfigSearchWindow(ConfigMainWindow* parent, const char *name = 0); + +public slots: + void saveSettings(void); + void search(void); + +protected: + QLineEdit* editField; + QPushButton* searchButton; + QSplitter* split; + ConfigView* list; + ConfigInfoView* info; + + struct symbol **result; +}; + +class ConfigMainWindow : public QMainWindow { + Q_OBJECT + + static QAction *saveAction; + static void conf_changed(void); +public: + ConfigMainWindow(void); +public slots: + void changeMenu(struct menu *); + void setMenuLink(struct menu *); + void listFocusChanged(void); + void goBack(void); + void loadConfig(void); + bool saveConfig(void); + void saveConfigAs(void); + void searchConfig(void); + void showSingleView(void); + void showSplitView(void); + void showFullView(void); + void showIntro(void); + void showAbout(void); + void saveSettings(void); + +protected: + void closeEvent(QCloseEvent *e); + + ConfigSearchWindow *searchWindow; + ConfigView *menuView; + ConfigList *menuList; + ConfigView *configView; + ConfigList *configList; + ConfigInfoView *helpText; + QToolBar *toolBar; + QAction *backAction; + QAction *singleViewAction; + QAction *splitViewAction; + QAction *fullViewAction; + QSplitter *split1; + QSplitter *split2; +}; diff --git a/support/kconfig/streamline_config.pl b/support/kconfig/streamline_config.pl new file mode 100755 index 00000000..a2e83ab1 --- /dev/null +++ b/support/kconfig/streamline_config.pl @@ -0,0 +1,682 @@ +#!/usr/bin/env perl +# +# Copyright 2005-2009 - Steven Rostedt +# Licensed under the terms of the GNU GPL License version 2 +# +# It's simple enough to figure out how this works. +# If not, then you can ask me at stripconfig@goodmis.org +# +# What it does? +# +# If you have installed a Linux kernel from a distribution +# that turns on way too many modules than you need, and +# you only want the modules you use, then this program +# is perfect for you. +# +# It gives you the ability to turn off all the modules that are +# not loaded on your system. +# +# Howto: +# +# 1. Boot up the kernel that you want to stream line the config on. +# 2. Change directory to the directory holding the source of the +# kernel that you just booted. +# 3. Copy the configuraton file to this directory as .config +# 4. Have all your devices that you need modules for connected and +# operational (make sure that their corresponding modules are loaded) +# 5. Run this script redirecting the output to some other file +# like config_strip. +# 6. Back up your old config (if you want too). +# 7. copy the config_strip file to .config +# 8. Run "make oldconfig" +# +# Now your kernel is ready to be built with only the modules that +# are loaded. +# +# Here's what I did with my Debian distribution. +# +# cd /usr/src/linux-2.6.10 +# cp /boot/config-2.6.10-1-686-smp .config +# ~/bin/streamline_config > config_strip +# mv .config config_sav +# mv config_strip .config +# make oldconfig +# +use warnings; +use strict; +use Getopt::Long; + +# set the environment variable LOCALMODCONFIG_DEBUG to get +# debug output. +my $debugprint = 0; +$debugprint = 1 if (defined($ENV{LOCALMODCONFIG_DEBUG})); + +sub dprint { + return if (!$debugprint); + print STDERR @_; +} + +my $config = ".config"; + +my $uname = `uname -r`; +chomp $uname; + +my @searchconfigs = ( + { + "file" => ".config", + "exec" => "cat", + }, + { + "file" => "/proc/config.gz", + "exec" => "zcat", + }, + { + "file" => "/boot/config-$uname", + "exec" => "cat", + }, + { + "file" => "/boot/vmlinuz-$uname", + "exec" => "scripts/extract-ikconfig", + "test" => "scripts/extract-ikconfig", + }, + { + "file" => "vmlinux", + "exec" => "scripts/extract-ikconfig", + "test" => "scripts/extract-ikconfig", + }, + { + "file" => "/lib/modules/$uname/kernel/kernel/configs.ko", + "exec" => "scripts/extract-ikconfig", + "test" => "scripts/extract-ikconfig", + }, + { + "file" => "kernel/configs.ko", + "exec" => "scripts/extract-ikconfig", + "test" => "scripts/extract-ikconfig", + }, + { + "file" => "kernel/configs.o", + "exec" => "scripts/extract-ikconfig", + "test" => "scripts/extract-ikconfig", + }, +); + +sub read_config { + foreach my $conf (@searchconfigs) { + my $file = $conf->{"file"}; + + next if ( ! -f "$file"); + + if (defined($conf->{"test"})) { + `$conf->{"test"} $conf->{"file"} 2>/dev/null`; + next if ($?); + } + + my $exec = $conf->{"exec"}; + + print STDERR "using config: '$file'\n"; + + open(my $infile, '-|', "$exec $file") || die "Failed to run $exec $file"; + my @x = <$infile>; + close $infile; + return @x; + } + die "No config file found"; +} + +my @config_file = read_config; + +# Parse options +my $localmodconfig = 0; +my $localyesconfig = 0; + +GetOptions("localmodconfig" => \$localmodconfig, + "localyesconfig" => \$localyesconfig); + +# Get the build source and top level Kconfig file (passed in) +my $ksource = ($ARGV[0] ? $ARGV[0] : '.'); +my $kconfig = $ARGV[1]; +my $lsmod_file = $ENV{'LSMOD'}; + +my @makefiles = `find $ksource -name Makefile -or -name Kbuild 2>/dev/null`; +chomp @makefiles; + +my %depends; +my %selects; +my %prompts; +my %objects; +my $var; +my $iflevel = 0; +my @ifdeps; + +# prevent recursion +my %read_kconfigs; + +sub read_kconfig { + my ($kconfig) = @_; + + my $state = "NONE"; + my $config; + + my $cont = 0; + my $line; + + my $source = "$ksource/$kconfig"; + my $last_source = ""; + + # Check for any environment variables used + while ($source =~ /\$(\w+)/ && $last_source ne $source) { + my $env = $1; + $last_source = $source; + $source =~ s/\$$env/$ENV{$env}/; + } + + open(my $kinfile, '<', $source) || die "Can't open $kconfig"; + while (<$kinfile>) { + chomp; + + # Make sure that lines ending with \ continue + if ($cont) { + $_ = $line . " " . $_; + } + + if (s/\\$//) { + $cont = 1; + $line = $_; + next; + } + + $cont = 0; + + # collect any Kconfig sources + if (/^source\s+"?([^"]+)/) { + my $kconfig = $1; + # prevent reading twice. + if (!defined($read_kconfigs{$kconfig})) { + $read_kconfigs{$kconfig} = 1; + read_kconfig($kconfig); + } + next; + } + + # configs found + if (/^\s*(menu)?config\s+(\S+)\s*$/) { + $state = "NEW"; + $config = $2; + + # Add depends for 'if' nesting + for (my $i = 0; $i < $iflevel; $i++) { + if ($i) { + $depends{$config} .= " " . $ifdeps[$i]; + } else { + $depends{$config} = $ifdeps[$i]; + } + $state = "DEP"; + } + + # collect the depends for the config + } elsif ($state eq "NEW" && /^\s*depends\s+on\s+(.*)$/) { + $state = "DEP"; + $depends{$config} = $1; + } elsif ($state eq "DEP" && /^\s*depends\s+on\s+(.*)$/) { + $depends{$config} .= " " . $1; + } elsif ($state eq "DEP" && /^\s*def(_(bool|tristate)|ault)\s+(\S.*)$/) { + my $dep = $3; + if ($dep !~ /^\s*(y|m|n)\s*$/) { + $dep =~ s/.*\sif\s+//; + $depends{$config} .= " " . $dep; + dprint "Added default depends $dep to $config\n"; + } + + # Get the configs that select this config + } elsif ($state ne "NONE" && /^\s*select\s+(\S+)/) { + my $conf = $1; + if (defined($selects{$conf})) { + $selects{$conf} .= " " . $config; + } else { + $selects{$conf} = $config; + } + + # configs without prompts must be selected + } elsif ($state ne "NONE" && /^\s*(tristate\s+\S|prompt\b)/) { + # note if the config has a prompt + $prompts{$config} = 1; + + # Check for if statements + } elsif (/^if\s+(.*\S)\s*$/) { + my $deps = $1; + # remove beginning and ending non text + $deps =~ s/^[^a-zA-Z0-9_]*//; + $deps =~ s/[^a-zA-Z0-9_]*$//; + + my @deps = split /[^a-zA-Z0-9_]+/, $deps; + + $ifdeps[$iflevel++] = join ':', @deps; + + } elsif (/^endif/) { + + $iflevel-- if ($iflevel); + + # stop on "help" and keywords that end a menu entry + } elsif (/^\s*(---)?help(---)?\s*$/ || /^(comment|choice|menu)\b/) { + $state = "NONE"; + } + } + close($kinfile); +} + +if ($kconfig) { + read_kconfig($kconfig); +} + +# Makefiles can use variables to define their dependencies +sub convert_vars { + my ($line, %vars) = @_; + + my $process = ""; + + while ($line =~ s/^(.*?)(\$\((.*?)\))//) { + my $start = $1; + my $variable = $2; + my $var = $3; + + if (defined($vars{$var})) { + $process .= $start . $vars{$var}; + } else { + $process .= $start . $variable; + } + } + + $process .= $line; + + return $process; +} + +# Read all Makefiles to map the configs to the objects +foreach my $makefile (@makefiles) { + + my $line = ""; + my %make_vars; + + open(my $infile, '<', $makefile) || die "Can't open $makefile"; + while (<$infile>) { + # if this line ends with a backslash, continue + chomp; + if (/^(.*)\\$/) { + $line .= $1; + next; + } + + $line .= $_; + $_ = $line; + $line = ""; + + my $objs; + + # Convert variables in a line (could define configs) + $_ = convert_vars($_, %make_vars); + + # collect objects after obj-$(CONFIG_FOO_BAR) + if (/obj-\$\((CONFIG_[^\)]*)\)\s*[+:]?=\s*(.*)/) { + $var = $1; + $objs = $2; + + # check if variables are set + } elsif (/^\s*(\S+)\s*[:]?=\s*(.*\S)/) { + $make_vars{$1} = $2; + } + if (defined($objs)) { + foreach my $obj (split /\s+/,$objs) { + $obj =~ s/-/_/g; + if ($obj =~ /(.*)\.o$/) { + # Objects may be enabled by more than one config. + # Store configs in an array. + my @arr; + + if (defined($objects{$1})) { + @arr = @{$objects{$1}}; + } + + $arr[$#arr+1] = $var; + + # The objects have a hash mapping to a reference + # of an array of configs. + $objects{$1} = \@arr; + } + } + } + } + close($infile); +} + +my %modules; +my $linfile; + +if (defined($lsmod_file)) { + if ( ! -f $lsmod_file) { + if ( -f $ENV{'objtree'}."/".$lsmod_file) { + $lsmod_file = $ENV{'objtree'}."/".$lsmod_file; + } else { + die "$lsmod_file not found"; + } + } + + my $otype = ( -x $lsmod_file) ? '-|' : '<'; + open($linfile, $otype, $lsmod_file); + +} else { + + # see what modules are loaded on this system + my $lsmod; + + foreach my $dir ( ("/sbin", "/bin", "/usr/sbin", "/usr/bin") ) { + if ( -x "$dir/lsmod" ) { + $lsmod = "$dir/lsmod"; + last; + } +} + if (!defined($lsmod)) { + # try just the path + $lsmod = "lsmod"; + } + + open($linfile, '-|', $lsmod) || die "Can not call lsmod with $lsmod"; +} + +while (<$linfile>) { + next if (/^Module/); # Skip the first line. + if (/^(\S+)/) { + $modules{$1} = 1; + } +} +close ($linfile); + +# add to the configs hash all configs that are needed to enable +# a loaded module. This is a direct obj-${CONFIG_FOO} += bar.o +# where we know we need bar.o so we add FOO to the list. +my %configs; +foreach my $module (keys(%modules)) { + if (defined($objects{$module})) { + my @arr = @{$objects{$module}}; + foreach my $conf (@arr) { + $configs{$conf} = $module; + dprint "$conf added by direct ($module)\n"; + if ($debugprint) { + my $c=$conf; + $c =~ s/^CONFIG_//; + if (defined($depends{$c})) { + dprint " deps = $depends{$c}\n"; + } else { + dprint " no deps\n"; + } + } + } + } else { + # Most likely, someone has a custom (binary?) module loaded. + print STDERR "$module config not found!!\n"; + } +} + +# Read the current config, and see what is enabled. We want to +# ignore configs that we would not enable anyway. + +my %orig_configs; +my $valid = "A-Za-z_0-9"; + +foreach my $line (@config_file) { + $_ = $line; + + if (/(CONFIG_[$valid]*)=(m|y)/) { + $orig_configs{$1} = $2; + } +} + +my $repeat = 1; + +my $depconfig; + +# +# Note, we do not care about operands (like: &&, ||, !) we want to add any +# config that is in the depend list of another config. This script does +# not enable configs that are not already enabled. If we come across a +# config A that depends on !B, we can still add B to the list of depends +# to keep on. If A was on in the original config, B would not have been +# and B would not be turned on by this script. +# +sub parse_config_depends +{ + my ($p) = @_; + + while ($p =~ /[$valid]/) { + + if ($p =~ /^[^$valid]*([$valid]+)/) { + my $conf = "CONFIG_" . $1; + + $p =~ s/^[^$valid]*[$valid]+//; + + # We only need to process if the depend config is a module + if (!defined($orig_configs{$conf}) || $orig_configs{$conf} eq "y") { + next; + } + + if (!defined($configs{$conf})) { + # We must make sure that this config has its + # dependencies met. + $repeat = 1; # do again + dprint "$conf selected by depend $depconfig\n"; + $configs{$conf} = 1; + } + } else { + die "this should never happen"; + } + } +} + +# Select is treated a bit differently than depends. We call this +# when a config has no prompt and requires another config to be +# selected. We use to just select all configs that selected this +# config, but found that that can balloon into enabling hundreds +# of configs that we do not care about. +# +# The idea is we look at all the configs that select it. If one +# is already in our list of configs to enable, then there's nothing +# else to do. If there isn't, we pick the first config that was +# enabled in the orignal config and use that. +sub parse_config_selects +{ + my ($config, $p) = @_; + + my $next_config; + + while ($p =~ /[$valid]/) { + + if ($p =~ /^[^$valid]*([$valid]+)/) { + my $conf = "CONFIG_" . $1; + + $p =~ s/^[^$valid]*[$valid]+//; + + # Make sure that this config exists in the current .config file + if (!defined($orig_configs{$conf})) { + dprint "$conf not set for $config select\n"; + next; + } + + # Check if something other than a module selects this config + if (defined($orig_configs{$conf}) && $orig_configs{$conf} ne "m") { + dprint "$conf (non module) selects config, we are good\n"; + # we are good with this + return; + } + if (defined($configs{$conf})) { + dprint "$conf selects $config so we are good\n"; + # A set config selects this config, we are good + return; + } + # Set this config to be selected + if (!defined($next_config)) { + $next_config = $conf; + } + } else { + die "this should never happen"; + } + } + + # If no possible config selected this, then something happened. + if (!defined($next_config)) { + print STDERR "WARNING: $config is required, but nothing in the\n"; + print STDERR " current config selects it.\n"; + return; + } + + # If we are here, then we found no config that is set and + # selects this config. Repeat. + $repeat = 1; + # Make this config need to be selected + $configs{$next_config} = 1; + dprint "$next_config selected by select $config\n"; +} + +my %process_selects; + +# loop through all configs, select their dependencies. +sub loop_depend { + $repeat = 1; + + while ($repeat) { + $repeat = 0; + + forloop: + foreach my $config (keys %configs) { + + # If this config is not a module, we do not need to process it + if (defined($orig_configs{$config}) && $orig_configs{$config} ne "m") { + next forloop; + } + + $config =~ s/^CONFIG_//; + $depconfig = $config; + + if (defined($depends{$config})) { + # This config has dependencies. Make sure they are also included + parse_config_depends $depends{$config}; + } + + # If the config has no prompt, then we need to check if a config + # that is enabled selected it. Or if we need to enable one. + if (!defined($prompts{$config}) && defined($selects{$config})) { + $process_selects{$config} = 1; + } + } + } +} + +sub loop_select { + + foreach my $config (keys %process_selects) { + $config =~ s/^CONFIG_//; + + dprint "Process select $config\n"; + + # config has no prompt and must be selected. + parse_config_selects $config, $selects{$config}; + } +} + +while ($repeat) { + # Get the first set of configs and their dependencies. + loop_depend; + + $repeat = 0; + + # Now we need to see if we have to check selects; + loop_select; +} + +my %setconfigs; + +# Finally, read the .config file and turn off any module enabled that +# we could not find a reason to keep enabled. +foreach my $line (@config_file) { + $_ = $line; + + if (/CONFIG_IKCONFIG/) { + if (/# CONFIG_IKCONFIG is not set/) { + # enable IKCONFIG at least as a module + print "CONFIG_IKCONFIG=m\n"; + # don't ask about PROC + print "# CONFIG_IKCONFIG_PROC is not set\n"; + } else { + print; + } + next; + } + + if (/CONFIG_MODULE_SIG_KEY="(.+)"/) { + my $orig_cert = $1; + my $default_cert = "certs/signing_key.pem"; + + # Check that the logic in this script still matches the one in Kconfig + if (!defined($depends{"MODULE_SIG_KEY"}) || + $depends{"MODULE_SIG_KEY"} !~ /"\Q$default_cert\E"/) { + print STDERR "WARNING: MODULE_SIG_KEY assertion failure, ", + "update needed to ", __FILE__, " line ", __LINE__, "\n"; + print; + } elsif ($orig_cert ne $default_cert && ! -f $orig_cert) { + print STDERR "Module signature verification enabled but ", + "module signing key \"$orig_cert\" not found. Resetting ", + "signing key to default value.\n"; + print "CONFIG_MODULE_SIG_KEY=\"$default_cert\"\n"; + } else { + print; + } + next; + } + + if (/CONFIG_SYSTEM_TRUSTED_KEYS="(.+)"/) { + my $orig_keys = $1; + + if (! -f $orig_keys) { + print STDERR "System keyring enabled but keys \"$orig_keys\" ", + "not found. Resetting keys to default value.\n"; + print "CONFIG_SYSTEM_TRUSTED_KEYS=\"\"\n"; + } else { + print; + } + next; + } + + if (/^(CONFIG.*)=(m|y)/) { + if (defined($configs{$1})) { + if ($localyesconfig) { + $setconfigs{$1} = 'y'; + print "$1=y\n"; + next; + } else { + $setconfigs{$1} = $2; + } + } elsif ($2 eq "m") { + print "# $1 is not set\n"; + next; + } + } + print; +} + +# Integrity check, make sure all modules that we want enabled do +# indeed have their configs set. +loop: +foreach my $module (keys(%modules)) { + if (defined($objects{$module})) { + my @arr = @{$objects{$module}}; + foreach my $conf (@arr) { + if (defined($setconfigs{$conf})) { + next loop; + } + } + print STDERR "module $module did not have configs"; + foreach my $conf (@arr) { + print STDERR " " , $conf; + } + print STDERR "\n"; + } +} diff --git a/support/kconfig/symbol.c b/support/kconfig/symbol.c new file mode 100644 index 00000000..f0b2e3b3 --- /dev/null +++ b/support/kconfig/symbol.c @@ -0,0 +1,1432 @@ +/* + * Copyright (C) 2002 Roman Zippel + * Released under the terms of the GNU GPL v2.0. + */ + +#include +#include +#include +#include +#include + +#include "lkc.h" + +struct symbol symbol_yes = { + .name = "y", + .curr = { "y", yes }, + .flags = SYMBOL_CONST|SYMBOL_VALID, +}, symbol_mod = { + .name = "m", + .curr = { "m", mod }, + .flags = SYMBOL_CONST|SYMBOL_VALID, +}, symbol_no = { + .name = "n", + .curr = { "n", no }, + .flags = SYMBOL_CONST|SYMBOL_VALID, +}, symbol_empty = { + .name = "", + .curr = { "", no }, + .flags = SYMBOL_VALID, +}; + +struct symbol *sym_defconfig_list; +struct symbol *modules_sym; +tristate modules_val; + +struct expr *sym_env_list; + +static void sym_add_default(struct symbol *sym, const char *def) +{ + struct property *prop = prop_alloc(P_DEFAULT, sym); + + prop->expr = expr_alloc_symbol(sym_lookup(def, SYMBOL_CONST)); +} + +void sym_init(void) +{ + struct symbol *sym; + struct utsname uts; + static bool inited = false; + + if (inited) + return; + inited = true; + + uname(&uts); + + sym = sym_lookup("UNAME_RELEASE", 0); + sym->type = S_STRING; + sym->flags |= SYMBOL_AUTO; + sym_add_default(sym, uts.release); +} + +enum symbol_type sym_get_type(struct symbol *sym) +{ + enum symbol_type type = sym->type; + + if (type == S_TRISTATE) { + if (sym_is_choice_value(sym) && sym->visible == yes) + type = S_BOOLEAN; + else if (modules_val == no) + type = S_BOOLEAN; + } + return type; +} + +const char *sym_type_name(enum symbol_type type) +{ + switch (type) { + case S_BOOLEAN: + return "bool"; + case S_TRISTATE: + return "tristate"; + case S_INT: + return "integer"; + case S_HEX: + return "hex"; + case S_STRING: + return "string"; + case S_UNKNOWN: + return "unknown"; + case S_OTHER: + break; + } + return "???"; +} + +struct property *sym_get_choice_prop(struct symbol *sym) +{ + struct property *prop; + + for_all_choices(sym, prop) + return prop; + return NULL; +} + +struct property *sym_get_env_prop(struct symbol *sym) +{ + struct property *prop; + + for_all_properties(sym, prop, P_ENV) + return prop; + return NULL; +} + +static struct property *sym_get_default_prop(struct symbol *sym) +{ + struct property *prop; + + for_all_defaults(sym, prop) { + prop->visible.tri = expr_calc_value(prop->visible.expr); + if (prop->visible.tri != no) + return prop; + } + return NULL; +} + +static struct property *sym_get_range_prop(struct symbol *sym) +{ + struct property *prop; + + for_all_properties(sym, prop, P_RANGE) { + prop->visible.tri = expr_calc_value(prop->visible.expr); + if (prop->visible.tri != no) + return prop; + } + return NULL; +} + +static long long sym_get_range_val(struct symbol *sym, int base) +{ + sym_calc_value(sym); + switch (sym->type) { + case S_INT: + base = 10; + break; + case S_HEX: + base = 16; + break; + default: + break; + } + return strtoll(sym->curr.val, NULL, base); +} + +static void sym_validate_range(struct symbol *sym) +{ + struct property *prop; + int base; + long long val, val2; + char str[64]; + + switch (sym->type) { + case S_INT: + base = 10; + break; + case S_HEX: + base = 16; + break; + default: + return; + } + prop = sym_get_range_prop(sym); + if (!prop) + return; + val = strtoll(sym->curr.val, NULL, base); + val2 = sym_get_range_val(prop->expr->left.sym, base); + if (val >= val2) { + val2 = sym_get_range_val(prop->expr->right.sym, base); + if (val <= val2) + return; + } + if (sym->type == S_INT) + sprintf(str, "%lld", val2); + else + sprintf(str, "0x%llx", val2); + sym->curr.val = xstrdup(str); +} + +static void sym_set_changed(struct symbol *sym) +{ + struct property *prop; + + sym->flags |= SYMBOL_CHANGED; + for (prop = sym->prop; prop; prop = prop->next) { + if (prop->menu) + prop->menu->flags |= MENU_CHANGED; + } +} + +static void sym_set_all_changed(void) +{ + struct symbol *sym; + int i; + + for_all_symbols(i, sym) + sym_set_changed(sym); +} + +static void sym_calc_visibility(struct symbol *sym) +{ + struct property *prop; + struct symbol *choice_sym = NULL; + tristate tri; + + /* any prompt visible? */ + tri = no; + + if (sym_is_choice_value(sym)) + choice_sym = prop_get_symbol(sym_get_choice_prop(sym)); + + for_all_prompts(sym, prop) { + prop->visible.tri = expr_calc_value(prop->visible.expr); + /* + * Tristate choice_values with visibility 'mod' are + * not visible if the corresponding choice's value is + * 'yes'. + */ + if (choice_sym && sym->type == S_TRISTATE && + prop->visible.tri == mod && choice_sym->curr.tri == yes) + prop->visible.tri = no; + + tri = EXPR_OR(tri, prop->visible.tri); + } + if (tri == mod && (sym->type != S_TRISTATE || modules_val == no)) + tri = yes; + if (sym->visible != tri) { + sym->visible = tri; + sym_set_changed(sym); + } + if (sym_is_choice_value(sym)) + return; + /* defaulting to "yes" if no explicit "depends on" are given */ + tri = yes; + if (sym->dir_dep.expr) + tri = expr_calc_value(sym->dir_dep.expr); + if (tri == mod && sym_get_type(sym) == S_BOOLEAN) + tri = yes; + if (sym->dir_dep.tri != tri) { + sym->dir_dep.tri = tri; + sym_set_changed(sym); + } + tri = no; + if (sym->rev_dep.expr) + tri = expr_calc_value(sym->rev_dep.expr); + if (tri == mod && sym_get_type(sym) == S_BOOLEAN) + tri = yes; + if (sym->rev_dep.tri != tri) { + sym->rev_dep.tri = tri; + sym_set_changed(sym); + } + tri = no; + if (sym->implied.expr && sym->dir_dep.tri != no) + tri = expr_calc_value(sym->implied.expr); + if (tri == mod && sym_get_type(sym) == S_BOOLEAN) + tri = yes; + if (sym->implied.tri != tri) { + sym->implied.tri = tri; + sym_set_changed(sym); + } +} + +/* + * Find the default symbol for a choice. + * First try the default values for the choice symbol + * Next locate the first visible choice value + * Return NULL if none was found + */ +struct symbol *sym_choice_default(struct symbol *sym) +{ + struct symbol *def_sym; + struct property *prop; + struct expr *e; + + /* any of the defaults visible? */ + for_all_defaults(sym, prop) { + prop->visible.tri = expr_calc_value(prop->visible.expr); + if (prop->visible.tri == no) + continue; + def_sym = prop_get_symbol(prop); + if (def_sym->visible != no) + return def_sym; + } + + /* just get the first visible value */ + prop = sym_get_choice_prop(sym); + expr_list_for_each_sym(prop->expr, e, def_sym) + if (def_sym->visible != no) + return def_sym; + + /* failed to locate any defaults */ + return NULL; +} + +static struct symbol *sym_calc_choice(struct symbol *sym) +{ + struct symbol *def_sym; + struct property *prop; + struct expr *e; + int flags; + + /* first calculate all choice values' visibilities */ + flags = sym->flags; + prop = sym_get_choice_prop(sym); + expr_list_for_each_sym(prop->expr, e, def_sym) { + sym_calc_visibility(def_sym); + if (def_sym->visible != no) + flags &= def_sym->flags; + } + + sym->flags &= flags | ~SYMBOL_DEF_USER; + + /* is the user choice visible? */ + def_sym = sym->def[S_DEF_USER].val; + if (def_sym && def_sym->visible != no) + return def_sym; + + def_sym = sym_choice_default(sym); + + if (def_sym == NULL) + /* no choice? reset tristate value */ + sym->curr.tri = no; + + return def_sym; +} + +static void sym_warn_unmet_dep(struct symbol *sym) +{ + struct gstr gs = str_new(); + + str_printf(&gs, + "\nWARNING: unmet direct dependencies detected for %s\n", + sym->name); + str_printf(&gs, + " Depends on [%c]: ", + sym->dir_dep.tri == mod ? 'm' : 'n'); + expr_gstr_print(sym->dir_dep.expr, &gs); + str_printf(&gs, "\n"); + + expr_gstr_print_revdep(sym->rev_dep.expr, &gs, yes, + " Selected by [y]:\n"); + expr_gstr_print_revdep(sym->rev_dep.expr, &gs, mod, + " Selected by [m]:\n"); + + fputs(str_get(&gs), stderr); +} + +void sym_calc_value(struct symbol *sym) +{ + struct symbol_value newval, oldval; + struct property *prop; + struct expr *e; + + if (!sym) + return; + + if (sym->flags & SYMBOL_VALID) + return; + + if (sym_is_choice_value(sym) && + sym->flags & SYMBOL_NEED_SET_CHOICE_VALUES) { + sym->flags &= ~SYMBOL_NEED_SET_CHOICE_VALUES; + prop = sym_get_choice_prop(sym); + sym_calc_value(prop_get_symbol(prop)); + } + + sym->flags |= SYMBOL_VALID; + + oldval = sym->curr; + + switch (sym->type) { + case S_INT: + case S_HEX: + case S_STRING: + newval = symbol_empty.curr; + break; + case S_BOOLEAN: + case S_TRISTATE: + newval = symbol_no.curr; + break; + default: + sym->curr.val = sym->name; + sym->curr.tri = no; + return; + } + sym->flags &= ~SYMBOL_WRITE; + + sym_calc_visibility(sym); + + if (sym->visible != no) + sym->flags |= SYMBOL_WRITE; + + /* set default if recursively called */ + sym->curr = newval; + + switch (sym_get_type(sym)) { + case S_BOOLEAN: + case S_TRISTATE: + if (sym_is_choice_value(sym) && sym->visible == yes) { + prop = sym_get_choice_prop(sym); + newval.tri = (prop_get_symbol(prop)->curr.val == sym) ? yes : no; + } else { + if (sym->visible != no) { + /* if the symbol is visible use the user value + * if available, otherwise try the default value + */ + if (sym_has_value(sym)) { + newval.tri = EXPR_AND(sym->def[S_DEF_USER].tri, + sym->visible); + goto calc_newval; + } + } + if (sym->rev_dep.tri != no) + sym->flags |= SYMBOL_WRITE; + if (!sym_is_choice(sym)) { + prop = sym_get_default_prop(sym); + if (prop) { + newval.tri = EXPR_AND(expr_calc_value(prop->expr), + prop->visible.tri); + if (newval.tri != no) + sym->flags |= SYMBOL_WRITE; + } + if (sym->implied.tri != no) { + sym->flags |= SYMBOL_WRITE; + newval.tri = EXPR_OR(newval.tri, sym->implied.tri); + } + } + calc_newval: + if (sym->dir_dep.tri < sym->rev_dep.tri) + sym_warn_unmet_dep(sym); + newval.tri = EXPR_OR(newval.tri, sym->rev_dep.tri); + } + if (newval.tri == mod && + (sym_get_type(sym) == S_BOOLEAN || sym->implied.tri == yes)) + newval.tri = yes; + break; + case S_STRING: + case S_HEX: + case S_INT: + if (sym->visible != no && sym_has_value(sym)) { + newval.val = sym->def[S_DEF_USER].val; + break; + } + prop = sym_get_default_prop(sym); + if (prop) { + struct symbol *ds = prop_get_symbol(prop); + if (ds) { + sym->flags |= SYMBOL_WRITE; + sym_calc_value(ds); + newval.val = ds->curr.val; + } + } + break; + default: + ; + } + + sym->curr = newval; + if (sym_is_choice(sym) && newval.tri == yes) + sym->curr.val = sym_calc_choice(sym); + sym_validate_range(sym); + + if (memcmp(&oldval, &sym->curr, sizeof(oldval))) { + sym_set_changed(sym); + if (modules_sym == sym) { + sym_set_all_changed(); + modules_val = modules_sym->curr.tri; + } + } + + if (sym_is_choice(sym)) { + struct symbol *choice_sym; + + prop = sym_get_choice_prop(sym); + expr_list_for_each_sym(prop->expr, e, choice_sym) { + if ((sym->flags & SYMBOL_WRITE) && + choice_sym->visible != no) + choice_sym->flags |= SYMBOL_WRITE; + if (sym->flags & SYMBOL_CHANGED) + sym_set_changed(choice_sym); + } + } + + if (sym->flags & SYMBOL_AUTO) + sym->flags &= ~SYMBOL_WRITE; + + if (sym->flags & SYMBOL_NEED_SET_CHOICE_VALUES) + set_all_choice_values(sym); +} + +void sym_clear_all_valid(void) +{ + struct symbol *sym; + int i; + + for_all_symbols(i, sym) + sym->flags &= ~SYMBOL_VALID; + sym_add_change_count(1); + sym_calc_value(modules_sym); +} + +bool sym_tristate_within_range(struct symbol *sym, tristate val) +{ + int type = sym_get_type(sym); + + if (sym->visible == no) + return false; + + if (type != S_BOOLEAN && type != S_TRISTATE) + return false; + + if (type == S_BOOLEAN && val == mod) + return false; + if (sym->visible <= sym->rev_dep.tri) + return false; + if (sym->implied.tri == yes && val == mod) + return false; + if (sym_is_choice_value(sym) && sym->visible == yes) + return val == yes; + return val >= sym->rev_dep.tri && val <= sym->visible; +} + +bool sym_set_tristate_value(struct symbol *sym, tristate val) +{ + tristate oldval = sym_get_tristate_value(sym); + + if (oldval != val && !sym_tristate_within_range(sym, val)) + return false; + + if (!(sym->flags & SYMBOL_DEF_USER)) { + sym->flags |= SYMBOL_DEF_USER; + sym_set_changed(sym); + } + /* + * setting a choice value also resets the new flag of the choice + * symbol and all other choice values. + */ + if (sym_is_choice_value(sym) && val == yes) { + struct symbol *cs = prop_get_symbol(sym_get_choice_prop(sym)); + struct property *prop; + struct expr *e; + + cs->def[S_DEF_USER].val = sym; + cs->flags |= SYMBOL_DEF_USER; + prop = sym_get_choice_prop(cs); + for (e = prop->expr; e; e = e->left.expr) { + if (e->right.sym->visible != no) + e->right.sym->flags |= SYMBOL_DEF_USER; + } + } + + sym->def[S_DEF_USER].tri = val; + if (oldval != val) + sym_clear_all_valid(); + + return true; +} + +tristate sym_toggle_tristate_value(struct symbol *sym) +{ + tristate oldval, newval; + + oldval = newval = sym_get_tristate_value(sym); + do { + switch (newval) { + case no: + newval = mod; + break; + case mod: + newval = yes; + break; + case yes: + newval = no; + break; + } + if (sym_set_tristate_value(sym, newval)) + break; + } while (oldval != newval); + return newval; +} + +bool sym_string_valid(struct symbol *sym, const char *str) +{ + signed char ch; + + switch (sym->type) { + case S_STRING: + return true; + case S_INT: + ch = *str++; + if (ch == '-') + ch = *str++; + if (!isdigit(ch)) + return false; + if (ch == '0' && *str != 0) + return false; + while ((ch = *str++)) { + if (!isdigit(ch)) + return false; + } + return true; + case S_HEX: + if (str[0] == '0' && (str[1] == 'x' || str[1] == 'X')) + str += 2; + ch = *str++; + do { + if (!isxdigit(ch)) + return false; + } while ((ch = *str++)); + return true; + case S_BOOLEAN: + case S_TRISTATE: + switch (str[0]) { + case 'y': case 'Y': + case 'm': case 'M': + case 'n': case 'N': + return true; + } + return false; + default: + return false; + } +} + +bool sym_string_within_range(struct symbol *sym, const char *str) +{ + struct property *prop; + long long val; + + switch (sym->type) { + case S_STRING: + return sym_string_valid(sym, str); + case S_INT: + if (!sym_string_valid(sym, str)) + return false; + prop = sym_get_range_prop(sym); + if (!prop) + return true; + val = strtoll(str, NULL, 10); + return val >= sym_get_range_val(prop->expr->left.sym, 10) && + val <= sym_get_range_val(prop->expr->right.sym, 10); + case S_HEX: + if (!sym_string_valid(sym, str)) + return false; + prop = sym_get_range_prop(sym); + if (!prop) + return true; + val = strtoll(str, NULL, 16); + return val >= sym_get_range_val(prop->expr->left.sym, 16) && + val <= sym_get_range_val(prop->expr->right.sym, 16); + case S_BOOLEAN: + case S_TRISTATE: + switch (str[0]) { + case 'y': case 'Y': + return sym_tristate_within_range(sym, yes); + case 'm': case 'M': + return sym_tristate_within_range(sym, mod); + case 'n': case 'N': + return sym_tristate_within_range(sym, no); + } + return false; + default: + return false; + } +} + +bool sym_set_string_value(struct symbol *sym, const char *newval) +{ + const char *oldval; + char *val; + int size; + + switch (sym->type) { + case S_BOOLEAN: + case S_TRISTATE: + switch (newval[0]) { + case 'y': case 'Y': + return sym_set_tristate_value(sym, yes); + case 'm': case 'M': + return sym_set_tristate_value(sym, mod); + case 'n': case 'N': + return sym_set_tristate_value(sym, no); + } + return false; + default: + ; + } + + if (!sym_string_within_range(sym, newval)) + return false; + + if (!(sym->flags & SYMBOL_DEF_USER)) { + sym->flags |= SYMBOL_DEF_USER; + sym_set_changed(sym); + } + + oldval = sym->def[S_DEF_USER].val; + size = strlen(newval) + 1; + if (sym->type == S_HEX && (newval[0] != '0' || (newval[1] != 'x' && newval[1] != 'X'))) { + size += 2; + sym->def[S_DEF_USER].val = val = xmalloc(size); + *val++ = '0'; + *val++ = 'x'; + } else if (!oldval || strcmp(oldval, newval)) + sym->def[S_DEF_USER].val = val = xmalloc(size); + else + return true; + + strcpy(val, newval); + free((void *)oldval); + sym_clear_all_valid(); + + return true; +} + +/* + * Find the default value associated to a symbol. + * For tristate symbol handle the modules=n case + * in which case "m" becomes "y". + * If the symbol does not have any default then fallback + * to the fixed default values. + */ +const char *sym_get_string_default(struct symbol *sym) +{ + struct property *prop; + struct symbol *ds; + const char *str; + tristate val; + + sym_calc_visibility(sym); + sym_calc_value(modules_sym); + val = symbol_no.curr.tri; + str = symbol_empty.curr.val; + + /* If symbol has a default value look it up */ + prop = sym_get_default_prop(sym); + if (prop != NULL) { + switch (sym->type) { + case S_BOOLEAN: + case S_TRISTATE: + /* The visibility may limit the value from yes => mod */ + val = EXPR_AND(expr_calc_value(prop->expr), prop->visible.tri); + break; + default: + /* + * The following fails to handle the situation + * where a default value is further limited by + * the valid range. + */ + ds = prop_get_symbol(prop); + if (ds != NULL) { + sym_calc_value(ds); + str = (const char *)ds->curr.val; + } + } + } + + /* Handle select statements */ + val = EXPR_OR(val, sym->rev_dep.tri); + + /* transpose mod to yes if modules are not enabled */ + if (val == mod) + if (!sym_is_choice_value(sym) && modules_sym->curr.tri == no) + val = yes; + + /* transpose mod to yes if type is bool */ + if (sym->type == S_BOOLEAN && val == mod) + val = yes; + + /* adjust the default value if this symbol is implied by another */ + if (val < sym->implied.tri) + val = sym->implied.tri; + + switch (sym->type) { + case S_BOOLEAN: + case S_TRISTATE: + switch (val) { + case no: return "n"; + case mod: return "m"; + case yes: return "y"; + } + case S_INT: + case S_HEX: + return str; + case S_STRING: + return str; + case S_OTHER: + case S_UNKNOWN: + break; + } + return ""; +} + +const char *sym_get_string_value(struct symbol *sym) +{ + tristate val; + + switch (sym->type) { + case S_BOOLEAN: + case S_TRISTATE: + val = sym_get_tristate_value(sym); + switch (val) { + case no: + return "n"; + case mod: + sym_calc_value(modules_sym); + return (modules_sym->curr.tri == no) ? "n" : "m"; + case yes: + return "y"; + } + break; + default: + ; + } + return (const char *)sym->curr.val; +} + +bool sym_is_changable(struct symbol *sym) +{ + return sym->visible > sym->rev_dep.tri; +} + +static unsigned strhash(const char *s) +{ + /* fnv32 hash */ + unsigned hash = 2166136261U; + for (; *s; s++) + hash = (hash ^ *s) * 0x01000193; + return hash; +} + +struct symbol *sym_lookup(const char *name, int flags) +{ + struct symbol *symbol; + char *new_name; + int hash; + + if (name) { + if (name[0] && !name[1]) { + switch (name[0]) { + case 'y': return &symbol_yes; + case 'm': return &symbol_mod; + case 'n': return &symbol_no; + } + } + hash = strhash(name) % SYMBOL_HASHSIZE; + + for (symbol = symbol_hash[hash]; symbol; symbol = symbol->next) { + if (symbol->name && + !strcmp(symbol->name, name) && + (flags ? symbol->flags & flags + : !(symbol->flags & (SYMBOL_CONST|SYMBOL_CHOICE)))) + return symbol; + } + new_name = xstrdup(name); + } else { + new_name = NULL; + hash = 0; + } + + symbol = xmalloc(sizeof(*symbol)); + memset(symbol, 0, sizeof(*symbol)); + symbol->name = new_name; + symbol->type = S_UNKNOWN; + symbol->flags |= flags; + + symbol->next = symbol_hash[hash]; + symbol_hash[hash] = symbol; + + return symbol; +} + +struct symbol *sym_find(const char *name) +{ + struct symbol *symbol = NULL; + int hash = 0; + + if (!name) + return NULL; + + if (name[0] && !name[1]) { + switch (name[0]) { + case 'y': return &symbol_yes; + case 'm': return &symbol_mod; + case 'n': return &symbol_no; + } + } + hash = strhash(name) % SYMBOL_HASHSIZE; + + for (symbol = symbol_hash[hash]; symbol; symbol = symbol->next) { + if (symbol->name && + !strcmp(symbol->name, name) && + !(symbol->flags & SYMBOL_CONST)) + break; + } + + return symbol; +} + +/* + * Expand symbol's names embedded in the string given in argument. Symbols' + * name to be expanded shall be prefixed by a '$'. Unknown symbol expands to + * the empty string. + */ +char *sym_expand_string_value(const char *in) +{ + const char *src; + char *res; + size_t reslen; + + /* + * Note: 'in' might come from a token that's about to be + * freed, so make sure to always allocate a new string + */ + reslen = strlen(in) + 1; + res = xmalloc(reslen); + res[0] = '\0'; + + while ((src = strchr(in, '$'))) { + char *p, name[SYMBOL_MAXLENGTH]; + const char *symval = ""; + struct symbol *sym; + size_t newlen; + + strncat(res, in, src - in); + src++; + + p = name; + while (isalnum(*src) || *src == '_') + *p++ = *src++; + *p = '\0'; + + sym = sym_find(name); + if (sym != NULL) { + sym_calc_value(sym); + symval = sym_get_string_value(sym); + } + + newlen = strlen(res) + strlen(symval) + strlen(src) + 1; + if (newlen > reslen) { + reslen = newlen; + res = xrealloc(res, reslen); + } + + strcat(res, symval); + in = src; + } + strcat(res, in); + + return res; +} + +const char *sym_escape_string_value(const char *in) +{ + const char *p; + size_t reslen; + char *res; + size_t l; + + reslen = strlen(in) + strlen("\"\"") + 1; + + p = in; + for (;;) { + l = strcspn(p, "\"\\"); + p += l; + + if (p[0] == '\0') + break; + + reslen++; + p++; + } + + res = xmalloc(reslen); + res[0] = '\0'; + + strcat(res, "\""); + + p = in; + for (;;) { + l = strcspn(p, "\"\\"); + strncat(res, p, l); + p += l; + + if (p[0] == '\0') + break; + + strcat(res, "\\"); + strncat(res, p++, 1); + } + + strcat(res, "\""); + return res; +} + +struct sym_match { + struct symbol *sym; + off_t so, eo; +}; + +/* Compare matched symbols as thus: + * - first, symbols that match exactly + * - then, alphabetical sort + */ +static int sym_rel_comp(const void *sym1, const void *sym2) +{ + const struct sym_match *s1 = sym1; + const struct sym_match *s2 = sym2; + int exact1, exact2; + + /* Exact match: + * - if matched length on symbol s1 is the length of that symbol, + * then this symbol should come first; + * - if matched length on symbol s2 is the length of that symbol, + * then this symbol should come first. + * Note: since the search can be a regexp, both symbols may match + * exactly; if this is the case, we can't decide which comes first, + * and we fallback to sorting alphabetically. + */ + exact1 = (s1->eo - s1->so) == strlen(s1->sym->name); + exact2 = (s2->eo - s2->so) == strlen(s2->sym->name); + if (exact1 && !exact2) + return -1; + if (!exact1 && exact2) + return 1; + + /* As a fallback, sort symbols alphabetically */ + return strcmp(s1->sym->name, s2->sym->name); +} + +struct symbol **sym_re_search(const char *pattern) +{ + struct symbol *sym, **sym_arr = NULL; + struct sym_match *sym_match_arr = NULL; + int i, cnt, size; + regex_t re; + regmatch_t match[1]; + + cnt = size = 0; + /* Skip if empty */ + if (strlen(pattern) == 0) + return NULL; + if (regcomp(&re, pattern, REG_EXTENDED|REG_ICASE)) + return NULL; + + for_all_symbols(i, sym) { + if (sym->flags & SYMBOL_CONST || !sym->name) + continue; + if (regexec(&re, sym->name, 1, match, 0)) + continue; + if (cnt >= size) { + void *tmp; + size += 16; + tmp = realloc(sym_match_arr, size * sizeof(struct sym_match)); + if (!tmp) + goto sym_re_search_free; + sym_match_arr = tmp; + } + sym_calc_value(sym); + /* As regexec returned 0, we know we have a match, so + * we can use match[0].rm_[se]o without further checks + */ + sym_match_arr[cnt].so = match[0].rm_so; + sym_match_arr[cnt].eo = match[0].rm_eo; + sym_match_arr[cnt++].sym = sym; + } + if (sym_match_arr) { + qsort(sym_match_arr, cnt, sizeof(struct sym_match), sym_rel_comp); + sym_arr = malloc((cnt+1) * sizeof(struct symbol *)); + if (!sym_arr) + goto sym_re_search_free; + for (i = 0; i < cnt; i++) + sym_arr[i] = sym_match_arr[i].sym; + sym_arr[cnt] = NULL; + } +sym_re_search_free: + /* sym_match_arr can be NULL if no match, but free(NULL) is OK */ + free(sym_match_arr); + regfree(&re); + + return sym_arr; +} + +/* + * When we check for recursive dependencies we use a stack to save + * current state so we can print out relevant info to user. + * The entries are located on the call stack so no need to free memory. + * Note insert() remove() must always match to properly clear the stack. + */ +static struct dep_stack { + struct dep_stack *prev, *next; + struct symbol *sym; + struct property *prop; + struct expr *expr; +} *check_top; + +static void dep_stack_insert(struct dep_stack *stack, struct symbol *sym) +{ + memset(stack, 0, sizeof(*stack)); + if (check_top) + check_top->next = stack; + stack->prev = check_top; + stack->sym = sym; + check_top = stack; +} + +static void dep_stack_remove(void) +{ + check_top = check_top->prev; + if (check_top) + check_top->next = NULL; +} + +/* + * Called when we have detected a recursive dependency. + * check_top point to the top of the stact so we use + * the ->prev pointer to locate the bottom of the stack. + */ +static void sym_check_print_recursive(struct symbol *last_sym) +{ + struct dep_stack *stack; + struct symbol *sym, *next_sym; + struct menu *menu = NULL; + struct property *prop; + struct dep_stack cv_stack; + + if (sym_is_choice_value(last_sym)) { + dep_stack_insert(&cv_stack, last_sym); + last_sym = prop_get_symbol(sym_get_choice_prop(last_sym)); + } + + for (stack = check_top; stack != NULL; stack = stack->prev) + if (stack->sym == last_sym) + break; + if (!stack) { + fprintf(stderr, "unexpected recursive dependency error\n"); + return; + } + + for (; stack; stack = stack->next) { + sym = stack->sym; + next_sym = stack->next ? stack->next->sym : last_sym; + prop = stack->prop; + if (prop == NULL) + prop = stack->sym->prop; + + /* for choice values find the menu entry (used below) */ + if (sym_is_choice(sym) || sym_is_choice_value(sym)) { + for (prop = sym->prop; prop; prop = prop->next) { + menu = prop->menu; + if (prop->menu) + break; + } + } + if (stack->sym == last_sym) + fprintf(stderr, "%s:%d:error: recursive dependency detected!\n", + prop->file->name, prop->lineno); + + if (stack->expr) { + fprintf(stderr, "%s:%d:\tsymbol %s %s value contains %s\n", + prop->file->name, prop->lineno, + sym->name ? sym->name : "", + prop_get_type_name(prop->type), + next_sym->name ? next_sym->name : ""); + } else if (stack->prop) { + fprintf(stderr, "%s:%d:\tsymbol %s depends on %s\n", + prop->file->name, prop->lineno, + sym->name ? sym->name : "", + next_sym->name ? next_sym->name : ""); + } else if (sym_is_choice(sym)) { + fprintf(stderr, "%s:%d:\tchoice %s contains symbol %s\n", + menu->file->name, menu->lineno, + sym->name ? sym->name : "", + next_sym->name ? next_sym->name : ""); + } else if (sym_is_choice_value(sym)) { + fprintf(stderr, "%s:%d:\tsymbol %s is part of choice %s\n", + menu->file->name, menu->lineno, + sym->name ? sym->name : "", + next_sym->name ? next_sym->name : ""); + } else { + fprintf(stderr, "%s:%d:\tsymbol %s is selected by %s\n", + prop->file->name, prop->lineno, + sym->name ? sym->name : "", + next_sym->name ? next_sym->name : ""); + } + } + + fprintf(stderr, + "For a resolution refer to Documentation/kbuild/kconfig-language.txt\n" + "subsection \"Kconfig recursive dependency limitations\"\n" + "\n"); + + if (check_top == &cv_stack) + dep_stack_remove(); +} + +static struct symbol *sym_check_expr_deps(struct expr *e) +{ + struct symbol *sym; + + if (!e) + return NULL; + switch (e->type) { + case E_OR: + case E_AND: + sym = sym_check_expr_deps(e->left.expr); + if (sym) + return sym; + return sym_check_expr_deps(e->right.expr); + case E_NOT: + return sym_check_expr_deps(e->left.expr); + case E_EQUAL: + case E_GEQ: + case E_GTH: + case E_LEQ: + case E_LTH: + case E_UNEQUAL: + sym = sym_check_deps(e->left.sym); + if (sym) + return sym; + return sym_check_deps(e->right.sym); + case E_SYMBOL: + return sym_check_deps(e->left.sym); + default: + break; + } + fprintf(stderr, "Oops! How to check %d?\n", e->type); + return NULL; +} + +/* return NULL when dependencies are OK */ +static struct symbol *sym_check_sym_deps(struct symbol *sym) +{ + struct symbol *sym2; + struct property *prop; + struct dep_stack stack; + + dep_stack_insert(&stack, sym); + + sym2 = sym_check_expr_deps(sym->rev_dep.expr); + if (sym2) + goto out; + + for (prop = sym->prop; prop; prop = prop->next) { + if (prop->type == P_CHOICE || prop->type == P_SELECT) + continue; + stack.prop = prop; + sym2 = sym_check_expr_deps(prop->visible.expr); + if (sym2) + break; + if (prop->type != P_DEFAULT || sym_is_choice(sym)) + continue; + stack.expr = prop->expr; + sym2 = sym_check_expr_deps(prop->expr); + if (sym2) + break; + stack.expr = NULL; + } + +out: + dep_stack_remove(); + + return sym2; +} + +static struct symbol *sym_check_choice_deps(struct symbol *choice) +{ + struct symbol *sym, *sym2; + struct property *prop; + struct expr *e; + struct dep_stack stack; + + dep_stack_insert(&stack, choice); + + prop = sym_get_choice_prop(choice); + expr_list_for_each_sym(prop->expr, e, sym) + sym->flags |= (SYMBOL_CHECK | SYMBOL_CHECKED); + + choice->flags |= (SYMBOL_CHECK | SYMBOL_CHECKED); + sym2 = sym_check_sym_deps(choice); + choice->flags &= ~SYMBOL_CHECK; + if (sym2) + goto out; + + expr_list_for_each_sym(prop->expr, e, sym) { + sym2 = sym_check_sym_deps(sym); + if (sym2) + break; + } +out: + expr_list_for_each_sym(prop->expr, e, sym) + sym->flags &= ~SYMBOL_CHECK; + + if (sym2 && sym_is_choice_value(sym2) && + prop_get_symbol(sym_get_choice_prop(sym2)) == choice) + sym2 = choice; + + dep_stack_remove(); + + return sym2; +} + +struct symbol *sym_check_deps(struct symbol *sym) +{ + struct symbol *sym2; + struct property *prop; + + if (sym->flags & SYMBOL_CHECK) { + sym_check_print_recursive(sym); + return sym; + } + if (sym->flags & SYMBOL_CHECKED) + return NULL; + + if (sym_is_choice_value(sym)) { + struct dep_stack stack; + + /* for choice groups start the check with main choice symbol */ + dep_stack_insert(&stack, sym); + prop = sym_get_choice_prop(sym); + sym2 = sym_check_deps(prop_get_symbol(prop)); + dep_stack_remove(); + } else if (sym_is_choice(sym)) { + sym2 = sym_check_choice_deps(sym); + } else { + sym->flags |= (SYMBOL_CHECK | SYMBOL_CHECKED); + sym2 = sym_check_sym_deps(sym); + sym->flags &= ~SYMBOL_CHECK; + } + + if (sym2 && sym2 == sym) + sym2 = NULL; + + return sym2; +} + +struct property *prop_alloc(enum prop_type type, struct symbol *sym) +{ + struct property *prop; + struct property **propp; + + prop = xmalloc(sizeof(*prop)); + memset(prop, 0, sizeof(*prop)); + prop->type = type; + prop->sym = sym; + prop->file = current_file; + prop->lineno = zconf_lineno(); + + /* append property to the prop list of symbol */ + if (sym) { + for (propp = &sym->prop; *propp; propp = &(*propp)->next) + ; + *propp = prop; + } + + return prop; +} + +struct symbol *prop_get_symbol(struct property *prop) +{ + if (prop->expr && (prop->expr->type == E_SYMBOL || + prop->expr->type == E_LIST)) + return prop->expr->left.sym; + return NULL; +} + +const char *prop_get_type_name(enum prop_type type) +{ + switch (type) { + case P_PROMPT: + return "prompt"; + case P_ENV: + return "env"; + case P_COMMENT: + return "comment"; + case P_MENU: + return "menu"; + case P_DEFAULT: + return "default"; + case P_CHOICE: + return "choice"; + case P_SELECT: + return "select"; + case P_IMPLY: + return "imply"; + case P_RANGE: + return "range"; + case P_SYMBOL: + return "symbol"; + case P_UNKNOWN: + break; + } + return "unknown"; +} + +static void prop_add_env(const char *env) +{ + struct symbol *sym, *sym2; + struct property *prop; + char *p; + + sym = current_entry->sym; + sym->flags |= SYMBOL_AUTO; + for_all_properties(sym, prop, P_ENV) { + sym2 = prop_get_symbol(prop); + if (strcmp(sym2->name, env)) + menu_warn(current_entry, "redefining environment symbol from %s", + sym2->name); + return; + } + + prop = prop_alloc(P_ENV, sym); + prop->expr = expr_alloc_symbol(sym_lookup(env, SYMBOL_CONST)); + + sym_env_list = expr_alloc_one(E_LIST, sym_env_list); + sym_env_list->right.sym = sym; + + p = getenv(env); + if (p) + sym_add_default(sym, p); + else + menu_warn(current_entry, "environment variable %s undefined", env); +} diff --git a/support/kconfig/util.c b/support/kconfig/util.c new file mode 100644 index 00000000..18a8e523 --- /dev/null +++ b/support/kconfig/util.c @@ -0,0 +1,179 @@ +/* + * Copyright (C) 2002-2005 Roman Zippel + * Copyright (C) 2002-2005 Sam Ravnborg + * + * Released under the terms of the GNU GPL v2.0. + */ + +#include +#include +#include +#include "lkc.h" + +/* file already present in list? If not add it */ +struct file *file_lookup(const char *name) +{ + struct file *file; + char *file_name = sym_expand_string_value(name); + + for (file = file_list; file; file = file->next) { + if (!strcmp(name, file->name)) { + free(file_name); + return file; + } + } + + file = xmalloc(sizeof(*file)); + memset(file, 0, sizeof(*file)); + file->name = file_name; + file->next = file_list; + file_list = file; + return file; +} + +/* write a dependency file as used by kbuild to track dependencies */ +int file_write_dep(const char *name) +{ + char *str; + char buf[PATH_MAX+1], buf2[PATH_MAX+1], dir[PATH_MAX+1]; + struct symbol *sym, *env_sym; + struct expr *e; + struct file *file; + FILE *out; + + if (!name) + name = ".kconfig.d"; + + strcpy(dir, conf_get_configname()); + str = strrchr(dir, '/'); + if (str) + str[1] = 0; + else + dir[0] = 0; + + sprintf(buf, "%s..config.tmp", dir); + out = fopen(buf, "w"); + if (!out) + return 1; + fprintf(out, "deps_config := \\\n"); + for (file = file_list; file; file = file->next) { + if (file->next) + fprintf(out, "\t%s \\\n", file->name); + else + fprintf(out, "\t%s\n", file->name); + } + fprintf(out, "\n%s: \\\n" + "\t$(deps_config)\n\n", conf_get_autoconfig_name()); + + expr_list_for_each_sym(sym_env_list, e, sym) { + struct property *prop; + const char *value; + + prop = sym_get_env_prop(sym); + env_sym = prop_get_symbol(prop); + if (!env_sym) + continue; + value = getenv(env_sym->name); + if (!value) + value = ""; + fprintf(out, "ifneq \"$(%s)\" \"%s\"\n", env_sym->name, value); + fprintf(out, "%s: FORCE\n", conf_get_autoconfig_name()); + fprintf(out, "endif\n"); + } + + fprintf(out, "\n$(deps_config): ;\n"); + fclose(out); + sprintf(buf2, "%s%s", dir, name); + rename(buf, buf2); + return 0; +} + + +/* Allocate initial growable string */ +struct gstr str_new(void) +{ + struct gstr gs; + gs.s = xmalloc(sizeof(char) * 64); + gs.len = 64; + gs.max_width = 0; + strcpy(gs.s, "\0"); + return gs; +} + +/* Free storage for growable string */ +void str_free(struct gstr *gs) +{ + if (gs->s) + free(gs->s); + gs->s = NULL; + gs->len = 0; +} + +/* Append to growable string */ +void str_append(struct gstr *gs, const char *s) +{ + size_t l; + if (s) { + l = strlen(gs->s) + strlen(s) + 1; + if (l > gs->len) { + gs->s = xrealloc(gs->s, l); + gs->len = l; + } + strcat(gs->s, s); + } +} + +/* Append printf formatted string to growable string */ +void str_printf(struct gstr *gs, const char *fmt, ...) +{ + va_list ap; + char s[10000]; /* big enough... */ + va_start(ap, fmt); + vsnprintf(s, sizeof(s), fmt, ap); + str_append(gs, s); + va_end(ap); +} + +/* Retrieve value of growable string */ +const char *str_get(struct gstr *gs) +{ + return gs->s; +} + +void *xmalloc(size_t size) +{ + void *p = malloc(size); + if (p) + return p; + fprintf(stderr, "Out of memory.\n"); + exit(1); +} + +void *xcalloc(size_t nmemb, size_t size) +{ + void *p = calloc(nmemb, size); + if (p) + return p; + fprintf(stderr, "Out of memory.\n"); + exit(1); +} + +void *xrealloc(void *p, size_t size) +{ + p = realloc(p, size); + if (p) + return p; + fprintf(stderr, "Out of memory.\n"); + exit(1); +} + +char *xstrdup(const char *s) +{ + char *p; + + p = strdup(s); + if (p) + return p; + fprintf(stderr, "Out of memory.\n"); + exit(1); +} diff --git a/support/kconfig/zconf.l b/support/kconfig/zconf.l new file mode 100644 index 00000000..045093d8 --- /dev/null +++ b/support/kconfig/zconf.l @@ -0,0 +1,372 @@ +%option nostdinit noyywrap never-interactive full ecs +%option 8bit nodefault yylineno +%option noinput +%x COMMAND HELP STRING PARAM +%{ +/* + * Copyright (C) 2002 Roman Zippel + * Released under the terms of the GNU GPL v2.0. + */ + +#include +#include +#include +#include +#include + +#include "lkc.h" + +#define START_STRSIZE 16 + +static struct { + struct file *file; + int lineno; +} current_pos; + +static char *text; +static int text_size, text_asize; + +struct buffer { + struct buffer *parent; + YY_BUFFER_STATE state; +}; + +struct buffer *current_buf; + +static int last_ts, first_ts; + +static void zconf_endhelp(void); +static void zconf_endfile(void); + +static void new_string(void) +{ + text = xmalloc(START_STRSIZE); + text_asize = START_STRSIZE; + text_size = 0; + *text = 0; +} + +static void append_string(const char *str, int size) +{ + int new_size = text_size + size + 1; + if (new_size > text_asize) { + new_size += START_STRSIZE - 1; + new_size &= -START_STRSIZE; + text = xrealloc(text, new_size); + text_asize = new_size; + } + memcpy(text + text_size, str, size); + text_size += size; + text[text_size] = 0; +} + +static void alloc_string(const char *str, int size) +{ + text = xmalloc(size + 1); + memcpy(text, str, size); + text[size] = 0; +} + +static void warn_ignored_character(char chr) +{ + fprintf(stderr, + "%s:%d:warning: ignoring unsupported character '%c'\n", + zconf_curname(), zconf_lineno(), chr); +} +%} + +n [A-Za-z0-9_-] + +%% + int str = 0; + int ts, i; + +[ \t]*#.*\n | +[ \t]*\n { + return T_EOL; +} +[ \t]*#.* + + +[ \t]+ { + BEGIN(COMMAND); +} + +. { + unput(yytext[0]); + BEGIN(COMMAND); +} + + +{ + {n}+ { + const struct kconf_id *id = kconf_id_lookup(yytext, yyleng); + BEGIN(PARAM); + current_pos.file = current_file; + current_pos.lineno = yylineno; + if (id && id->flags & TF_COMMAND) { + yylval.id = id; + return id->token; + } + alloc_string(yytext, yyleng); + yylval.string = text; + return T_WORD; + } + . warn_ignored_character(*yytext); + \n { + BEGIN(INITIAL); + return T_EOL; + } +} + +{ + "&&" return T_AND; + "||" return T_OR; + "(" return T_OPEN_PAREN; + ")" return T_CLOSE_PAREN; + "!" return T_NOT; + "=" return T_EQUAL; + "!=" return T_UNEQUAL; + "<=" return T_LESS_EQUAL; + ">=" return T_GREATER_EQUAL; + "<" return T_LESS; + ">" return T_GREATER; + \"|\' { + str = yytext[0]; + new_string(); + BEGIN(STRING); + } + \n BEGIN(INITIAL); return T_EOL; + ({n}|[/.])+ { + const struct kconf_id *id = kconf_id_lookup(yytext, yyleng); + if (id && id->flags & TF_PARAM) { + yylval.id = id; + return id->token; + } + alloc_string(yytext, yyleng); + yylval.string = text; + return T_WORD; + } + #.* /* comment */ + \\\n ; + [[:blank:]]+ + . warn_ignored_character(*yytext); + <> { + BEGIN(INITIAL); + } +} + +{ + [^'"\\\n]+/\n { + append_string(yytext, yyleng); + yylval.string = text; + return T_WORD_QUOTE; + } + [^'"\\\n]+ { + append_string(yytext, yyleng); + } + \\.?/\n { + append_string(yytext + 1, yyleng - 1); + yylval.string = text; + return T_WORD_QUOTE; + } + \\.? { + append_string(yytext + 1, yyleng - 1); + } + \'|\" { + if (str == yytext[0]) { + BEGIN(PARAM); + yylval.string = text; + return T_WORD_QUOTE; + } else + append_string(yytext, 1); + } + \n { + fprintf(stderr, + "%s:%d:warning: multi-line strings not supported\n", + zconf_curname(), zconf_lineno()); + BEGIN(INITIAL); + return T_EOL; + } + <> { + BEGIN(INITIAL); + } +} + +{ + [ \t]+ { + ts = 0; + for (i = 0; i < yyleng; i++) { + if (yytext[i] == '\t') + ts = (ts & ~7) + 8; + else + ts++; + } + last_ts = ts; + if (first_ts) { + if (ts < first_ts) { + zconf_endhelp(); + return T_HELPTEXT; + } + ts -= first_ts; + while (ts > 8) { + append_string(" ", 8); + ts -= 8; + } + append_string(" ", ts); + } + } + [ \t]*\n/[^ \t\n] { + zconf_endhelp(); + return T_HELPTEXT; + } + [ \t]*\n { + append_string("\n", 1); + } + [^ \t\n].* { + while (yyleng) { + if ((yytext[yyleng-1] != ' ') && (yytext[yyleng-1] != '\t')) + break; + yyleng--; + } + append_string(yytext, yyleng); + if (!first_ts) + first_ts = last_ts; + } + <> { + zconf_endhelp(); + return T_HELPTEXT; + } +} + +<> { + if (current_file) { + zconf_endfile(); + return T_EOL; + } + fclose(yyin); + yyterminate(); +} + +%% +void zconf_starthelp(void) +{ + new_string(); + last_ts = first_ts = 0; + BEGIN(HELP); +} + +static void zconf_endhelp(void) +{ + yylval.string = text; + BEGIN(INITIAL); +} + + +/* + * Try to open specified file with following names: + * ./name + * $(srctree)/name + * The latter is used when srctree is separate from objtree + * when compiling the kernel. + * Return NULL if file is not found. + */ +FILE *zconf_fopen(const char *name) +{ + char *env, fullname[PATH_MAX+1]; + FILE *f; + + f = fopen(name, "r"); + if (!f && name != NULL && name[0] != '/') { + env = getenv(SRCTREE); + if (env) { + sprintf(fullname, "%s/%s", env, name); + f = fopen(fullname, "r"); + } + } + return f; +} + +void zconf_initscan(const char *name) +{ + yyin = zconf_fopen(name); + if (!yyin) { + fprintf(stderr, "can't find file %s\n", name); + exit(1); + } + + current_buf = xmalloc(sizeof(*current_buf)); + memset(current_buf, 0, sizeof(*current_buf)); + + current_file = file_lookup(name); + yylineno = 1; +} + +void zconf_nextfile(const char *name) +{ + struct file *iter; + struct file *file = file_lookup(name); + struct buffer *buf = xmalloc(sizeof(*buf)); + memset(buf, 0, sizeof(*buf)); + + current_buf->state = YY_CURRENT_BUFFER; + yyin = zconf_fopen(file->name); + if (!yyin) { + fprintf(stderr, "%s:%d: can't open file \"%s\"\n", + zconf_curname(), zconf_lineno(), file->name); + exit(1); + } + yy_switch_to_buffer(yy_create_buffer(yyin, YY_BUF_SIZE)); + buf->parent = current_buf; + current_buf = buf; + + current_file->lineno = yylineno; + file->parent = current_file; + + for (iter = current_file; iter; iter = iter->parent) { + if (!strcmp(iter->name, file->name)) { + fprintf(stderr, + "Recursive inclusion detected.\n" + "Inclusion path:\n" + " current file : %s\n", file->name); + iter = file; + do { + iter = iter->parent; + fprintf(stderr, " included from: %s:%d\n", + iter->name, iter->lineno - 1); + } while (strcmp(iter->name, file->name)); + exit(1); + } + } + + yylineno = 1; + current_file = file; +} + +static void zconf_endfile(void) +{ + struct buffer *parent; + + current_file = current_file->parent; + if (current_file) + yylineno = current_file->lineno; + + parent = current_buf->parent; + if (parent) { + fclose(yyin); + yy_delete_buffer(YY_CURRENT_BUFFER); + yy_switch_to_buffer(parent->state); + } + free(current_buf); + current_buf = parent; +} + +int zconf_lineno(void) +{ + return current_pos.lineno; +} + +const char *zconf_curname(void) +{ + return current_pos.file ? current_pos.file->name : ""; +} diff --git a/support/kconfig/zconf.lex.c_shipped b/support/kconfig/zconf.lex.c_shipped new file mode 100644 index 00000000..33913d43 --- /dev/null +++ b/support/kconfig/zconf.lex.c_shipped @@ -0,0 +1,2500 @@ + +#define YY_INT_ALIGNED short int + +/* A lexical scanner generated by flex */ + +#define FLEX_SCANNER +#define YY_FLEX_MAJOR_VERSION 2 +#define YY_FLEX_MINOR_VERSION 6 +#define YY_FLEX_SUBMINOR_VERSION 4 +#if YY_FLEX_SUBMINOR_VERSION > 0 +#define FLEX_BETA +#endif + +/* First, we deal with platform-specific or compiler-specific issues. */ + +/* begin standard C headers. */ +#include +#include +#include +#include + +/* end standard C headers. */ + +/* flex integer type definitions */ + +#ifndef FLEXINT_H +#define FLEXINT_H + +/* C99 systems have . Non-C99 systems may or may not. */ + +#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L + +/* C99 says to define __STDC_LIMIT_MACROS before including stdint.h, + * if you want the limit (max/min) macros for int types. + */ +#ifndef __STDC_LIMIT_MACROS +#define __STDC_LIMIT_MACROS 1 +#endif + +#include +typedef int8_t flex_int8_t; +typedef uint8_t flex_uint8_t; +typedef int16_t flex_int16_t; +typedef uint16_t flex_uint16_t; +typedef int32_t flex_int32_t; +typedef uint32_t flex_uint32_t; +#else +typedef signed char flex_int8_t; +typedef short int flex_int16_t; +typedef int flex_int32_t; +typedef unsigned char flex_uint8_t; +typedef unsigned short int flex_uint16_t; +typedef unsigned int flex_uint32_t; + +/* Limits of integral types. */ +#ifndef INT8_MIN +#define INT8_MIN (-128) +#endif +#ifndef INT16_MIN +#define INT16_MIN (-32767-1) +#endif +#ifndef INT32_MIN +#define INT32_MIN (-2147483647-1) +#endif +#ifndef INT8_MAX +#define INT8_MAX (127) +#endif +#ifndef INT16_MAX +#define INT16_MAX (32767) +#endif +#ifndef INT32_MAX +#define INT32_MAX (2147483647) +#endif +#ifndef UINT8_MAX +#define UINT8_MAX (255U) +#endif +#ifndef UINT16_MAX +#define UINT16_MAX (65535U) +#endif +#ifndef UINT32_MAX +#define UINT32_MAX (4294967295U) +#endif + +#ifndef SIZE_MAX +#define SIZE_MAX (~(size_t)0) +#endif + +#endif /* ! C99 */ + +#endif /* ! FLEXINT_H */ + +/* begin standard C++ headers. */ + +/* TODO: this is always defined, so inline it */ +#define yyconst const + +#if defined(__GNUC__) && __GNUC__ >= 3 +#define yynoreturn __attribute__((__noreturn__)) +#else +#define yynoreturn +#endif + +/* Returned upon end-of-file. */ +#define YY_NULL 0 + +/* Promotes a possibly negative, possibly signed char to an + * integer in range [0..255] for use as an array index. + */ +#define YY_SC_TO_UI(c) ((YY_CHAR) (c)) + +/* Enter a start condition. This macro really ought to take a parameter, + * but we do it the disgusting crufty way forced on us by the ()-less + * definition of BEGIN. + */ +#define BEGIN (yy_start) = 1 + 2 * +/* Translate the current start state into a value that can be later handed + * to BEGIN to return to the state. The YYSTATE alias is for lex + * compatibility. + */ +#define YY_START (((yy_start) - 1) / 2) +#define YYSTATE YY_START +/* Action number for EOF rule of a given start state. */ +#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1) +/* Special action meaning "start processing a new file". */ +#define YY_NEW_FILE yyrestart( yyin ) +#define YY_END_OF_BUFFER_CHAR 0 + +/* Size of default input buffer. */ +#ifndef YY_BUF_SIZE +#ifdef __ia64__ +/* On IA-64, the buffer size is 16k, not 8k. + * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case. + * Ditto for the __ia64__ case accordingly. + */ +#define YY_BUF_SIZE 32768 +#else +#define YY_BUF_SIZE 16384 +#endif /* __ia64__ */ +#endif + +/* The state buf must be large enough to hold one state per character in the main buffer. + */ +#define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type)) + +#ifndef YY_TYPEDEF_YY_BUFFER_STATE +#define YY_TYPEDEF_YY_BUFFER_STATE +typedef struct yy_buffer_state *YY_BUFFER_STATE; +#endif + +#ifndef YY_TYPEDEF_YY_SIZE_T +#define YY_TYPEDEF_YY_SIZE_T +typedef size_t yy_size_t; +#endif + +extern int yyleng; + +extern FILE *yyin, *yyout; + +#define EOB_ACT_CONTINUE_SCAN 0 +#define EOB_ACT_END_OF_FILE 1 +#define EOB_ACT_LAST_MATCH 2 + + /* Note: We specifically omit the test for yy_rule_can_match_eol because it requires + * access to the local variable yy_act. Since yyless() is a macro, it would break + * existing scanners that call yyless() from OUTSIDE yylex. + * One obvious solution it to make yy_act a global. I tried that, and saw + * a 5% performance hit in a non-yylineno scanner, because yy_act is + * normally declared as a register variable-- so it is not worth it. + */ + #define YY_LESS_LINENO(n) \ + do { \ + int yyl;\ + for ( yyl = n; yyl < yyleng; ++yyl )\ + if ( yytext[yyl] == '\n' )\ + --yylineno;\ + }while(0) + #define YY_LINENO_REWIND_TO(dst) \ + do {\ + const char *p;\ + for ( p = yy_cp-1; p >= (dst); --p)\ + if ( *p == '\n' )\ + --yylineno;\ + }while(0) + +/* Return all but the first "n" matched characters back to the input stream. */ +#define yyless(n) \ + do \ + { \ + /* Undo effects of setting up yytext. */ \ + int yyless_macro_arg = (n); \ + YY_LESS_LINENO(yyless_macro_arg);\ + *yy_cp = (yy_hold_char); \ + YY_RESTORE_YY_MORE_OFFSET \ + (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \ + YY_DO_BEFORE_ACTION; /* set up yytext again */ \ + } \ + while ( 0 ) +#define unput(c) yyunput( c, (yytext_ptr) ) + +#ifndef YY_STRUCT_YY_BUFFER_STATE +#define YY_STRUCT_YY_BUFFER_STATE +struct yy_buffer_state + { + FILE *yy_input_file; + + char *yy_ch_buf; /* input buffer */ + char *yy_buf_pos; /* current position in input buffer */ + + /* Size of input buffer in bytes, not including room for EOB + * characters. + */ + int yy_buf_size; + + /* Number of characters read into yy_ch_buf, not including EOB + * characters. + */ + int yy_n_chars; + + /* Whether we "own" the buffer - i.e., we know we created it, + * and can realloc() it to grow it, and should free() it to + * delete it. + */ + int yy_is_our_buffer; + + /* Whether this is an "interactive" input source; if so, and + * if we're using stdio for input, then we want to use getc() + * instead of fread(), to make sure we stop fetching input after + * each newline. + */ + int yy_is_interactive; + + /* Whether we're considered to be at the beginning of a line. + * If so, '^' rules will be active on the next match, otherwise + * not. + */ + int yy_at_bol; + + int yy_bs_lineno; /**< The line count. */ + int yy_bs_column; /**< The column count. */ + + /* Whether to try to fill the input buffer when we reach the + * end of it. + */ + int yy_fill_buffer; + + int yy_buffer_status; + +#define YY_BUFFER_NEW 0 +#define YY_BUFFER_NORMAL 1 + /* When an EOF's been seen but there's still some text to process + * then we mark the buffer as YY_EOF_PENDING, to indicate that we + * shouldn't try reading from the input source any more. We might + * still have a bunch of tokens to match, though, because of + * possible backing-up. + * + * When we actually see the EOF, we change the status to "new" + * (via yyrestart()), so that the user can continue scanning by + * just pointing yyin at a new input file. + */ +#define YY_BUFFER_EOF_PENDING 2 + + }; +#endif /* !YY_STRUCT_YY_BUFFER_STATE */ + +/* Stack of input buffers. */ +static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */ +static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */ +static YY_BUFFER_STATE * yy_buffer_stack = NULL; /**< Stack as an array. */ + +/* We provide macros for accessing buffer states in case in the + * future we want to put the buffer states in a more general + * "scanner state". + * + * Returns the top of the stack, or NULL. + */ +#define YY_CURRENT_BUFFER ( (yy_buffer_stack) \ + ? (yy_buffer_stack)[(yy_buffer_stack_top)] \ + : NULL) +/* Same as previous macro, but useful when we know that the buffer stack is not + * NULL or when we need an lvalue. For internal use only. + */ +#define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)] + +/* yy_hold_char holds the character lost when yytext is formed. */ +static char yy_hold_char; +static int yy_n_chars; /* number of characters read into yy_ch_buf */ +int yyleng; + +/* Points to current character in buffer. */ +static char *yy_c_buf_p = NULL; +static int yy_init = 0; /* whether we need to initialize */ +static int yy_start = 0; /* start state number */ + +/* Flag which is used to allow yywrap()'s to do buffer switches + * instead of setting up a fresh yyin. A bit of a hack ... + */ +static int yy_did_buffer_switch_on_eof; + +void yyrestart ( FILE *input_file ); +void yy_switch_to_buffer ( YY_BUFFER_STATE new_buffer ); +YY_BUFFER_STATE yy_create_buffer ( FILE *file, int size ); +void yy_delete_buffer ( YY_BUFFER_STATE b ); +void yy_flush_buffer ( YY_BUFFER_STATE b ); +void yypush_buffer_state ( YY_BUFFER_STATE new_buffer ); +void yypop_buffer_state ( void ); + +static void yyensure_buffer_stack ( void ); +static void yy_load_buffer_state ( void ); +static void yy_init_buffer ( YY_BUFFER_STATE b, FILE *file ); +#define YY_FLUSH_BUFFER yy_flush_buffer( YY_CURRENT_BUFFER ) + +YY_BUFFER_STATE yy_scan_buffer ( char *base, yy_size_t size ); +YY_BUFFER_STATE yy_scan_string ( const char *yy_str ); +YY_BUFFER_STATE yy_scan_bytes ( const char *bytes, int len ); + +void *yyalloc ( yy_size_t ); +void *yyrealloc ( void *, yy_size_t ); +void yyfree ( void * ); + +#define yy_new_buffer yy_create_buffer +#define yy_set_interactive(is_interactive) \ + { \ + if ( ! YY_CURRENT_BUFFER ){ \ + yyensure_buffer_stack (); \ + YY_CURRENT_BUFFER_LVALUE = \ + yy_create_buffer( yyin, YY_BUF_SIZE ); \ + } \ + YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \ + } +#define yy_set_bol(at_bol) \ + { \ + if ( ! YY_CURRENT_BUFFER ){\ + yyensure_buffer_stack (); \ + YY_CURRENT_BUFFER_LVALUE = \ + yy_create_buffer( yyin, YY_BUF_SIZE ); \ + } \ + YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \ + } +#define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol) + +/* Begin user sect3 */ + +#define yywrap() (/*CONSTCOND*/1) +#define YY_SKIP_YYWRAP +typedef flex_uint8_t YY_CHAR; + +FILE *yyin = NULL, *yyout = NULL; + +typedef int yy_state_type; + +extern int yylineno; +int yylineno = 1; + +extern char *yytext; +#ifdef yytext_ptr +#undef yytext_ptr +#endif +#define yytext_ptr yytext + +static const flex_int16_t yy_nxt[][18] = + { + { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0 + }, + + { + 11, 12, 13, 14, 12, 12, 15, 12, 12, 12, + 12, 12, 12, 12, 12, 12, 12, 12 + }, + + { + 11, 12, 13, 14, 12, 12, 15, 12, 12, 12, + 12, 12, 12, 12, 12, 12, 12, 12 + }, + + { + 11, 16, 16, 17, 16, 16, 16, 16, 16, 16, + 16, 18, 16, 16, 16, 16, 16, 16 + }, + + { + 11, 16, 16, 17, 16, 16, 16, 16, 16, 16, + 16, 18, 16, 16, 16, 16, 16, 16 + + }, + + { + 11, 19, 20, 21, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 19, 19, 19 + }, + + { + 11, 19, 20, 21, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 19, 19, 19 + }, + + { + 11, 22, 22, 23, 22, 24, 22, 22, 24, 22, + 22, 22, 22, 22, 22, 22, 25, 22 + }, + + { + 11, 22, 22, 23, 22, 24, 22, 22, 24, 22, + 22, 22, 22, 22, 22, 22, 25, 22 + }, + + { + 11, 26, 27, 28, 29, 30, 31, 32, 30, 33, + 34, 35, 35, 36, 37, 38, 39, 40 + + }, + + { + 11, 26, 27, 28, 29, 30, 31, 32, 30, 33, + 34, 35, 35, 36, 37, 38, 39, 40 + }, + + { + -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, + -11, -11, -11, -11, -11, -11, -11, -11 + }, + + { + 11, -12, -12, -12, -12, -12, -12, -12, -12, -12, + -12, -12, -12, -12, -12, -12, -12, -12 + }, + + { + 11, -13, 41, 42, -13, -13, 43, -13, -13, -13, + -13, -13, -13, -13, -13, -13, -13, -13 + }, + + { + 11, -14, -14, -14, -14, -14, -14, -14, -14, -14, + -14, -14, -14, -14, -14, -14, -14, -14 + + }, + + { + 11, 44, 44, 45, 44, 44, 44, 44, 44, 44, + 44, 44, 44, 44, 44, 44, 44, 44 + }, + + { + 11, -16, -16, -16, -16, -16, -16, -16, -16, -16, + -16, -16, -16, -16, -16, -16, -16, -16 + }, + + { + 11, -17, -17, -17, -17, -17, -17, -17, -17, -17, + -17, -17, -17, -17, -17, -17, -17, -17 + }, + + { + 11, -18, -18, -18, -18, -18, -18, -18, -18, -18, + -18, 46, -18, -18, -18, -18, -18, -18 + }, + + { + 11, 47, 47, -19, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 47, 47 + + }, + + { + 11, -20, 48, 49, -20, -20, -20, -20, -20, -20, + -20, -20, -20, -20, -20, -20, -20, -20 + }, + + { + 11, 50, -21, -21, 50, 50, 50, 50, 50, 50, + 50, 50, 50, 50, 50, 50, 50, 50 + }, + + { + 11, 51, 51, 52, 51, -22, 51, 51, -22, 51, + 51, 51, 51, 51, 51, 51, -22, 51 + }, + + { + 11, -23, -23, -23, -23, -23, -23, -23, -23, -23, + -23, -23, -23, -23, -23, -23, -23, -23 + }, + + { + 11, -24, -24, -24, -24, -24, -24, -24, -24, -24, + -24, -24, -24, -24, -24, -24, -24, -24 + + }, + + { + 11, 53, 53, 54, 53, 53, 53, 53, 53, 53, + 53, 53, 53, 53, 53, 53, 53, 53 + }, + + { + 11, -26, -26, -26, -26, -26, -26, -26, -26, -26, + -26, -26, -26, -26, -26, -26, -26, -26 + }, + + { + 11, -27, 55, -27, -27, -27, -27, -27, -27, -27, + -27, -27, -27, -27, -27, -27, -27, -27 + }, + + { + 11, -28, -28, -28, -28, -28, -28, -28, -28, -28, + -28, -28, -28, -28, -28, -28, -28, -28 + }, + + { + 11, -29, -29, -29, -29, -29, -29, -29, -29, -29, + -29, -29, -29, -29, 56, -29, -29, -29 + + }, + + { + 11, -30, -30, -30, -30, -30, -30, -30, -30, -30, + -30, -30, -30, -30, -30, -30, -30, -30 + }, + + { + 11, 57, 57, -31, 57, 57, 57, 57, 57, 57, + 57, 57, 57, 57, 57, 57, 57, 57 + }, + + { + 11, -32, -32, -32, -32, -32, -32, 58, -32, -32, + -32, -32, -32, -32, -32, -32, -32, -32 + }, + + { + 11, -33, -33, -33, -33, -33, -33, -33, -33, -33, + -33, -33, -33, -33, -33, -33, -33, -33 + }, + + { + 11, -34, -34, -34, -34, -34, -34, -34, -34, -34, + -34, -34, -34, -34, -34, -34, -34, -34 + + }, + + { + 11, -35, -35, -35, -35, -35, -35, -35, -35, -35, + -35, 59, 59, -35, -35, -35, -35, -35 + }, + + { + 11, -36, -36, -36, -36, -36, -36, -36, -36, -36, + -36, -36, -36, -36, 60, -36, -36, -36 + }, + + { + 11, -37, -37, -37, -37, -37, -37, -37, -37, -37, + -37, -37, -37, -37, -37, -37, -37, -37 + }, + + { + 11, -38, -38, -38, -38, -38, -38, -38, -38, -38, + -38, -38, -38, -38, 61, -38, -38, -38 + }, + + { + 11, -39, -39, 62, -39, -39, -39, -39, -39, -39, + -39, -39, -39, -39, -39, -39, -39, -39 + + }, + + { + 11, -40, -40, -40, -40, -40, -40, -40, -40, -40, + -40, -40, -40, -40, -40, -40, -40, 63 + }, + + { + 11, -41, 41, 42, -41, -41, 43, -41, -41, -41, + -41, -41, -41, -41, -41, -41, -41, -41 + }, + + { + 11, -42, -42, -42, -42, -42, -42, -42, -42, -42, + -42, -42, -42, -42, -42, -42, -42, -42 + }, + + { + 11, 44, 44, 45, 44, 44, 44, 44, 44, 44, + 44, 44, 44, 44, 44, 44, 44, 44 + }, + + { + 11, 44, 44, 45, 44, 44, 44, 44, 44, 44, + 44, 44, 44, 44, 44, 44, 44, 44 + + }, + + { + 11, -45, -45, -45, -45, -45, -45, -45, -45, -45, + -45, -45, -45, -45, -45, -45, -45, -45 + }, + + { + 11, -46, -46, -46, -46, -46, -46, -46, -46, -46, + -46, 46, -46, -46, -46, -46, -46, -46 + }, + + { + 11, 47, 47, -47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 47, 47 + }, + + { + 11, -48, 48, 49, -48, -48, -48, -48, -48, -48, + -48, -48, -48, -48, -48, -48, -48, -48 + }, + + { + 11, 50, -49, -49, 50, 50, 50, 50, 50, 50, + 50, 50, 50, 50, 50, 50, 50, 50 + + }, + + { + 11, -50, -50, -50, -50, -50, -50, -50, -50, -50, + -50, -50, -50, -50, -50, -50, -50, -50 + }, + + { + 11, 51, 51, 52, 51, -51, 51, 51, -51, 51, + 51, 51, 51, 51, 51, 51, -51, 51 + }, + + { + 11, -52, -52, -52, -52, -52, -52, -52, -52, -52, + -52, -52, -52, -52, -52, -52, -52, -52 + }, + + { + 11, -53, -53, 54, -53, -53, -53, -53, -53, -53, + -53, -53, -53, -53, -53, -53, -53, -53 + }, + + { + 11, -54, -54, -54, -54, -54, -54, -54, -54, -54, + -54, -54, -54, -54, -54, -54, -54, -54 + + }, + + { + 11, -55, 55, -55, -55, -55, -55, -55, -55, -55, + -55, -55, -55, -55, -55, -55, -55, -55 + }, + + { + 11, -56, -56, -56, -56, -56, -56, -56, -56, -56, + -56, -56, -56, -56, -56, -56, -56, -56 + }, + + { + 11, 57, 57, -57, 57, 57, 57, 57, 57, 57, + 57, 57, 57, 57, 57, 57, 57, 57 + }, + + { + 11, -58, -58, -58, -58, -58, -58, -58, -58, -58, + -58, -58, -58, -58, -58, -58, -58, -58 + }, + + { + 11, -59, -59, -59, -59, -59, -59, -59, -59, -59, + -59, 59, 59, -59, -59, -59, -59, -59 + + }, + + { + 11, -60, -60, -60, -60, -60, -60, -60, -60, -60, + -60, -60, -60, -60, -60, -60, -60, -60 + }, + + { + 11, -61, -61, -61, -61, -61, -61, -61, -61, -61, + -61, -61, -61, -61, -61, -61, -61, -61 + }, + + { + 11, -62, -62, -62, -62, -62, -62, -62, -62, -62, + -62, -62, -62, -62, -62, -62, -62, -62 + }, + + { + 11, -63, -63, -63, -63, -63, -63, -63, -63, -63, + -63, -63, -63, -63, -63, -63, -63, -63 + }, + + } ; + +static yy_state_type yy_get_previous_state ( void ); +static yy_state_type yy_try_NUL_trans ( yy_state_type current_state ); +static int yy_get_next_buffer ( void ); +static void yynoreturn yy_fatal_error ( const char* msg ); + +/* Done after the current pattern has been matched and before the + * corresponding action - sets up yytext. + */ +#define YY_DO_BEFORE_ACTION \ + (yytext_ptr) = yy_bp; \ + yyleng = (int) (yy_cp - yy_bp); \ + (yy_hold_char) = *yy_cp; \ + *yy_cp = '\0'; \ + (yy_c_buf_p) = yy_cp; +#define YY_NUM_RULES 37 +#define YY_END_OF_BUFFER 38 +/* This struct is not used in this scanner, + but its presence is necessary. */ +struct yy_trans_info + { + flex_int32_t yy_verify; + flex_int32_t yy_nxt; + }; +static const flex_int16_t yy_accept[64] = + { 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 38, 5, 4, 2, 3, 7, 8, 6, 36, 33, + 35, 28, 32, 31, 30, 26, 25, 21, 13, 20, + 23, 26, 11, 12, 22, 18, 14, 19, 26, 26, + 4, 2, 3, 3, 1, 6, 36, 33, 35, 34, + 28, 27, 30, 29, 25, 15, 23, 9, 22, 16, + 17, 24, 10 + } ; + +static const YY_CHAR yy_ec[256] = + { 0, + 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 2, 4, 5, 6, 1, 1, 7, 8, 9, + 10, 1, 1, 1, 11, 12, 12, 11, 11, 11, + 11, 11, 11, 11, 11, 11, 11, 1, 1, 13, + 14, 15, 1, 1, 11, 11, 11, 11, 11, 11, + 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, + 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, + 1, 16, 1, 1, 11, 1, 11, 11, 11, 11, + + 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, + 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, + 11, 11, 1, 17, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1 + } ; + +/* Table of booleans, true if rule could match eol. */ +static const flex_int32_t yy_rule_can_match_eol[38] = + { 0, +1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 0, }; + +extern int yy_flex_debug; +int yy_flex_debug = 0; + +/* The intent behind this definition is that it'll catch + * any uses of REJECT which flex missed. + */ +#define REJECT reject_used_but_not_detected +#define yymore() yymore_used_but_not_detected +#define YY_MORE_ADJ 0 +#define YY_RESTORE_YY_MORE_OFFSET +char *yytext; +#define YY_NO_INPUT 1 + +/* + * Copyright (C) 2002 Roman Zippel + * Released under the terms of the GNU GPL v2.0. + */ + +#include +#include +#include +#include +#include + +#include "lkc.h" + +#define START_STRSIZE 16 + +static struct { + struct file *file; + int lineno; +} current_pos; + +static char *text; +static int text_size, text_asize; + +struct buffer { + struct buffer *parent; + YY_BUFFER_STATE state; +}; + +struct buffer *current_buf; + +static int last_ts, first_ts; + +static void zconf_endhelp(void); +static void zconf_endfile(void); + +static void new_string(void) +{ + text = xmalloc(START_STRSIZE); + text_asize = START_STRSIZE; + text_size = 0; + *text = 0; +} + +static void append_string(const char *str, int size) +{ + int new_size = text_size + size + 1; + if (new_size > text_asize) { + new_size += START_STRSIZE - 1; + new_size &= -START_STRSIZE; + text = xrealloc(text, new_size); + text_asize = new_size; + } + memcpy(text + text_size, str, size); + text_size += size; + text[text_size] = 0; +} + +static void alloc_string(const char *str, int size) +{ + text = xmalloc(size + 1); + memcpy(text, str, size); + text[size] = 0; +} + +static void warn_ignored_character(char chr) +{ + fprintf(stderr, + "%s:%d:warning: ignoring unsupported character '%c'\n", + zconf_curname(), zconf_lineno(), chr); +} + +#define INITIAL 0 +#define COMMAND 1 +#define HELP 2 +#define STRING 3 +#define PARAM 4 + +#ifndef YY_NO_UNISTD_H +/* Special case for "unistd.h", since it is non-ANSI. We include it way + * down here because we want the user's section 1 to have been scanned first. + * The user has a chance to override it with an option. + */ +#include +#endif + +#ifndef YY_EXTRA_TYPE +#define YY_EXTRA_TYPE void * +#endif + +static int yy_init_globals ( void ); + +/* Accessor methods to globals. + These are made visible to non-reentrant scanners for convenience. */ + +int yylex_destroy ( void ); + +int yyget_debug ( void ); + +void yyset_debug ( int debug_flag ); + +YY_EXTRA_TYPE yyget_extra ( void ); + +void yyset_extra ( YY_EXTRA_TYPE user_defined ); + +FILE *yyget_in ( void ); + +void yyset_in ( FILE * _in_str ); + +FILE *yyget_out ( void ); + +void yyset_out ( FILE * _out_str ); + + int yyget_leng ( void ); + +char *yyget_text ( void ); + +int yyget_lineno ( void ); + +void yyset_lineno ( int _line_number ); + +/* Macros after this point can all be overridden by user definitions in + * section 1. + */ + +#ifndef YY_SKIP_YYWRAP +#ifdef __cplusplus +extern "C" int yywrap ( void ); +#else +extern int yywrap ( void ); +#endif +#endif + +#ifndef YY_NO_UNPUT + + static void yyunput ( int c, char *buf_ptr ); + +#endif + +#ifndef yytext_ptr +static void yy_flex_strncpy ( char *, const char *, int ); +#endif + +#ifdef YY_NEED_STRLEN +static int yy_flex_strlen ( const char * ); +#endif + +#ifndef YY_NO_INPUT +#ifdef __cplusplus +static int yyinput ( void ); +#else +static int input ( void ); +#endif + +#endif + +/* Amount of stuff to slurp up with each read. */ +#ifndef YY_READ_BUF_SIZE +#ifdef __ia64__ +/* On IA-64, the buffer size is 16k, not 8k */ +#define YY_READ_BUF_SIZE 16384 +#else +#define YY_READ_BUF_SIZE 8192 +#endif /* __ia64__ */ +#endif + +/* Copy whatever the last rule matched to the standard output. */ +#ifndef ECHO +/* This used to be an fputs(), but since the string might contain NUL's, + * we now use fwrite(). + */ +#define ECHO do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0) +#endif + +/* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, + * is returned in "result". + */ +#ifndef YY_INPUT +#define YY_INPUT(buf,result,max_size) \ + errno=0; \ + while ( (result = (int) read( fileno(yyin), buf, (yy_size_t) max_size )) < 0 ) \ + { \ + if( errno != EINTR) \ + { \ + YY_FATAL_ERROR( "input in flex scanner failed" ); \ + break; \ + } \ + errno=0; \ + clearerr(yyin); \ + }\ +\ + +#endif + +/* No semi-colon after return; correct usage is to write "yyterminate();" - + * we don't want an extra ';' after the "return" because that will cause + * some compilers to complain about unreachable statements. + */ +#ifndef yyterminate +#define yyterminate() return YY_NULL +#endif + +/* Number of entries by which start-condition stack grows. */ +#ifndef YY_START_STACK_INCR +#define YY_START_STACK_INCR 25 +#endif + +/* Report a fatal error. */ +#ifndef YY_FATAL_ERROR +#define YY_FATAL_ERROR(msg) yy_fatal_error( msg ) +#endif + +/* end tables serialization structures and prototypes */ + +/* Default declaration of generated scanner - a define so the user can + * easily add parameters. + */ +#ifndef YY_DECL +#define YY_DECL_IS_OURS 1 + +extern int yylex (void); + +#define YY_DECL int yylex (void) +#endif /* !YY_DECL */ + +/* Code executed at the beginning of each rule, after yytext and yyleng + * have been set up. + */ +#ifndef YY_USER_ACTION +#define YY_USER_ACTION +#endif + +/* Code executed at the end of each rule. */ +#ifndef YY_BREAK +#define YY_BREAK /*LINTED*/break; +#endif + +#define YY_RULE_SETUP \ + YY_USER_ACTION + +/** The main scanner function which does all the work. + */ +YY_DECL +{ + yy_state_type yy_current_state; + char *yy_cp, *yy_bp; + int yy_act; + + if ( !(yy_init) ) + { + (yy_init) = 1; + +#ifdef YY_USER_INIT + YY_USER_INIT; +#endif + + if ( ! (yy_start) ) + (yy_start) = 1; /* first start state */ + + if ( ! yyin ) + yyin = stdin; + + if ( ! yyout ) + yyout = stdout; + + if ( ! YY_CURRENT_BUFFER ) { + yyensure_buffer_stack (); + YY_CURRENT_BUFFER_LVALUE = + yy_create_buffer( yyin, YY_BUF_SIZE ); + } + + yy_load_buffer_state( ); + } + + { + + int str = 0; + int ts, i; + + while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */ + { + yy_cp = (yy_c_buf_p); + + /* Support of yytext. */ + *yy_cp = (yy_hold_char); + + /* yy_bp points to the position in yy_ch_buf of the start of + * the current run. + */ + yy_bp = yy_cp; + + yy_current_state = (yy_start); +yy_match: + while ( (yy_current_state = yy_nxt[yy_current_state][ yy_ec[YY_SC_TO_UI(*yy_cp)] ]) > 0 ) + ++yy_cp; + + yy_current_state = -yy_current_state; + +yy_find_action: + yy_act = yy_accept[yy_current_state]; + + YY_DO_BEFORE_ACTION; + + if ( yy_act != YY_END_OF_BUFFER && yy_rule_can_match_eol[yy_act] ) + { + int yyl; + for ( yyl = 0; yyl < yyleng; ++yyl ) + if ( yytext[yyl] == '\n' ) + + yylineno++; +; + } + +do_action: /* This label is used only to access EOF actions. */ + + switch ( yy_act ) + { /* beginning of action switch */ +case 1: +/* rule 1 can match eol */ +case 2: +/* rule 2 can match eol */ +YY_RULE_SETUP +{ + return T_EOL; +} + YY_BREAK +case 3: +YY_RULE_SETUP + + YY_BREAK +case 4: +YY_RULE_SETUP +{ + BEGIN(COMMAND); +} + YY_BREAK +case 5: +YY_RULE_SETUP +{ + unput(yytext[0]); + BEGIN(COMMAND); +} + YY_BREAK + +case 6: +YY_RULE_SETUP +{ + const struct kconf_id *id = kconf_id_lookup(yytext, yyleng); + BEGIN(PARAM); + current_pos.file = current_file; + current_pos.lineno = yylineno; + if (id && id->flags & TF_COMMAND) { + yylval.id = id; + return id->token; + } + alloc_string(yytext, yyleng); + yylval.string = text; + return T_WORD; + } + YY_BREAK +case 7: +YY_RULE_SETUP +warn_ignored_character(*yytext); + YY_BREAK +case 8: +/* rule 8 can match eol */ +YY_RULE_SETUP +{ + BEGIN(INITIAL); + return T_EOL; + } + YY_BREAK + +case 9: +YY_RULE_SETUP +return T_AND; + YY_BREAK +case 10: +YY_RULE_SETUP +return T_OR; + YY_BREAK +case 11: +YY_RULE_SETUP +return T_OPEN_PAREN; + YY_BREAK +case 12: +YY_RULE_SETUP +return T_CLOSE_PAREN; + YY_BREAK +case 13: +YY_RULE_SETUP +return T_NOT; + YY_BREAK +case 14: +YY_RULE_SETUP +return T_EQUAL; + YY_BREAK +case 15: +YY_RULE_SETUP +return T_UNEQUAL; + YY_BREAK +case 16: +YY_RULE_SETUP +return T_LESS_EQUAL; + YY_BREAK +case 17: +YY_RULE_SETUP +return T_GREATER_EQUAL; + YY_BREAK +case 18: +YY_RULE_SETUP +return T_LESS; + YY_BREAK +case 19: +YY_RULE_SETUP +return T_GREATER; + YY_BREAK +case 20: +YY_RULE_SETUP +{ + str = yytext[0]; + new_string(); + BEGIN(STRING); + } + YY_BREAK +case 21: +/* rule 21 can match eol */ +YY_RULE_SETUP +BEGIN(INITIAL); return T_EOL; + YY_BREAK +case 22: +YY_RULE_SETUP +{ + const struct kconf_id *id = kconf_id_lookup(yytext, yyleng); + if (id && id->flags & TF_PARAM) { + yylval.id = id; + return id->token; + } + alloc_string(yytext, yyleng); + yylval.string = text; + return T_WORD; + } + YY_BREAK +case 23: +YY_RULE_SETUP +/* comment */ + YY_BREAK +case 24: +/* rule 24 can match eol */ +YY_RULE_SETUP +; + YY_BREAK +case 25: +YY_RULE_SETUP + + YY_BREAK +case 26: +YY_RULE_SETUP +warn_ignored_character(*yytext); + YY_BREAK +case YY_STATE_EOF(PARAM): +{ + BEGIN(INITIAL); + } + YY_BREAK + +case 27: +/* rule 27 can match eol */ +*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */ +YY_LINENO_REWIND_TO(yy_cp - 1); +(yy_c_buf_p) = yy_cp -= 1; +YY_DO_BEFORE_ACTION; /* set up yytext again */ +YY_RULE_SETUP +{ + append_string(yytext, yyleng); + yylval.string = text; + return T_WORD_QUOTE; + } + YY_BREAK +case 28: +YY_RULE_SETUP +{ + append_string(yytext, yyleng); + } + YY_BREAK +case 29: +/* rule 29 can match eol */ +*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */ +YY_LINENO_REWIND_TO(yy_cp - 1); +(yy_c_buf_p) = yy_cp -= 1; +YY_DO_BEFORE_ACTION; /* set up yytext again */ +YY_RULE_SETUP +{ + append_string(yytext + 1, yyleng - 1); + yylval.string = text; + return T_WORD_QUOTE; + } + YY_BREAK +case 30: +YY_RULE_SETUP +{ + append_string(yytext + 1, yyleng - 1); + } + YY_BREAK +case 31: +YY_RULE_SETUP +{ + if (str == yytext[0]) { + BEGIN(PARAM); + yylval.string = text; + return T_WORD_QUOTE; + } else + append_string(yytext, 1); + } + YY_BREAK +case 32: +/* rule 32 can match eol */ +YY_RULE_SETUP +{ + fprintf(stderr, + "%s:%d:warning: multi-line strings not supported\n", + zconf_curname(), zconf_lineno()); + BEGIN(INITIAL); + return T_EOL; + } + YY_BREAK +case YY_STATE_EOF(STRING): +{ + BEGIN(INITIAL); + } + YY_BREAK + +case 33: +YY_RULE_SETUP +{ + ts = 0; + for (i = 0; i < yyleng; i++) { + if (yytext[i] == '\t') + ts = (ts & ~7) + 8; + else + ts++; + } + last_ts = ts; + if (first_ts) { + if (ts < first_ts) { + zconf_endhelp(); + return T_HELPTEXT; + } + ts -= first_ts; + while (ts > 8) { + append_string(" ", 8); + ts -= 8; + } + append_string(" ", ts); + } + } + YY_BREAK +case 34: +/* rule 34 can match eol */ +*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */ +YY_LINENO_REWIND_TO(yy_cp - 1); +(yy_c_buf_p) = yy_cp -= 1; +YY_DO_BEFORE_ACTION; /* set up yytext again */ +YY_RULE_SETUP +{ + zconf_endhelp(); + return T_HELPTEXT; + } + YY_BREAK +case 35: +/* rule 35 can match eol */ +YY_RULE_SETUP +{ + append_string("\n", 1); + } + YY_BREAK +case 36: +YY_RULE_SETUP +{ + while (yyleng) { + if ((yytext[yyleng-1] != ' ') && (yytext[yyleng-1] != '\t')) + break; + yyleng--; + } + append_string(yytext, yyleng); + if (!first_ts) + first_ts = last_ts; + } + YY_BREAK +case YY_STATE_EOF(HELP): +{ + zconf_endhelp(); + return T_HELPTEXT; + } + YY_BREAK + +case YY_STATE_EOF(INITIAL): +case YY_STATE_EOF(COMMAND): +{ + if (current_file) { + zconf_endfile(); + return T_EOL; + } + fclose(yyin); + yyterminate(); +} + YY_BREAK +case 37: +YY_RULE_SETUP +YY_FATAL_ERROR( "flex scanner jammed" ); + YY_BREAK + + case YY_END_OF_BUFFER: + { + /* Amount of text matched not including the EOB char. */ + int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1; + + /* Undo the effects of YY_DO_BEFORE_ACTION. */ + *yy_cp = (yy_hold_char); + YY_RESTORE_YY_MORE_OFFSET + + if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW ) + { + /* We're scanning a new file or input source. It's + * possible that this happened because the user + * just pointed yyin at a new source and called + * yylex(). If so, then we have to assure + * consistency between YY_CURRENT_BUFFER and our + * globals. Here is the right place to do so, because + * this is the first action (other than possibly a + * back-up) that will match for the new input source. + */ + (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; + YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin; + YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL; + } + + /* Note that here we test for yy_c_buf_p "<=" to the position + * of the first EOB in the buffer, since yy_c_buf_p will + * already have been incremented past the NUL character + * (since all states make transitions on EOB to the + * end-of-buffer state). Contrast this with the test + * in input(). + */ + if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) + { /* This was really a NUL. */ + yy_state_type yy_next_state; + + (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text; + + yy_current_state = yy_get_previous_state( ); + + /* Okay, we're now positioned to make the NUL + * transition. We couldn't have + * yy_get_previous_state() go ahead and do it + * for us because it doesn't know how to deal + * with the possibility of jamming (and we don't + * want to build jamming into it because then it + * will run more slowly). + */ + + yy_next_state = yy_try_NUL_trans( yy_current_state ); + + yy_bp = (yytext_ptr) + YY_MORE_ADJ; + + if ( yy_next_state ) + { + /* Consume the NUL. */ + yy_cp = ++(yy_c_buf_p); + yy_current_state = yy_next_state; + goto yy_match; + } + + else + { + yy_cp = (yy_c_buf_p); + goto yy_find_action; + } + } + + else switch ( yy_get_next_buffer( ) ) + { + case EOB_ACT_END_OF_FILE: + { + (yy_did_buffer_switch_on_eof) = 0; + + if ( yywrap( ) ) + { + /* Note: because we've taken care in + * yy_get_next_buffer() to have set up + * yytext, we can now set up + * yy_c_buf_p so that if some total + * hoser (like flex itself) wants to + * call the scanner after we return the + * YY_NULL, it'll still work - another + * YY_NULL will get returned. + */ + (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ; + + yy_act = YY_STATE_EOF(YY_START); + goto do_action; + } + + else + { + if ( ! (yy_did_buffer_switch_on_eof) ) + YY_NEW_FILE; + } + break; + } + + case EOB_ACT_CONTINUE_SCAN: + (yy_c_buf_p) = + (yytext_ptr) + yy_amount_of_matched_text; + + yy_current_state = yy_get_previous_state( ); + + yy_cp = (yy_c_buf_p); + yy_bp = (yytext_ptr) + YY_MORE_ADJ; + goto yy_match; + + case EOB_ACT_LAST_MATCH: + (yy_c_buf_p) = + &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)]; + + yy_current_state = yy_get_previous_state( ); + + yy_cp = (yy_c_buf_p); + yy_bp = (yytext_ptr) + YY_MORE_ADJ; + goto yy_find_action; + } + break; + } + + default: + YY_FATAL_ERROR( + "fatal flex scanner internal error--no action found" ); + } /* end of action switch */ + } /* end of scanning one token */ + } /* end of user's declarations */ +} /* end of yylex */ + +/* yy_get_next_buffer - try to read in a new buffer + * + * Returns a code representing an action: + * EOB_ACT_LAST_MATCH - + * EOB_ACT_CONTINUE_SCAN - continue scanning from current position + * EOB_ACT_END_OF_FILE - end of file + */ +static int yy_get_next_buffer (void) +{ + char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf; + char *source = (yytext_ptr); + int number_to_move, i; + int ret_val; + + if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] ) + YY_FATAL_ERROR( + "fatal flex scanner internal error--end of buffer missed" ); + + if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 ) + { /* Don't try to fill the buffer, so this is an EOF. */ + if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 ) + { + /* We matched a single character, the EOB, so + * treat this as a final EOF. + */ + return EOB_ACT_END_OF_FILE; + } + + else + { + /* We matched some text prior to the EOB, first + * process it. + */ + return EOB_ACT_LAST_MATCH; + } + } + + /* Try to read more data. */ + + /* First move last chars to start of buffer. */ + number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr) - 1); + + for ( i = 0; i < number_to_move; ++i ) + *(dest++) = *(source++); + + if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING ) + /* don't do the read, it's not guaranteed to return an EOF, + * just force an EOF + */ + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0; + + else + { + int num_to_read = + YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; + + while ( num_to_read <= 0 ) + { /* Not enough room in the buffer - grow it. */ + + /* just a shorter name for the current buffer */ + YY_BUFFER_STATE b = YY_CURRENT_BUFFER_LVALUE; + + int yy_c_buf_p_offset = + (int) ((yy_c_buf_p) - b->yy_ch_buf); + + if ( b->yy_is_our_buffer ) + { + int new_size = b->yy_buf_size * 2; + + if ( new_size <= 0 ) + b->yy_buf_size += b->yy_buf_size / 8; + else + b->yy_buf_size *= 2; + + b->yy_ch_buf = (char *) + /* Include room in for 2 EOB chars. */ + yyrealloc( (void *) b->yy_ch_buf, + (yy_size_t) (b->yy_buf_size + 2) ); + } + else + /* Can't grow it, we don't own it. */ + b->yy_ch_buf = NULL; + + if ( ! b->yy_ch_buf ) + YY_FATAL_ERROR( + "fatal error - scanner input buffer overflow" ); + + (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset]; + + num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size - + number_to_move - 1; + + } + + if ( num_to_read > YY_READ_BUF_SIZE ) + num_to_read = YY_READ_BUF_SIZE; + + /* Read in more data. */ + YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), + (yy_n_chars), num_to_read ); + + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); + } + + if ( (yy_n_chars) == 0 ) + { + if ( number_to_move == YY_MORE_ADJ ) + { + ret_val = EOB_ACT_END_OF_FILE; + yyrestart( yyin ); + } + + else + { + ret_val = EOB_ACT_LAST_MATCH; + YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = + YY_BUFFER_EOF_PENDING; + } + } + + else + ret_val = EOB_ACT_CONTINUE_SCAN; + + if (((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { + /* Extend the array by 50%, plus the number we really need. */ + int new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1); + YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc( + (void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf, (yy_size_t) new_size ); + if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) + YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" ); + /* "- 2" to take care of EOB's */ + YY_CURRENT_BUFFER_LVALUE->yy_buf_size = (int) (new_size - 2); + } + + (yy_n_chars) += number_to_move; + YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR; + YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR; + + (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0]; + + return ret_val; +} + +/* yy_get_previous_state - get the state just before the EOB char was reached */ + + static yy_state_type yy_get_previous_state (void) +{ + yy_state_type yy_current_state; + char *yy_cp; + + yy_current_state = (yy_start); + + for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp ) + { + yy_current_state = yy_nxt[yy_current_state][(*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1)]; + } + + return yy_current_state; +} + +/* yy_try_NUL_trans - try to make a transition on the NUL character + * + * synopsis + * next_state = yy_try_NUL_trans( current_state ); + */ + static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state ) +{ + int yy_is_jam; + + yy_current_state = yy_nxt[yy_current_state][1]; + yy_is_jam = (yy_current_state <= 0); + + return yy_is_jam ? 0 : yy_current_state; +} + +#ifndef YY_NO_UNPUT + + static void yyunput (int c, char * yy_bp ) +{ + char *yy_cp; + + yy_cp = (yy_c_buf_p); + + /* undo effects of setting up yytext */ + *yy_cp = (yy_hold_char); + + if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) + { /* need to shift things up to make room */ + /* +2 for EOB chars. */ + int number_to_move = (yy_n_chars) + 2; + char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[ + YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2]; + char *source = + &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]; + + while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) + *--dest = *--source; + + yy_cp += (int) (dest - source); + yy_bp += (int) (dest - source); + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = + (yy_n_chars) = (int) YY_CURRENT_BUFFER_LVALUE->yy_buf_size; + + if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) + YY_FATAL_ERROR( "flex scanner push-back overflow" ); + } + + *--yy_cp = (char) c; + + if ( c == '\n' ){ + --yylineno; + } + + (yytext_ptr) = yy_bp; + (yy_hold_char) = *yy_cp; + (yy_c_buf_p) = yy_cp; +} + +#endif + +#ifndef YY_NO_INPUT +#ifdef __cplusplus + static int yyinput (void) +#else + static int input (void) +#endif + +{ + int c; + + *(yy_c_buf_p) = (yy_hold_char); + + if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR ) + { + /* yy_c_buf_p now points to the character we want to return. + * If this occurs *before* the EOB characters, then it's a + * valid NUL; if not, then we've hit the end of the buffer. + */ + if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) + /* This was really a NUL. */ + *(yy_c_buf_p) = '\0'; + + else + { /* need more input */ + int offset = (int) ((yy_c_buf_p) - (yytext_ptr)); + ++(yy_c_buf_p); + + switch ( yy_get_next_buffer( ) ) + { + case EOB_ACT_LAST_MATCH: + /* This happens because yy_g_n_b() + * sees that we've accumulated a + * token and flags that we need to + * try matching the token before + * proceeding. But for input(), + * there's no matching to consider. + * So convert the EOB_ACT_LAST_MATCH + * to EOB_ACT_END_OF_FILE. + */ + + /* Reset buffer status. */ + yyrestart( yyin ); + + /*FALLTHROUGH*/ + + case EOB_ACT_END_OF_FILE: + { + if ( yywrap( ) ) + return 0; + + if ( ! (yy_did_buffer_switch_on_eof) ) + YY_NEW_FILE; +#ifdef __cplusplus + return yyinput(); +#else + return input(); +#endif + } + + case EOB_ACT_CONTINUE_SCAN: + (yy_c_buf_p) = (yytext_ptr) + offset; + break; + } + } + } + + c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */ + *(yy_c_buf_p) = '\0'; /* preserve yytext */ + (yy_hold_char) = *++(yy_c_buf_p); + + if ( c == '\n' ) + + yylineno++; +; + + return c; +} +#endif /* ifndef YY_NO_INPUT */ + +/** Immediately switch to a different input stream. + * @param input_file A readable stream. + * + * @note This function does not reset the start condition to @c INITIAL . + */ + void yyrestart (FILE * input_file ) +{ + + if ( ! YY_CURRENT_BUFFER ){ + yyensure_buffer_stack (); + YY_CURRENT_BUFFER_LVALUE = + yy_create_buffer( yyin, YY_BUF_SIZE ); + } + + yy_init_buffer( YY_CURRENT_BUFFER, input_file ); + yy_load_buffer_state( ); +} + +/** Switch to a different input buffer. + * @param new_buffer The new input buffer. + * + */ + void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer ) +{ + + /* TODO. We should be able to replace this entire function body + * with + * yypop_buffer_state(); + * yypush_buffer_state(new_buffer); + */ + yyensure_buffer_stack (); + if ( YY_CURRENT_BUFFER == new_buffer ) + return; + + if ( YY_CURRENT_BUFFER ) + { + /* Flush out information for old buffer. */ + *(yy_c_buf_p) = (yy_hold_char); + YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); + } + + YY_CURRENT_BUFFER_LVALUE = new_buffer; + yy_load_buffer_state( ); + + /* We don't actually know whether we did this switch during + * EOF (yywrap()) processing, but the only time this flag + * is looked at is after yywrap() is called, so it's safe + * to go ahead and always set it. + */ + (yy_did_buffer_switch_on_eof) = 1; +} + +static void yy_load_buffer_state (void) +{ + (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; + (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos; + yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file; + (yy_hold_char) = *(yy_c_buf_p); +} + +/** Allocate and initialize an input buffer state. + * @param file A readable stream. + * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE. + * + * @return the allocated buffer state. + */ + YY_BUFFER_STATE yy_create_buffer (FILE * file, int size ) +{ + YY_BUFFER_STATE b; + + b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) ); + if ( ! b ) + YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); + + b->yy_buf_size = size; + + /* yy_ch_buf has to be 2 characters longer than the size given because + * we need to put in 2 end-of-buffer characters. + */ + b->yy_ch_buf = (char *) yyalloc( (yy_size_t) (b->yy_buf_size + 2) ); + if ( ! b->yy_ch_buf ) + YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); + + b->yy_is_our_buffer = 1; + + yy_init_buffer( b, file ); + + return b; +} + +/** Destroy the buffer. + * @param b a buffer created with yy_create_buffer() + * + */ + void yy_delete_buffer (YY_BUFFER_STATE b ) +{ + + if ( ! b ) + return; + + if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */ + YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0; + + if ( b->yy_is_our_buffer ) + yyfree( (void *) b->yy_ch_buf ); + + yyfree( (void *) b ); +} + +/* Initializes or reinitializes a buffer. + * This function is sometimes called more than once on the same buffer, + * such as during a yyrestart() or at EOF. + */ + static void yy_init_buffer (YY_BUFFER_STATE b, FILE * file ) + +{ + int oerrno = errno; + + yy_flush_buffer( b ); + + b->yy_input_file = file; + b->yy_fill_buffer = 1; + + /* If b is the current buffer, then yy_init_buffer was _probably_ + * called from yyrestart() or through yy_get_next_buffer. + * In that case, we don't want to reset the lineno or column. + */ + if (b != YY_CURRENT_BUFFER){ + b->yy_bs_lineno = 1; + b->yy_bs_column = 0; + } + + b->yy_is_interactive = 0; + + errno = oerrno; +} + +/** Discard all buffered characters. On the next scan, YY_INPUT will be called. + * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER. + * + */ + void yy_flush_buffer (YY_BUFFER_STATE b ) +{ + if ( ! b ) + return; + + b->yy_n_chars = 0; + + /* We always need two end-of-buffer characters. The first causes + * a transition to the end-of-buffer state. The second causes + * a jam in that state. + */ + b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR; + b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR; + + b->yy_buf_pos = &b->yy_ch_buf[0]; + + b->yy_at_bol = 1; + b->yy_buffer_status = YY_BUFFER_NEW; + + if ( b == YY_CURRENT_BUFFER ) + yy_load_buffer_state( ); +} + +/** Pushes the new state onto the stack. The new state becomes + * the current state. This function will allocate the stack + * if necessary. + * @param new_buffer The new state. + * + */ +void yypush_buffer_state (YY_BUFFER_STATE new_buffer ) +{ + if (new_buffer == NULL) + return; + + yyensure_buffer_stack(); + + /* This block is copied from yy_switch_to_buffer. */ + if ( YY_CURRENT_BUFFER ) + { + /* Flush out information for old buffer. */ + *(yy_c_buf_p) = (yy_hold_char); + YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); + } + + /* Only push if top exists. Otherwise, replace top. */ + if (YY_CURRENT_BUFFER) + (yy_buffer_stack_top)++; + YY_CURRENT_BUFFER_LVALUE = new_buffer; + + /* copied from yy_switch_to_buffer. */ + yy_load_buffer_state( ); + (yy_did_buffer_switch_on_eof) = 1; +} + +/** Removes and deletes the top of the stack, if present. + * The next element becomes the new top. + * + */ +void yypop_buffer_state (void) +{ + if (!YY_CURRENT_BUFFER) + return; + + yy_delete_buffer(YY_CURRENT_BUFFER ); + YY_CURRENT_BUFFER_LVALUE = NULL; + if ((yy_buffer_stack_top) > 0) + --(yy_buffer_stack_top); + + if (YY_CURRENT_BUFFER) { + yy_load_buffer_state( ); + (yy_did_buffer_switch_on_eof) = 1; + } +} + +/* Allocates the stack if it does not exist. + * Guarantees space for at least one push. + */ +static void yyensure_buffer_stack (void) +{ + yy_size_t num_to_alloc; + + if (!(yy_buffer_stack)) { + + /* First allocation is just for 2 elements, since we don't know if this + * scanner will even need a stack. We use 2 instead of 1 to avoid an + * immediate realloc on the next call. + */ + num_to_alloc = 1; /* After all that talk, this was set to 1 anyways... */ + (yy_buffer_stack) = (struct yy_buffer_state**)yyalloc + (num_to_alloc * sizeof(struct yy_buffer_state*) + ); + if ( ! (yy_buffer_stack) ) + YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); + + memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); + + (yy_buffer_stack_max) = num_to_alloc; + (yy_buffer_stack_top) = 0; + return; + } + + if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){ + + /* Increase the buffer to prepare for a possible push. */ + yy_size_t grow_size = 8 /* arbitrary grow size */; + + num_to_alloc = (yy_buffer_stack_max) + grow_size; + (yy_buffer_stack) = (struct yy_buffer_state**)yyrealloc + ((yy_buffer_stack), + num_to_alloc * sizeof(struct yy_buffer_state*) + ); + if ( ! (yy_buffer_stack) ) + YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); + + /* zero only the new slots.*/ + memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*)); + (yy_buffer_stack_max) = num_to_alloc; + } +} + +/** Setup the input buffer state to scan directly from a user-specified character buffer. + * @param base the character buffer + * @param size the size in bytes of the character buffer + * + * @return the newly allocated buffer state object. + */ +YY_BUFFER_STATE yy_scan_buffer (char * base, yy_size_t size ) +{ + YY_BUFFER_STATE b; + + if ( size < 2 || + base[size-2] != YY_END_OF_BUFFER_CHAR || + base[size-1] != YY_END_OF_BUFFER_CHAR ) + /* They forgot to leave room for the EOB's. */ + return NULL; + + b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) ); + if ( ! b ) + YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" ); + + b->yy_buf_size = (int) (size - 2); /* "- 2" to take care of EOB's */ + b->yy_buf_pos = b->yy_ch_buf = base; + b->yy_is_our_buffer = 0; + b->yy_input_file = NULL; + b->yy_n_chars = b->yy_buf_size; + b->yy_is_interactive = 0; + b->yy_at_bol = 1; + b->yy_fill_buffer = 0; + b->yy_buffer_status = YY_BUFFER_NEW; + + yy_switch_to_buffer( b ); + + return b; +} + +/** Setup the input buffer state to scan a string. The next call to yylex() will + * scan from a @e copy of @a str. + * @param yystr a NUL-terminated string to scan + * + * @return the newly allocated buffer state object. + * @note If you want to scan bytes that may contain NUL values, then use + * yy_scan_bytes() instead. + */ +YY_BUFFER_STATE yy_scan_string (const char * yystr ) +{ + + return yy_scan_bytes( yystr, (int) strlen(yystr) ); +} + +/** Setup the input buffer state to scan the given bytes. The next call to yylex() will + * scan from a @e copy of @a bytes. + * @param yybytes the byte buffer to scan + * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes. + * + * @return the newly allocated buffer state object. + */ +YY_BUFFER_STATE yy_scan_bytes (const char * yybytes, int _yybytes_len ) +{ + YY_BUFFER_STATE b; + char *buf; + yy_size_t n; + int i; + + /* Get memory for full buffer, including space for trailing EOB's. */ + n = (yy_size_t) (_yybytes_len + 2); + buf = (char *) yyalloc( n ); + if ( ! buf ) + YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" ); + + for ( i = 0; i < _yybytes_len; ++i ) + buf[i] = yybytes[i]; + + buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR; + + b = yy_scan_buffer( buf, n ); + if ( ! b ) + YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" ); + + /* It's okay to grow etc. this buffer, and we should throw it + * away when we're done. + */ + b->yy_is_our_buffer = 1; + + return b; +} + +#ifndef YY_EXIT_FAILURE +#define YY_EXIT_FAILURE 2 +#endif + +static void yynoreturn yy_fatal_error (const char* msg ) +{ + fprintf( stderr, "%s\n", msg ); + exit( YY_EXIT_FAILURE ); +} + +/* Redefine yyless() so it works in section 3 code. */ + +#undef yyless +#define yyless(n) \ + do \ + { \ + /* Undo effects of setting up yytext. */ \ + int yyless_macro_arg = (n); \ + YY_LESS_LINENO(yyless_macro_arg);\ + yytext[yyleng] = (yy_hold_char); \ + (yy_c_buf_p) = yytext + yyless_macro_arg; \ + (yy_hold_char) = *(yy_c_buf_p); \ + *(yy_c_buf_p) = '\0'; \ + yyleng = yyless_macro_arg; \ + } \ + while ( 0 ) + +/* Accessor methods (get/set functions) to struct members. */ + +/** Get the current line number. + * + */ +int yyget_lineno (void) +{ + + return yylineno; +} + +/** Get the input stream. + * + */ +FILE *yyget_in (void) +{ + return yyin; +} + +/** Get the output stream. + * + */ +FILE *yyget_out (void) +{ + return yyout; +} + +/** Get the length of the current token. + * + */ +int yyget_leng (void) +{ + return yyleng; +} + +/** Get the current token. + * + */ + +char *yyget_text (void) +{ + return yytext; +} + +/** Set the current line number. + * @param _line_number line number + * + */ +void yyset_lineno (int _line_number ) +{ + + yylineno = _line_number; +} + +/** Set the input stream. This does not discard the current + * input buffer. + * @param _in_str A readable stream. + * + * @see yy_switch_to_buffer + */ +void yyset_in (FILE * _in_str ) +{ + yyin = _in_str ; +} + +void yyset_out (FILE * _out_str ) +{ + yyout = _out_str ; +} + +int yyget_debug (void) +{ + return yy_flex_debug; +} + +void yyset_debug (int _bdebug ) +{ + yy_flex_debug = _bdebug ; +} + +static int yy_init_globals (void) +{ + /* Initialization is the same as for the non-reentrant scanner. + * This function is called from yylex_destroy(), so don't allocate here. + */ + + /* We do not touch yylineno unless the option is enabled. */ + yylineno = 1; + + (yy_buffer_stack) = NULL; + (yy_buffer_stack_top) = 0; + (yy_buffer_stack_max) = 0; + (yy_c_buf_p) = NULL; + (yy_init) = 0; + (yy_start) = 0; + +/* Defined in main.c */ +#ifdef YY_STDINIT + yyin = stdin; + yyout = stdout; +#else + yyin = NULL; + yyout = NULL; +#endif + + /* For future reference: Set errno on error, since we are called by + * yylex_init() + */ + return 0; +} + +/* yylex_destroy is for both reentrant and non-reentrant scanners. */ +int yylex_destroy (void) +{ + + /* Pop the buffer stack, destroying each element. */ + while(YY_CURRENT_BUFFER){ + yy_delete_buffer( YY_CURRENT_BUFFER ); + YY_CURRENT_BUFFER_LVALUE = NULL; + yypop_buffer_state(); + } + + /* Destroy the stack itself. */ + yyfree((yy_buffer_stack) ); + (yy_buffer_stack) = NULL; + + /* Reset the globals. This is important in a non-reentrant scanner so the next time + * yylex() is called, initialization will occur. */ + yy_init_globals( ); + + return 0; +} + +/* + * Internal utility routines. + */ + +#ifndef yytext_ptr +static void yy_flex_strncpy (char* s1, const char * s2, int n ) +{ + + int i; + for ( i = 0; i < n; ++i ) + s1[i] = s2[i]; +} +#endif + +#ifdef YY_NEED_STRLEN +static int yy_flex_strlen (const char * s ) +{ + int n; + for ( n = 0; s[n]; ++n ) + ; + + return n; +} +#endif + +void *yyalloc (yy_size_t size ) +{ + return malloc(size); +} + +void *yyrealloc (void * ptr, yy_size_t size ) +{ + + /* The cast to (char *) in the following accommodates both + * implementations that use char* generic pointers, and those + * that use void* generic pointers. It works with the latter + * because both ANSI C and C++ allow castless assignment from + * any pointer type to void*, and deal with argument conversions + * as though doing an assignment. + */ + return realloc(ptr, size); +} + +void yyfree (void * ptr ) +{ + free( (char *) ptr ); /* see yyrealloc() for (char *) cast */ +} + +#define YYTABLES_NAME "yytables" + +void zconf_starthelp(void) +{ + new_string(); + last_ts = first_ts = 0; + BEGIN(HELP); +} + +static void zconf_endhelp(void) +{ + yylval.string = text; + BEGIN(INITIAL); +} + +/* + * Try to open specified file with following names: + * ./name + * $(srctree)/name + * The latter is used when srctree is separate from objtree + * when compiling the kernel. + * Return NULL if file is not found. + */ +FILE *zconf_fopen(const char *name) +{ + char *env, fullname[PATH_MAX+1]; + FILE *f; + + f = fopen(name, "r"); + if (!f && name != NULL && name[0] != '/') { + env = getenv(SRCTREE); + if (env) { + sprintf(fullname, "%s/%s", env, name); + f = fopen(fullname, "r"); + } + } + return f; +} + +void zconf_initscan(const char *name) +{ + yyin = zconf_fopen(name); + if (!yyin) { + fprintf(stderr, "can't find file %s\n", name); + exit(1); + } + + current_buf = xmalloc(sizeof(*current_buf)); + memset(current_buf, 0, sizeof(*current_buf)); + + current_file = file_lookup(name); + yylineno = 1; +} + +void zconf_nextfile(const char *name) +{ + struct file *iter; + struct file *file = file_lookup(name); + struct buffer *buf = xmalloc(sizeof(*buf)); + memset(buf, 0, sizeof(*buf)); + + current_buf->state = YY_CURRENT_BUFFER; + yyin = zconf_fopen(file->name); + if (!yyin) { + fprintf(stderr, "%s:%d: can't open file \"%s\"\n", + zconf_curname(), zconf_lineno(), file->name); + exit(1); + } + yy_switch_to_buffer(yy_create_buffer(yyin, YY_BUF_SIZE)); + buf->parent = current_buf; + current_buf = buf; + + current_file->lineno = yylineno; + file->parent = current_file; + + for (iter = current_file; iter; iter = iter->parent) { + if (!strcmp(iter->name, file->name)) { + fprintf(stderr, + "Recursive inclusion detected.\n" + "Inclusion path:\n" + " current file : %s\n", file->name); + iter = file; + do { + iter = iter->parent; + fprintf(stderr, " included from: %s:%d\n", + iter->name, iter->lineno - 1); + } while (strcmp(iter->name, file->name)); + exit(1); + } + } + + yylineno = 1; + current_file = file; +} + +static void zconf_endfile(void) +{ + struct buffer *parent; + + current_file = current_file->parent; + if (current_file) + yylineno = current_file->lineno; + + parent = current_buf->parent; + if (parent) { + fclose(yyin); + yy_delete_buffer(YY_CURRENT_BUFFER); + yy_switch_to_buffer(parent->state); + } + free(current_buf); + current_buf = parent; +} + +int zconf_lineno(void) +{ + return current_pos.lineno; +} + +const char *zconf_curname(void) +{ + return current_pos.file ? current_pos.file->name : ""; +} + diff --git a/support/kconfig/zconf.tab.c_shipped b/support/kconfig/zconf.tab.c_shipped new file mode 100644 index 00000000..4eca5b31 --- /dev/null +++ b/support/kconfig/zconf.tab.c_shipped @@ -0,0 +1,2488 @@ +/* A Bison parser, made by GNU Bison 3.0.4. */ + +/* Bison implementation for Yacc-like parsers in C + + Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 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, see . */ + +/* As a special exception, you may create a larger work that contains + part or all of the Bison parser skeleton and distribute that work + under terms of your choice, so long as that work isn't itself a + parser generator using the skeleton or a modified version thereof + as a parser skeleton. Alternatively, if you modify or redistribute + the parser skeleton itself, you may (at your option) remove this + special exception, which will cause the skeleton and the resulting + Bison output files to be licensed under the GNU General Public + License without this special exception. + + This special exception was added by the Free Software Foundation in + version 2.2 of Bison. */ + +/* C LALR(1) parser skeleton written by Richard Stallman, by + simplifying the original so-called "semantic" parser. */ + +/* All symbols defined below should begin with yy or YY, to avoid + infringing on user name space. This should be done even for local + variables, as they might otherwise be expanded by user macros. + There are some unavoidable exceptions within include files to + define necessary library symbols; they are noted "INFRINGES ON + USER NAME SPACE" below. */ + +/* Identify Bison output. */ +#define YYBISON 1 + +/* Bison version. */ +#define YYBISON_VERSION "3.0.4" + +/* Skeleton name. */ +#define YYSKELETON_NAME "yacc.c" + +/* Pure parsers. */ +#define YYPURE 0 + +/* Push parsers. */ +#define YYPUSH 0 + +/* Pull parsers. */ +#define YYPULL 1 + + + + +/* Copy the first part of user declarations. */ + + +/* + * Copyright (C) 2002 Roman Zippel + * Released under the terms of the GNU GPL v2.0. + */ + +#include +#include +#include +#include +#include +#include + +#include "lkc.h" + +#define printd(mask, fmt...) if (cdebug & (mask)) printf(fmt) + +#define PRINTD 0x0001 +#define DEBUG_PARSE 0x0002 + +int cdebug = PRINTD; + +int yylex(void); +static void yyerror(const char *err); +static void zconfprint(const char *err, ...); +static void zconf_error(const char *err, ...); +static bool zconf_endtoken(const struct kconf_id *id, int starttoken, int endtoken); + +struct symbol *symbol_hash[SYMBOL_HASHSIZE]; + +static struct menu *current_menu, *current_entry; + + + + +# ifndef YY_NULLPTR +# if defined __cplusplus && 201103L <= __cplusplus +# define YY_NULLPTR nullptr +# else +# define YY_NULLPTR 0 +# endif +# endif + +/* Enabling verbose error messages. */ +#ifdef YYERROR_VERBOSE +# undef YYERROR_VERBOSE +# define YYERROR_VERBOSE 1 +#else +# define YYERROR_VERBOSE 0 +#endif + + +/* Debug traces. */ +#ifndef YYDEBUG +# define YYDEBUG 1 +#endif +#if YYDEBUG +extern int yydebug; +#endif + +/* Token type. */ +#ifndef YYTOKENTYPE +# define YYTOKENTYPE + enum yytokentype + { + T_MAINMENU = 258, + T_MENU = 259, + T_ENDMENU = 260, + T_SOURCE = 261, + T_CHOICE = 262, + T_ENDCHOICE = 263, + T_COMMENT = 264, + T_CONFIG = 265, + T_MENUCONFIG = 266, + T_HELP = 267, + T_HELPTEXT = 268, + T_IF = 269, + T_ENDIF = 270, + T_DEPENDS = 271, + T_OPTIONAL = 272, + T_PROMPT = 273, + T_TYPE = 274, + T_DEFAULT = 275, + T_SELECT = 276, + T_IMPLY = 277, + T_RANGE = 278, + T_VISIBLE = 279, + T_OPTION = 280, + T_ON = 281, + T_WORD = 282, + T_WORD_QUOTE = 283, + T_UNEQUAL = 284, + T_LESS = 285, + T_LESS_EQUAL = 286, + T_GREATER = 287, + T_GREATER_EQUAL = 288, + T_CLOSE_PAREN = 289, + T_OPEN_PAREN = 290, + T_EOL = 291, + T_OR = 292, + T_AND = 293, + T_EQUAL = 294, + T_NOT = 295 + }; +#endif + +/* Value type. */ +#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED + +union YYSTYPE +{ + + + char *string; + struct file *file; + struct symbol *symbol; + struct expr *expr; + struct menu *menu; + const struct kconf_id *id; + + +}; + +typedef union YYSTYPE YYSTYPE; +# define YYSTYPE_IS_TRIVIAL 1 +# define YYSTYPE_IS_DECLARED 1 +#endif + + +extern YYSTYPE yylval; + +int yyparse (void); + + + +/* Copy the second part of user declarations. */ + + +/* Include kconf_id.c here so it can see the token constants. */ +#include "kconf_id.c" + + + +#ifdef short +# undef short +#endif + +#ifdef YYTYPE_UINT8 +typedef YYTYPE_UINT8 yytype_uint8; +#else +typedef unsigned char yytype_uint8; +#endif + +#ifdef YYTYPE_INT8 +typedef YYTYPE_INT8 yytype_int8; +#else +typedef signed char yytype_int8; +#endif + +#ifdef YYTYPE_UINT16 +typedef YYTYPE_UINT16 yytype_uint16; +#else +typedef unsigned short int yytype_uint16; +#endif + +#ifdef YYTYPE_INT16 +typedef YYTYPE_INT16 yytype_int16; +#else +typedef short int yytype_int16; +#endif + +#ifndef YYSIZE_T +# ifdef __SIZE_TYPE__ +# define YYSIZE_T __SIZE_TYPE__ +# elif defined size_t +# define YYSIZE_T size_t +# elif ! defined YYSIZE_T +# include /* INFRINGES ON USER NAME SPACE */ +# define YYSIZE_T size_t +# else +# define YYSIZE_T unsigned int +# endif +#endif + +#define YYSIZE_MAXIMUM ((YYSIZE_T) -1) + +#ifndef YY_ +# if defined YYENABLE_NLS && YYENABLE_NLS +# if ENABLE_NLS +# include /* INFRINGES ON USER NAME SPACE */ +# define YY_(Msgid) dgettext ("bison-runtime", Msgid) +# endif +# endif +# ifndef YY_ +# define YY_(Msgid) Msgid +# endif +#endif + +#ifndef YY_ATTRIBUTE +# if (defined __GNUC__ \ + && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__))) \ + || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C +# define YY_ATTRIBUTE(Spec) __attribute__(Spec) +# else +# define YY_ATTRIBUTE(Spec) /* empty */ +# endif +#endif + +#ifndef YY_ATTRIBUTE_PURE +# define YY_ATTRIBUTE_PURE YY_ATTRIBUTE ((__pure__)) +#endif + +#ifndef YY_ATTRIBUTE_UNUSED +# define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__)) +#endif + +#if !defined _Noreturn \ + && (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112) +# if defined _MSC_VER && 1200 <= _MSC_VER +# define _Noreturn __declspec (noreturn) +# else +# define _Noreturn YY_ATTRIBUTE ((__noreturn__)) +# endif +#endif + +/* Suppress unused-variable warnings by "using" E. */ +#if ! defined lint || defined __GNUC__ +# define YYUSE(E) ((void) (E)) +#else +# define YYUSE(E) /* empty */ +#endif + +#if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__ +/* Suppress an incorrect diagnostic about yylval being uninitialized. */ +# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ + _Pragma ("GCC diagnostic push") \ + _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\ + _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"") +# define YY_IGNORE_MAYBE_UNINITIALIZED_END \ + _Pragma ("GCC diagnostic pop") +#else +# define YY_INITIAL_VALUE(Value) Value +#endif +#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN +# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN +# define YY_IGNORE_MAYBE_UNINITIALIZED_END +#endif +#ifndef YY_INITIAL_VALUE +# define YY_INITIAL_VALUE(Value) /* Nothing. */ +#endif + + +#if ! defined yyoverflow || YYERROR_VERBOSE + +/* The parser invokes alloca or malloc; define the necessary symbols. */ + +# ifdef YYSTACK_USE_ALLOCA +# if YYSTACK_USE_ALLOCA +# ifdef __GNUC__ +# define YYSTACK_ALLOC __builtin_alloca +# elif defined __BUILTIN_VA_ARG_INCR +# include /* INFRINGES ON USER NAME SPACE */ +# elif defined _AIX +# define YYSTACK_ALLOC __alloca +# elif defined _MSC_VER +# include /* INFRINGES ON USER NAME SPACE */ +# define alloca _alloca +# else +# define YYSTACK_ALLOC alloca +# if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS +# include /* INFRINGES ON USER NAME SPACE */ + /* Use EXIT_SUCCESS as a witness for stdlib.h. */ +# ifndef EXIT_SUCCESS +# define EXIT_SUCCESS 0 +# endif +# endif +# endif +# endif +# endif + +# ifdef YYSTACK_ALLOC + /* Pacify GCC's 'empty if-body' warning. */ +# define YYSTACK_FREE(Ptr) do { /* empty */; } while (0) +# ifndef YYSTACK_ALLOC_MAXIMUM + /* The OS might guarantee only one guard page at the bottom of the stack, + and a page size can be as small as 4096 bytes. So we cannot safely + invoke alloca (N) if N exceeds 4096. Use a slightly smaller number + to allow for a few compiler-allocated temporary stack slots. */ +# define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */ +# endif +# else +# define YYSTACK_ALLOC YYMALLOC +# define YYSTACK_FREE YYFREE +# ifndef YYSTACK_ALLOC_MAXIMUM +# define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM +# endif +# if (defined __cplusplus && ! defined EXIT_SUCCESS \ + && ! ((defined YYMALLOC || defined malloc) \ + && (defined YYFREE || defined free))) +# include /* INFRINGES ON USER NAME SPACE */ +# ifndef EXIT_SUCCESS +# define EXIT_SUCCESS 0 +# endif +# endif +# ifndef YYMALLOC +# define YYMALLOC malloc +# if ! defined malloc && ! defined EXIT_SUCCESS +void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */ +# endif +# endif +# ifndef YYFREE +# define YYFREE free +# if ! defined free && ! defined EXIT_SUCCESS +void free (void *); /* INFRINGES ON USER NAME SPACE */ +# endif +# endif +# endif +#endif /* ! defined yyoverflow || YYERROR_VERBOSE */ + + +#if (! defined yyoverflow \ + && (! defined __cplusplus \ + || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) + +/* A type that is properly aligned for any stack member. */ +union yyalloc +{ + yytype_int16 yyss_alloc; + YYSTYPE yyvs_alloc; +}; + +/* The size of the maximum gap between one aligned stack and the next. */ +# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1) + +/* The size of an array large to enough to hold all stacks, each with + N elements. */ +# define YYSTACK_BYTES(N) \ + ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \ + + YYSTACK_GAP_MAXIMUM) + +# define YYCOPY_NEEDED 1 + +/* Relocate STACK from its old location to the new one. The + local variables YYSIZE and YYSTACKSIZE give the old and new number of + elements in the stack, and YYPTR gives the new location of the + stack. Advance YYPTR to a properly aligned location for the next + stack. */ +# define YYSTACK_RELOCATE(Stack_alloc, Stack) \ + do \ + { \ + YYSIZE_T yynewbytes; \ + YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \ + Stack = &yyptr->Stack_alloc; \ + yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ + yyptr += yynewbytes / sizeof (*yyptr); \ + } \ + while (0) + +#endif + +#if defined YYCOPY_NEEDED && YYCOPY_NEEDED +/* Copy COUNT objects from SRC to DST. The source and destination do + not overlap. */ +# ifndef YYCOPY +# if defined __GNUC__ && 1 < __GNUC__ +# define YYCOPY(Dst, Src, Count) \ + __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src))) +# else +# define YYCOPY(Dst, Src, Count) \ + do \ + { \ + YYSIZE_T yyi; \ + for (yyi = 0; yyi < (Count); yyi++) \ + (Dst)[yyi] = (Src)[yyi]; \ + } \ + while (0) +# endif +# endif +#endif /* !YYCOPY_NEEDED */ + +/* YYFINAL -- State number of the termination state. */ +#define YYFINAL 11 +/* YYLAST -- Last index in YYTABLE. */ +#define YYLAST 325 + +/* YYNTOKENS -- Number of terminals. */ +#define YYNTOKENS 41 +/* YYNNTS -- Number of nonterminals. */ +#define YYNNTS 52 +/* YYNRULES -- Number of rules. */ +#define YYNRULES 126 +/* YYNSTATES -- Number of states. */ +#define YYNSTATES 206 + +/* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned + by yylex, with out-of-bounds checking. */ +#define YYUNDEFTOK 2 +#define YYMAXUTOK 295 + +#define YYTRANSLATE(YYX) \ + ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) + +/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM + as returned by yylex, without out-of-bounds checking. */ +static const yytype_uint8 yytranslate[] = +{ + 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 1, 2, 3, 4, + 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, 38, 39, 40 +}; + +#if YYDEBUG + /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ +static const yytype_uint16 yyrline[] = +{ + 0, 110, 110, 110, 112, 112, 116, 124, 134, 136, + 137, 138, 139, 140, 141, 145, 149, 149, 149, 149, + 149, 149, 149, 149, 149, 153, 154, 155, 156, 157, + 158, 162, 163, 169, 176, 181, 188, 197, 199, 200, + 201, 202, 203, 204, 207, 215, 221, 231, 237, 243, + 249, 252, 254, 267, 268, 273, 283, 288, 296, 299, + 301, 302, 303, 304, 305, 308, 314, 325, 331, 341, + 343, 348, 356, 364, 367, 369, 370, 371, 376, 383, + 388, 396, 399, 401, 402, 403, 406, 415, 422, 427, + 433, 451, 453, 454, 455, 458, 466, 468, 469, 472, + 479, 481, 486, 487, 490, 491, 492, 496, 497, 500, + 501, 504, 505, 506, 507, 508, 509, 510, 511, 512, + 513, 514, 518, 520, 521, 524, 525 +}; +#endif + +#if YYDEBUG || YYERROR_VERBOSE || 0 +/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. + First, the terminals, then, starting at YYNTOKENS, nonterminals. */ +static const char *const yytname[] = +{ + "$end", "error", "$undefined", "T_MAINMENU", "T_MENU", "T_ENDMENU", + "T_SOURCE", "T_CHOICE", "T_ENDCHOICE", "T_COMMENT", "T_CONFIG", + "T_MENUCONFIG", "T_HELP", "T_HELPTEXT", "T_IF", "T_ENDIF", "T_DEPENDS", + "T_OPTIONAL", "T_PROMPT", "T_TYPE", "T_DEFAULT", "T_SELECT", "T_IMPLY", + "T_RANGE", "T_VISIBLE", "T_OPTION", "T_ON", "T_WORD", "T_WORD_QUOTE", + "T_UNEQUAL", "T_LESS", "T_LESS_EQUAL", "T_GREATER", "T_GREATER_EQUAL", + "T_CLOSE_PAREN", "T_OPEN_PAREN", "T_EOL", "T_OR", "T_AND", "T_EQUAL", + "T_NOT", "$accept", "input", "start", "mainmenu_stmt", + "no_mainmenu_stmt", "stmt_list", "option_name", "common_stmt", + "option_error", "config_entry_start", "config_stmt", + "menuconfig_entry_start", "menuconfig_stmt", "config_option_list", + "config_option", "symbol_option", "symbol_option_list", + "symbol_option_arg", "choice", "choice_entry", "choice_end", + "choice_stmt", "choice_option_list", "choice_option", "choice_block", + "if_entry", "if_end", "if_stmt", "if_block", "menu", "menu_entry", + "menu_end", "menu_stmt", "menu_block", "source_stmt", "comment", + "comment_stmt", "help_start", "help", "depends_list", "depends", + "visibility_list", "visible", "prompt_stmt_opt", "prompt", "end", "nl", + "if_expr", "expr", "nonconst_symbol", "symbol", "word_opt", YY_NULLPTR +}; +#endif + +# ifdef YYPRINT +/* YYTOKNUM[NUM] -- (External) token number corresponding to the + (internal) symbol number NUM (which must be that of a token). */ +static const yytype_uint16 yytoknum[] = +{ + 0, 256, 257, 258, 259, 260, 261, 262, 263, 264, + 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, + 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295 +}; +# endif + +#define YYPACT_NINF -92 + +#define yypact_value_is_default(Yystate) \ + (!!((Yystate) == (-92))) + +#define YYTABLE_NINF -89 + +#define yytable_value_is_error(Yytable_value) \ + 0 + + /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing + STATE-NUM. */ +static const yytype_int16 yypact[] = +{ + 20, 33, -92, 16, -92, -92, -92, 21, -92, -92, + 29, -92, 152, 186, -92, -92, 40, 67, 33, 71, + 33, 42, 80, 33, 78, 78, 31, 82, -92, -92, + -92, -92, -92, -92, -92, -92, -92, 120, -92, 131, + -92, -92, -92, -92, -92, -92, -92, -92, -92, -92, + -92, -92, -92, -92, -92, -92, -92, -92, 109, -92, + 118, -92, 128, -92, 129, -92, 141, 142, -92, 31, + 31, 74, -92, 69, -92, 144, 145, 28, 119, 248, + 286, 77, 38, 77, 219, -92, -92, -92, -92, -92, + -92, -7, -92, 31, 31, 40, 52, 52, 52, 52, + 52, 52, -92, -92, 146, 147, 158, 33, 33, 31, + 78, 78, 52, -92, 184, -92, -92, -92, -92, 176, + -92, -92, 162, 33, 33, 78, -92, -92, -92, -92, + -92, -92, -92, -92, -92, -92, -92, -92, -92, 197, + -92, 272, -92, -92, -92, -92, -92, -92, -92, -92, + -92, -92, 174, -92, -92, -92, -92, -92, -92, -92, + -92, -92, 31, 197, 178, 197, 59, 197, 197, 52, + 27, 179, -92, -92, 197, 180, 197, 31, -92, 111, + 181, -92, -92, 182, 185, 195, 197, 193, -92, -92, + 208, -92, 209, 113, -92, -92, -92, -92, -92, 211, + 33, -92, -92, -92, -92, -92 +}; + + /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. + Performed when YYTABLE does not specify something else to do. Zero + means the default is an error. */ +static const yytype_uint8 yydefact[] = +{ + 7, 0, 107, 0, 3, 8, 8, 7, 102, 103, + 0, 1, 0, 0, 108, 2, 6, 0, 0, 0, + 0, 125, 0, 0, 0, 0, 0, 0, 16, 21, + 17, 18, 23, 19, 20, 22, 24, 0, 25, 0, + 9, 37, 28, 37, 29, 59, 69, 10, 74, 26, + 96, 82, 11, 30, 91, 27, 12, 15, 0, 104, + 0, 126, 0, 105, 0, 122, 0, 0, 124, 0, + 0, 0, 123, 111, 106, 0, 0, 0, 0, 0, + 0, 0, 91, 0, 0, 78, 86, 55, 87, 33, + 35, 0, 119, 0, 0, 71, 0, 0, 0, 0, + 0, 0, 13, 14, 0, 0, 0, 0, 100, 0, + 0, 0, 0, 51, 0, 43, 42, 38, 39, 0, + 41, 40, 0, 0, 100, 0, 63, 64, 60, 62, + 61, 70, 58, 57, 75, 77, 73, 76, 72, 109, + 98, 0, 97, 83, 85, 81, 84, 80, 93, 94, + 92, 118, 120, 121, 117, 112, 113, 114, 115, 116, + 32, 89, 0, 109, 0, 109, 109, 109, 109, 0, + 0, 0, 90, 67, 109, 0, 109, 0, 99, 0, + 0, 44, 101, 0, 0, 0, 109, 53, 50, 31, + 0, 66, 0, 110, 95, 45, 46, 47, 48, 0, + 0, 52, 65, 68, 49, 54 +}; + + /* YYPGOTO[NTERM-NUM]. */ +static const yytype_int16 yypgoto[] = +{ + -92, -92, 241, -92, -92, 244, -92, -13, -66, -92, + -92, -92, -92, 218, -92, -92, -92, -92, -92, -92, + -92, -69, -92, -92, -92, -92, -92, -92, -92, -92, + -92, -92, 12, -92, -92, -92, -92, -92, 172, 170, + -64, -92, -92, 148, -1, 34, 1, 139, -68, -21, + -91, -92 +}; + + /* YYDEFGOTO[NTERM-NUM]. */ +static const yytype_int16 yydefgoto[] = +{ + -1, 3, 4, 5, 6, 12, 39, 40, 116, 41, + 42, 43, 44, 77, 117, 118, 170, 201, 45, 46, + 132, 47, 79, 128, 80, 48, 136, 49, 81, 50, + 51, 145, 52, 83, 53, 54, 55, 119, 120, 84, + 121, 82, 142, 164, 165, 56, 7, 178, 71, 72, + 73, 62 +}; + + /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If + positive, shift that token. If negative, reduce the rule whose + number is the opposite. If YYTABLE_NINF, syntax error. */ +static const yytype_int16 yytable[] = +{ + 10, 91, 92, 66, 67, 154, 155, 156, 157, 158, + 159, 16, 135, 127, 144, 130, 11, 58, 149, 60, + 150, 169, 64, 1, 1, 152, 153, 151, -34, 104, + 93, 94, -34, -34, -34, -34, -34, -34, -34, -34, + 105, 166, -34, -34, 106, -34, 107, 108, 109, 110, + 111, 112, -34, 113, 187, 114, 2, 14, 65, 68, + 8, 9, 139, 188, 115, 2, 69, 131, 134, 61, + 143, 70, 95, 177, 140, 149, 14, 150, 186, 65, + 68, 18, 19, 20, 21, 22, 23, 24, 25, 167, + 168, 26, 27, 137, 179, 146, 93, 94, 96, 97, + 98, 99, 100, 57, 176, 65, 163, 59, 101, 193, + 2, 93, 94, 38, 133, 138, 63, 147, 74, -36, + 104, 75, 174, -36, -36, -36, -36, -36, -36, -36, + -36, 105, 76, -36, -36, 106, -36, 107, 108, 109, + 110, 111, 112, -36, 113, 85, 114, 194, 93, 94, + 93, 94, -4, 17, 86, 115, 18, 19, 20, 21, + 22, 23, 24, 25, 87, 88, 26, 27, 28, 29, + 30, 31, 32, 33, 34, 35, 36, 89, 90, 37, + 102, 103, 160, 161, 162, 171, -5, 17, 38, 172, + 18, 19, 20, 21, 22, 23, 24, 25, 173, 205, + 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, + 36, 177, 94, 37, 181, 189, 191, 195, 196, -88, + 104, 197, 38, -88, -88, -88, -88, -88, -88, -88, + -88, 198, 200, -88, -88, 106, -88, -88, -88, -88, + -88, -88, -88, -88, 202, 203, 114, 204, 15, 104, + 13, 129, 141, -56, -56, 148, -56, -56, -56, -56, + 105, 78, -56, -56, 106, 122, 123, 124, 125, 0, + 0, 0, 175, 104, 0, 114, -79, -79, -79, -79, + -79, -79, -79, -79, 126, 0, -79, -79, 106, 0, + 0, 19, 20, 0, 22, 23, 24, 25, 0, 114, + 26, 27, 180, 0, 182, 183, 184, 185, 148, 0, + 0, 0, 0, 190, 0, 192, 0, 0, 0, 0, + 0, 0, 38, 0, 0, 199 +}; + +static const yytype_int16 yycheck[] = +{ + 1, 69, 70, 24, 25, 96, 97, 98, 99, 100, + 101, 10, 81, 79, 83, 79, 0, 18, 84, 20, + 84, 112, 23, 3, 3, 93, 94, 34, 0, 1, + 37, 38, 4, 5, 6, 7, 8, 9, 10, 11, + 12, 109, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 27, 27, 36, 36, 27, 28, + 27, 28, 24, 36, 36, 36, 35, 80, 81, 27, + 83, 40, 71, 14, 36, 141, 36, 141, 169, 27, + 28, 4, 5, 6, 7, 8, 9, 10, 11, 110, + 111, 14, 15, 81, 162, 83, 37, 38, 29, 30, + 31, 32, 33, 36, 125, 27, 107, 36, 39, 177, + 36, 37, 38, 36, 80, 81, 36, 83, 36, 0, + 1, 1, 123, 4, 5, 6, 7, 8, 9, 10, + 11, 12, 1, 14, 15, 16, 17, 18, 19, 20, + 21, 22, 23, 24, 25, 36, 27, 36, 37, 38, + 37, 38, 0, 1, 36, 36, 4, 5, 6, 7, + 8, 9, 10, 11, 36, 36, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 36, 36, 27, + 36, 36, 36, 36, 26, 1, 0, 1, 36, 13, + 4, 5, 6, 7, 8, 9, 10, 11, 36, 200, + 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, + 24, 14, 38, 27, 36, 36, 36, 36, 36, 0, + 1, 36, 36, 4, 5, 6, 7, 8, 9, 10, + 11, 36, 39, 14, 15, 16, 17, 18, 19, 20, + 21, 22, 23, 24, 36, 36, 27, 36, 7, 1, + 6, 79, 82, 5, 6, 36, 8, 9, 10, 11, + 12, 43, 14, 15, 16, 17, 18, 19, 20, -1, + -1, -1, 124, 1, -1, 27, 4, 5, 6, 7, + 8, 9, 10, 11, 36, -1, 14, 15, 16, -1, + -1, 5, 6, -1, 8, 9, 10, 11, -1, 27, + 14, 15, 163, -1, 165, 166, 167, 168, 36, -1, + -1, -1, -1, 174, -1, 176, -1, -1, -1, -1, + -1, -1, 36, -1, -1, 186 +}; + + /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing + symbol of state STATE-NUM. */ +static const yytype_uint8 yystos[] = +{ + 0, 3, 36, 42, 43, 44, 45, 87, 27, 28, + 85, 0, 46, 46, 36, 43, 87, 1, 4, 5, + 6, 7, 8, 9, 10, 11, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 27, 36, 47, + 48, 50, 51, 52, 53, 59, 60, 62, 66, 68, + 70, 71, 73, 75, 76, 77, 86, 36, 85, 36, + 85, 27, 92, 36, 85, 27, 90, 90, 28, 35, + 40, 89, 90, 91, 36, 1, 1, 54, 54, 63, + 65, 69, 82, 74, 80, 36, 36, 36, 36, 36, + 36, 89, 89, 37, 38, 87, 29, 30, 31, 32, + 33, 39, 36, 36, 1, 12, 16, 18, 19, 20, + 21, 22, 23, 25, 27, 36, 49, 55, 56, 78, + 79, 81, 17, 18, 19, 20, 36, 49, 64, 79, + 81, 48, 61, 86, 48, 62, 67, 73, 86, 24, + 36, 80, 83, 48, 62, 72, 73, 86, 36, 49, + 81, 34, 89, 89, 91, 91, 91, 91, 91, 91, + 36, 36, 26, 85, 84, 85, 89, 90, 90, 91, + 57, 1, 13, 36, 85, 84, 90, 14, 88, 89, + 88, 36, 88, 88, 88, 88, 91, 27, 36, 36, + 88, 36, 88, 89, 36, 36, 36, 36, 36, 88, + 39, 58, 36, 36, 36, 85 +}; + + /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ +static const yytype_uint8 yyr1[] = +{ + 0, 41, 42, 42, 43, 43, 44, 45, 46, 46, + 46, 46, 46, 46, 46, 46, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 48, 48, 48, 48, 48, + 48, 49, 49, 50, 51, 52, 53, 54, 54, 54, + 54, 54, 54, 54, 55, 55, 55, 55, 55, 55, + 56, 57, 57, 58, 58, 59, 60, 61, 62, 63, + 63, 63, 63, 63, 63, 64, 64, 64, 64, 65, + 65, 66, 67, 68, 69, 69, 69, 69, 70, 71, + 72, 73, 74, 74, 74, 74, 75, 76, 77, 78, + 79, 80, 80, 80, 80, 81, 82, 82, 82, 83, + 84, 84, 85, 85, 86, 86, 86, 87, 87, 88, + 88, 89, 89, 89, 89, 89, 89, 89, 89, 89, + 89, 89, 90, 91, 91, 92, 92 +}; + + /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */ +static const yytype_uint8 yyr2[] = +{ + 0, 2, 2, 1, 2, 2, 3, 0, 0, 2, + 2, 2, 2, 4, 4, 3, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 3, 2, 3, 2, 3, 2, 0, 2, 2, + 2, 2, 2, 2, 3, 4, 4, 4, 4, 5, + 3, 0, 3, 0, 2, 3, 2, 1, 3, 0, + 2, 2, 2, 2, 2, 4, 3, 2, 4, 0, + 2, 3, 1, 3, 0, 2, 2, 2, 3, 3, + 1, 3, 0, 2, 2, 2, 3, 3, 2, 2, + 2, 0, 2, 2, 2, 4, 0, 2, 2, 2, + 0, 2, 1, 1, 2, 2, 2, 1, 2, 0, + 2, 1, 3, 3, 3, 3, 3, 3, 3, 2, + 3, 3, 1, 1, 1, 0, 1 +}; + + +#define yyerrok (yyerrstatus = 0) +#define yyclearin (yychar = YYEMPTY) +#define YYEMPTY (-2) +#define YYEOF 0 + +#define YYACCEPT goto yyacceptlab +#define YYABORT goto yyabortlab +#define YYERROR goto yyerrorlab + + +#define YYRECOVERING() (!!yyerrstatus) + +#define YYBACKUP(Token, Value) \ +do \ + if (yychar == YYEMPTY) \ + { \ + yychar = (Token); \ + yylval = (Value); \ + YYPOPSTACK (yylen); \ + yystate = *yyssp; \ + goto yybackup; \ + } \ + else \ + { \ + yyerror (YY_("syntax error: cannot back up")); \ + YYERROR; \ + } \ +while (0) + +/* Error token number */ +#define YYTERROR 1 +#define YYERRCODE 256 + + + +/* Enable debugging if requested. */ +#if YYDEBUG + +# ifndef YYFPRINTF +# include /* INFRINGES ON USER NAME SPACE */ +# define YYFPRINTF fprintf +# endif + +# define YYDPRINTF(Args) \ +do { \ + if (yydebug) \ + YYFPRINTF Args; \ +} while (0) + +/* This macro is provided for backward compatibility. */ +#ifndef YY_LOCATION_PRINT +# define YY_LOCATION_PRINT(File, Loc) ((void) 0) +#endif + + +# define YY_SYMBOL_PRINT(Title, Type, Value, Location) \ +do { \ + if (yydebug) \ + { \ + YYFPRINTF (stderr, "%s ", Title); \ + yy_symbol_print (stderr, \ + Type, Value); \ + YYFPRINTF (stderr, "\n"); \ + } \ +} while (0) + + +/*----------------------------------------. +| Print this symbol's value on YYOUTPUT. | +`----------------------------------------*/ + +static void +yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep) +{ + FILE *yyo = yyoutput; + YYUSE (yyo); + if (!yyvaluep) + return; +# ifdef YYPRINT + if (yytype < YYNTOKENS) + YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep); +# endif + YYUSE (yytype); +} + + +/*--------------------------------. +| Print this symbol on YYOUTPUT. | +`--------------------------------*/ + +static void +yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep) +{ + YYFPRINTF (yyoutput, "%s %s (", + yytype < YYNTOKENS ? "token" : "nterm", yytname[yytype]); + + yy_symbol_value_print (yyoutput, yytype, yyvaluep); + YYFPRINTF (yyoutput, ")"); +} + +/*------------------------------------------------------------------. +| yy_stack_print -- Print the state stack from its BOTTOM up to its | +| TOP (included). | +`------------------------------------------------------------------*/ + +static void +yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop) +{ + YYFPRINTF (stderr, "Stack now"); + for (; yybottom <= yytop; yybottom++) + { + int yybot = *yybottom; + YYFPRINTF (stderr, " %d", yybot); + } + YYFPRINTF (stderr, "\n"); +} + +# define YY_STACK_PRINT(Bottom, Top) \ +do { \ + if (yydebug) \ + yy_stack_print ((Bottom), (Top)); \ +} while (0) + + +/*------------------------------------------------. +| Report that the YYRULE is going to be reduced. | +`------------------------------------------------*/ + +static void +yy_reduce_print (yytype_int16 *yyssp, YYSTYPE *yyvsp, int yyrule) +{ + unsigned long int yylno = yyrline[yyrule]; + int yynrhs = yyr2[yyrule]; + int yyi; + YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n", + yyrule - 1, yylno); + /* The symbols being reduced. */ + for (yyi = 0; yyi < yynrhs; yyi++) + { + YYFPRINTF (stderr, " $%d = ", yyi + 1); + yy_symbol_print (stderr, + yystos[yyssp[yyi + 1 - yynrhs]], + &(yyvsp[(yyi + 1) - (yynrhs)]) + ); + YYFPRINTF (stderr, "\n"); + } +} + +# define YY_REDUCE_PRINT(Rule) \ +do { \ + if (yydebug) \ + yy_reduce_print (yyssp, yyvsp, Rule); \ +} while (0) + +/* Nonzero means print parse trace. It is left uninitialized so that + multiple parsers can coexist. */ +int yydebug; +#else /* !YYDEBUG */ +# define YYDPRINTF(Args) +# define YY_SYMBOL_PRINT(Title, Type, Value, Location) +# define YY_STACK_PRINT(Bottom, Top) +# define YY_REDUCE_PRINT(Rule) +#endif /* !YYDEBUG */ + + +/* YYINITDEPTH -- initial size of the parser's stacks. */ +#ifndef YYINITDEPTH +# define YYINITDEPTH 200 +#endif + +/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only + if the built-in stack extension method is used). + + Do not make this value too large; the results are undefined if + YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH) + evaluated with infinite-precision integer arithmetic. */ + +#ifndef YYMAXDEPTH +# define YYMAXDEPTH 10000 +#endif + + +#if YYERROR_VERBOSE + +# ifndef yystrlen +# if defined __GLIBC__ && defined _STRING_H +# define yystrlen strlen +# else +/* Return the length of YYSTR. */ +static YYSIZE_T +yystrlen (const char *yystr) +{ + YYSIZE_T yylen; + for (yylen = 0; yystr[yylen]; yylen++) + continue; + return yylen; +} +# endif +# endif + +# ifndef yystpcpy +# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE +# define yystpcpy stpcpy +# else +/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in + YYDEST. */ +static char * +yystpcpy (char *yydest, const char *yysrc) +{ + char *yyd = yydest; + const char *yys = yysrc; + + while ((*yyd++ = *yys++) != '\0') + continue; + + return yyd - 1; +} +# endif +# endif + +# ifndef yytnamerr +/* Copy to YYRES the contents of YYSTR after stripping away unnecessary + quotes and backslashes, so that it's suitable for yyerror. The + heuristic is that double-quoting is unnecessary unless the string + contains an apostrophe, a comma, or backslash (other than + backslash-backslash). YYSTR is taken from yytname. If YYRES is + null, do not copy; instead, return the length of what the result + would have been. */ +static YYSIZE_T +yytnamerr (char *yyres, const char *yystr) +{ + if (*yystr == '"') + { + YYSIZE_T yyn = 0; + char const *yyp = yystr; + + for (;;) + switch (*++yyp) + { + case '\'': + case ',': + goto do_not_strip_quotes; + + case '\\': + if (*++yyp != '\\') + goto do_not_strip_quotes; + /* Fall through. */ + default: + if (yyres) + yyres[yyn] = *yyp; + yyn++; + break; + + case '"': + if (yyres) + yyres[yyn] = '\0'; + return yyn; + } + do_not_strip_quotes: ; + } + + if (! yyres) + return yystrlen (yystr); + + return yystpcpy (yyres, yystr) - yyres; +} +# endif + +/* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message + about the unexpected token YYTOKEN for the state stack whose top is + YYSSP. + + Return 0 if *YYMSG was successfully written. Return 1 if *YYMSG is + not large enough to hold the message. In that case, also set + *YYMSG_ALLOC to the required number of bytes. Return 2 if the + required number of bytes is too large to store. */ +static int +yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg, + yytype_int16 *yyssp, int yytoken) +{ + YYSIZE_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]); + YYSIZE_T yysize = yysize0; + enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; + /* Internationalized format string. */ + const char *yyformat = YY_NULLPTR; + /* Arguments of yyformat. */ + char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; + /* Number of reported tokens (one for the "unexpected", one per + "expected"). */ + int yycount = 0; + + /* There are many possibilities here to consider: + - If this state is a consistent state with a default action, then + the only way this function was invoked is if the default action + is an error action. In that case, don't check for expected + tokens because there are none. + - The only way there can be no lookahead present (in yychar) is if + this state is a consistent state with a default action. Thus, + detecting the absence of a lookahead is sufficient to determine + that there is no unexpected or expected token to report. In that + case, just report a simple "syntax error". + - Don't assume there isn't a lookahead just because this state is a + consistent state with a default action. There might have been a + previous inconsistent state, consistent state with a non-default + action, or user semantic action that manipulated yychar. + - Of course, the expected token list depends on states to have + correct lookahead information, and it depends on the parser not + to perform extra reductions after fetching a lookahead from the + scanner and before detecting a syntax error. Thus, state merging + (from LALR or IELR) and default reductions corrupt the expected + token list. However, the list is correct for canonical LR with + one exception: it will still contain any token that will not be + accepted due to an error action in a later state. + */ + if (yytoken != YYEMPTY) + { + int yyn = yypact[*yyssp]; + yyarg[yycount++] = yytname[yytoken]; + if (!yypact_value_is_default (yyn)) + { + /* Start YYX at -YYN if negative to avoid negative indexes in + YYCHECK. In other words, skip the first -YYN actions for + this state because they are default actions. */ + int yyxbegin = yyn < 0 ? -yyn : 0; + /* Stay within bounds of both yycheck and yytname. */ + int yychecklim = YYLAST - yyn + 1; + int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; + int yyx; + + for (yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR + && !yytable_value_is_error (yytable[yyx + yyn])) + { + if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) + { + yycount = 1; + yysize = yysize0; + break; + } + yyarg[yycount++] = yytname[yyx]; + { + YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]); + if (! (yysize <= yysize1 + && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) + return 2; + yysize = yysize1; + } + } + } + } + + switch (yycount) + { +# define YYCASE_(N, S) \ + case N: \ + yyformat = S; \ + break + YYCASE_(0, YY_("syntax error")); + YYCASE_(1, YY_("syntax error, unexpected %s")); + YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s")); + YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s")); + YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s")); + YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s")); +# undef YYCASE_ + } + + { + YYSIZE_T yysize1 = yysize + yystrlen (yyformat); + if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) + return 2; + yysize = yysize1; + } + + if (*yymsg_alloc < yysize) + { + *yymsg_alloc = 2 * yysize; + if (! (yysize <= *yymsg_alloc + && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM)) + *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM; + return 1; + } + + /* Avoid sprintf, as that infringes on the user's name space. + Don't have undefined behavior even if the translation + produced a string with the wrong number of "%s"s. */ + { + char *yyp = *yymsg; + int yyi = 0; + while ((*yyp = *yyformat) != '\0') + if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount) + { + yyp += yytnamerr (yyp, yyarg[yyi++]); + yyformat += 2; + } + else + { + yyp++; + yyformat++; + } + } + return 0; +} +#endif /* YYERROR_VERBOSE */ + +/*-----------------------------------------------. +| Release the memory associated to this symbol. | +`-----------------------------------------------*/ + +static void +yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep) +{ + YYUSE (yyvaluep); + if (!yymsg) + yymsg = "Deleting"; + YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp); + + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN + switch (yytype) + { + case 60: /* choice_entry */ + + { + fprintf(stderr, "%s:%d: missing end statement for this entry\n", + ((*yyvaluep).menu)->file->name, ((*yyvaluep).menu)->lineno); + if (current_menu == ((*yyvaluep).menu)) + menu_end_menu(); +} + + break; + + case 66: /* if_entry */ + + { + fprintf(stderr, "%s:%d: missing end statement for this entry\n", + ((*yyvaluep).menu)->file->name, ((*yyvaluep).menu)->lineno); + if (current_menu == ((*yyvaluep).menu)) + menu_end_menu(); +} + + break; + + case 71: /* menu_entry */ + + { + fprintf(stderr, "%s:%d: missing end statement for this entry\n", + ((*yyvaluep).menu)->file->name, ((*yyvaluep).menu)->lineno); + if (current_menu == ((*yyvaluep).menu)) + menu_end_menu(); +} + + break; + + + default: + break; + } + YY_IGNORE_MAYBE_UNINITIALIZED_END +} + + + + +/* The lookahead symbol. */ +int yychar; + +/* The semantic value of the lookahead symbol. */ +YYSTYPE yylval; +/* Number of syntax errors so far. */ +int yynerrs; + + +/*----------. +| yyparse. | +`----------*/ + +int +yyparse (void) +{ + int yystate; + /* Number of tokens to shift before error messages enabled. */ + int yyerrstatus; + + /* The stacks and their tools: + 'yyss': related to states. + 'yyvs': related to semantic values. + + Refer to the stacks through separate pointers, to allow yyoverflow + to reallocate them elsewhere. */ + + /* The state stack. */ + yytype_int16 yyssa[YYINITDEPTH]; + yytype_int16 *yyss; + yytype_int16 *yyssp; + + /* The semantic value stack. */ + YYSTYPE yyvsa[YYINITDEPTH]; + YYSTYPE *yyvs; + YYSTYPE *yyvsp; + + YYSIZE_T yystacksize; + + int yyn; + int yyresult; + /* Lookahead token as an internal (translated) token number. */ + int yytoken = 0; + /* The variables used to return semantic value and location from the + action routines. */ + YYSTYPE yyval; + +#if YYERROR_VERBOSE + /* Buffer for error messages, and its allocated size. */ + char yymsgbuf[128]; + char *yymsg = yymsgbuf; + YYSIZE_T yymsg_alloc = sizeof yymsgbuf; +#endif + +#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N)) + + /* The number of symbols on the RHS of the reduced rule. + Keep to zero when no symbol should be popped. */ + int yylen = 0; + + yyssp = yyss = yyssa; + yyvsp = yyvs = yyvsa; + yystacksize = YYINITDEPTH; + + YYDPRINTF ((stderr, "Starting parse\n")); + + yystate = 0; + yyerrstatus = 0; + yynerrs = 0; + yychar = YYEMPTY; /* Cause a token to be read. */ + goto yysetstate; + +/*------------------------------------------------------------. +| yynewstate -- Push a new state, which is found in yystate. | +`------------------------------------------------------------*/ + yynewstate: + /* In all cases, when you get here, the value and location stacks + have just been pushed. So pushing a state here evens the stacks. */ + yyssp++; + + yysetstate: + *yyssp = yystate; + + if (yyss + yystacksize - 1 <= yyssp) + { + /* Get the current used size of the three stacks, in elements. */ + YYSIZE_T yysize = yyssp - yyss + 1; + +#ifdef yyoverflow + { + /* Give user a chance to reallocate the stack. Use copies of + these so that the &'s don't force the real ones into + memory. */ + YYSTYPE *yyvs1 = yyvs; + yytype_int16 *yyss1 = yyss; + + /* Each stack pointer address is followed by the size of the + data in use in that stack, in bytes. This used to be a + conditional around just the two extra args, but that might + be undefined if yyoverflow is a macro. */ + yyoverflow (YY_("memory exhausted"), + &yyss1, yysize * sizeof (*yyssp), + &yyvs1, yysize * sizeof (*yyvsp), + &yystacksize); + + yyss = yyss1; + yyvs = yyvs1; + } +#else /* no yyoverflow */ +# ifndef YYSTACK_RELOCATE + goto yyexhaustedlab; +# else + /* Extend the stack our own way. */ + if (YYMAXDEPTH <= yystacksize) + goto yyexhaustedlab; + yystacksize *= 2; + if (YYMAXDEPTH < yystacksize) + yystacksize = YYMAXDEPTH; + + { + yytype_int16 *yyss1 = yyss; + union yyalloc *yyptr = + (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); + if (! yyptr) + goto yyexhaustedlab; + YYSTACK_RELOCATE (yyss_alloc, yyss); + YYSTACK_RELOCATE (yyvs_alloc, yyvs); +# undef YYSTACK_RELOCATE + if (yyss1 != yyssa) + YYSTACK_FREE (yyss1); + } +# endif +#endif /* no yyoverflow */ + + yyssp = yyss + yysize - 1; + yyvsp = yyvs + yysize - 1; + + YYDPRINTF ((stderr, "Stack size increased to %lu\n", + (unsigned long int) yystacksize)); + + if (yyss + yystacksize - 1 <= yyssp) + YYABORT; + } + + YYDPRINTF ((stderr, "Entering state %d\n", yystate)); + + if (yystate == YYFINAL) + YYACCEPT; + + goto yybackup; + +/*-----------. +| yybackup. | +`-----------*/ +yybackup: + + /* Do appropriate processing given the current state. Read a + lookahead token if we need one and don't already have one. */ + + /* First try to decide what to do without reference to lookahead token. */ + yyn = yypact[yystate]; + if (yypact_value_is_default (yyn)) + goto yydefault; + + /* Not known => get a lookahead token if don't already have one. */ + + /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */ + if (yychar == YYEMPTY) + { + YYDPRINTF ((stderr, "Reading a token: ")); + yychar = yylex (); + } + + if (yychar <= YYEOF) + { + yychar = yytoken = YYEOF; + YYDPRINTF ((stderr, "Now at end of input.\n")); + } + else + { + yytoken = YYTRANSLATE (yychar); + YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc); + } + + /* If the proper action on seeing token YYTOKEN is to reduce or to + detect an error, take that action. */ + yyn += yytoken; + if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken) + goto yydefault; + yyn = yytable[yyn]; + if (yyn <= 0) + { + if (yytable_value_is_error (yyn)) + goto yyerrlab; + yyn = -yyn; + goto yyreduce; + } + + /* Count tokens shifted since error; after three, turn off error + status. */ + if (yyerrstatus) + yyerrstatus--; + + /* Shift the lookahead token. */ + YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); + + /* Discard the shifted token. */ + yychar = YYEMPTY; + + yystate = yyn; + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN + *++yyvsp = yylval; + YY_IGNORE_MAYBE_UNINITIALIZED_END + + goto yynewstate; + + +/*-----------------------------------------------------------. +| yydefault -- do the default action for the current state. | +`-----------------------------------------------------------*/ +yydefault: + yyn = yydefact[yystate]; + if (yyn == 0) + goto yyerrlab; + goto yyreduce; + + +/*-----------------------------. +| yyreduce -- Do a reduction. | +`-----------------------------*/ +yyreduce: + /* yyn is the number of a rule to reduce with. */ + yylen = yyr2[yyn]; + + /* If YYLEN is nonzero, implement the default value of the action: + '$$ = $1'. + + Otherwise, the following line sets YYVAL to garbage. + This behavior is undocumented and Bison + users should not rely upon it. Assigning to YYVAL + unconditionally makes the parser a bit smaller, and it avoids a + GCC warning that YYVAL may be used uninitialized. */ + yyval = yyvsp[1-yylen]; + + + YY_REDUCE_PRINT (yyn); + switch (yyn) + { + case 6: + + { + menu_add_prompt(P_MENU, (yyvsp[-1].string), NULL); +} + + break; + + case 7: + + { + /* + * Hack: Keep the main menu title on the heap so we can safely free it + * later regardless of whether it comes from the 'prompt' in + * mainmenu_stmt or here + */ + menu_add_prompt(P_MENU, xstrdup("Buildroot Configuration"), NULL); +} + + break; + + case 12: + + { zconf_error("unexpected end statement"); } + + break; + + case 13: + + { zconf_error("unknown statement \"%s\"", (yyvsp[-2].string)); } + + break; + + case 14: + + { + zconf_error("unexpected option \"%s\"", (yyvsp[-2].id)->name); +} + + break; + + case 15: + + { zconf_error("invalid statement"); } + + break; + + case 31: + + { zconf_error("unknown option \"%s\"", (yyvsp[-2].string)); } + + break; + + case 32: + + { zconf_error("invalid option"); } + + break; + + case 33: + + { + (yyvsp[-1].symbol)->flags |= SYMBOL_OPTIONAL; + menu_add_entry((yyvsp[-1].symbol)); + printd(DEBUG_PARSE, "%s:%d:config %s\n", zconf_curname(), zconf_lineno(), (yyvsp[-1].symbol)->name); +} + + break; + + case 34: + + { + printd(DEBUG_PARSE, "%s:%d:endconfig\n", zconf_curname(), zconf_lineno()); +} + + break; + + case 35: + + { + (yyvsp[-1].symbol)->flags |= SYMBOL_OPTIONAL; + menu_add_entry((yyvsp[-1].symbol)); + printd(DEBUG_PARSE, "%s:%d:menuconfig %s\n", zconf_curname(), zconf_lineno(), (yyvsp[-1].symbol)->name); +} + + break; + + case 36: + + { + if (current_entry->prompt) + current_entry->prompt->type = P_MENU; + else + zconfprint("warning: menuconfig statement without prompt"); + printd(DEBUG_PARSE, "%s:%d:endconfig\n", zconf_curname(), zconf_lineno()); +} + + break; + + case 44: + + { + menu_set_type((yyvsp[-2].id)->stype); + printd(DEBUG_PARSE, "%s:%d:type(%u)\n", + zconf_curname(), zconf_lineno(), + (yyvsp[-2].id)->stype); +} + + break; + + case 45: + + { + menu_add_prompt(P_PROMPT, (yyvsp[-2].string), (yyvsp[-1].expr)); + printd(DEBUG_PARSE, "%s:%d:prompt\n", zconf_curname(), zconf_lineno()); +} + + break; + + case 46: + + { + menu_add_expr(P_DEFAULT, (yyvsp[-2].expr), (yyvsp[-1].expr)); + if ((yyvsp[-3].id)->stype != S_UNKNOWN) + menu_set_type((yyvsp[-3].id)->stype); + printd(DEBUG_PARSE, "%s:%d:default(%u)\n", + zconf_curname(), zconf_lineno(), + (yyvsp[-3].id)->stype); +} + + break; + + case 47: + + { + menu_add_symbol(P_SELECT, (yyvsp[-2].symbol), (yyvsp[-1].expr)); + printd(DEBUG_PARSE, "%s:%d:select\n", zconf_curname(), zconf_lineno()); +} + + break; + + case 48: + + { + menu_add_symbol(P_IMPLY, (yyvsp[-2].symbol), (yyvsp[-1].expr)); + printd(DEBUG_PARSE, "%s:%d:imply\n", zconf_curname(), zconf_lineno()); +} + + break; + + case 49: + + { + menu_add_expr(P_RANGE, expr_alloc_comp(E_RANGE,(yyvsp[-3].symbol), (yyvsp[-2].symbol)), (yyvsp[-1].expr)); + printd(DEBUG_PARSE, "%s:%d:range\n", zconf_curname(), zconf_lineno()); +} + + break; + + case 52: + + { + const struct kconf_id *id = kconf_id_lookup((yyvsp[-1].string), strlen((yyvsp[-1].string))); + if (id && id->flags & TF_OPTION) { + menu_add_option(id->token, (yyvsp[0].string)); + free((yyvsp[0].string)); + } + else + zconfprint("warning: ignoring unknown option %s", (yyvsp[-1].string)); + free((yyvsp[-1].string)); +} + + break; + + case 53: + + { (yyval.string) = NULL; } + + break; + + case 54: + + { (yyval.string) = (yyvsp[0].string); } + + break; + + case 55: + + { + struct symbol *sym = sym_lookup((yyvsp[-1].string), SYMBOL_CHOICE); + sym->flags |= SYMBOL_AUTO; + menu_add_entry(sym); + menu_add_expr(P_CHOICE, NULL, NULL); + free((yyvsp[-1].string)); + printd(DEBUG_PARSE, "%s:%d:choice\n", zconf_curname(), zconf_lineno()); +} + + break; + + case 56: + + { + (yyval.menu) = menu_add_menu(); +} + + break; + + case 57: + + { + if (zconf_endtoken((yyvsp[0].id), T_CHOICE, T_ENDCHOICE)) { + menu_end_menu(); + printd(DEBUG_PARSE, "%s:%d:endchoice\n", zconf_curname(), zconf_lineno()); + } +} + + break; + + case 65: + + { + menu_add_prompt(P_PROMPT, (yyvsp[-2].string), (yyvsp[-1].expr)); + printd(DEBUG_PARSE, "%s:%d:prompt\n", zconf_curname(), zconf_lineno()); +} + + break; + + case 66: + + { + if ((yyvsp[-2].id)->stype == S_BOOLEAN || (yyvsp[-2].id)->stype == S_TRISTATE) { + menu_set_type((yyvsp[-2].id)->stype); + printd(DEBUG_PARSE, "%s:%d:type(%u)\n", + zconf_curname(), zconf_lineno(), + (yyvsp[-2].id)->stype); + } else + YYERROR; +} + + break; + + case 67: + + { + current_entry->sym->flags |= SYMBOL_OPTIONAL; + printd(DEBUG_PARSE, "%s:%d:optional\n", zconf_curname(), zconf_lineno()); +} + + break; + + case 68: + + { + if ((yyvsp[-3].id)->stype == S_UNKNOWN) { + menu_add_symbol(P_DEFAULT, (yyvsp[-2].symbol), (yyvsp[-1].expr)); + printd(DEBUG_PARSE, "%s:%d:default\n", + zconf_curname(), zconf_lineno()); + } else + YYERROR; +} + + break; + + case 71: + + { + printd(DEBUG_PARSE, "%s:%d:if\n", zconf_curname(), zconf_lineno()); + menu_add_entry(NULL); + menu_add_dep((yyvsp[-1].expr)); + (yyval.menu) = menu_add_menu(); +} + + break; + + case 72: + + { + if (zconf_endtoken((yyvsp[0].id), T_IF, T_ENDIF)) { + menu_end_menu(); + printd(DEBUG_PARSE, "%s:%d:endif\n", zconf_curname(), zconf_lineno()); + } +} + + break; + + case 78: + + { + menu_add_entry(NULL); + menu_add_prompt(P_MENU, (yyvsp[-1].string), NULL); + printd(DEBUG_PARSE, "%s:%d:menu\n", zconf_curname(), zconf_lineno()); +} + + break; + + case 79: + + { + (yyval.menu) = menu_add_menu(); +} + + break; + + case 80: + + { + if (zconf_endtoken((yyvsp[0].id), T_MENU, T_ENDMENU)) { + menu_end_menu(); + printd(DEBUG_PARSE, "%s:%d:endmenu\n", zconf_curname(), zconf_lineno()); + } +} + + break; + + case 86: + + { + printd(DEBUG_PARSE, "%s:%d:source %s\n", zconf_curname(), zconf_lineno(), (yyvsp[-1].string)); + zconf_nextfile((yyvsp[-1].string)); + free((yyvsp[-1].string)); +} + + break; + + case 87: + + { + menu_add_entry(NULL); + menu_add_prompt(P_COMMENT, (yyvsp[-1].string), NULL); + printd(DEBUG_PARSE, "%s:%d:comment\n", zconf_curname(), zconf_lineno()); +} + + break; + + case 89: + + { + printd(DEBUG_PARSE, "%s:%d:help\n", zconf_curname(), zconf_lineno()); + zconf_starthelp(); +} + + break; + + case 90: + + { + if (current_entry->help) { + free(current_entry->help); + zconfprint("warning: '%s' defined with more than one help text -- only the last one will be used", + current_entry->sym->name ?: ""); + } + + /* Is the help text empty or all whitespace? */ + if ((yyvsp[0].string)[strspn((yyvsp[0].string), " \f\n\r\t\v")] == '\0') + zconfprint("warning: '%s' defined with blank help text", + current_entry->sym->name ?: ""); + + current_entry->help = (yyvsp[0].string); +} + + break; + + case 95: + + { + menu_add_dep((yyvsp[-1].expr)); + printd(DEBUG_PARSE, "%s:%d:depends on\n", zconf_curname(), zconf_lineno()); +} + + break; + + case 99: + + { + menu_add_visibility((yyvsp[0].expr)); +} + + break; + + case 101: + + { + menu_add_prompt(P_PROMPT, (yyvsp[-1].string), (yyvsp[0].expr)); +} + + break; + + case 104: + + { (yyval.id) = (yyvsp[-1].id); } + + break; + + case 105: + + { (yyval.id) = (yyvsp[-1].id); } + + break; + + case 106: + + { (yyval.id) = (yyvsp[-1].id); } + + break; + + case 109: + + { (yyval.expr) = NULL; } + + break; + + case 110: + + { (yyval.expr) = (yyvsp[0].expr); } + + break; + + case 111: + + { (yyval.expr) = expr_alloc_symbol((yyvsp[0].symbol)); } + + break; + + case 112: + + { (yyval.expr) = expr_alloc_comp(E_LTH, (yyvsp[-2].symbol), (yyvsp[0].symbol)); } + + break; + + case 113: + + { (yyval.expr) = expr_alloc_comp(E_LEQ, (yyvsp[-2].symbol), (yyvsp[0].symbol)); } + + break; + + case 114: + + { (yyval.expr) = expr_alloc_comp(E_GTH, (yyvsp[-2].symbol), (yyvsp[0].symbol)); } + + break; + + case 115: + + { (yyval.expr) = expr_alloc_comp(E_GEQ, (yyvsp[-2].symbol), (yyvsp[0].symbol)); } + + break; + + case 116: + + { (yyval.expr) = expr_alloc_comp(E_EQUAL, (yyvsp[-2].symbol), (yyvsp[0].symbol)); } + + break; + + case 117: + + { (yyval.expr) = expr_alloc_comp(E_UNEQUAL, (yyvsp[-2].symbol), (yyvsp[0].symbol)); } + + break; + + case 118: + + { (yyval.expr) = (yyvsp[-1].expr); } + + break; + + case 119: + + { (yyval.expr) = expr_alloc_one(E_NOT, (yyvsp[0].expr)); } + + break; + + case 120: + + { (yyval.expr) = expr_alloc_two(E_OR, (yyvsp[-2].expr), (yyvsp[0].expr)); } + + break; + + case 121: + + { (yyval.expr) = expr_alloc_two(E_AND, (yyvsp[-2].expr), (yyvsp[0].expr)); } + + break; + + case 122: + + { (yyval.symbol) = sym_lookup((yyvsp[0].string), 0); free((yyvsp[0].string)); } + + break; + + case 124: + + { (yyval.symbol) = sym_lookup((yyvsp[0].string), SYMBOL_CONST); free((yyvsp[0].string)); } + + break; + + case 125: + + { (yyval.string) = NULL; } + + break; + + + + default: break; + } + /* User semantic actions sometimes alter yychar, and that requires + that yytoken be updated with the new translation. We take the + approach of translating immediately before every use of yytoken. + One alternative is translating here after every semantic action, + but that translation would be missed if the semantic action invokes + YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or + if it invokes YYBACKUP. In the case of YYABORT or YYACCEPT, an + incorrect destructor might then be invoked immediately. In the + case of YYERROR or YYBACKUP, subsequent parser actions might lead + to an incorrect destructor call or verbose syntax error message + before the lookahead is translated. */ + YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); + + YYPOPSTACK (yylen); + yylen = 0; + YY_STACK_PRINT (yyss, yyssp); + + *++yyvsp = yyval; + + /* Now 'shift' the result of the reduction. Determine what state + that goes to, based on the state we popped back to and the rule + number reduced by. */ + + yyn = yyr1[yyn]; + + yystate = yypgoto[yyn - YYNTOKENS] + *yyssp; + if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp) + yystate = yytable[yystate]; + else + yystate = yydefgoto[yyn - YYNTOKENS]; + + goto yynewstate; + + +/*--------------------------------------. +| yyerrlab -- here on detecting error. | +`--------------------------------------*/ +yyerrlab: + /* Make sure we have latest lookahead translation. See comments at + user semantic actions for why this is necessary. */ + yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar); + + /* If not already recovering from an error, report this error. */ + if (!yyerrstatus) + { + ++yynerrs; +#if ! YYERROR_VERBOSE + yyerror (YY_("syntax error")); +#else +# define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \ + yyssp, yytoken) + { + char const *yymsgp = YY_("syntax error"); + int yysyntax_error_status; + yysyntax_error_status = YYSYNTAX_ERROR; + if (yysyntax_error_status == 0) + yymsgp = yymsg; + else if (yysyntax_error_status == 1) + { + if (yymsg != yymsgbuf) + YYSTACK_FREE (yymsg); + yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc); + if (!yymsg) + { + yymsg = yymsgbuf; + yymsg_alloc = sizeof yymsgbuf; + yysyntax_error_status = 2; + } + else + { + yysyntax_error_status = YYSYNTAX_ERROR; + yymsgp = yymsg; + } + } + yyerror (yymsgp); + if (yysyntax_error_status == 2) + goto yyexhaustedlab; + } +# undef YYSYNTAX_ERROR +#endif + } + + + + if (yyerrstatus == 3) + { + /* If just tried and failed to reuse lookahead token after an + error, discard it. */ + + if (yychar <= YYEOF) + { + /* Return failure if at end of input. */ + if (yychar == YYEOF) + YYABORT; + } + else + { + yydestruct ("Error: discarding", + yytoken, &yylval); + yychar = YYEMPTY; + } + } + + /* Else will try to reuse lookahead token after shifting the error + token. */ + goto yyerrlab1; + + +/*---------------------------------------------------. +| yyerrorlab -- error raised explicitly by YYERROR. | +`---------------------------------------------------*/ +yyerrorlab: + + /* Pacify compilers like GCC when the user code never invokes + YYERROR and the label yyerrorlab therefore never appears in user + code. */ + if (/*CONSTCOND*/ 0) + goto yyerrorlab; + + /* Do not reclaim the symbols of the rule whose action triggered + this YYERROR. */ + YYPOPSTACK (yylen); + yylen = 0; + YY_STACK_PRINT (yyss, yyssp); + yystate = *yyssp; + goto yyerrlab1; + + +/*-------------------------------------------------------------. +| yyerrlab1 -- common code for both syntax error and YYERROR. | +`-------------------------------------------------------------*/ +yyerrlab1: + yyerrstatus = 3; /* Each real token shifted decrements this. */ + + for (;;) + { + yyn = yypact[yystate]; + if (!yypact_value_is_default (yyn)) + { + yyn += YYTERROR; + if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR) + { + yyn = yytable[yyn]; + if (0 < yyn) + break; + } + } + + /* Pop the current state because it cannot handle the error token. */ + if (yyssp == yyss) + YYABORT; + + + yydestruct ("Error: popping", + yystos[yystate], yyvsp); + YYPOPSTACK (1); + yystate = *yyssp; + YY_STACK_PRINT (yyss, yyssp); + } + + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN + *++yyvsp = yylval; + YY_IGNORE_MAYBE_UNINITIALIZED_END + + + /* Shift the error token. */ + YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp); + + yystate = yyn; + goto yynewstate; + + +/*-------------------------------------. +| yyacceptlab -- YYACCEPT comes here. | +`-------------------------------------*/ +yyacceptlab: + yyresult = 0; + goto yyreturn; + +/*-----------------------------------. +| yyabortlab -- YYABORT comes here. | +`-----------------------------------*/ +yyabortlab: + yyresult = 1; + goto yyreturn; + +#if !defined yyoverflow || YYERROR_VERBOSE +/*-------------------------------------------------. +| yyexhaustedlab -- memory exhaustion comes here. | +`-------------------------------------------------*/ +yyexhaustedlab: + yyerror (YY_("memory exhausted")); + yyresult = 2; + /* Fall through. */ +#endif + +yyreturn: + if (yychar != YYEMPTY) + { + /* Make sure we have latest lookahead translation. See comments at + user semantic actions for why this is necessary. */ + yytoken = YYTRANSLATE (yychar); + yydestruct ("Cleanup: discarding lookahead", + yytoken, &yylval); + } + /* Do not reclaim the symbols of the rule whose action triggered + this YYABORT or YYACCEPT. */ + YYPOPSTACK (yylen); + YY_STACK_PRINT (yyss, yyssp); + while (yyssp != yyss) + { + yydestruct ("Cleanup: popping", + yystos[*yyssp], yyvsp); + YYPOPSTACK (1); + } +#ifndef yyoverflow + if (yyss != yyssa) + YYSTACK_FREE (yyss); +#endif +#if YYERROR_VERBOSE + if (yymsg != yymsgbuf) + YYSTACK_FREE (yymsg); +#endif + return yyresult; +} + + + +void conf_parse(const char *name) +{ + const char *tmp; + struct symbol *sym; + int i; + + zconf_initscan(name); + + sym_init(); + _menu_init(); + + if (getenv("ZCONF_DEBUG")) + yydebug = 1; + yyparse(); + if (yynerrs) + exit(1); + if (!modules_sym) + modules_sym = sym_find( "n" ); + + tmp = rootmenu.prompt->text; + rootmenu.prompt->text = _(rootmenu.prompt->text); + rootmenu.prompt->text = sym_expand_string_value(rootmenu.prompt->text); + free((char*)tmp); + + menu_finalize(&rootmenu); + for_all_symbols(i, sym) { + if (sym_check_deps(sym)) + yynerrs++; + } + if (yynerrs) + exit(1); + sym_set_change_count(1); +} + +static const char *zconf_tokenname(int token) +{ + switch (token) { + case T_MENU: return "menu"; + case T_ENDMENU: return "endmenu"; + case T_CHOICE: return "choice"; + case T_ENDCHOICE: return "endchoice"; + case T_IF: return "if"; + case T_ENDIF: return "endif"; + case T_DEPENDS: return "depends"; + case T_VISIBLE: return "visible"; + } + return ""; +} + +static bool zconf_endtoken(const struct kconf_id *id, int starttoken, int endtoken) +{ + if (id->token != endtoken) { + zconf_error("unexpected '%s' within %s block", + id->name, zconf_tokenname(starttoken)); + yynerrs++; + return false; + } + if (current_menu->file != current_file) { + zconf_error("'%s' in different file than '%s'", + id->name, zconf_tokenname(starttoken)); + fprintf(stderr, "%s:%d: location of the '%s'\n", + current_menu->file->name, current_menu->lineno, + zconf_tokenname(starttoken)); + yynerrs++; + return false; + } + return true; +} + +static void zconfprint(const char *err, ...) +{ + va_list ap; + + fprintf(stderr, "%s:%d: ", zconf_curname(), zconf_lineno()); + va_start(ap, err); + vfprintf(stderr, err, ap); + va_end(ap); + fprintf(stderr, "\n"); +} + +static void zconf_error(const char *err, ...) +{ + va_list ap; + + yynerrs++; + fprintf(stderr, "%s:%d: ", zconf_curname(), zconf_lineno()); + va_start(ap, err); + vfprintf(stderr, err, ap); + va_end(ap); + fprintf(stderr, "\n"); +} + +static void yyerror(const char *err) +{ + fprintf(stderr, "%s:%d: %s\n", zconf_curname(), zconf_lineno() + 1, err); +} + +static void print_quoted_string(FILE *out, const char *str) +{ + const char *p; + int len; + + putc('"', out); + while ((p = strchr(str, '"'))) { + len = p - str; + if (len) + fprintf(out, "%.*s", len, str); + fputs("\\\"", out); + str = p + 1; + } + fputs(str, out); + putc('"', out); +} + +static void print_symbol(FILE *out, struct menu *menu) +{ + struct symbol *sym = menu->sym; + struct property *prop; + + if (sym_is_choice(sym)) + fprintf(out, "\nchoice\n"); + else + fprintf(out, "\nconfig %s\n", sym->name); + switch (sym->type) { + case S_BOOLEAN: + fputs(" bool\n", out); + break; + case S_TRISTATE: + fputs(" tristate\n", out); + break; + case S_STRING: + fputs(" string\n", out); + break; + case S_INT: + fputs(" integer\n", out); + break; + case S_HEX: + fputs(" hex\n", out); + break; + default: + fputs(" ???\n", out); + break; + } + for (prop = sym->prop; prop; prop = prop->next) { + if (prop->menu != menu) + continue; + switch (prop->type) { + case P_PROMPT: + fputs(" prompt ", out); + print_quoted_string(out, prop->text); + if (!expr_is_yes(prop->visible.expr)) { + fputs(" if ", out); + expr_fprint(prop->visible.expr, out); + } + fputc('\n', out); + break; + case P_DEFAULT: + fputs( " default ", out); + expr_fprint(prop->expr, out); + if (!expr_is_yes(prop->visible.expr)) { + fputs(" if ", out); + expr_fprint(prop->visible.expr, out); + } + fputc('\n', out); + break; + case P_CHOICE: + fputs(" #choice value\n", out); + break; + case P_SELECT: + fputs( " select ", out); + expr_fprint(prop->expr, out); + fputc('\n', out); + break; + case P_IMPLY: + fputs( " imply ", out); + expr_fprint(prop->expr, out); + fputc('\n', out); + break; + case P_RANGE: + fputs( " range ", out); + expr_fprint(prop->expr, out); + fputc('\n', out); + break; + case P_MENU: + fputs( " menu ", out); + print_quoted_string(out, prop->text); + fputc('\n', out); + break; + default: + fprintf(out, " unknown prop %d!\n", prop->type); + break; + } + } + if (menu->help) { + int len = strlen(menu->help); + while (menu->help[--len] == '\n') + menu->help[len] = 0; + fprintf(out, " help\n%s\n", menu->help); + } +} + +void zconfdump(FILE *out) +{ + struct property *prop; + struct symbol *sym; + struct menu *menu; + + menu = rootmenu.list; + while (menu) { + if ((sym = menu->sym)) + print_symbol(out, menu); + else if ((prop = menu->prompt)) { + switch (prop->type) { + case P_COMMENT: + fputs("\ncomment ", out); + print_quoted_string(out, prop->text); + fputs("\n", out); + break; + case P_MENU: + fputs("\nmenu ", out); + print_quoted_string(out, prop->text); + fputs("\n", out); + break; + default: + ; + } + if (!expr_is_yes(prop->visible.expr)) { + fputs(" depends ", out); + expr_fprint(prop->visible.expr, out); + fputc('\n', out); + } + } + + if (menu->list) + menu = menu->list; + else if (menu->next) + menu = menu->next; + else while ((menu = menu->parent)) { + if (menu->prompt && menu->prompt->type == P_MENU) + fputs("\nendmenu\n", out); + if (menu->next) { + menu = menu->next; + break; + } + } + } +} + +#include "zconf.lex.c" +#include "util.c" +#include "confdata.c" +#include "expr.c" +#include "symbol.c" +#include "menu.c" diff --git a/support/kconfig/zconf.y b/support/kconfig/zconf.y new file mode 100644 index 00000000..7b34de28 --- /dev/null +++ b/support/kconfig/zconf.y @@ -0,0 +1,782 @@ +%{ +/* + * Copyright (C) 2002 Roman Zippel + * Released under the terms of the GNU GPL v2.0. + */ + +#include +#include +#include +#include +#include +#include + +#include "lkc.h" + +#define printd(mask, fmt...) if (cdebug & (mask)) printf(fmt) + +#define PRINTD 0x0001 +#define DEBUG_PARSE 0x0002 + +int cdebug = PRINTD; + +int yylex(void); +static void yyerror(const char *err); +static void zconfprint(const char *err, ...); +static void zconf_error(const char *err, ...); +static bool zconf_endtoken(const struct kconf_id *id, int starttoken, int endtoken); + +struct symbol *symbol_hash[SYMBOL_HASHSIZE]; + +static struct menu *current_menu, *current_entry; + +%} +%expect 32 + +%union +{ + char *string; + struct file *file; + struct symbol *symbol; + struct expr *expr; + struct menu *menu; + const struct kconf_id *id; +} + +%token T_MAINMENU +%token T_MENU +%token T_ENDMENU +%token T_SOURCE +%token T_CHOICE +%token T_ENDCHOICE +%token T_COMMENT +%token T_CONFIG +%token T_MENUCONFIG +%token T_HELP +%token T_HELPTEXT +%token T_IF +%token T_ENDIF +%token T_DEPENDS +%token T_OPTIONAL +%token T_PROMPT +%token T_TYPE +%token T_DEFAULT +%token T_SELECT +%token T_IMPLY +%token T_RANGE +%token T_VISIBLE +%token T_OPTION +%token T_ON +%token T_WORD +%token T_WORD_QUOTE +%token T_UNEQUAL +%token T_LESS +%token T_LESS_EQUAL +%token T_GREATER +%token T_GREATER_EQUAL +%token T_CLOSE_PAREN +%token T_OPEN_PAREN +%token T_EOL + +%left T_OR +%left T_AND +%left T_EQUAL T_UNEQUAL +%left T_LESS T_LESS_EQUAL T_GREATER T_GREATER_EQUAL +%nonassoc T_NOT + +%type prompt +%type nonconst_symbol +%type symbol +%type expr +%type if_expr +%type end +%type option_name +%type if_entry menu_entry choice_entry +%type symbol_option_arg word_opt + +%destructor { + fprintf(stderr, "%s:%d: missing end statement for this entry\n", + $$->file->name, $$->lineno); + if (current_menu == $$) + menu_end_menu(); +} if_entry menu_entry choice_entry + +%{ +/* Include kconf_id.c here so it can see the token constants. */ +#include "kconf_id.c" +%} + +%% +input: nl start | start; + +start: mainmenu_stmt stmt_list | no_mainmenu_stmt stmt_list; + +/* mainmenu entry */ + +mainmenu_stmt: T_MAINMENU prompt nl +{ + menu_add_prompt(P_MENU, $2, NULL); +}; + +/* Default main menu, if there's no mainmenu entry */ + +no_mainmenu_stmt: /* empty */ +{ + /* + * Hack: Keep the main menu title on the heap so we can safely free it + * later regardless of whether it comes from the 'prompt' in + * mainmenu_stmt or here + */ + menu_add_prompt(P_MENU, xstrdup("Buildroot Configuration"), NULL); +}; + + +stmt_list: + /* empty */ + | stmt_list common_stmt + | stmt_list choice_stmt + | stmt_list menu_stmt + | stmt_list end { zconf_error("unexpected end statement"); } + | stmt_list T_WORD error T_EOL { zconf_error("unknown statement \"%s\"", $2); } + | stmt_list option_name error T_EOL +{ + zconf_error("unexpected option \"%s\"", $2->name); +} + | stmt_list error T_EOL { zconf_error("invalid statement"); } +; + +option_name: + T_DEPENDS | T_PROMPT | T_TYPE | T_SELECT | T_IMPLY | T_OPTIONAL | T_RANGE | T_DEFAULT | T_VISIBLE +; + +common_stmt: + T_EOL + | if_stmt + | comment_stmt + | config_stmt + | menuconfig_stmt + | source_stmt +; + +option_error: + T_WORD error T_EOL { zconf_error("unknown option \"%s\"", $1); } + | error T_EOL { zconf_error("invalid option"); } +; + + +/* config/menuconfig entry */ + +config_entry_start: T_CONFIG nonconst_symbol T_EOL +{ + $2->flags |= SYMBOL_OPTIONAL; + menu_add_entry($2); + printd(DEBUG_PARSE, "%s:%d:config %s\n", zconf_curname(), zconf_lineno(), $2->name); +}; + +config_stmt: config_entry_start config_option_list +{ + printd(DEBUG_PARSE, "%s:%d:endconfig\n", zconf_curname(), zconf_lineno()); +}; + +menuconfig_entry_start: T_MENUCONFIG nonconst_symbol T_EOL +{ + $2->flags |= SYMBOL_OPTIONAL; + menu_add_entry($2); + printd(DEBUG_PARSE, "%s:%d:menuconfig %s\n", zconf_curname(), zconf_lineno(), $2->name); +}; + +menuconfig_stmt: menuconfig_entry_start config_option_list +{ + if (current_entry->prompt) + current_entry->prompt->type = P_MENU; + else + zconfprint("warning: menuconfig statement without prompt"); + printd(DEBUG_PARSE, "%s:%d:endconfig\n", zconf_curname(), zconf_lineno()); +}; + +config_option_list: + /* empty */ + | config_option_list config_option + | config_option_list symbol_option + | config_option_list depends + | config_option_list help + | config_option_list option_error + | config_option_list T_EOL +; + +config_option: T_TYPE prompt_stmt_opt T_EOL +{ + menu_set_type($1->stype); + printd(DEBUG_PARSE, "%s:%d:type(%u)\n", + zconf_curname(), zconf_lineno(), + $1->stype); +}; + +config_option: T_PROMPT prompt if_expr T_EOL +{ + menu_add_prompt(P_PROMPT, $2, $3); + printd(DEBUG_PARSE, "%s:%d:prompt\n", zconf_curname(), zconf_lineno()); +}; + +config_option: T_DEFAULT expr if_expr T_EOL +{ + menu_add_expr(P_DEFAULT, $2, $3); + if ($1->stype != S_UNKNOWN) + menu_set_type($1->stype); + printd(DEBUG_PARSE, "%s:%d:default(%u)\n", + zconf_curname(), zconf_lineno(), + $1->stype); +}; + +config_option: T_SELECT nonconst_symbol if_expr T_EOL +{ + menu_add_symbol(P_SELECT, $2, $3); + printd(DEBUG_PARSE, "%s:%d:select\n", zconf_curname(), zconf_lineno()); +}; + +config_option: T_IMPLY nonconst_symbol if_expr T_EOL +{ + menu_add_symbol(P_IMPLY, $2, $3); + printd(DEBUG_PARSE, "%s:%d:imply\n", zconf_curname(), zconf_lineno()); +}; + +config_option: T_RANGE symbol symbol if_expr T_EOL +{ + menu_add_expr(P_RANGE, expr_alloc_comp(E_RANGE,$2, $3), $4); + printd(DEBUG_PARSE, "%s:%d:range\n", zconf_curname(), zconf_lineno()); +}; + +symbol_option: T_OPTION symbol_option_list T_EOL +; + +symbol_option_list: + /* empty */ + | symbol_option_list T_WORD symbol_option_arg +{ + const struct kconf_id *id = kconf_id_lookup($2, strlen($2)); + if (id && id->flags & TF_OPTION) { + menu_add_option(id->token, $3); + free($3); + } + else + zconfprint("warning: ignoring unknown option %s", $2); + free($2); +}; + +symbol_option_arg: + /* empty */ { $$ = NULL; } + | T_EQUAL prompt { $$ = $2; } +; + +/* choice entry */ + +choice: T_CHOICE word_opt T_EOL +{ + struct symbol *sym = sym_lookup($2, SYMBOL_CHOICE); + sym->flags |= SYMBOL_AUTO; + menu_add_entry(sym); + menu_add_expr(P_CHOICE, NULL, NULL); + free($2); + printd(DEBUG_PARSE, "%s:%d:choice\n", zconf_curname(), zconf_lineno()); +}; + +choice_entry: choice choice_option_list +{ + $$ = menu_add_menu(); +}; + +choice_end: end +{ + if (zconf_endtoken($1, T_CHOICE, T_ENDCHOICE)) { + menu_end_menu(); + printd(DEBUG_PARSE, "%s:%d:endchoice\n", zconf_curname(), zconf_lineno()); + } +}; + +choice_stmt: choice_entry choice_block choice_end +; + +choice_option_list: + /* empty */ + | choice_option_list choice_option + | choice_option_list depends + | choice_option_list help + | choice_option_list T_EOL + | choice_option_list option_error +; + +choice_option: T_PROMPT prompt if_expr T_EOL +{ + menu_add_prompt(P_PROMPT, $2, $3); + printd(DEBUG_PARSE, "%s:%d:prompt\n", zconf_curname(), zconf_lineno()); +}; + +choice_option: T_TYPE prompt_stmt_opt T_EOL +{ + if ($1->stype == S_BOOLEAN || $1->stype == S_TRISTATE) { + menu_set_type($1->stype); + printd(DEBUG_PARSE, "%s:%d:type(%u)\n", + zconf_curname(), zconf_lineno(), + $1->stype); + } else + YYERROR; +}; + +choice_option: T_OPTIONAL T_EOL +{ + current_entry->sym->flags |= SYMBOL_OPTIONAL; + printd(DEBUG_PARSE, "%s:%d:optional\n", zconf_curname(), zconf_lineno()); +}; + +choice_option: T_DEFAULT nonconst_symbol if_expr T_EOL +{ + if ($1->stype == S_UNKNOWN) { + menu_add_symbol(P_DEFAULT, $2, $3); + printd(DEBUG_PARSE, "%s:%d:default\n", + zconf_curname(), zconf_lineno()); + } else + YYERROR; +}; + +choice_block: + /* empty */ + | choice_block common_stmt +; + +/* if entry */ + +if_entry: T_IF expr nl +{ + printd(DEBUG_PARSE, "%s:%d:if\n", zconf_curname(), zconf_lineno()); + menu_add_entry(NULL); + menu_add_dep($2); + $$ = menu_add_menu(); +}; + +if_end: end +{ + if (zconf_endtoken($1, T_IF, T_ENDIF)) { + menu_end_menu(); + printd(DEBUG_PARSE, "%s:%d:endif\n", zconf_curname(), zconf_lineno()); + } +}; + +if_stmt: if_entry if_block if_end +; + +if_block: + /* empty */ + | if_block common_stmt + | if_block menu_stmt + | if_block choice_stmt +; + +/* menu entry */ + +menu: T_MENU prompt T_EOL +{ + menu_add_entry(NULL); + menu_add_prompt(P_MENU, $2, NULL); + printd(DEBUG_PARSE, "%s:%d:menu\n", zconf_curname(), zconf_lineno()); +}; + +menu_entry: menu visibility_list depends_list +{ + $$ = menu_add_menu(); +}; + +menu_end: end +{ + if (zconf_endtoken($1, T_MENU, T_ENDMENU)) { + menu_end_menu(); + printd(DEBUG_PARSE, "%s:%d:endmenu\n", zconf_curname(), zconf_lineno()); + } +}; + +menu_stmt: menu_entry menu_block menu_end +; + +menu_block: + /* empty */ + | menu_block common_stmt + | menu_block menu_stmt + | menu_block choice_stmt +; + +source_stmt: T_SOURCE prompt T_EOL +{ + printd(DEBUG_PARSE, "%s:%d:source %s\n", zconf_curname(), zconf_lineno(), $2); + zconf_nextfile($2); + free($2); +}; + +/* comment entry */ + +comment: T_COMMENT prompt T_EOL +{ + menu_add_entry(NULL); + menu_add_prompt(P_COMMENT, $2, NULL); + printd(DEBUG_PARSE, "%s:%d:comment\n", zconf_curname(), zconf_lineno()); +}; + +comment_stmt: comment depends_list +; + +/* help option */ + +help_start: T_HELP T_EOL +{ + printd(DEBUG_PARSE, "%s:%d:help\n", zconf_curname(), zconf_lineno()); + zconf_starthelp(); +}; + +help: help_start T_HELPTEXT +{ + if (current_entry->help) { + free(current_entry->help); + zconfprint("warning: '%s' defined with more than one help text -- only the last one will be used", + current_entry->sym->name ?: ""); + } + + /* Is the help text empty or all whitespace? */ + if ($2[strspn($2, " \f\n\r\t\v")] == '\0') + zconfprint("warning: '%s' defined with blank help text", + current_entry->sym->name ?: ""); + + current_entry->help = $2; +}; + +/* depends option */ + +depends_list: + /* empty */ + | depends_list depends + | depends_list T_EOL + | depends_list option_error +; + +depends: T_DEPENDS T_ON expr T_EOL +{ + menu_add_dep($3); + printd(DEBUG_PARSE, "%s:%d:depends on\n", zconf_curname(), zconf_lineno()); +}; + +/* visibility option */ + +visibility_list: + /* empty */ + | visibility_list visible + | visibility_list T_EOL +; + +visible: T_VISIBLE if_expr +{ + menu_add_visibility($2); +}; + +/* prompt statement */ + +prompt_stmt_opt: + /* empty */ + | prompt if_expr +{ + menu_add_prompt(P_PROMPT, $1, $2); +}; + +prompt: T_WORD + | T_WORD_QUOTE +; + +end: T_ENDMENU T_EOL { $$ = $1; } + | T_ENDCHOICE T_EOL { $$ = $1; } + | T_ENDIF T_EOL { $$ = $1; } +; + +nl: + T_EOL + | nl T_EOL +; + +if_expr: /* empty */ { $$ = NULL; } + | T_IF expr { $$ = $2; } +; + +expr: symbol { $$ = expr_alloc_symbol($1); } + | symbol T_LESS symbol { $$ = expr_alloc_comp(E_LTH, $1, $3); } + | symbol T_LESS_EQUAL symbol { $$ = expr_alloc_comp(E_LEQ, $1, $3); } + | symbol T_GREATER symbol { $$ = expr_alloc_comp(E_GTH, $1, $3); } + | symbol T_GREATER_EQUAL symbol { $$ = expr_alloc_comp(E_GEQ, $1, $3); } + | symbol T_EQUAL symbol { $$ = expr_alloc_comp(E_EQUAL, $1, $3); } + | symbol T_UNEQUAL symbol { $$ = expr_alloc_comp(E_UNEQUAL, $1, $3); } + | T_OPEN_PAREN expr T_CLOSE_PAREN { $$ = $2; } + | T_NOT expr { $$ = expr_alloc_one(E_NOT, $2); } + | expr T_OR expr { $$ = expr_alloc_two(E_OR, $1, $3); } + | expr T_AND expr { $$ = expr_alloc_two(E_AND, $1, $3); } +; + +/* For symbol definitions, selects, etc., where quotes are not accepted */ +nonconst_symbol: T_WORD { $$ = sym_lookup($1, 0); free($1); }; + +symbol: nonconst_symbol + | T_WORD_QUOTE { $$ = sym_lookup($1, SYMBOL_CONST); free($1); } +; + +word_opt: /* empty */ { $$ = NULL; } + | T_WORD + +%% + +void conf_parse(const char *name) +{ + const char *tmp; + struct symbol *sym; + int i; + + zconf_initscan(name); + + sym_init(); + _menu_init(); + + if (getenv("ZCONF_DEBUG")) + yydebug = 1; + yyparse(); + if (yynerrs) + exit(1); + if (!modules_sym) + modules_sym = sym_find( "n" ); + + tmp = rootmenu.prompt->text; + rootmenu.prompt->text = _(rootmenu.prompt->text); + rootmenu.prompt->text = sym_expand_string_value(rootmenu.prompt->text); + free((char*)tmp); + + menu_finalize(&rootmenu); + for_all_symbols(i, sym) { + if (sym_check_deps(sym)) + yynerrs++; + } + if (yynerrs) + exit(1); + sym_set_change_count(1); +} + +static const char *zconf_tokenname(int token) +{ + switch (token) { + case T_MENU: return "menu"; + case T_ENDMENU: return "endmenu"; + case T_CHOICE: return "choice"; + case T_ENDCHOICE: return "endchoice"; + case T_IF: return "if"; + case T_ENDIF: return "endif"; + case T_DEPENDS: return "depends"; + case T_VISIBLE: return "visible"; + } + return ""; +} + +static bool zconf_endtoken(const struct kconf_id *id, int starttoken, int endtoken) +{ + if (id->token != endtoken) { + zconf_error("unexpected '%s' within %s block", + id->name, zconf_tokenname(starttoken)); + yynerrs++; + return false; + } + if (current_menu->file != current_file) { + zconf_error("'%s' in different file than '%s'", + id->name, zconf_tokenname(starttoken)); + fprintf(stderr, "%s:%d: location of the '%s'\n", + current_menu->file->name, current_menu->lineno, + zconf_tokenname(starttoken)); + yynerrs++; + return false; + } + return true; +} + +static void zconfprint(const char *err, ...) +{ + va_list ap; + + fprintf(stderr, "%s:%d: ", zconf_curname(), zconf_lineno()); + va_start(ap, err); + vfprintf(stderr, err, ap); + va_end(ap); + fprintf(stderr, "\n"); +} + +static void zconf_error(const char *err, ...) +{ + va_list ap; + + yynerrs++; + fprintf(stderr, "%s:%d: ", zconf_curname(), zconf_lineno()); + va_start(ap, err); + vfprintf(stderr, err, ap); + va_end(ap); + fprintf(stderr, "\n"); +} + +static void yyerror(const char *err) +{ + fprintf(stderr, "%s:%d: %s\n", zconf_curname(), zconf_lineno() + 1, err); +} + +static void print_quoted_string(FILE *out, const char *str) +{ + const char *p; + int len; + + putc('"', out); + while ((p = strchr(str, '"'))) { + len = p - str; + if (len) + fprintf(out, "%.*s", len, str); + fputs("\\\"", out); + str = p + 1; + } + fputs(str, out); + putc('"', out); +} + +static void print_symbol(FILE *out, struct menu *menu) +{ + struct symbol *sym = menu->sym; + struct property *prop; + + if (sym_is_choice(sym)) + fprintf(out, "\nchoice\n"); + else + fprintf(out, "\nconfig %s\n", sym->name); + switch (sym->type) { + case S_BOOLEAN: + fputs(" bool\n", out); + break; + case S_TRISTATE: + fputs(" tristate\n", out); + break; + case S_STRING: + fputs(" string\n", out); + break; + case S_INT: + fputs(" integer\n", out); + break; + case S_HEX: + fputs(" hex\n", out); + break; + default: + fputs(" ???\n", out); + break; + } + for (prop = sym->prop; prop; prop = prop->next) { + if (prop->menu != menu) + continue; + switch (prop->type) { + case P_PROMPT: + fputs(" prompt ", out); + print_quoted_string(out, prop->text); + if (!expr_is_yes(prop->visible.expr)) { + fputs(" if ", out); + expr_fprint(prop->visible.expr, out); + } + fputc('\n', out); + break; + case P_DEFAULT: + fputs( " default ", out); + expr_fprint(prop->expr, out); + if (!expr_is_yes(prop->visible.expr)) { + fputs(" if ", out); + expr_fprint(prop->visible.expr, out); + } + fputc('\n', out); + break; + case P_CHOICE: + fputs(" #choice value\n", out); + break; + case P_SELECT: + fputs( " select ", out); + expr_fprint(prop->expr, out); + fputc('\n', out); + break; + case P_IMPLY: + fputs( " imply ", out); + expr_fprint(prop->expr, out); + fputc('\n', out); + break; + case P_RANGE: + fputs( " range ", out); + expr_fprint(prop->expr, out); + fputc('\n', out); + break; + case P_MENU: + fputs( " menu ", out); + print_quoted_string(out, prop->text); + fputc('\n', out); + break; + default: + fprintf(out, " unknown prop %d!\n", prop->type); + break; + } + } + if (menu->help) { + int len = strlen(menu->help); + while (menu->help[--len] == '\n') + menu->help[len] = 0; + fprintf(out, " help\n%s\n", menu->help); + } +} + +void zconfdump(FILE *out) +{ + struct property *prop; + struct symbol *sym; + struct menu *menu; + + menu = rootmenu.list; + while (menu) { + if ((sym = menu->sym)) + print_symbol(out, menu); + else if ((prop = menu->prompt)) { + switch (prop->type) { + case P_COMMENT: + fputs("\ncomment ", out); + print_quoted_string(out, prop->text); + fputs("\n", out); + break; + case P_MENU: + fputs("\nmenu ", out); + print_quoted_string(out, prop->text); + fputs("\n", out); + break; + default: + ; + } + if (!expr_is_yes(prop->visible.expr)) { + fputs(" depends ", out); + expr_fprint(prop->visible.expr, out); + fputc('\n', out); + } + } + + if (menu->list) + menu = menu->list; + else if (menu->next) + menu = menu->next; + else while ((menu = menu->parent)) { + if (menu->prompt && menu->prompt->type == P_MENU) + fputs("\nendmenu\n", out); + if (menu->next) { + menu = menu->next; + break; + } + } + } +} + +#include "zconf.lex.c" +#include "util.c" +#include "confdata.c" +#include "expr.c" +#include "symbol.c" +#include "menu.c" diff --git a/support/legal-info/README.header b/support/legal-info/README.header new file mode 100644 index 00000000..55996b53 --- /dev/null +++ b/support/legal-info/README.header @@ -0,0 +1,35 @@ +Most of the packages that were used by Buildroot to produce the image files, +including Buildroot itself, have open-source licenses. It is your +responsibility to comply to the requirements of these licenses. +To make this easier for you, Buildroot collected in this directory some +material you may need to get it done. + +This material is composed of the following items. + * The scripts used to control compilation of the packages and the generation + of image files, i.e. the Buildroot sources. + Note: this has not been saved due to technical limitations, you must + collect it manually. + * The Buildroot configuration file; this has been saved in buildroot.config. + * The toolchain (cross-compiler and related tools) used to generate all the + compiled programs. + Note: this may have not been saved due to technical limitations, you may + need to collect it manually. + * The original source code for target packages in the 'sources/' + subdirectory and for host packages in the 'host-sources/' subdirectory + (except for the non-redistributable packages, which have not been + saved). Patches that were applied are also saved, along with a file + named 'series' that lists the patches in the order they were + applied. Patches are under the same license as the files that they + modify in the original package. + Note: Buildroot applies additional patches to Libtool scripts of + autotools-based packages. These patches can be found under + support/libtool in the Buildroot source and, due to technical + limitations, are not saved with the package sources. You may need + to collect them manually. + * Two manifest files listing the configured packages and related + information: 'manifest.csv' for target packages and 'host-manifest.csv' + for host packages. + * The license text of the packages, in the 'licenses/' and + 'host-licenses/' subdirectories for target and host packages + respectively. + diff --git a/support/legal-info/README.warnings-header b/support/legal-info/README.warnings-header new file mode 100644 index 00000000..cd082906 --- /dev/null +++ b/support/legal-info/README.warnings-header @@ -0,0 +1,4 @@ +Due to technical limitations or lack of license definition in the package +makefile, some of the material listed above could not been saved, as the +following list details. + diff --git a/support/legal-info/buildroot.hash b/support/legal-info/buildroot.hash new file mode 100644 index 00000000..1b62dbee --- /dev/null +++ b/support/legal-info/buildroot.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 9755181e27175cb3510b4da8629caa406fb355a19aa8e7d55f06bf8ab33323c4 COPYING diff --git a/support/libtool/buildroot-libtool-v1.5.patch b/support/libtool/buildroot-libtool-v1.5.patch new file mode 100644 index 00000000..cdd9c5a0 --- /dev/null +++ b/support/libtool/buildroot-libtool-v1.5.patch @@ -0,0 +1,91 @@ +--- a/ltmain.sh 2014-07-31 10:43:01.634568799 -0300 ++++ b/ltmain.sh 2014-07-31 10:44:14.032018999 -0300 +@@ -226,8 +226,9 @@ + # line option must be used. + if test -z "$tagname"; then + $echo "$modename: unable to infer tagged configuration" +- $echo "$modename: specify a tag with \`--tag'" 1>&2 +- exit $EXIT_FAILURE ++ $echo "$modename: defaulting to \`CC'" ++ $echo "$modename: if this is not correct, specify a tag with \`--tag'" ++# exit $EXIT_FAILURE + # else + # $echo "$modename: using $tagname tagged configuration" + fi +@@ -247,6 +248,11 @@ + arg="$1" + shift + ++ # Make -static behave as -all-static ++ case $arg in ++ -static) arg="-all-static" ;; ++ esac ++ + case $arg in + -*=*) optarg=`$echo "X$arg" | $Xsed -e 's/[-_a-zA-Z0-9]*=//'` ;; + *) optarg= ;; +@@ -1238,7 +1244,8 @@ + prevarg="$arg" + + case $arg in +- -all-static) ++ # Make -static behave like -all-static ++ -all-static | -static) + if test -n "$link_static_flag"; then + compile_command="$compile_command $link_static_flag" + finalize_command="$finalize_command $link_static_flag" +@@ -2146,8 +2153,14 @@ + absdir="$abs_ladir" + libdir="$abs_ladir" + else +- dir="$libdir" +- absdir="$libdir" ++ # Adding 'libdir' from the .la file to our library search paths ++ # breaks crosscompilation horribly. We cheat here and don't add ++ # it, instead adding the path where we found the .la. -CL ++ dir="$abs_ladir" ++ absdir="$abs_ladir" ++ libdir="$abs_ladir" ++ #dir="$libdir" ++ #absdir="$libdir" + fi + else + dir="$ladir/$objdir" +@@ -2272,7 +2285,7 @@ + { test "$prefer_static_libs" = no || test -z "$old_library"; }; then + if test "$installed" = no; then + notinst_deplibs="$notinst_deplibs $lib" +- need_relink=yes ++ need_relink=no + fi + # This is a shared library + +@@ -5169,6 +5182,10 @@ + # Replace all uninstalled libtool libraries with the installed ones + newdependency_libs= + for deplib in $dependency_libs; do ++ # Replacing uninstalled with installed can easily break crosscompilation, ++ # since the installed path is generally the wrong architecture. -CL ++ newdependency_libs="$newdependency_libs $deplib" ++ continue + case $deplib in + *.la) + name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'` +@@ -5487,10 +5504,13 @@ + # At present, this check doesn't affect windows .dll's that + # are installed into $libdir/../bin (currently, that works fine) + # but it's something to keep an eye on. +- if test "$inst_prefix_dir" = "$destdir"; then +- $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2 +- exit $EXIT_FAILURE +- fi ++ # ++ # This breaks install into our staging area. -PB ++ # ++ # if test "$inst_prefix_dir" = "$destdir"; then ++ # $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2 ++ # exit $EXIT_FAILURE ++ # fi + + if test -n "$inst_prefix_dir"; then + # Stick the inst_prefix_dir data into the link command. diff --git a/support/libtool/buildroot-libtool-v2.2.patch b/support/libtool/buildroot-libtool-v2.2.patch new file mode 100644 index 00000000..8bb78268 --- /dev/null +++ b/support/libtool/buildroot-libtool-v2.2.patch @@ -0,0 +1,106 @@ +--- a/ltmain.sh 2010-06-09 15:08:53.000000000 +0200 ++++ b/ltmain.sh 2014-07-30 22:33:41.176710372 +0200 +@@ -1214,8 +1214,8 @@ + # was found and let the user know that the "--tag" command + # line option must be used. + if test -z "$tagname"; then +- func_echo "unable to infer tagged configuration" +- func_fatal_error "specify a tag with \`--tag'" ++ func_echo "defaulting to \`CC'" ++ func_echo "if this is not correct, specify a tag with \`--tag'" + # else + # func_verbose "using $tagname tagged configuration" + fi +@@ -2239,8 +2239,11 @@ + # At present, this check doesn't affect windows .dll's that + # are installed into $libdir/../bin (currently, that works fine) + # but it's something to keep an eye on. +- test "$inst_prefix_dir" = "$destdir" && \ +- func_fatal_error "error: cannot install \`$file' to a directory not ending in $libdir" ++ # ++ # This breaks install into our staging area. -PB ++ # ++ # test "$inst_prefix_dir" = "$destdir" && \ ++ # func_fatal_error "error: cannot install \`$file' to a directory not ending in $libdir" + + if test -n "$inst_prefix_dir"; then + # Stick the inst_prefix_dir data into the link command. +@@ -4429,7 +4432,8 @@ + ;; + -all-static | -static | -static-libtool-libs) + case $arg in +- -all-static) ++ # Make -static behave like -all-static ++ -all-static | -static) + if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then + func_warning "complete static linking is impossible in this configuration" + fi +@@ -4438,12 +4442,6 @@ + fi + prefer_static_libs=yes + ;; +- -static) +- if test -z "$pic_flag" && test -n "$link_static_flag"; then +- dlopen_self=$dlopen_self_static +- fi +- prefer_static_libs=built +- ;; + -static-libtool-libs) + if test -z "$pic_flag" && test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static +@@ -4726,7 +4724,8 @@ + prevarg="$arg" + + case $arg in +- -all-static) ++ # Make -static behave like -all-static ++ -all-static | -static) + if test -n "$link_static_flag"; then + # See comment for -static flag below, for more details. + func_append compile_command " $link_static_flag" +@@ -4995,7 +4994,7 @@ + continue + ;; + +- -static | -static-libtool-libs) ++ -static-libtool-libs) + # The effects of -static are defined in a previous loop. + # We used to do the same as -all-static on platforms that + # didn't have a PIC flag, but the assumption that the effects +@@ -5739,8 +5738,14 @@ + absdir="$abs_ladir" + libdir="$abs_ladir" + else +- dir="$libdir" +- absdir="$libdir" ++ # Adding 'libdir' from the .la file to our library search paths ++ # breaks crosscompilation horribly. We cheat here and don't add ++ # it, instead adding the path where we found the .la. -CL ++ dir="$abs_ladir" ++ absdir="$abs_ladir" ++ libdir="$abs_ladir" ++ #dir="$libdir" ++ #absdir="$libdir" + fi + test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes + else +@@ -5891,7 +5896,7 @@ + *) + if test "$installed" = no; then + notinst_deplibs="$notinst_deplibs $lib" +- need_relink=yes ++ need_relink=no + fi + ;; + esac +@@ -8373,6 +8378,10 @@ + # Replace all uninstalled libtool libraries with the installed ones + newdependency_libs= + for deplib in $dependency_libs; do ++ # Replacing uninstalled with installed can easily break crosscompilation, ++ # since the installed path is generally the wrong architecture. -CL ++ newdependency_libs="$newdependency_libs $deplib" ++ continue + case $deplib in + *.la) + func_basename "$deplib" diff --git a/support/libtool/buildroot-libtool-v2.4.4.patch b/support/libtool/buildroot-libtool-v2.4.4.patch new file mode 100644 index 00000000..bcdf30c7 --- /dev/null +++ b/support/libtool/buildroot-libtool-v2.4.4.patch @@ -0,0 +1,95 @@ +Libtool fixes for cross-compilation, many past contributors/authors. +Update based on libtool-2.4.4, useful for 2.4.3 as well but not 2.4.2. + +Signed-off-by: Gustavo Zacarias + +--- a/ltmain.sh 2014-12-16 09:51:23.068441045 -0300 ++++ b/ltmain.sh 2014-12-16 09:57:10.509430339 -0300 +@@ -2687,8 +2687,8 @@ + # was found and let the user know that the "--tag" command + # line option must be used. + if test -z "$tagname"; then +- func_echo "unable to infer tagged configuration" +- func_fatal_error "specify a tag with '--tag'" ++ func_echo "defaulting to \`CC'" ++ func_echo "if this is not correct, specify a tag with \`--tag'" + # else + # func_verbose "using $tagname tagged configuration" + fi +@@ -4277,8 +4277,12 @@ + # At present, this check doesn't affect windows .dll's that + # are installed into $libdir/../bin (currently, that works fine) + # but it's something to keep an eye on. +- test "$inst_prefix_dir" = "$destdir" && \ +- func_fatal_error "error: cannot install '$file' to a directory not ending in $libdir" ++ ++ # ++ # This breaks install into our staging area. -PB ++ # ++ #test "$inst_prefix_dir" = "$destdir" && \ ++ # func_fatal_error "error: cannot install '$file' to a directory not ending in $libdir" + + if test -n "$inst_prefix_dir"; then + # Stick the inst_prefix_dir data into the link command. +@@ -6550,7 +6554,8 @@ + ;; + -all-static | -static | -static-libtool-libs) + case $arg in +- -all-static) ++ # Make -static behave like -all-static -GZ ++ -all-static | -static) + if test yes = "$build_libtool_libs" && test -z "$link_static_flag"; then + func_warning "complete static linking is impossible in this configuration" + fi +@@ -6559,12 +6564,6 @@ + fi + prefer_static_libs=yes + ;; +- -static) +- if test -z "$pic_flag" && test -n "$link_static_flag"; then +- dlopen_self=$dlopen_self_static +- fi +- prefer_static_libs=built +- ;; + -static-libtool-libs) + if test -z "$pic_flag" && test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static +@@ -6858,7 +6857,8 @@ + prevarg=$arg + + case $arg in +- -all-static) ++ # Make -static behave like -all-static -GZ ++ -all-static | -static) + if test -n "$link_static_flag"; then + # See comment for -static flag below, for more details. + func_append compile_command " $link_static_flag" +@@ -7149,7 +7149,7 @@ + continue + ;; + +- -static | -static-libtool-libs) ++ -static-libtool-libs) + # The effects of -static are defined in a previous loop. + # We used to do the same as -all-static on platforms that + # didn't have a PIC flag, but the assumption that the effects +@@ -8112,7 +8112,7 @@ + *) + if test no = "$installed"; then + func_append notinst_deplibs " $lib" +- need_relink=yes ++ need_relink=no + fi + ;; + esac +@@ -10710,6 +10710,10 @@ + # Replace all uninstalled libtool libraries with the installed ones + newdependency_libs= + for deplib in $dependency_libs; do ++ # Replacing uninstalled with installed can easily break crosscompilation, ++ # since the installed path is generally the wrong architecture. -CL ++ newdependency_libs="$newdependency_libs $deplib" ++ continue + case $deplib in + *.la) + func_basename "$deplib" diff --git a/support/libtool/buildroot-libtool-v2.4.patch b/support/libtool/buildroot-libtool-v2.4.patch new file mode 100644 index 00000000..f610b1b3 --- /dev/null +++ b/support/libtool/buildroot-libtool-v2.4.patch @@ -0,0 +1,89 @@ +--- a/ltmain.sh 2014-07-30 22:21:24.664684143 +0200 ++++ b/ltmain.sh 2014-07-30 22:23:02.440687625 +0200 +@@ -1417,8 +1417,8 @@ + # was found and let the user know that the "--tag" command + # line option must be used. + if test -z "$tagname"; then +- func_echo "unable to infer tagged configuration" +- func_fatal_error "specify a tag with \`--tag'" ++ func_echo "defaulting to \`CC'" ++ func_echo "if this is not correct, specify a tag with \`--tag'" + # else + # func_verbose "using $tagname tagged configuration" + fi +@@ -2963,8 +2963,11 @@ + # At present, this check doesn't affect windows .dll's that + # are installed into $libdir/../bin (currently, that works fine) + # but it's something to keep an eye on. +- test "$inst_prefix_dir" = "$destdir" && \ +- func_fatal_error "error: cannot install \`$file' to a directory not ending in $libdir" ++ # ++ # This breaks install into our staging area. -PB ++ # ++ # test "$inst_prefix_dir" = "$destdir" && \ ++ # func_fatal_error "error: cannot install \`$file' to a directory not ending in $libdir" + + if test -n "$inst_prefix_dir"; then + # Stick the inst_prefix_dir data into the link command. +@@ -5176,7 +5179,8 @@ + ;; + -all-static | -static | -static-libtool-libs) + case $arg in +- -all-static) ++ # Make -static behave like -all-static ++ -all-static | -static) + if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then + func_warning "complete static linking is impossible in this configuration" + fi +@@ -5185,12 +5189,6 @@ + fi + prefer_static_libs=yes + ;; +- -static) +- if test -z "$pic_flag" && test -n "$link_static_flag"; then +- dlopen_self=$dlopen_self_static +- fi +- prefer_static_libs=built +- ;; + -static-libtool-libs) + if test -z "$pic_flag" && test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static +@@ -5473,7 +5471,8 @@ + prevarg="$arg" + + case $arg in +- -all-static) ++ # Make -static behave like -all-static ++ -all-static | -static) + if test -n "$link_static_flag"; then + # See comment for -static flag below, for more details. + func_append compile_command " $link_static_flag" +@@ -5754,7 +5753,7 @@ + continue + ;; + +- -static | -static-libtool-libs) ++ -static-libtool-libs) + # The effects of -static are defined in a previous loop. + # We used to do the same as -all-static on platforms that + # didn't have a PIC flag, but the assumption that the effects +@@ -6697,7 +6696,7 @@ + *) + if test "$installed" = no; then + func_append notinst_deplibs " $lib" +- need_relink=yes ++ need_relink=no + fi + ;; + esac +@@ -9275,6 +9274,10 @@ + # Replace all uninstalled libtool libraries with the installed ones + newdependency_libs= + for deplib in $dependency_libs; do ++ # Replacing uninstalled with installed can easily break crosscompilation, ++ # since the installed path is generally the wrong architecture. -CL ++ newdependency_libs="$newdependency_libs $deplib" ++ continue + case $deplib in + *.la) + func_basename "$deplib" diff --git a/support/misc/Buildroot.cmake b/support/misc/Buildroot.cmake new file mode 100644 index 00000000..761b6d7a --- /dev/null +++ b/support/misc/Buildroot.cmake @@ -0,0 +1,8 @@ +# Impersonate a Linux system. Afterall, that's what we are... +set(CMAKE_SYSTEM_NAME Linux) +set(CMAKE_SYSTEM ${CMAKE_SYSTEM_NAME}) +include(Platform/Linux) + +# Override problematic settings, to avoid RPATH against host lib directories. +set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS FALSE) +set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS FALSE) diff --git a/support/misc/Vagrantfile b/support/misc/Vagrantfile new file mode 100644 index 00000000..f0d1e788 --- /dev/null +++ b/support/misc/Vagrantfile @@ -0,0 +1,60 @@ +################################################################################ +# +# Vagrantfile +# +################################################################################ + +# Buildroot version to use +RELEASE='2021.02.4' + +### Change here for more memory/cores ### +VM_MEMORY=2048 +VM_CORES=1 + +Vagrant.configure('2') do |config| + config.vm.box = 'ubuntu/bionic64' + + config.vm.provider :vmware_fusion do |v, override| + v.vmx['memsize'] = VM_MEMORY + v.vmx['numvcpus'] = VM_CORES + end + + config.vm.provider :virtualbox do |v, override| + v.memory = VM_MEMORY + v.cpus = VM_CORES + + required_plugins = %w( vagrant-vbguest ) + required_plugins.each do |plugin| + system "vagrant plugin install #{plugin}" unless Vagrant.has_plugin? plugin + end + end + + config.vm.provision 'shell' do |s| + s.inline = 'echo Setting up machine name' + + config.vm.provider :vmware_fusion do |v, override| + v.vmx['displayname'] = "Buildroot #{RELEASE}" + end + + config.vm.provider :virtualbox do |v, override| + v.name = "Buildroot #{RELEASE}" + end + end + + config.vm.provision 'shell', privileged: true, inline: + "sed -i 's|deb http://us.archive.ubuntu.com/ubuntu/|deb mirror://mirrors.ubuntu.com/mirrors.txt|g' /etc/apt/sources.list + dpkg --add-architecture i386 + apt-get -q update + apt-get purge -q -y snapd lxcfs lxd ubuntu-core-launcher snap-confine + apt-get -q -y install build-essential libncurses5-dev \ + git bzr cvs mercurial subversion libc6:i386 unzip bc + apt-get -q -y autoremove + apt-get -q -y clean + update-locale LC_ALL=C" + + config.vm.provision 'shell', privileged: false, inline: + "echo 'Downloading and extracting buildroot #{RELEASE}' + wget -q -c http://buildroot.org/downloads/buildroot-#{RELEASE}.tar.gz + tar axf buildroot-#{RELEASE}.tar.gz" + +end diff --git a/support/misc/gitlab-ci.yml.in b/support/misc/gitlab-ci.yml.in new file mode 100644 index 00000000..fcfff5c6 --- /dev/null +++ b/support/misc/gitlab-ci.yml.in @@ -0,0 +1,78 @@ +.check-DEVELOPERS_base: + # get-developers should print just "No action specified"; if it prints + # anything else, it's a parse error. + # The initial ! is removed by YAML so we need to quote it. + script: + - "! utils/get-developers | grep -v 'No action specified'" + +.check-flake8_base: + script: + - make check-flake8 + +.check-package_base: + script: + - make check-package + +.defconfig_check: + before_script: + - DEFCONFIG_NAME=$(echo ${CI_JOB_NAME} | sed -e 's,_check$,,g') + script: + - echo "Configure Buildroot for ${DEFCONFIG_NAME}" + - make ${DEFCONFIG_NAME} + - support/scripts/check-dotconfig.py .config configs/${DEFCONFIG_NAME} + artifacts: + when: on_failure + expire_in: 2 weeks + paths: + - .config + +.defconfig_base: + before_script: + - DEFCONFIG_NAME=${CI_JOB_NAME} + script: + - echo "Configure Buildroot for ${DEFCONFIG_NAME}" + - make ${DEFCONFIG_NAME} + - ./support/scripts/check-dotconfig.py .config ./configs/${DEFCONFIG_NAME} + - echo 'Build buildroot' + - | + make > >(tee build.log |grep '>>>') 2>&1 || { + echo 'Failed build last output' + tail -200 build.log + exit 1 + } + - | + ./support/scripts/boot-qemu-image.py "${DEFCONFIG_NAME}" > >(tee runtime-test.log) 2>&1 || { + echo 'Failed runtime test last output' + tail -200 runtime-test.log + exit 1 + } + artifacts: + when: always + expire_in: 2 weeks + paths: + - .config + - build.log + - output/images/ + - output/build/build-time.log + - output/build/packages-file-list.txt + - output/build/*/.config + - runtime-test.log + +.runtime_test_base: + before_script: + - TEST_CASE_NAME=${CI_JOB_NAME} + # Keep build directories so the rootfs can be an artifact of the job. The + # runner will clean up those files for us. + # Multiply every emulator timeout by 10 to avoid sporadic failures in + # elastic runners. + script: + - echo "Starting runtime test ${TEST_CASE_NAME}" + - ./support/testing/run-tests -o test-output/ -d test-dl/ -k --timeout-multiplier 10 ${TEST_CASE_NAME} + artifacts: + when: always + expire_in: 2 weeks + paths: + - test-output/*.log + - test-output/*/.config + - test-output/*/images/* + diff --git a/support/misc/relocate-sdk.sh b/support/misc/relocate-sdk.sh new file mode 100755 index 00000000..caabeaa6 --- /dev/null +++ b/support/misc/relocate-sdk.sh @@ -0,0 +1,47 @@ +#!/bin/sh +# +if [ "$#" -ne 0 ]; then + echo "Run this script to relocate the buildroot SDK at that location" + exit 1 +fi + +LOCFILE="share/buildroot/sdk-location" +FILEPATH="$(readlink -f "$0")" +NEWPATH="$(dirname "${FILEPATH}")" + +cd "${NEWPATH}" +if [ ! -r "${LOCFILE}" ]; then + echo "Previous location of the buildroot SDK not found!" + exit 1 +fi +OLDPATH="$(cat "${LOCFILE}")" + +if [ "${NEWPATH}" = "${OLDPATH}" ]; then + echo "This buildroot SDK has already been relocated!" + exit 0 +fi + +# Check if the path substitution does work properly, e.g. a tree +# "/a/b/c" copied into "/a/b/c/a/b/c/" would not be allowed. +newpath="$(sed -e "s|${OLDPATH}|${NEWPATH}|g" "${LOCFILE}")" +if [ "${NEWPATH}" != "${newpath}" ]; then + echo "Something went wrong with substituting the path!" + echo "Please choose another location for your SDK!" + exit 1 +fi + +echo "Relocating the buildroot SDK from ${OLDPATH} to ${NEWPATH} ..." + +# Make sure file uses the right language +export LC_ALL=C +# Replace the old path with the new one in all text files +grep -lr "${OLDPATH}" . | while read -r FILE ; do + if file -b --mime-type "${FILE}" | grep -q '^text/' && [ "${FILE}" != "${LOCFILE}" ] + then + sed -i "s|${OLDPATH}|${NEWPATH}|g" "${FILE}" + fi +done + +# At the very end, we update the location file to not break the +# SDK if this script gets interruted. +sed -i "s|${OLDPATH}|${NEWPATH}|g" ${LOCFILE} diff --git a/support/misc/target-dir-warning.txt b/support/misc/target-dir-warning.txt new file mode 100644 index 00000000..94d2e0c0 --- /dev/null +++ b/support/misc/target-dir-warning.txt @@ -0,0 +1,29 @@ +Warning! +======== + +This directory does *not* contain the root filesystem that you can use +on your embedded system. Since Buildroot does not run as root, it +cannot create device files and set the permissions and ownership of +files correctly in this directory to make it usable as a root +filesystem. + +For that reason, do *not* use the contents of this directory to mount +your root filesystem over NFS or copy the contents of this directory +to a SD card or USB key, thinking it will work as the root filesystem +for your embedded system. It will simply *not* work. + +Instead, if you need a usable root filesystem, please select one of +the filesystem image formats available in the Buildroot configuration +interface (make menuconfig or others) in the "Filesystem images" +sub-menu. If you want to get a filesystem image that you can easily +extract to your SD card or to some directory exposed through NFS, +please use the "tar the root filesystem" option. It will generate a +images/rootfs.tar image in your Buildroot output directory, which you +can extract as root: + + sudo tar -C /destination/of/extraction -xf images/rootfs.tar + +Those image files are created using the contents of the target/ +directory, but there is a post-processing step to create device files +and set ownership/permissions properly even if Buildroot does not run +as root. diff --git a/support/misc/toolchainfile.cmake.in b/support/misc/toolchainfile.cmake.in new file mode 100644 index 00000000..be575566 --- /dev/null +++ b/support/misc/toolchainfile.cmake.in @@ -0,0 +1,73 @@ +# +# Automatically generated file; DO NOT EDIT. +# CMake toolchain file for Buildroot +# + +# In order to allow the toolchain to be relocated, we calculate the +# HOST_DIR based on this file's location: $(HOST_DIR)/share/buildroot +# and store it in RELOCATED_HOST_DIR. +# All the other variables that need to refer to HOST_DIR will use the +# RELOCATED_HOST_DIR variable. +string(REPLACE "/share/buildroot" "" RELOCATED_HOST_DIR ${CMAKE_CURRENT_LIST_DIR}) + +# Point cmake to the location where we have our custom modules, +# so that it can find our custom platform description. +list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR}) + +set(CMAKE_SYSTEM_NAME Buildroot) +set(CMAKE_SYSTEM_VERSION 1) +set(CMAKE_SYSTEM_PROCESSOR @@CMAKE_SYSTEM_PROCESSOR@@) + +# Set the {C,CXX}FLAGS appended by CMake depending on the build type +# defined by Buildroot. CMake defaults these variables with -g and/or +# -O options, and they are appended at the end of the argument list, +# so the Buildroot options are overridden. Therefore these variables +# have to be cleared, so that the options passed in CMAKE_C_FLAGS do +# apply. +# +# Note: +# if the project forces some of these flag variables, Buildroot is +# screwed up and there is nothing Buildroot can do about that :( +set(CMAKE_C_FLAGS_DEBUG "" CACHE STRING "Debug CFLAGS") +set(CMAKE_C_FLAGS_RELEASE " -DNDEBUG" CACHE STRING "Release CFLAGS") + +# Build type from the Buildroot configuration +set(CMAKE_BUILD_TYPE @@CMAKE_BUILD_TYPE@@ CACHE STRING "Buildroot build configuration") + +# Buildroot defaults flags. +# If you are using this toolchainfile.cmake file outside of Buildroot and +# want to customize the compiler/linker flags, then: +# * set them all on the cmake command line, e.g.: +# cmake -DCMAKE_C_FLAGS="@@TARGET_CFLAGS@@ -Dsome_custom_flag" ... +# * and make sure the project's CMake code extends them like this if needed: +# set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Dsome_definitions") +set(CMAKE_C_FLAGS "@@TARGET_CFLAGS@@" CACHE STRING "Buildroot CFLAGS") +set(CMAKE_EXE_LINKER_FLAGS "@@TARGET_LDFLAGS@@" CACHE STRING "Buildroot LDFLAGS for executables") +set(CMAKE_SHARED_LINKER_FLAGS "@@TARGET_LDFLAGS@@" CACHE STRING "Buildroot LDFLAGS for shared libraries") +set(CMAKE_MODULE_LINKER_FLAGS "@@TARGET_LDFLAGS@@" CACHE STRING "Buildroot LDFLAGS for module libraries") + +set(CMAKE_INSTALL_SO_NO_EXE 0) + +set(CMAKE_PROGRAM_PATH "${RELOCATED_HOST_DIR}/bin") +set(CMAKE_SYSROOT "${RELOCATED_HOST_DIR}/@@STAGING_SUBDIR@@") +set(CMAKE_FIND_ROOT_PATH "${RELOCATED_HOST_DIR}/@@STAGING_SUBDIR@@") +set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) +set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY) +set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) +set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) +set(ENV{PKG_CONFIG_SYSROOT_DIR} "${RELOCATED_HOST_DIR}/@@STAGING_SUBDIR@@") + +# This toolchain file can be used both inside and outside Buildroot. +set(CMAKE_C_COMPILER "${RELOCATED_HOST_DIR}/@@TARGET_CC@@") +if(@@TOOLCHAIN_HAS_CXX@@) + set(CMAKE_CXX_FLAGS_DEBUG "" CACHE STRING "Debug CXXFLAGS") + set(CMAKE_CXX_FLAGS_RELEASE " -DNDEBUG" CACHE STRING "Release CXXFLAGS") + set(CMAKE_CXX_FLAGS "@@TARGET_CXXFLAGS@@" CACHE STRING "Buildroot CXXFLAGS") + set(CMAKE_CXX_COMPILER "${RELOCATED_HOST_DIR}/@@TARGET_CXX@@") +endif() +if(@@TOOLCHAIN_HAS_FORTRAN@@) + set(CMAKE_Fortran_FLAGS_DEBUG "" CACHE STRING "Debug Fortran FLAGS") + set(CMAKE_Fortran_FLAGS_RELEASE " -DNDEBUG" CACHE STRING "Release Fortran FLAGS") + set(CMAKE_Fortran_FLAGS "@@TARGET_FCFLAGS@@" CACHE STRING "Buildroot FCFLAGS") + set(CMAKE_Fortran_COMPILER "${RELOCATED_HOST_DIR}/@@TARGET_FC@@") +endif() diff --git a/support/misc/utils.mk b/support/misc/utils.mk new file mode 100644 index 00000000..dc60cad9 --- /dev/null +++ b/support/misc/utils.mk @@ -0,0 +1,137 @@ +################################################################################ +# +# This file contains various utility macros and variables used about +# everywhere in make constructs. +# +################################################################################ + +# Strip quotes and then whitespaces +qstrip = $(strip $(subst ",,$(1))) +#")) + +# Variables for use in Make constructs +comma := , +empty := +space := $(empty) $(empty) + +# make 4.3: +# https://lwn.net/Articles/810071/ +# Number signs (#) appearing inside a macro reference or function invocation +# no longer introduce comments and should not be escaped with backslashes: +# thus a call such as: +# foo := $(shell echo '#') +# is legal. Previously the number sign needed to be escaped, for example: +# foo := $(shell echo '\#') +# Now this latter will resolve to "\#". If you want to write makefiles +# portable to both versions, assign the number sign to a variable: +# H := \# +# foo := $(shell echo '$H') +SHARP_SIGN := \# + +# Case conversion macros. This is inspired by the 'up' macro from gmsl +# (http://gmsl.sf.net). It is optimised very heavily because these macros +# are used a lot. It is about 5 times faster than forking a shell and tr. +# +# The caseconvert-helper creates a definition of the case conversion macro. +# After expansion by the outer $(eval ), the UPPERCASE macro is defined as: +# $(strip $(eval __tmp := $(1)) $(eval __tmp := $(subst a,A,$(__tmp))) ... ) +# In other words, every letter is substituted one by one. +# +# The caseconvert-helper allows us to create this definition out of the +# [FROM] and [TO] lists, so we don't need to write down every substition +# manually. The uses of $ and $$ quoting are chosen in order to do as +# much expansion as possible up-front. +# +# Note that it would be possible to conceive a slightly more optimal +# implementation that avoids the use of __tmp, but that would be even +# more unreadable and is not worth the effort. + +[FROM] := a b c d e f g h i j k l m n o p q r s t u v w x y z - . +[TO] := A B C D E F G H I J K L M N O P Q R S T U V W X Y Z _ _ + +define caseconvert-helper +$(1) = $$(strip \ + $$(eval __tmp := $$(1))\ + $(foreach c, $(2),\ + $$(eval __tmp := $$(subst $(word 1,$(subst :, ,$c)),$(word 2,$(subst :, ,$c)),$$(__tmp))))\ + $$(__tmp)) +endef + +$(eval $(call caseconvert-helper,UPPERCASE,$(join $(addsuffix :,$([FROM])),$([TO])))) +$(eval $(call caseconvert-helper,LOWERCASE,$(join $(addsuffix :,$([TO])),$([FROM])))) + +# Reverse the orders of words in a list. Again, inspired by the gmsl +# 'reverse' macro. +reverse = $(if $(1),$(call reverse,$(wordlist 2,$(words $(1)),$(1))) $(firstword $(1))) + +# Sanitize macro cleans up generic strings so it can be used as a filename +# and in rules. Particularly useful for VCS version strings, that can contain +# slashes, colons (OK in filenames but not in rules), and spaces. +sanitize = $(subst $(space),_,$(subst :,_,$(subst /,_,$(strip $(1))))) + +# MESSAGE Macro -- display a message in bold type +MESSAGE = echo "$(TERM_BOLD)>>> $($(PKG)_NAME) $($(PKG)_VERSION) $(call qstrip,$(1))$(TERM_RESET)" +TERM_BOLD := $(shell tput smso 2>/dev/null) +TERM_RESET := $(shell tput rmso 2>/dev/null) + +# Utility functions for 'find' +# findfileclauses(filelist) => -name 'X' -o -name 'Y' +findfileclauses = $(call notfirstword,$(patsubst %,-o -name '%',$(1))) +# finddirclauses(base, dirlist) => -path 'base/dirX' -o -path 'base/dirY' +finddirclauses = $(call notfirstword,$(patsubst %,-o -path '$(1)/%',$(2))) + +# Miscellaneous utility functions +# notfirstword(wordlist): returns all but the first word in wordlist +notfirstword = $(wordlist 2,$(words $(1)),$(1)) + +# build a comma-separated list of quoted items, from a space-separated +# list of unquoted items: a b c d --> "a", "b", "c", "d" +make-comma-list = $(subst $(space),$(comma)$(space),$(patsubst %,"%",$(strip $(1)))) + +# build a comma-separated list of single quoted items, from a space-separated +# list of unquoted items: a b c d --> 'a', 'b', 'c', 'd' +make-sq-comma-list = $(subst $(space),$(comma)$(space),$(patsubst %,'%',$(strip $(1)))) + +# Needed for the foreach loops to loop over the list of hooks, so that +# each hook call is properly separated by a newline. +define sep + + +endef + +PERCENT = % +QUOTE = ' +# ' # Meh... syntax-highlighting + +# This macro properly escapes a command string, then prints it with printf: +# +# - first, backslash '\' are self-escaped, so that they do not escape +# the following char and so that printf properly outputs a backslash; +# +# - next, single quotes are escaped by closing an existing one, adding +# an escaped one, and re-openning a new one (see below for the reason); +# +# - then '%' signs are self-escaped so that the printf does not interpret +# them as a format specifier, in case the variable contains an actual +# printf with a format; +# +# - finally, $(sep) is replaced with the literal '\n' so that make does +# not break on the so-expanded variable, but so that the printf does +# correctly output an LF. +# +# Note: this must be escaped in this order to avoid over-escaping the +# previously escaped elements. +# +# Once everything has been escaped, it is passed between single quotes +# (that's why the single-quotes are escaped they way they are, above, +# and why the dollar sign is not escaped) to printf(1). A trailing +# newline is apended, too. +# +# Note: leading or trailing spaces are *not* stripped. +# +define PRINTF + printf '$(subst $(sep),\n,\ + $(subst $(PERCENT),$(PERCENT)$(PERCENT),\ + $(subst $(QUOTE),$(QUOTE)\$(QUOTE)$(QUOTE),\ + $(subst \,\\,$(1)))))\n' +endef diff --git a/support/scripts/apply-patches.sh b/support/scripts/apply-patches.sh new file mode 100755 index 00000000..9fb488c5 --- /dev/null +++ b/support/scripts/apply-patches.sh @@ -0,0 +1,170 @@ +#!/usr/bin/env bash +# A little script I whipped up to make it easy to +# patch source trees and have sane error handling +# -Erik +# +# (c) 2002 Erik Andersen +# +# Parameters: +# - "-s", optional. Silent operation, don't print anything if there +# isn't any error. +# - the build directory, optional, default value is '.'. The place where are +# the package sources. +# - the patch directory, optional, default '../kernel-patches'. The place +# where are the scripts you want to apply. +# - other parameters are the patch name patterns, optional, default value is +# '*'. Pattern(s) describing the patch names you want to apply. +# +# The script will look recursively for patches from the patch directory. If a +# file named 'series' exists then the patches mentioned in it will be applied +# as plain patches, regardless of their file name. If no 'series' file exists, +# the script will look for file names matching pattern(s). If the name +# ends with '.tar.*', '.tbz2' or '.tgz', the file is considered as an archive +# and will be uncompressed into a directory named +# '.patches-name_of_the_archive-unpacked'. It's the turn of this directory to +# be scanned with '*' as pattern. Remember that scanning is recursive. Other +# files than series file and archives are considered as a patch. +# +# Once a patch is found, the script will try to apply it. If its name doesn't +# end with '.gz', '.bz', '.bz2', '.xz', '.zip', '.Z', '.diff*' or '.patch*', +# it will be skipped. If necessary, the patch will be uncompressed before being +# applied. The list of the patches applied is stored in '.applied_patches_list' +# file in the build directory. + +set -e + +silent= +if [ "$1" = "-s" ] ; then + # add option to be used by the patch tool + silent=-s + shift +fi + +# Set directories from arguments, or use defaults. +builddir=${1-.} +patchdir=${2-../kernel-patches} +shift 2 +patchpattern=${@-*} + +# use a well defined sorting order +export LC_COLLATE=C + +if [ ! -d "${builddir}" ] ; then + echo "Aborting. '${builddir}' is not a directory." + exit 1 +fi +if [ ! -d "${patchdir}" ] ; then + echo "Aborting. '${patchdir}' is not a directory." + exit 1 +fi + +# Remove any rejects present BEFORE patching - Because if there are +# any, even if patches are well applied, at the end it will complain +# about rejects in builddir. +find ${builddir}/ '(' -name '*.rej' -o -name '.*.rej' ')' -print0 | \ + xargs -0 -r rm -f + +function apply_patch { + path="${1%%/}" + patch="${2}" + case "${path}" in + /*) ;; + *) path="$PWD/${path}";; + esac + if [ "$3" ]; then + type="series"; uncomp="cat" + else + case "$patch" in + *.gz) + type="gzip"; uncomp="gunzip -dc"; ;; + *.bz) + type="bzip"; uncomp="bunzip -dc"; ;; + *.bz2) + type="bzip2"; uncomp="bunzip2 -dc"; ;; + *.xz) + type="xz"; uncomp="unxz -dc"; ;; + *.zip) + type="zip"; uncomp="unzip -d"; ;; + *.Z) + type="compress"; uncomp="uncompress -c"; ;; + *.diff*) + type="diff"; uncomp="cat"; ;; + *.patch*) + type="patch"; uncomp="cat"; ;; + *) + echo "Unsupported file type for ${path}/${patch}, skipping"; + return 0 + ;; + esac + fi + if [ -z "$silent" ] ; then + echo "" + echo "Applying $patch using ${type}: " + fi + if [ ! -e "${path}/$patch" ] ; then + echo "Error: missing patch file ${path}/$patch" + exit 1 + fi + existing="$(grep -E "/${patch}\$" ${builddir}/.applied_patches_list || true)" + if [ -n "${existing}" ]; then + echo "Error: duplicate filename '${patch}'" + echo "Conflicting files are:" + echo " already applied: ${existing}" + echo " to be applied : ${path}/${patch}" + exit 1 + fi + if ${uncomp} "${path}/$patch" | grep -q "^rename from" && \ + ${uncomp} "${path}/$patch" | grep -q "^rename to" ; then + echo "Error: patch contains some renames, not supported by old patch versions" + exit 1 + fi + echo "${path}/${patch}" >> ${builddir}/.applied_patches_list + ${uncomp} "${path}/$patch" | patch -g0 -p1 -E --no-backup-if-mismatch -d "${builddir}" -t -N $silent + if [ $? != 0 ] ; then + echo "Patch failed! Please fix ${patch}!" + exit 1 + fi +} + +function scan_patchdir { + local path=$1 + shift 1 + patches=${@-*} + + # If there is a series file, use it instead of using ls sort order + # to apply patches. Skip line starting with a dash. + if [ -e "${path}/series" ] ; then + # The format of a series file accepts a second field that is + # used to specify the number of directory components to strip + # when applying the patch, in the form -pN (N an integer >= 0) + # We assume this field to always be -p1 whether it is present + # or missing. + series_patches="`grep -Ev "^#" ${path}/series | cut -d ' ' -f1 2> /dev/null`" + for i in $series_patches; do + apply_patch "$path" "$i" series + done + else + for i in `cd $path; ls -d $patches 2> /dev/null` ; do + if [ -d "${path}/$i" ] ; then + scan_patchdir "${path}/$i" + elif echo "$i" | grep -q -E "\.tar(\..*)?$|\.tbz2?$|\.tgz$" ; then + unpackedarchivedir="$builddir/.patches-$(basename $i)-unpacked" + rm -rf "$unpackedarchivedir" 2> /dev/null + mkdir "$unpackedarchivedir" + tar -C "$unpackedarchivedir" -xaf "${path}/$i" + scan_patchdir "$unpackedarchivedir" + else + apply_patch "$path" "$i" + fi + done + fi +} + +touch ${builddir}/.applied_patches_list +scan_patchdir "$patchdir" "$patchpattern" + +# Check for rejects... +if [ "`find $builddir/ '(' -name '*.rej' -o -name '.*.rej' ')' -print`" ] ; then + echo "Aborting. Reject files found." + exit 1 +fi diff --git a/support/scripts/boot-qemu-image.py b/support/scripts/boot-qemu-image.py new file mode 100755 index 00000000..0d4ad825 --- /dev/null +++ b/support/scripts/boot-qemu-image.py @@ -0,0 +1,84 @@ +#!/usr/bin/env python3 + +# This script expect to run from the Buildroot top directory. + +import os +import pexpect +import sys +import time + + +def main(): + if not (len(sys.argv) == 2): + print("Error: incorrect number of arguments") + print("""Usage: boot-qemu-image.py """) + sys.exit(1) + + # Ignore non Qemu defconfig + if not sys.argv[1].startswith('qemu_'): + sys.exit(0) + + if not os.path.exists('output/images/start-qemu.sh'): + print('qemu-start.sh is missing, cannot test.') + sys.exit(0) + + qemu_start = os.path.join(os.getcwd(), 'output/images/start-qemu.sh') + + child = pexpect.spawn(qemu_start, ['serial-only'], + timeout=5, encoding='utf-8', + env={"QEMU_AUDIO_DRV": "none"}) + + # We want only stdout into the log to avoid double echo + child.logfile = sys.stdout + + # Let the spawn actually try to fork+exec to the wrapper, and then + # let the wrapper exec the qemu process. + time.sleep(1) + + try: + child.expect(["buildroot login:"], timeout=60) + except pexpect.EOF as e: + # Some emulations require a fork of qemu-system, which may be + # missing on the system, and is not provided by Buildroot. + # In this case, spawn above will succeed at starting the wrapper + # start-qemu.sh, but that one will fail (exit with 127) in such + # a situation. + exit = [int(l.split(' ')[1]) + for l in e.value.splitlines() + if l.startswith('exitstatus: ')] + if len(exit) and exit[0] == 127: + print('qemu-start.sh could not find the qemu binary') + sys.exit(0) + print("Connection problem, exiting.") + sys.exit(1) + except pexpect.TIMEOUT: + print("System did not boot in time, exiting.") + sys.exit(1) + + child.sendline("root\r") + + try: + child.expect(["# "], timeout=60) + except pexpect.EOF: + print("Cannot connect to shell") + sys.exit(1) + except pexpect.TIMEOUT: + print("Timeout while waiting for shell") + sys.exit(1) + + child.sendline("poweroff\r") + + try: + child.expect(["System halted"], timeout=60) + child.expect(pexpect.EOF) + except pexpect.EOF: + pass + except pexpect.TIMEOUT: + # Qemu may not exit properly after "System halted", ignore. + print("Cannot halt machine") + + sys.exit(0) + + +if __name__ == "__main__": + main() diff --git a/support/scripts/br2-external b/support/scripts/br2-external new file mode 100755 index 00000000..56dc6f53 --- /dev/null +++ b/support/scripts/br2-external @@ -0,0 +1,253 @@ +#!/usr/bin/env bash +set -e + +# This script must be able to run with bash-3.1, so it can't use +# associative arrays. Instead, it emulates them using 'eval'. It +# can however use indexed arrays, supported since at least bash-3.0. + +# The names of the br2-external trees, once validated. +declare -a BR2_EXT_NAMES + +# URL to manual for help in converting old br2-external trees. +# Escape '#' so that make does not consider it a comment. +MANUAL_URL='https://buildroot.org/manual.html\#br2-external-converting' + +main() { + local OPT OPTARG + local br2_ext outputdir + + while getopts :d: OPT; do + case "${OPT}" in + d) outputdir="${OPTARG}";; + :) error "option '%s' expects a mandatory argument\n" "${OPTARG}";; + \?) error "unknown option '%s'\n" "${OPTARG}";; + esac + done + # Forget options; keep only positional args + shift $((OPTIND-1)) + + if [ -z "${outputdir}" ]; then + error "no output directory specified (-d)\n" + fi + + # Trap any unexpected error to generate a meaningful error message + trap "error 'unexpected error while generating ${ofile}\n'" ERR + + mkdir -p "${outputdir}" + do_validate "${outputdir}" ${@//:/ } + do_mk "${outputdir}" + do_kconfig "${outputdir}" +} + +# Validates the br2-external trees passed as arguments. Makes each of +# them canonical and store them in the global arrays BR2_EXT_NAMES +# and BR2_EXT_PATHS. +# +# Note: since this script is always first called from Makefile context +# to generate the Makefile fragment before it is called to generate the +# Kconfig snippet, we're sure that any error in do_validate will be +# interpreted in Makefile context. Going up to generating the Kconfig +# snippet means that there were no error. +# +do_validate() { + local outputdir="${1}" + local br2_ext + shift + + if [ ${#} -eq 0 ]; then + # No br2-external tree is valid + return + fi + + for br2_ext in "${@}"; do + do_validate_one "${br2_ext}" + done >"${outputdir}/.br2-external.mk" +} + +do_validate_one() { + local br2_ext="${1}" + local br2_name br2_desc n d + + if [ ! -d "${br2_ext}" ]; then + error "'%s': no such file or directory\n" "${br2_ext}" + fi + if [ ! -r "${br2_ext}" -o ! -x "${br2_ext}" ]; then + error "'%s': permission denied\n" "${br2_ext}" + fi + if [ ! -f "${br2_ext}/external.desc" ]; then + error "'%s': does not have an 'external.desc'. See %s\n" \ + "${br2_ext}" "${MANUAL_URL}" + fi + br2_name="$(sed -r -e '/^name: +(.*)$/!d; s//\1/' "${br2_ext}/external.desc")" + if [ -z "${br2_name}" ]; then + error "'%s/external.desc': does not define the name\n" "${br2_ext}" + fi + # Only ASCII chars in [A-Za-z0-9_] are permitted + n="$(sed -r -e 's/[A-Za-z0-9_]//g' <<<"${br2_name}" )" + if [ -n "${n}" ]; then + # Escape '$' so that it gets printed + error "'%s': name '%s' contains invalid chars: '%s'\n" \ + "${br2_ext}" "${br2_name//\$/\$\$}" "${n//\$/\$\$}" + fi + eval d="\"\${BR2_EXT_PATHS_${br2_name}}\"" + if [ -n "${d}" ]; then + error "'%s': name '%s' is already used in '%s'\n" \ + "${br2_ext}" "${br2_name}" "${d}" + fi + br2_desc="$(sed -r -e '/^desc: +(.*)$/!d; s//\1/' "${br2_ext}/external.desc")" + if [ ! -f "${br2_ext}/external.mk" ]; then + error "'%s/external.mk': no such file or directory\n" "${br2_ext}" + fi + if [ ! -f "${br2_ext}/Config.in" ]; then + error "'%s/Config.in': no such file or directory\n" "${br2_ext}" + fi + + # Register this br2-external tree, use an absolute canonical path + br2_ext="$( cd "${br2_ext}"; pwd )" + BR2_EXT_NAMES+=( "${br2_name}" ) + eval BR2_EXT_PATHS_${br2_name}="\"\${br2_ext}\"" + eval BR2_EXT_DESCS_${br2_name}="\"\${br2_desc:-\${br2_name}}\"" +} + +# Generate the .mk snippet that defines makefile variables +# for the br2-external tree +do_mk() { + local outputdir="${1}" + local br2_name br2_desc br2_ext + + { + printf '#\n# Automatically generated file; DO NOT EDIT.\n#\n' + printf '\n' + + printf 'BR2_EXTERNAL ?=' + for br2_name in "${BR2_EXT_NAMES[@]}"; do + eval br2_ext="\"\${BR2_EXT_PATHS_${br2_name}}\"" + printf ' %s' "${br2_ext}" + done + printf '\n' + + printf 'BR2_EXTERNAL_NAMES = \n' + printf 'BR2_EXTERNAL_DIRS = \n' + printf 'BR2_EXTERNAL_MKS = \n' + + if [ ${#BR2_EXT_NAMES[@]} -eq 0 ]; then + printf '\n' + printf '# No br2-external tree defined.\n' + return + fi + + for br2_name in "${BR2_EXT_NAMES[@]}"; do + eval br2_desc="\"\${BR2_EXT_DESCS_${br2_name}}\"" + eval br2_ext="\"\${BR2_EXT_PATHS_${br2_name}}\"" + printf '\n' + printf 'BR2_EXTERNAL_NAMES += %s\n' "${br2_name}" + printf 'BR2_EXTERNAL_DIRS += %s\n' "${br2_ext}" + printf 'BR2_EXTERNAL_MKS += %s/external.mk\n' "${br2_ext}" + printf 'export BR2_EXTERNAL_%s_PATH = %s\n' "${br2_name}" "${br2_ext}" + printf 'export BR2_EXTERNAL_%s_DESC = %s\n' "${br2_name}" "${br2_desc}" + done + } >"${outputdir}/.br2-external.mk" +} + +# Generate the kconfig snippets for the br2-external tree. +do_kconfig() { + local outputdir="${1}" + local br2_name br2_desc br2_ext br2 + local -a items + + items=( + paths + menus + toolchains + jpeg + openssl + skeleton + init + ) + + for br2 in "${items[@]}"; do + { + printf '#\n# Automatically generated file; DO NOT EDIT.\n#\n' + printf '\n' + if [ ${#BR2_EXT_NAMES[@]} -eq 0 ]; then + printf '# No br2-external tree defined.\n' + fi + } >"${outputdir}/.br2-external.in.${br2}" + done + if [ ${#BR2_EXT_NAMES[@]} -eq 0 ]; then + return + fi + + printf 'menu "External options"\n\n' >>"${outputdir}/.br2-external.in.menus" + + for br2_name in "${BR2_EXT_NAMES[@]}"; do + eval br2_desc="\"\${BR2_EXT_DESCS_${br2_name}}\"" + eval br2_ext="\"\${BR2_EXT_PATHS_${br2_name}}\"" + + { + printf 'config BR2_EXTERNAL_%s_PATH\n' "${br2_name}" + printf '\tstring\n' + printf '\tdefault "%s"\n' "${br2_ext}" + printf '\n' + } >>"${outputdir}/.br2-external.in.paths" + + { + if [ ${#BR2_EXT_NAMES[@]} -gt 1 ]; then + printf 'menu "%s"\n' "${br2_desc}" + fi + printf 'comment "%s (in %s)"\n' "${br2_desc}" "${br2_ext}" + printf 'source "%s/Config.in"\n' "${br2_ext}" + if [ ${#BR2_EXT_NAMES[@]} -gt 1 ]; then + printf 'endmenu # %s\n' "${br2_name}" + fi + printf '\n' + } >>"${outputdir}/.br2-external.in.menus" + + if [ -f "${br2_ext}/provides/toolchains.in" ]; then + printf 'comment "Toolchains from: %s"\n' "${br2_desc}" + printf 'source "%s/provides/toolchains.in"\n' "${br2_ext}" + printf '\n' + else + printf '# No toolchain from: %s\n\n' "${br2_desc}" + fi >>"${outputdir}/.br2-external.in.toolchains" + + if [ -f "${br2_ext}/provides/jpeg.in" ]; then + printf 'comment "jpeg from: %s"\n' "${br2_desc}" + printf 'source "%s/provides/jpeg.in"\n' "${br2_ext}" + printf '\n' + else + printf '# No jpeg from: %s\n\n' "${br2_desc}" + fi >>"${outputdir}/.br2-external.in.jpeg" + + if [ -f "${br2_ext}/provides/openssl.in" ]; then + printf 'comment "openssl from: %s"\n' "${br2_desc}" + printf 'source "%s/provides/openssl.in"\n' "${br2_ext}" + printf '\n' + else + printf '# No openssl from: %s\n\n' "${br2_desc}" + fi >>"${outputdir}/.br2-external.in.openssl" + + if [ -f "${br2_ext}/provides/skeleton.in" ]; then + printf 'comment "skeleton from: %s"\n' "${br2_desc}" + printf 'source "%s/provides/skeleton.in"\n' "${br2_ext}" + printf '\n' + else + printf '# No skeleton from: %s\n\n' "${br2_desc}" + fi >>"${outputdir}/.br2-external.in.skeleton" + + if [ -f "${br2_ext}/provides/init.in" ]; then + printf 'comment "init from: %s"\n' "${br2_desc}" + printf 'source "%s/provides/init.in"\n' "${br2_ext}" + printf '\n' + else + printf '# No init from: %s\n\n' "${br2_desc}" + fi >>"${outputdir}/.br2-external.in.init" + done + + printf 'endmenu\n' >>"${outputdir}/.br2-external.in.menus" +} + +error() { local fmt="${1}"; shift; printf "BR2_EXTERNAL_ERROR = ${fmt}" "${@}"; exit 1; } + +my_name="${0##*/}" +main "${@}" diff --git a/support/scripts/brpkgutil.py b/support/scripts/brpkgutil.py new file mode 100644 index 00000000..73d8fbe9 --- /dev/null +++ b/support/scripts/brpkgutil.py @@ -0,0 +1,50 @@ +# Copyright (C) 2010-2013 Thomas Petazzoni +# Copyright (C) 2019 Yann E. MORIN + +import json +import logging +import os +import subprocess +from collections import defaultdict + + +# This function returns a tuple of four dictionaries, all using package +# names as keys: +# - a dictionary which values are the lists of packages that are the +# dependencies of the package used as key; +# - a dictionary which values are the lists of packages that are the +# reverse dependencies of the package used as key; +# - a dictionary which values are the type of the package used as key; +# - a dictionary which values are the version of the package used as key, +# 'virtual' for a virtual package, or the empty string for a rootfs. +def get_dependency_tree(): + logging.info("Getting dependency tree...") + + deps = {} + rdeps = defaultdict(list) + types = {} + versions = {} + + # Special case for the 'all' top-level fake package + deps['all'] = [] + types['all'] = 'target' + versions['all'] = '' + + cmd = ["make", "-s", "--no-print-directory", "show-info"] + with open(os.devnull, 'wb') as devnull: + p = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=devnull, + universal_newlines=True) + pkg_list = json.loads(p.communicate()[0]) + + for pkg in pkg_list: + deps['all'].append(pkg) + types[pkg] = pkg_list[pkg]["type"] + deps[pkg] = pkg_list[pkg].get("dependencies", []) + for p in deps[pkg]: + rdeps[p].append(pkg) + versions[pkg] = \ + None if pkg_list[pkg]["type"] == "rootfs" \ + else "virtual" if pkg_list[pkg]["virtual"] \ + else pkg_list[pkg]["version"] + + return (deps, rdeps, types, versions) diff --git a/support/scripts/check-bin-arch b/support/scripts/check-bin-arch new file mode 100755 index 00000000..27cc59bc --- /dev/null +++ b/support/scripts/check-bin-arch @@ -0,0 +1,96 @@ +#!/usr/bin/env bash + +# List of hardcoded paths that should be ignored, as they may +# contain binaries for an architecture different from the +# architecture of the target. +declare -a IGNORES=( + # Skip firmware files, they could be ELF files for other + # architectures + "/lib/firmware" + "/usr/lib/firmware" + + # Skip kernel modules + # When building a 32-bit userland on 64-bit architectures, the kernel + # and its modules may still be 64-bit. To keep the basic + # check-bin-arch logic simple, just skip this directory. + "/lib/modules" + "/usr/lib/modules" + + # Skip files in /usr/share, several packages (qemu, + # pru-software-support) legitimately install ELF binaries that + # are not for the target architecture + "/usr/share" + + # Skip files in {/usr,}/lib/grub, since it is possible to have + # it for a different architecture (e.g. i386 grub on x86_64). + "/lib/grub" + "/usr/lib/grub" + + # Guile modules are ELF files, with a "None" machine + "/usr/lib/guile" +) + +while getopts p:l:r:a:i: OPT ; do + case "${OPT}" in + p) package="${OPTARG}";; + l) pkg_list="${OPTARG}";; + r) readelf="${OPTARG}";; + a) arch_name="${OPTARG}";; + i) + # Ensure we do have single '/' as separators, + # and that we have a leading and a trailing one. + pattern="$(sed -r -e 's:/+:/:g; s:^/*:/:; s:/*$:/:;' <<<"${OPTARG}")" + IGNORES+=("${pattern}") + ;; + :) error "option '%s' expects a mandatory argument\n" "${OPTARG}";; + \?) error "unknown option '%s'\n" "${OPTARG}";; + esac +done + +if test -z "${package}" -o -z "${pkg_list}" -o -z "${readelf}" -o -z "${arch_name}" ; then + echo "Usage: $0 -p -l -r -a [-i PATH ...]" + exit 1 +fi + +exitcode=0 + +# Only split on new lines, for filenames-with-spaces +IFS=" +" + +while read f; do + for ignore in "${IGNORES[@]}"; do + if [[ "${f}" =~ ^"${ignore}" ]]; then + continue 2 + fi + done + + # Skip symlinks. Some symlinks may have absolute paths as + # target, pointing to host binaries while we're building. + if [[ -L "${TARGET_DIR}/${f}" ]]; then + continue + fi + + # Get architecture using readelf. We pipe through 'head -1' so + # that when the file is a static library (.a), we only take + # into account the architecture of the first object file. + arch=$(LC_ALL=C ${readelf} -h "${TARGET_DIR}/${f}" 2>&1 | \ + sed -r -e '/^ Machine: +(.+)/!d; s//\1/;' | head -1) + + # If no architecture found, assume it was not an ELF file + if test "${arch}" = "" ; then + continue + fi + + # Architecture is correct + if test "${arch}" = "${arch_name}" ; then + continue + fi + + printf 'ERROR: architecture for "%s" is "%s", should be "%s"\n' \ + "${f}" "${arch}" "${arch_name}" + + exitcode=1 +done < <( sed -r -e "/^${package},\.(.+)$/!d; s//\1/;" ${pkg_list} ) + +exit ${exitcode} diff --git a/support/scripts/check-dotconfig.py b/support/scripts/check-dotconfig.py new file mode 100755 index 00000000..f9a416b7 --- /dev/null +++ b/support/scripts/check-dotconfig.py @@ -0,0 +1,42 @@ +#!/usr/bin/env python3 + +# This scripts check that all lines present in the defconfig are +# still present in the .config + +import sys + + +def main(): + if not (len(sys.argv) == 3): + print("Error: incorrect number of arguments") + print("""Usage: check-dotconfig """) + sys.exit(1) + + configfile = sys.argv[1] + defconfig = sys.argv[2] + + # strip() to get rid of trailing \n + with open(configfile) as configf: + configlines = [l.strip() for l in configf.readlines()] + + defconfiglines = [] + with open(defconfig) as defconfigf: + # strip() to get rid of trailing \n + for line in (line.strip() for line in defconfigf.readlines()): + if line.startswith("BR2_"): + defconfiglines.append(line) + elif line.startswith('# BR2_') and line.endswith(' is not set'): + defconfiglines.append(line) + + # Check that all the defconfig lines are still present + missing = [line for line in defconfiglines if line not in configlines] + + if missing: + print("WARN: defconfig {} can't be used:".format(defconfig)) + for m in missing: + print(" Missing: {}".format(m)) + sys.exit(1) + + +if __name__ == "__main__": + main() diff --git a/support/scripts/check-host-rpath b/support/scripts/check-host-rpath new file mode 100755 index 00000000..9a386698 --- /dev/null +++ b/support/scripts/check-host-rpath @@ -0,0 +1,111 @@ +#!/usr/bin/env bash + +# This script scans $(HOST_DIR)/{bin,sbin} for all ELF files, and checks +# they have an RPATH to $(HOST_DIR)/lib if they need libraries from +# there. + +# Override the user's locale so we are sure we can parse the output of +# readelf(1) and file(1) +export LC_ALL=C + +main() { + local pkg="${1}" + local hostdir="${2}" + local perpackagedir="${3}" + local file ret + + # Remove duplicate and trailing '/' for proper match + hostdir="$( sed -r -e 's:/+:/:g; s:/$::;' <<<"${hostdir}" )" + + ret=0 + while read file; do + is_elf "${file}" || continue + elf_needs_rpath "${file}" "${hostdir}" || continue + check_elf_has_rpath "${file}" "${hostdir}" "${perpackagedir}" && continue + if [ ${ret} -eq 0 ]; then + ret=1 + printf "***\n" + printf "*** ERROR: package %s installs executables without proper RPATH:\n" "${pkg}" + fi + printf "*** %s\n" "${file}" + done < <( find "${hostdir}"/{bin,sbin} -type f 2>/dev/null ) + + return ${ret} +} + +is_elf() { + local f="${1}" + + readelf -l "${f}" 2>/dev/null \ + |grep -E 'Requesting program interpreter:' >/dev/null 2>&1 +} + +# This function tells whether a given ELF executable (first argument) +# needs a RPATH pointing to the host library directory or not. It +# needs such an RPATH if at least of the libraries used by the ELF +# executable is available in the host library directory. This function +# returns 0 when a RPATH is needed, 1 otherwise. +# +# With per-package directory support, ${hostdir} will point to the +# current package per-package host directory, and this is where this +# function will check if the libraries needed by the executable are +# located (or not). In practice, the ELF executable RPATH may point to +# another package per-package host directory, but that is fine because +# if such an executable is within the current package per-package host +# directory, its libraries will also have been copied into the current +# package per-package host directory. +elf_needs_rpath() { + local file="${1}" + local hostdir="${2}" + local lib + + while read lib; do + [ -e "${hostdir}/lib/${lib}" ] && return 0 + done < <( readelf -d "${file}" \ + |sed -r -e '/^.* \(NEEDED\) .*Shared library: \[(.+)\]$/!d;' \ + -e 's//\1/;' \ + ) + + return 1 +} + +# This function checks whether at least one of the RPATH of the given +# ELF executable (first argument) properly points to the host library +# directory (second argument), either through an absolute RPATH or a +# relative RPATH. In the context of per-package directory support, +# ${hostdir} (second argument) points to the current package host +# directory. However, it is perfectly valid for an ELF binary to have +# a RPATH pointing to another package per-package host directory, +# which is why such RPATH is also accepted (the per-package directory +# gets passed as third argument). Having a RPATH pointing to the host +# directory will make sure the ELF executable will find at runtime the +# shared libraries it depends on. This function returns 0 when a +# proper RPATH was found, or 1 otherwise. +check_elf_has_rpath() { + local file="${1}" + local hostdir="${2}" + local perpackagedir="${3}" + local rpath dir + + while read rpath; do + for dir in ${rpath//:/ }; do + # Remove duplicate and trailing '/' for proper match + dir="$( sed -r -e 's:/+:/:g; s:/$::;' <<<"${dir}" )" + [ "${dir}" = "${hostdir}/lib" ] && return 0 + [ "${dir}" = "\$ORIGIN/../lib" ] && return 0 + # This check is done even for builds where + # BR2_PER_PACKAGE_DIRECTORIES is disabled. In this case, + # PER_PACKAGE_DIR and therefore ${perpackagedir} points to + # a non-existent directory, and this check will always be + # false. + [[ ${dir} =~ ${perpackagedir}/[^/]+/host/lib ]] && return 0 + done + done < <( readelf -d "${file}" \ + |sed -r -e '/.* \(R(UN)?PATH\) +Library r(un)?path: \[(.+)\]$/!d' \ + -e 's//\3/;' \ + ) + + return 1 +} + +main "${@}" diff --git a/support/scripts/check-kernel-headers.sh b/support/scripts/check-kernel-headers.sh new file mode 100755 index 00000000..4e6dce54 --- /dev/null +++ b/support/scripts/check-kernel-headers.sh @@ -0,0 +1,69 @@ +#!/bin/sh + +# This script (and the embedded C code) will check that the actual +# headers version match the user told us they were: +# +# - if both versions are the same, all is well. +# +# - if the actual headers are older than the user told us, this is +# an error. +# +# - if the actual headers are more recent than the user told us, and +# we are doing a strict check, then this is an error. +# +# - if the actual headers are more recent than the user told us, and +# we are doing a loose check, then a warning is printed, but this is +# not an error. + +BUILDDIR="${1}" +SYSROOT="${2}" +# Make sure we have enough version components +HDR_VER="${3}.0.0" +CHECK="${4}" # 'strict' or 'loose' + +HDR_M="${HDR_VER%%.*}" +HDR_V="${HDR_VER#*.}" +HDR_m="${HDR_V%%.*}" + +# Exit on any error, so we don't try to run an unexisting program if the +# compilation fails. +set -e + +# Set the clean-up trap in advance to prevent a race condition in which we +# create the file but get a SIGTERM before setting it. Notice that we don't +# need to care about EXEC being empty, since 'rm -f ""' does nothing. +trap 'rm -f "${EXEC}"' EXIT + +EXEC="$(mktemp -p "${BUILDDIR}" -t .check-headers.XXXXXX)" + +# We do not want to account for the patch-level, since headers are +# not supposed to change for different patchlevels, so we mask it out. +# This only applies to kernels >= 3.0, but those are the only one +# we actually care about; we treat all 2.6.x kernels equally. +${HOSTCC} -imacros "${SYSROOT}/usr/include/linux/version.h" \ + -x c -o "${EXEC}" - <<_EOF_ +#include +#include +#include + +int main(int argc __attribute__((unused)), + char** argv __attribute__((unused))) +{ + int l = LINUX_VERSION_CODE & ~0xFF; + int h = KERNEL_VERSION(${HDR_M},${HDR_m},0); + + if ((l >= h) && !strcmp("${CHECK}", "loose")) + return 0; + + if (l != h) { + printf("Incorrect selection of kernel headers: "); + printf("expected %d.%d.x, got %d.%d.x\n", ${HDR_M}, ${HDR_m}, + ((LINUX_VERSION_CODE>>16) & 0xFF), + ((LINUX_VERSION_CODE>>8) & 0xFF)); + return 1; + } + return 0; +} +_EOF_ + +"${EXEC}" diff --git a/support/scripts/check-merged-usr.sh b/support/scripts/check-merged-usr.sh new file mode 100755 index 00000000..433857cd --- /dev/null +++ b/support/scripts/check-merged-usr.sh @@ -0,0 +1,39 @@ +#!/bin/sh +# +# Check if a given custom skeleton or overlay complies to the merged /usr +# requirements: +# / +# /bin -> usr/bin +# /lib -> usr/lib +# /sbin -> usr/sbin +# /usr/bin/ +# /usr/lib/ +# /usr/sbin/ +# +# Output: the list of non-compliant paths (empty if compliant). +# + +# Extract the inode numbers for all of those directories. In case any is +# a symlink, we want to get the inode of the pointed-to directory, so we +# append '/.' to be sure we get the target directory. Since the symlinks +# can be anyway (/bin -> /usr/bin or /usr/bin -> /bin), we do that for +# all of them. +# +lib_inode=$(stat -c '%i' "${1}/lib/." 2>/dev/null) +bin_inode=$(stat -c '%i' "${1}/bin/." 2>/dev/null) +sbin_inode=$(stat -c '%i' "${1}/sbin/." 2>/dev/null) +usr_lib_inode=$(stat -c '%i' "${1}/usr/lib/." 2>/dev/null) +usr_bin_inode=$(stat -c '%i' "${1}/usr/bin/." 2>/dev/null) +usr_sbin_inode=$(stat -c '%i' "${1}/usr/sbin/." 2>/dev/null) + +not_merged_dirs="" +test -z "$lib_inode" || \ + test "$lib_inode" = "$usr_lib_inode" || \ + not_merged_dirs="/lib" +test -z "$bin_inode" || \ + test "$bin_inode" = "$usr_bin_inode" || \ + not_merged_dirs="$not_merged_dirs /bin" +test -z "$sbin_inode" || \ + test "$sbin_inode" = "$usr_sbin_inode" || \ + not_merged_dirs="$not_merged_dirs /sbin" +echo "${not_merged_dirs# }" diff --git a/support/scripts/cpedb.py b/support/scripts/cpedb.py new file mode 100644 index 00000000..f4daf561 --- /dev/null +++ b/support/scripts/cpedb.py @@ -0,0 +1,174 @@ +#!/usr/bin/env python3 + +import xml.etree.ElementTree as ET +from xml.etree.ElementTree import Element, SubElement +import gzip +import os +import requests +import time +from xml.dom import minidom + +VALID_REFS = ['VENDOR', 'VERSION', 'CHANGE_LOG', 'PRODUCT', 'PROJECT', 'ADVISORY'] + +CPEDB_URL = "https://static.nvd.nist.gov/feeds/xml/cpe/dictionary/official-cpe-dictionary_v2.3.xml.gz" + +ns = { + '': 'http://cpe.mitre.org/dictionary/2.0', + 'cpe-23': 'http://scap.nist.gov/schema/cpe-extension/2.3', + 'xml': 'http://www.w3.org/XML/1998/namespace' +} + + +class CPE: + def __init__(self, cpe_str, titles, refs): + self.cpe_str = cpe_str + self.titles = titles + self.references = refs + self.cpe_cur_ver = "".join(self.cpe_str.split(":")[5:6]) + + def update_xml_dict(self): + ET.register_namespace('', 'http://cpe.mitre.org/dictionary/2.0') + cpes = Element('cpe-list') + cpes.set('xmlns:cpe-23', "http://scap.nist.gov/schema/cpe-extension/2.3") + cpes.set('xmlns:ns6', "http://scap.nist.gov/schema/scap-core/0.1") + cpes.set('xmlns:scap-core', "http://scap.nist.gov/schema/scap-core/0.3") + cpes.set('xmlns:config', "http://scap.nist.gov/schema/configuration/0.1") + cpes.set('xmlns:xsi', "http://www.w3.org/2001/XMLSchema-instance") + cpes.set('xmlns:meta', "http://scap.nist.gov/schema/cpe-dictionary-metadata/0.2") + cpes.set('xsi:schemaLocation', " ".join(["http://scap.nist.gov/schema/cpe-extension/2.3", + "https://scap.nist.gov/schema/cpe/2.3/cpe-dictionary-extension_2.3.xsd", + "http://cpe.mitre.org/dictionary/2.0", + "https://scap.nist.gov/schema/cpe/2.3/cpe-dictionary_2.3.xsd", + "http://scap.nist.gov/schema/cpe-dictionary-metadata/0.2", + "https://scap.nist.gov/schema/cpe/2.1/cpe-dictionary-metadata_0.2.xsd", + "http://scap.nist.gov/schema/scap-core/0.3", + "https://scap.nist.gov/schema/nvd/scap-core_0.3.xsd", + "http://scap.nist.gov/schema/configuration/0.1", + "https://scap.nist.gov/schema/nvd/configuration_0.1.xsd", + "http://scap.nist.gov/schema/scap-core/0.1", + "https://scap.nist.gov/schema/nvd/scap-core_0.1.xsd"])) + item = SubElement(cpes, 'cpe-item') + cpe_short_name = CPE.short_name(self.cpe_str) + cpe_new_ver = CPE.version_update(self.cpe_str) + + item.set('name', 'cpe:/' + cpe_short_name) + self.titles[0].text.replace(self.cpe_cur_ver, cpe_new_ver) + for title in self.titles: + item.append(title) + if self.references: + item.append(self.references) + cpe23item = SubElement(item, 'cpe-23:cpe23-item') + cpe23item.set('name', self.cpe_str) + + # Generate the XML as a string + xmlstr = ET.tostring(cpes) + + # And use minidom to pretty print the XML + return minidom.parseString(xmlstr).toprettyxml(encoding="utf-8").decode("utf-8") + + @staticmethod + def version(cpe): + return cpe.split(":")[5] + + @staticmethod + def product(cpe): + return cpe.split(":")[4] + + @staticmethod + def short_name(cpe): + return ":".join(cpe.split(":")[2:6]) + + @staticmethod + def version_update(cpe): + return ":".join(cpe.split(":")[5:6]) + + @staticmethod + def no_version(cpe): + return ":".join(cpe.split(":")[:5]) + + +class CPEDB: + def __init__(self, nvd_path): + self.all_cpes = dict() + self.all_cpes_no_version = dict() + self.nvd_path = nvd_path + + def get_xml_dict(self): + print("CPE: Setting up NIST dictionary") + if not os.path.exists(os.path.join(self.nvd_path, "cpe")): + os.makedirs(os.path.join(self.nvd_path, "cpe")) + + cpe_dict_local = os.path.join(self.nvd_path, "cpe", os.path.basename(CPEDB_URL)) + if not os.path.exists(cpe_dict_local) or os.stat(cpe_dict_local).st_mtime < time.time() - 86400: + print("CPE: Fetching xml manifest from [" + CPEDB_URL + "]") + cpe_dict = requests.get(CPEDB_URL) + open(cpe_dict_local, "wb").write(cpe_dict.content) + + print("CPE: Unzipping xml manifest...") + nist_cpe_file = gzip.GzipFile(fileobj=open(cpe_dict_local, 'rb')) + print("CPE: Converting xml manifest to dict...") + tree = ET.parse(nist_cpe_file) + all_cpedb = tree.getroot() + self.parse_dict(all_cpedb) + + def parse_dict(self, all_cpedb): + # Cycle through the dict and build two dict to be used for custom + # lookups of partial and complete CPE objects + # The objects are then used to create new proposed XML updates if + # if is determined one is required + # Out of the different language titles, select English + for cpe in all_cpedb.findall(".//{http://cpe.mitre.org/dictionary/2.0}cpe-item"): + cpe_titles = [] + for title in cpe.findall('.//{http://cpe.mitre.org/dictionary/2.0}title[@xml:lang="en-US"]', ns): + title.tail = None + cpe_titles.append(title) + + # Some older CPE don't include references, if they do, make + # sure we handle the case of one ref needing to be packed + # in a list + cpe_ref = cpe.find(".//{http://cpe.mitre.org/dictionary/2.0}references") + if cpe_ref: + for ref in cpe_ref.findall(".//{http://cpe.mitre.org/dictionary/2.0}reference"): + ref.tail = None + ref.text = ref.text.upper() + if ref.text not in VALID_REFS: + ref.text = ref.text + "-- UPDATE this entry, here are some examples and just one word should be used -- " + ' '.join(VALID_REFS) # noqa E501 + cpe_ref.tail = None + cpe_ref.text = None + + cpe_str = cpe.find(".//{http://scap.nist.gov/schema/cpe-extension/2.3}cpe23-item").get('name') + item = CPE(cpe_str, cpe_titles, cpe_ref) + cpe_str_no_version = CPE.no_version(cpe_str) + # This dict must have a unique key for every CPE version + # which allows matching to the specific obj data of that + # NIST dict entry + self.all_cpes.update({cpe_str: item}) + # This dict has one entry for every CPE (w/o version) to allow + # partial match (no valid version) check (the obj is saved and + # used as seed for suggested xml updates. By updating the same + # non-version'd entry, it assumes the last update here is the + # latest version in the NIST dict) + self.all_cpes_no_version.update({cpe_str_no_version: item}) + + def find_partial(self, cpe_str): + cpe_str_no_version = CPE.no_version(cpe_str) + if cpe_str_no_version in self.all_cpes_no_version: + return cpe_str_no_version + + def find_partial_obj(self, cpe_str): + cpe_str_no_version = CPE.no_version(cpe_str) + if cpe_str_no_version in self.all_cpes_no_version: + return self.all_cpes_no_version[cpe_str_no_version] + + def find_partial_latest_version(self, cpe_str_partial): + cpe_obj = self.find_partial_obj(cpe_str_partial) + return cpe_obj.cpe_cur_ver + + def find(self, cpe_str): + if self.find_partial(cpe_str): + if cpe_str in self.all_cpes: + return cpe_str + + def gen_update_xml(self, cpe_str): + cpe = self.find_partial_obj(cpe_str) + return cpe.update_xml_dict() diff --git a/support/scripts/cve.py b/support/scripts/cve.py new file mode 100755 index 00000000..13c29fab --- /dev/null +++ b/support/scripts/cve.py @@ -0,0 +1,273 @@ +#!/usr/bin/env python + +# Copyright (C) 2009 by Thomas Petazzoni +# Copyright (C) 2020 by Gregory CLEMENT +# +# 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 + +import datetime +import os +import requests # URL checking +import distutils.version +import time +import gzip +import sys +import operator + +try: + import ijson + # backend is a module in < 2.5, a string in >= 2.5 + if 'python' in getattr(ijson.backend, '__name__', ijson.backend): + try: + import ijson.backends.yajl2_cffi as ijson + except ImportError: + sys.stderr.write('Warning: Using slow ijson python backend\n') +except ImportError: + sys.stderr.write("You need ijson to parse NVD for CVE check\n") + exit(1) + +sys.path.append('utils/') + +NVD_START_YEAR = 2002 +NVD_JSON_VERSION = "1.1" +NVD_BASE_URL = "https://nvd.nist.gov/feeds/json/cve/" + NVD_JSON_VERSION + +ops = { + '>=': operator.ge, + '>': operator.gt, + '<=': operator.le, + '<': operator.lt, + '=': operator.eq +} + + +# Check if two CPE IDs match each other +def cpe_matches(cpe1, cpe2): + cpe1_elems = cpe1.split(":") + cpe2_elems = cpe2.split(":") + + remains = filter(lambda x: x[0] not in ["*", "-"] and x[1] not in ["*", "-"] and x[0] != x[1], + zip(cpe1_elems, cpe2_elems)) + return len(list(remains)) == 0 + + +def cpe_product(cpe): + return cpe.split(':')[4] + + +def cpe_version(cpe): + return cpe.split(':')[5] + + +class CVE: + """An accessor class for CVE Items in NVD files""" + CVE_AFFECTS = 1 + CVE_DOESNT_AFFECT = 2 + CVE_UNKNOWN = 3 + + def __init__(self, nvd_cve): + """Initialize a CVE from its NVD JSON representation""" + self.nvd_cve = nvd_cve + + @staticmethod + def download_nvd_year(nvd_path, year): + metaf = "nvdcve-%s-%s.meta" % (NVD_JSON_VERSION, year) + path_metaf = os.path.join(nvd_path, metaf) + jsonf_gz = "nvdcve-%s-%s.json.gz" % (NVD_JSON_VERSION, year) + path_jsonf_gz = os.path.join(nvd_path, jsonf_gz) + + # If the database file is less than a day old, we assume the NVD data + # locally available is recent enough. + if os.path.exists(path_jsonf_gz) and os.stat(path_jsonf_gz).st_mtime >= time.time() - 86400: + return path_jsonf_gz + + # If not, we download the meta file + url = "%s/%s" % (NVD_BASE_URL, metaf) + print("Getting %s" % url) + page_meta = requests.get(url) + page_meta.raise_for_status() + + # If the meta file already existed, we compare the existing + # one with the data newly downloaded. If they are different, + # we need to re-download the database. + # If the database does not exist locally, we need to redownload it in + # any case. + if os.path.exists(path_metaf) and os.path.exists(path_jsonf_gz): + meta_known = open(path_metaf, "r").read() + if page_meta.text == meta_known: + return path_jsonf_gz + + # Grab the compressed JSON NVD, and write files to disk + url = "%s/%s" % (NVD_BASE_URL, jsonf_gz) + print("Getting %s" % url) + page_json = requests.get(url) + page_json.raise_for_status() + open(path_jsonf_gz, "wb").write(page_json.content) + open(path_metaf, "w").write(page_meta.text) + return path_jsonf_gz + + @classmethod + def read_nvd_dir(cls, nvd_dir): + """ + Iterate over all the CVEs contained in NIST Vulnerability Database + feeds since NVD_START_YEAR. If the files are missing or outdated in + nvd_dir, a fresh copy will be downloaded, and kept in .json.gz + """ + for year in range(NVD_START_YEAR, datetime.datetime.now().year + 1): + filename = CVE.download_nvd_year(nvd_dir, year) + try: + content = ijson.items(gzip.GzipFile(filename), 'CVE_Items.item') + except: # noqa: E722 + print("ERROR: cannot read %s. Please remove the file then rerun this script" % filename) + raise + for cve in content: + yield cls(cve) + + def each_product(self): + """Iterate over each product section of this cve""" + for vendor in self.nvd_cve['cve']['affects']['vendor']['vendor_data']: + for product in vendor['product']['product_data']: + yield product + + def parse_node(self, node): + """ + Parse the node inside the configurations section to extract the + cpe information usefull to know if a product is affected by + the CVE. Actually only the product name and the version + descriptor are needed, but we also provide the vendor name. + """ + + # The node containing the cpe entries matching the CVE can also + # contain sub-nodes, so we need to manage it. + for child in node.get('children', ()): + for parsed_node in self.parse_node(child): + yield parsed_node + + for cpe in node.get('cpe_match', ()): + if not cpe['vulnerable']: + return + product = cpe_product(cpe['cpe23Uri']) + version = cpe_version(cpe['cpe23Uri']) + # ignore when product is '-', which means N/A + if product == '-': + return + op_start = '' + op_end = '' + v_start = '' + v_end = '' + + if version != '*' and version != '-': + # Version is defined, this is a '=' match + op_start = '=' + v_start = version + else: + # Parse start version, end version and operators + if 'versionStartIncluding' in cpe: + op_start = '>=' + v_start = cpe['versionStartIncluding'] + + if 'versionStartExcluding' in cpe: + op_start = '>' + v_start = cpe['versionStartExcluding'] + + if 'versionEndIncluding' in cpe: + op_end = '<=' + v_end = cpe['versionEndIncluding'] + + if 'versionEndExcluding' in cpe: + op_end = '<' + v_end = cpe['versionEndExcluding'] + + yield { + 'id': cpe['cpe23Uri'], + 'v_start': v_start, + 'op_start': op_start, + 'v_end': v_end, + 'op_end': op_end + } + + def each_cpe(self): + for node in self.nvd_cve['configurations']['nodes']: + for cpe in self.parse_node(node): + yield cpe + + @property + def identifier(self): + """The CVE unique identifier""" + return self.nvd_cve['cve']['CVE_data_meta']['ID'] + + @property + def affected_products(self): + """The set of CPE products referred by this CVE definition""" + return set(cpe_product(p['id']) for p in self.each_cpe()) + + def affects(self, name, version, cve_ignore_list, cpeid=None): + """ + True if the Buildroot Package object passed as argument is affected + by this CVE. + """ + if self.identifier in cve_ignore_list: + return self.CVE_DOESNT_AFFECT + + pkg_version = distutils.version.LooseVersion(version) + if not hasattr(pkg_version, "version"): + print("Cannot parse package '%s' version '%s'" % (name, version)) + pkg_version = None + + # if we don't have a cpeid, build one based on name and version + if not cpeid: + cpeid = "cpe:2.3:*:*:%s:%s:*:*:*:*:*:*:*" % (name, version) + # if we have a cpeid, use its version instead of the package + # version, as they might be different due to + # _CPE_ID_VERSION + else: + pkg_version = distutils.version.LooseVersion(cpe_version(cpeid)) + + for cpe in self.each_cpe(): + if not cpe_matches(cpe['id'], cpeid): + continue + if not cpe['v_start'] and not cpe['v_end']: + return self.CVE_AFFECTS + if not pkg_version: + continue + + if cpe['v_start']: + try: + cve_affected_version = distutils.version.LooseVersion(cpe['v_start']) + inrange = ops.get(cpe['op_start'])(pkg_version, cve_affected_version) + except TypeError: + return self.CVE_UNKNOWN + + # current package version is before v_start, so we're + # not affected by the CVE + if not inrange: + continue + + if cpe['v_end']: + try: + cve_affected_version = distutils.version.LooseVersion(cpe['v_end']) + inrange = ops.get(cpe['op_end'])(pkg_version, cve_affected_version) + except TypeError: + return self.CVE_UNKNOWN + + # current package version is after v_end, so we're + # not affected by the CVE + if not inrange: + continue + + # We're in the version range affected by this CVE + return self.CVE_AFFECTS + + return self.CVE_DOESNT_AFFECT diff --git a/support/scripts/eclipse-register-toolchain b/support/scripts/eclipse-register-toolchain new file mode 100755 index 00000000..891d29ee --- /dev/null +++ b/support/scripts/eclipse-register-toolchain @@ -0,0 +1,76 @@ +#!/bin/sh + +# This script registers the toolchain of a Buildroot project into the +# Eclipse plugin. To do so, it adds a new line for the Buildroot +# toolchain into the $HOME/.buildroot-eclipse.toolchains file, which +# the Eclipse Buildroot plugin reads to discover automatically the +# available Buildroot toolchains on the system. +# +# This script should typically not be called manually. Instead, one +# should enable the BR2_ECLIPSE_REGISTER configuration option, which +# will lead Buildroot to automatically call this script with the +# appropriate arguments. +# +# Usage: +# eclipse-register-toolchain project-directory toolchain-prefix architecture +# +# project-directory is the absolute path to the Buildroot project +# output directory (which contains the host/, target/, build/, +# images/, etc. subdirectories). It should be an absolute and +# canonical path. +# +# toolchain-prefix is the prefix of the cross-compilation tools, i.e +# 'arm-linux-' if the cross-compiler executable is 'arm-linux-gcc'. +# +# architecture is the lower-cased name of the architecture targetted +# by the Buildroot project. + +if test $# -ne 3; then + echo "Invalid number of arguments." + echo "Usage: $0 project-directory toolchain-prefix architecture" + exit 1 +fi + +project_directory=$1 +toolchain_prefix=$2 +architecture=$3 + +if test ! -d ${project_directory} ; then + echo "Non-existing project directory ${project_directory}" + exit 1 +fi + +if test ! -d ${project_directory}/host ; then + echo "Your project directory does not look like a Buildroot output" + exit 1 +fi + +if test ! -e ${project_directory}/host/bin/${toolchain_prefix}gcc ; then + echo "Cannot find the cross-compiler in the project directory" + exit 1 +fi + +TOOLCHAIN_ECLIPSE_FILE=${HOME}/.buildroot-eclipse.toolchains + +# First, we remove all lines from the ${TOOLCHAIN_ECLISPE_FILE} that +# correspond to toolchains that no longer exist. +if test -f ${TOOLCHAIN_ECLIPSE_FILE} ; then + mv ${TOOLCHAIN_ECLIPSE_FILE} ${TOOLCHAIN_ECLIPSE_FILE}.tmp + cat ${TOOLCHAIN_ECLIPSE_FILE}.tmp | while read toolchain ; do + path=$(echo ${toolchain} | cut -f1 -d ':') + # Filter lines corresponding to still existing projects + echo "Testing ${path} ..." + if ! test -d ${path} ; then + continue + fi + # .. and the current project + if test ${path} = ${project_directory} ; then + continue + fi + echo ${toolchain} >> ${TOOLCHAIN_ECLIPSE_FILE} + done + rm ${TOOLCHAIN_ECLIPSE_FILE}.tmp +fi + +# Add the toolchain +echo "${project_directory}:${toolchain_prefix}:${architecture}" >> ${TOOLCHAIN_ECLIPSE_FILE} diff --git a/support/scripts/expunge-gconv-modules b/support/scripts/expunge-gconv-modules new file mode 100755 index 00000000..03012c1c --- /dev/null +++ b/support/scripts/expunge-gconv-modules @@ -0,0 +1,59 @@ +#!/usr/bin/env bash + +# This script is used to generate a gconv-modules file that takes into +# account only the gconv modules installed by Buildroot. It receives +# on its standard input the original complete gconv-modules file from +# the toolchain, and as arguments the list of gconv modules that were +# actually installed, and writes on its standard output the new +# gconv-modules file. + +# The format of gconv-modules is precisely documented in the +# file itself. It consists of two different directives: +# module FROMSET TOSET FILENAME COST +# alias ALIAS REALNAME +# and that's what this script parses and generates. +# +# There are two kinds of 'module' directives: +# - the first defines conversion of a charset to/from INTERNAL representation +# - the second defines conversion of a charset to/from another charset +# we handle each with slightly different code, since the second never has +# associated aliases. + +gawk -v files="${1}" ' +$1 == "alias" { + aliases[$3] = aliases[$3] " " $2; +} +$1 == "module" && $2 != "INTERNAL" && $3 == "INTERNAL" { + file2internals[$4] = file2internals[$4] " " $2; + mod2cost[$2] = $5; +} +$1 == "module" && $2 != "INTERNAL" && $3 != "INTERNAL" { + file2cset[$4] = file2cset[$4] " " $2 ":" $3; + mod2cost[$2] = $5; +} + +END { + nb_files = split(files, all_files); + for(f = 1; f <= nb_files; f++) { + file = all_files[f]; + printf("# Modules and aliases for: %s\n", file); + nb_mods = split(file2internals[file], mods); + for(i = 1; i <= nb_mods; i++) { + nb_aliases = split(aliases[mods[i]], mod_aliases); + for(j = 1; j <= nb_aliases; j++) { + printf("alias\t%s\t%s\n", mod_aliases[j], mods[i]); + } + printf("module\t%s\t%s\t%s\t%d\n", mods[i], "INTERNAL", file, mod2cost[mods[i]]); + printf("module\t%s\t%s\t%s\t%d\n", "INTERNAL", mods[i], file, mod2cost[mods[i]]); + printf("\n" ); + } + printf("%s", nb_mods != 0 ? "\n" : ""); + nb_csets = split(file2cset[file], csets); + for(i = 1; i <= nb_csets; i++) { + split(csets[i], cs, ":"); + printf("module\t%s\t%s\t%s\t%d\n", cs[1], cs[2], file, mod2cost[cs[1]]); + } + printf("%s", nb_csets != 0 ? "\n\n" : ""); + } +} +' diff --git a/support/scripts/fix-configure-powerpc64.sh b/support/scripts/fix-configure-powerpc64.sh new file mode 100755 index 00000000..ff2b283c --- /dev/null +++ b/support/scripts/fix-configure-powerpc64.sh @@ -0,0 +1,47 @@ +#!/usr/bin/env bash + +# This is a script to find, and correct, a problem with old versions of +# configure that affect powerpc64 and powerpc64le. + +# The issue causes configure to incorrectly determine that shared library +# support is not present in the linker. This causes the package to build a +# static library rather than a dynamic one and although the build will succeed, +# it may cause packages that link with the static library it to fail due to +# undefined symbols. + +# This script searches for files named 'configure' that appear to have this +# issue (by searching for a known bad pattern) and patching them. + +set -e + +if [ $# -ne 1 ]; then + echo "Usage: $0 " + exit 2 +fi + +srcdir="$1" +files=$(cd "$srcdir" && find . -name configure \ +-exec grep -qF 'Generated by GNU Autoconf' {} \; \ +-exec grep -qF 'ppc*-*linux*|powerpc*-*linux*)' {} \; -print) + +# --ignore-whitespace is needed because some packages have included +# copies of configure scripts where tabs have been replaced with spaces. +for c in $files; do + patch --ignore-whitespace "$srcdir"/"$c" <<'EOF' +--- a/configure 2016-11-16 15:31:46.097447271 +1100 ++++ b/configure 2008-07-21 12:17:23.000000000 +1000 +@@ -4433,7 +4433,10 @@ + x86_64-*linux*) + LD="${LD-ld} -m elf_x86_64" + ;; +- ppc*-*linux*|powerpc*-*linux*) ++ powerpcle-*linux*) ++ LD="${LD-ld} -m elf64lppc" ++ ;; ++ powerpc-*linux*) + LD="${LD-ld} -m elf64ppc" + ;; + s390*-*linux*) +EOF +done + diff --git a/support/scripts/fix-rpath b/support/scripts/fix-rpath new file mode 100755 index 00000000..3e67e770 --- /dev/null +++ b/support/scripts/fix-rpath @@ -0,0 +1,162 @@ +#!/usr/bin/env bash + +# Copyright (C) 2016 Samuel Martin +# Copyright (C) 2017 Wolfgang Grandegger +# +# 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 + +usage() { + cat <&2 +Usage: ${0} TREE_KIND + +Description: + + This script scans a tree and sanitize ELF files' RPATH found in there. + + Sanitization behaves the same whatever the kind of the processed tree, + but the resulting RPATH differs. The rpath sanitization is done using + "patchelf --make-rpath-relative". + +Arguments: + + TREE_KIND Kind of tree to be processed. + Allowed values: host, target, staging + +Environment: + + PATCHELF patchelf program to use + (default: HOST_DIR/bin/patchelf) + + HOST_DIR host directory + STAGING_DIR staging directory + TARGET_DIR target directory + + TOOLCHAIN_EXTERNAL_DOWNLOAD_INSTALL_DIR + (default HOST_DIR/opt/ext-toolchain) + +Returns: 0 if success or 1 in case of error + +EOF +} + +: ${PATCHELF:=${HOST_DIR}/bin/patchelf} + +# ELF files should not be in these sub-directories +HOST_EXCLUDEPATHS="/share/terminfo" +STAGING_EXCLUDEPATHS="/usr/include /usr/share/terminfo" +TARGET_EXCLUDEPATHS="/lib/firmware" + +main() { + local rootdir + local tree="${1}" + local find_args=( ) + local sanitize_extra_args=( ) + + if ! "${PATCHELF}" --version > /dev/null 2>&1; then + echo "Error: can't execute patchelf utility '${PATCHELF}'" + exit 1 + fi + + case "${tree}" in + host) + rootdir="${HOST_DIR}" + + # do not process the sysroot (only contains target binaries) + find_args+=( "-path" "${STAGING_DIR}" "-prune" "-o" ) + + # do not process the external toolchain installation directory to + # avoid breaking it. + test "${TOOLCHAIN_EXTERNAL_DOWNLOAD_INSTALL_DIR}" != "" && \ + find_args+=( "-path" "${TOOLCHAIN_EXTERNAL_DOWNLOAD_INSTALL_DIR}" "-prune" "-o" ) + + for excludepath in ${HOST_EXCLUDEPATHS}; do + find_args+=( "-path" "${HOST_DIR}""${excludepath}" "-prune" "-o" ) + done + + # do not process the patchelf binary but a copy to work-around "file in use" + find_args+=( "-path" "${PATCHELF}" "-prune" "-o" ) + cp "${PATCHELF}" "${PATCHELF}.__to_be_patched" + + # we always want $ORIGIN-based rpaths to make it relocatable. + sanitize_extra_args+=( "--relative-to-file" ) + ;; + + staging) + rootdir="${STAGING_DIR}" + + # ELF files should not be in these sub-directories + for excludepath in ${STAGING_EXCLUDEPATHS}; do + find_args+=( "-path" "${STAGING_DIR}""${excludepath}" "-prune" "-o" ) + done + + # should be like for the target tree below + sanitize_extra_args+=( "--no-standard-lib-dirs" ) + ;; + + target) + rootdir="${TARGET_DIR}" + + for excludepath in ${TARGET_EXCLUDEPATHS}; do + find_args+=( "-path" "${TARGET_DIR}""${excludepath}" "-prune" "-o" ) + done + + # we don't want $ORIGIN-based rpaths but absolute paths without rootdir. + # we also want to remove rpaths pointing to /lib or /usr/lib. + sanitize_extra_args+=( "--no-standard-lib-dirs" ) + ;; + + *) + usage + exit 1 + ;; + esac + + find_args+=( "-type" "f" "-print" ) + + while read file ; do + # check if it's an ELF file + rpath=$(${PATCHELF} --print-rpath "${file}" 2>&1) + if test $? -ne 0 ; then + continue + fi + + # make files writable if necessary + changed=$(chmod -c u+w "${file}") + + # With per-package directory support, most RPATH of host + # binaries will point to per-package directories. This won't + # work with the --make-rpath-relative ${rootdir} invocation as + # the per-package host directory is not within ${rootdir}. So, + # we rewrite all RPATHs pointing to per-package directories so + # that they point to the global host directry. + changed_rpath=$(echo ${rpath} | sed "s@${PER_PACKAGE_DIR}/[^/]\+/host@${HOST_DIR}@") + if test "${rpath}" != "${changed_rpath}" ; then + ${PATCHELF} --set-rpath ${changed_rpath} "${file}" + fi + + # call patchelf to sanitize the rpath + ${PATCHELF} --make-rpath-relative "${rootdir}" ${sanitize_extra_args[@]} "${file}" + # restore the original permission + test "${changed}" != "" && chmod u-w "${file}" + done < <(find "${rootdir}" ${find_args[@]}) + + # Restore patched patchelf utility + test "${tree}" = "host" && mv "${PATCHELF}.__to_be_patched" "${PATCHELF}" + + # ignore errors + return 0 +} + +main ${@} diff --git a/support/scripts/gen-bootlin-toolchains b/support/scripts/gen-bootlin-toolchains new file mode 100755 index 00000000..902b7795 --- /dev/null +++ b/support/scripts/gen-bootlin-toolchains @@ -0,0 +1,496 @@ +#!/usr/bin/env python3 + +import os.path +import re +import requests +import textwrap + +BASE_URL = "https://toolchains.bootlin.com/downloads/releases/toolchains" + +AUTOGENERATED_COMMENT = """# This file was auto-generated by support/scripts/gen-bootlin-toolchains +# Do not edit +""" + +# In the below dict: + +# - 'conditions' indicate the cumulative conditions under which the +# toolchain will be made available. In several situations, a given +# toolchain is usable on several architectures variants (for +# example, an ARMv6 toolchain can be used on ARMv7) +# - 'test_options' indicate one specific configuration where the +# toolchain can be used. It is used to create the runtime test +# cases. If 'test_options' does not exist, the code assumes it can +# be made equal to 'conditions' +# - 'prefix' is the prefix of the cross-compilation toolchain tools + +arches = { + 'aarch64': { + 'conditions': ['BR2_aarch64'], + 'prefix': 'aarch64', + }, + 'aarch64be': { + 'conditions': ['BR2_aarch64_be'], + 'prefix': 'aarch64_be', + }, + 'arcle-750d': { + 'conditions': ['BR2_arcle', 'BR2_arc750d'], + 'prefix': 'arc', + }, + 'arcle-hs38': { + 'conditions': ['BR2_arcle', 'BR2_archs38'], + 'prefix': 'arc', + }, + 'armv5-eabi': { + 'conditions': ['BR2_ARM_CPU_ARMV5', 'BR2_ARM_EABI'], + 'test_options': ['BR2_arm', 'BR2_arm926t', 'BR2_ARM_EABI'], + 'prefix': 'arm', + }, + 'armv6-eabihf': { + 'conditions': ['BR2_ARM_CPU_ARMV6', 'BR2_ARM_EABIHF'], + 'test_options': ['BR2_arm', 'BR2_arm1176jzf_s', 'BR2_ARM_EABIHF'], + 'prefix': 'arm', + }, + 'armv7-eabihf': { + 'conditions': ['BR2_ARM_CPU_ARMV7A', 'BR2_ARM_EABIHF'], + 'test_options': ['BR2_arm', 'BR2_cortex_a8', 'BR2_ARM_EABIHF'], + 'prefix': 'arm', + }, + 'armv7m': { + 'conditions': ['BR2_ARM_CPU_ARMV7M'], + 'test_options': ['BR2_arm', 'BR2_cortex_m4'], + 'prefix': 'arm', + }, + 'm68k-68xxx': { + 'conditions': ['BR2_m68k_m68k'], + 'test_options': ['BR2_m68k', 'BR2_m68k_68040'], + 'prefix': 'm68k', + }, + 'm68k-coldfire': { + 'conditions': ['BR2_m68k_cf'], + 'test_options': ['BR2_m68k', 'BR2_m68k_cf5208'], + 'prefix': 'm68k', + }, + 'microblazebe': { + 'conditions': ['BR2_microblazebe'], + 'prefix': 'microblaze', + }, + 'microblazeel': { + 'conditions': ['BR2_microblazeel'], + 'prefix': 'microblazeel', + }, + 'mips32': { + # Not sure it could be used by other mips32 variants? + 'conditions': ['BR2_mips', 'BR2_mips_32', '!BR2_MIPS_SOFT_FLOAT'], + 'prefix': 'mips', + }, + 'mips32el': { + # Not sure it could be used by other mips32el variants? + 'conditions': ['BR2_mipsel', 'BR2_mips_32', '!BR2_MIPS_SOFT_FLOAT'], + 'prefix': 'mipsel', + }, + 'mips32r5el': { + 'conditions': ['BR2_mipsel', 'BR2_mips_32r5', '!BR2_MIPS_SOFT_FLOAT'], + 'prefix': 'mipsel', + }, + 'mips32r6el': { + 'conditions': ['BR2_mipsel', 'BR2_mips_32r6', '!BR2_MIPS_SOFT_FLOAT'], + 'prefix': 'mipsel', + }, + 'mips64': { + # Not sure it could be used by other mips64 variants? + 'conditions': ['BR2_mips64', 'BR2_mips_64', '!BR2_MIPS_SOFT_FLOAT'], + 'prefix': 'mips64', + }, + 'mips64-n32': { + # Not sure it could be used by other mips64 variants? + 'conditions': ['BR2_mips64', 'BR2_mips_64', 'BR2_MIPS_NABI32', '!BR2_MIPS_SOFT_FLOAT'], + 'prefix': 'mips64', + }, + 'mips64el-n32': { + # Not sure it could be used by other mips64el variants? + 'conditions': ['BR2_mips64el', 'BR2_mips_64', 'BR2_MIPS_NABI32', '!BR2_MIPS_SOFT_FLOAT'], + 'prefix': 'mips64el', + }, + 'mips64r6el-n32': { + 'conditions': ['BR2_mips64el', 'BR2_mips_64r6', 'BR2_MIPS_NABI32', '!BR2_MIPS_SOFT_FLOAT'], + 'prefix': 'mips64el', + }, + 'nios2': { + 'conditions': ['BR2_nios2'], + 'prefix': 'nios2', + }, + 'openrisc': { + 'conditions': ['BR2_or1k'], + 'prefix': 'or1k', + }, + 'powerpc-440fp': { + # Not sure it could be used by other powerpc variants? + 'conditions': ['BR2_powerpc', 'BR2_powerpc_440fp'], + 'prefix': 'powerpc', + }, + 'powerpc-e300c3': { + # Not sure it could be used by other powerpc variants? + 'conditions': ['BR2_powerpc', 'BR2_powerpc_e300c3'], + 'prefix': 'powerpc', + }, + 'powerpc-e500mc': { + # Not sure it could be used by other powerpc variants? + 'conditions': ['BR2_powerpc', 'BR2_powerpc_e500mc'], + 'prefix': 'powerpc', + }, + 'powerpc64-e5500': { + 'conditions': ['BR2_powerpc64', 'BR2_powerpc_e5500'], + 'prefix': 'powerpc64', + }, + 'powerpc64-e6500': { + 'conditions': ['BR2_powerpc64', 'BR2_powerpc_e6500'], + 'prefix': 'powerpc64', + }, + 'powerpc64-power8': { + 'conditions': ['BR2_powerpc64', 'BR2_powerpc_power8'], + 'prefix': 'powerpc64', + }, + 'powerpc64le-power8': { + 'conditions': ['BR2_powerpc64le', 'BR2_powerpc_power8'], + 'prefix': 'powerpc64le', + }, + 'riscv32-ilp32d': { + 'conditions': ['BR2_riscv', 'BR2_riscv_g', 'BR2_RISCV_32', 'BR2_RISCV_ABI_ILP32D'], + 'prefix': 'riscv32', + }, + 'riscv64': { + 'conditions': ['BR2_riscv', 'BR2_riscv_g', 'BR2_RISCV_64', 'BR2_RISCV_ABI_LP64'], + 'prefix': 'riscv64', + }, + 'sh-sh4': { + 'conditions': ['BR2_sh', 'BR2_sh4'], + 'prefix': 'sh4', + }, + 'sh-sh4aeb': { + 'conditions': ['BR2_sh', 'BR2_sh4aeb'], + 'prefix': 'sh4aeb', + }, + 'sparc64': { + 'conditions': ['BR2_sparc64', 'BR2_sparc_v9'], + 'prefix': 'sparc64', + }, + 'sparcv8': { + 'conditions': ['BR2_sparc', 'BR2_sparc_v8'], + 'prefix': 'sparc', + }, + 'x86-64-core-i7': { + 'conditions': ['BR2_x86_64', + 'BR2_X86_CPU_HAS_MMX', + 'BR2_X86_CPU_HAS_SSE', + 'BR2_X86_CPU_HAS_SSE2', + 'BR2_X86_CPU_HAS_SSE3', + 'BR2_X86_CPU_HAS_SSSE3', + 'BR2_X86_CPU_HAS_SSE4', + 'BR2_X86_CPU_HAS_SSE42'], + 'test_options': ['BR2_x86_64', 'BR2_x86_corei7'], + 'prefix': 'x86_64', + }, + 'x86-core2': { + 'conditions': ['BR2_i386', + 'BR2_X86_CPU_HAS_MMX', + 'BR2_X86_CPU_HAS_SSE', + 'BR2_X86_CPU_HAS_SSE2', + 'BR2_X86_CPU_HAS_SSE3', + 'BR2_X86_CPU_HAS_SSSE3'], + 'test_options': ['BR2_i386', 'BR2_x86_core2'], + 'prefix': 'i686', + }, + 'x86-i686': { + 'conditions': ['BR2_i386', + '!BR2_x86_i486', + '!BR2_x86_i586', + '!BR2_x86_x1000'], + 'test_options': ['BR2_i386', + 'BR2_x86_i686'], + 'prefix': 'i686', + }, + 'xtensa-lx60': { + 'conditions': ['BR2_xtensa', 'BR2_XTENSA_CUSTOM', 'BR2_XTENSA_LITTLE_ENDIAN'], + 'prefix': 'xtensa', + }, +} + + +class Toolchain: + def __init__(self, arch, libc, variant, version): + self.arch = arch + self.libc = libc + self.variant = variant + self.version = version + self.fname_prefix = "%s--%s--%s-%s" % (self.arch, self.libc, self.variant, self.version) + self.option_name = "BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_%s_%s_%s" % \ + (self.arch.replace("-", "_").upper(), self.libc.upper(), self.variant.replace("-", "_").upper()) + self.fragment = requests.get(self.fragment_url).text.split("\n") + self.sha256 = requests.get(self.hash_url).text.split(" ")[0] + + @property + def tarball_url(self): + return os.path.join(BASE_URL, self.arch, "tarballs", + self.fname_prefix + ".tar.bz2") + + @property + def hash_url(self): + return os.path.join(BASE_URL, self.arch, "tarballs", + self.fname_prefix + ".sha256") + + @property + def fragment_url(self): + return os.path.join(BASE_URL, self.arch, "fragments", + self.fname_prefix + ".frag") + + def gen_config_in_options(self, f): + f.write("config %s\n" % self.option_name) + f.write("\tbool \"%s %s %s %s\"\n" % + (self.arch, self.libc, self.variant, self.version)) + depends = [] + selects = [] + + for c in arches[self.arch]['conditions']: + depends.append(c) + + for frag in self.fragment: + # libc type + if frag.startswith("BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC"): + selects.append("BR2_TOOLCHAIN_EXTERNAL_UCLIBC") + elif frag.startswith("BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC"): + # glibc needs mmu support + depends.append("BR2_USE_MMU") + # glibc doesn't support static only configuration + depends.append("!BR2_STATIC_LIBS") + selects.append("BR2_TOOLCHAIN_EXTERNAL_GLIBC") + elif frag.startswith("BR2_TOOLCHAIN_EXTERNAL_CUSTOM_MUSL"): + # musl needs mmu support + depends.append("BR2_USE_MMU") + selects.append("BR2_TOOLCHAIN_EXTERNAL_MUSL") + + # gcc version + if frag.startswith("BR2_TOOLCHAIN_EXTERNAL_GCC_"): + m = re.match("^BR2_TOOLCHAIN_EXTERNAL_GCC_([0-9_]*)=y$", frag) + assert m, "Cannot get gcc version for toolchain %s" % self.fname_prefix + selects.append("BR2_TOOLCHAIN_GCC_AT_LEAST_%s" % m[1]) + + # kernel headers version + if frag.startswith("BR2_TOOLCHAIN_EXTERNAL_HEADERS_"): + m = re.match("^BR2_TOOLCHAIN_EXTERNAL_HEADERS_([0-9_]*)=y$", frag) + assert m, "Cannot get kernel headers version for toolchain %s" % self.fname_prefix + selects.append("BR2_TOOLCHAIN_HEADERS_AT_LEAST_%s" % m[1]) + + # C++ + if frag.startswith("BR2_TOOLCHAIN_EXTERNAL_CXX"): + selects.append("BR2_INSTALL_LIBSTDCPP") + + # SSP + if frag.startswith("BR2_TOOLCHAIN_EXTERNAL_HAS_SSP"): + selects.append("BR2_TOOLCHAIN_HAS_SSP") + + # wchar + if frag.startswith("BR2_TOOLCHAIN_EXTERNAL_WCHAR"): + selects.append("BR2_USE_WCHAR") + + # locale + if frag.startswith("BR2_TOOLCHAIN_EXTERNAL_LOCALE"): + # locale implies the availability of wchar + selects.append("BR2_USE_WCHAR") + selects.append("BR2_ENABLE_LOCALE") + + # thread support + if frag.startswith("BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS"): + selects.append("BR2_TOOLCHAIN_HAS_THREADS") + + if frag.startswith("BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG"): + selects.append("BR2_TOOLCHAIN_HAS_THREADS_DEBUG") + + if frag.startswith("BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_NPTL"): + selects.append("BR2_TOOLCHAIN_HAS_THREADS_NPTL") + + # RPC + if frag.startswith("BR2_TOOLCHAIN_EXTERNAL_INET_RPC"): + selects.append("BR2_TOOLCHAIN_HAS_NATIVE_RPC") + + # D language + if frag.startswith("BR2_TOOLCHAIN_EXTERNAL_DLANG"): + selects.append("BR2_TOOLCHAIN_HAS_DLANG") + + # fortran + if frag.startswith("BR2_TOOLCHAIN_EXTERNAL_FORTRAN"): + selects.append("BR2_TOOLCHAIN_HAS_FORTRAN") + + # OpenMP + if frag.startswith("BR2_TOOLCHAIN_EXTERNAL_OPENMP"): + selects.append("BR2_TOOLCHAIN_HAS_OPENMP") + + for depend in depends: + f.write("\tdepends on %s\n" % depend) + + for select in selects: + f.write("\tselect %s\n" % select) + + f.write("\thelp\n") + + desc = "Bootlin toolchain for the %s architecture, using the %s C library. " % \ + (self.arch, self.libc) + + if self.variant == "stable": + desc += "This is a stable version, which means it is using stable and proven versions of gcc, gdb and binutils." + else: + desc += "This is a bleeding-edge version, which means it is using the latest versions of gcc, gdb and binutils." + + f.write(textwrap.fill(desc, width=62, initial_indent="\t ", subsequent_indent="\t ") + "\n") + f.write("\n") + f.write("\t https://toolchains.bootlin.com/\n") + + f.write("\n") + + def gen_mk(self, f): + f.write("ifeq ($(%s),y)\n" % self.option_name) + f.write("TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = %s\n" % self.version) + f.write("TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = %s--%s--%s-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2\n" % + (self.arch, self.libc, self.variant)) + f.write("TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = %s\n" % + os.path.join(BASE_URL, self.arch, "tarballs")) + f.write("endif\n\n") + pass + + def gen_hash(self, f): + f.write("# From %s\n" % self.hash_url) + f.write("sha256 %s %s\n" % (self.sha256, os.path.basename(self.tarball_url))) + + def gen_test(self, f): + if self.variant == "stable": + variant = "Stable" + else: + variant = "BleedingEdge" + testname = "TestExternalToolchainBootlin" + \ + self.arch.replace("-", "").capitalize() + \ + self.libc.capitalize() + variant + f.write("\n\n") + f.write("class %s(TestExternalToolchain):\n" % testname) + f.write(" config = \"\"\"\n") + if 'test_options' in arches[self.arch]: + test_options = arches[self.arch]['test_options'] + else: + test_options = arches[self.arch]['conditions'] + for opt in test_options: + if opt.startswith("!"): + f.write(" # %s is not set\n" % opt[1:]) + else: + f.write(" %s=y\n" % opt) + f.write(" BR2_TOOLCHAIN_EXTERNAL=y\n") + f.write(" BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y\n") + f.write(" %s=y\n" % self.option_name) + f.write(" # BR2_TARGET_ROOTFS_TAR is not set\n") + f.write(" \"\"\"\n") + f.write(" toolchain_prefix = \"%s-linux\"\n" % arches[self.arch]['prefix']) + f.write("\n") + f.write(" def test_run(self):\n") + f.write(" TestExternalToolchain.common_check(self)\n") + + def __repr__(self): + return "Toolchain(arch=%s libc=%s variant=%s version=%s, option=%s)" % \ + (self.arch, self.libc, self.variant, self.version, self.option_name) + + +def get_toolchains(): + toolchains = list() + for arch, details in arches.items(): + print(arch) + url = os.path.join(BASE_URL, arch, "available_toolchains") + page = requests.get(url).text + fnames = sorted(re.findall(r'&1 \ + | sed -r -e '/^test_run \((.*)\).*/!d; s//\1/' \ + | LC_ALL=C sort) + ) + + if [ -n "${CI_COMMIT_TAG}" ]; then + do_basics=true + do_defconfigs=base + do_runtime=true + elif [ "${CI_PIPELINE_SOURCE}" = "trigger" ]; then + case "${BR_SCHEDULE_JOBS}" in + (basic) + do_basics=true + do_defconfigs=check + defconfigs_ext=_check + ;; + (defconfig) + do_defconfigs=base + ;; + (runtime) + do_runtime=true + ;; + esac + else + case "${CI_COMMIT_REF_NAME}" in + (*-basics) + do_basics=true + do_defconfigs=check + defconfigs_ext=_check + ;; + (*-defconfigs) + do_defconfigs=base + ;; + (*-*_defconfig) + defconfigs=( "${CI_COMMIT_REF_NAME##*-}" ) + do_defconfigs=base + ;; + (*-runtime-tests) + do_runtime=true + ;; + (*-tests.*) + runtimes=( "${CI_COMMIT_REF_NAME##*-}" ) + do_runtime=true + ;; + esac + fi + + # If nothing else, at least do the basics to generate a valid pipeline + if [ -z "${do_defconfigs}" \ + -a -z "${do_runtime}" \ + ] + then + do_basics=true + fi + + if ${do_basics:-false}; then + for tst in "${basics[@]}"; do + printf 'check-%s: { extends: .check-%s_base }\n' "${tst}" "${tst}" + done + fi + + if [ -n "${do_defconfigs}" ]; then + for cfg in "${defconfigs[@]}"; do + printf '%s%s: { extends: .defconfig_%s }\n' \ + "${cfg}" "${defconfigs_ext}" "${do_defconfigs}" + done + fi + + if ${do_runtime:-false}; then + printf '%s: { extends: .runtime_test_base }\n' "${runtimes[@]}" + fi +} + +main "${@}" diff --git a/support/scripts/genimage.sh b/support/scripts/genimage.sh new file mode 100755 index 00000000..2796e19e --- /dev/null +++ b/support/scripts/genimage.sh @@ -0,0 +1,48 @@ +#!/usr/bin/env bash + +die() { + cat <&2 +Error: $@ + +Usage: ${0} -c GENIMAGE_CONFIG_FILE +EOF + exit 1 +} + +# Parse arguments and put into argument list of the script +opts="$(getopt -n "${0##*/}" -o c: -- "$@")" || exit $? +eval set -- "$opts" + +GENIMAGE_TMP="${BUILD_DIR}/genimage.tmp" + +while true ; do + case "$1" in + -c) + GENIMAGE_CFG="${2}"; + shift 2 ;; + --) # Discard all non-option parameters + shift 1; + break ;; + *) + die "unknown option '${1}'" ;; + esac +done + +[ -n "${GENIMAGE_CFG}" ] || die "Missing argument" + +# Pass an empty rootpath. genimage makes a full copy of the given rootpath to +# ${GENIMAGE_TMP}/root so passing TARGET_DIR would be a waste of time and disk +# space. We don't rely on genimage to build the rootfs image, just to insert a +# pre-built one in the disk image. + +trap 'rm -rf "${ROOTPATH_TMP}"' EXIT +ROOTPATH_TMP="$(mktemp -d)" + +rm -rf "${GENIMAGE_TMP}" + +genimage \ + --rootpath "${ROOTPATH_TMP}" \ + --tmppath "${GENIMAGE_TMP}" \ + --inputpath "${BINARIES_DIR}" \ + --outputpath "${BINARIES_DIR}" \ + --config "${GENIMAGE_CFG}" diff --git a/support/scripts/graph-build-time b/support/scripts/graph-build-time new file mode 100755 index 00000000..ba3cdad8 --- /dev/null +++ b/support/scripts/graph-build-time @@ -0,0 +1,312 @@ +#!/usr/bin/env python + +# Copyright (C) 2011 by Thomas Petazzoni +# Copyright (C) 2013 by Yann E. MORIN +# +# 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 + +# This script generates graphs of packages build time, from the timing +# data generated by Buildroot in the $(O)/build-time.log file. +# +# Example usage: +# +# cat $(O)/build-time.log | ./support/scripts/graph-build-time --type=histogram --output=foobar.pdf +# +# Three graph types are available : +# +# * histogram, which creates an histogram of the build time for each +# package, decomposed by each step (extract, patch, configure, +# etc.). The order in which the packages are shown is +# configurable: by package name, by build order, or by duration +# order. See the --order option. +# +# * pie-packages, which creates a pie chart of the build time of +# each package (without decomposition in steps). Packages that +# contributed to less than 1% of the overall build time are all +# grouped together in an "Other" entry. +# +# * pie-steps, which creates a pie chart of the time spent globally +# on each step (extract, patch, configure, etc...) +# +# The default is to generate an histogram ordered by package name. +# +# Requirements: +# +# * matplotlib (python-matplotlib on Debian/Ubuntu systems) +# * numpy (python-numpy on Debian/Ubuntu systems) +# * argparse (by default in Python 2.7, requires python-argparse if +# Python 2.6 is used) + +import sys + +try: + import matplotlib as mpl + import numpy +except ImportError: + sys.stderr.write("You need python-matplotlib and python-numpy to generate build graphs\n") + exit(1) + +# Use the Agg backend (which produces a PNG output, see +# http://matplotlib.org/faq/usage_faq.html#what-is-a-backend), +# otherwise an incorrect backend is used on some host machines). +# Note: matplotlib.use() must be called *before* matplotlib.pyplot. +mpl.use('Agg') + +import matplotlib.pyplot as plt # noqa: E402 +import matplotlib.font_manager as fm # noqa: E402 +import csv # noqa: E402 +import argparse # noqa: E402 + +steps = ['download', 'extract', 'patch', 'configure', 'build', + 'install-target', 'install-staging', 'install-images', + 'install-host'] + +default_colors = ['#8d02ff', '#e60004', '#009836', '#2e1d86', '#ffed00', + '#0068b5', '#f28e00', '#940084', '#97c000'] + +alternate_colors = ['#ffbe0a', '#96bdff', '#3f7f7f', '#ff0000', '#00c000', + '#0080ff', '#c000ff', '#00eeee', '#e0e000'] + + +class Package: + def __init__(self, name): + self.name = name + self.steps_duration = {} + self.steps_start = {} + self.steps_end = {} + + def add_step(self, step, state, time): + if state == "start": + self.steps_start[step] = time + else: + self.steps_end[step] = time + if step in self.steps_start and step in self.steps_end: + self.steps_duration[step] = self.steps_end[step] - self.steps_start[step] + + def get_duration(self, step=None): + if step is None: + duration = 0 + for step in list(self.steps_duration.keys()): + duration += self.steps_duration[step] + return duration + if step in self.steps_duration: + return self.steps_duration[step] + return 0 + + +# Generate an histogram of the time spent in each step of each +# package. +def pkg_histogram(data, output, order="build"): + n_pkgs = len(data) + ind = numpy.arange(n_pkgs) + + if order == "duration": + data = sorted(data, key=lambda p: p.get_duration(), reverse=True) + elif order == "name": + data = sorted(data, key=lambda p: p.name, reverse=False) + + # Prepare the vals array, containing one entry for each step + vals = [] + for step in steps: + val = [] + for p in data: + val.append(p.get_duration(step)) + vals.append(val) + + bottom = [0] * n_pkgs + legenditems = [] + + plt.figure() + + # Draw the bars, step by step + for i in range(0, len(vals)): + b = plt.bar(ind+0.1, vals[i], width=0.8, color=colors[i], bottom=bottom, linewidth=0.25) + legenditems.append(b[0]) + bottom = [bottom[j] + vals[i][j] for j in range(0, len(vals[i]))] + + # Draw the package names + plt.xticks(ind + .6, [p.name for p in data], rotation=-60, rotation_mode="anchor", fontsize=8, ha='left') + + # Adjust size of graph depending on the number of packages + # Ensure a minimal size twice as the default + # Magic Numbers do Magic Layout! + ratio = max(((n_pkgs + 10) / 48, 2)) + borders = 0.1 / ratio + sz = plt.gcf().get_figwidth() + plt.gcf().set_figwidth(sz * ratio) + + # Adjust space at borders, add more space for the + # package names at the bottom + plt.gcf().subplots_adjust(bottom=0.2, left=borders, right=1-borders) + + # Remove ticks in the graph for each package + axes = plt.gcf().gca() + for line in axes.get_xticklines(): + line.set_markersize(0) + + axes.set_ylabel('Time (seconds)') + + # Reduce size of legend text + leg_prop = fm.FontProperties(size=6) + + # Draw legend + plt.legend(legenditems, steps, prop=leg_prop) + + if order == "name": + plt.title('Build time of packages\n') + elif order == "build": + plt.title('Build time of packages, by build order\n') + elif order == "duration": + plt.title('Build time of packages, by duration order\n') + + # Save graph + plt.savefig(output) + + +# Generate a pie chart with the time spent building each package. +def pkg_pie_time_per_package(data, output): + # Compute total build duration + total = 0 + for p in data: + total += p.get_duration() + + # Build the list of labels and values, and filter the packages + # that account for less than 1% of the build time. + labels = [] + values = [] + other_value = 0 + for p in sorted(data, key=lambda p: p.get_duration()): + if p.get_duration() < (total * 0.01): + other_value += p.get_duration() + else: + labels.append(p.name) + values.append(p.get_duration()) + + labels.append('Other') + values.append(other_value) + + plt.figure() + + # Draw pie graph + patches, texts, autotexts = plt.pie(values, labels=labels, + autopct='%1.1f%%', shadow=True, + colors=colors) + + # Reduce text size + proptease = fm.FontProperties() + proptease.set_size('xx-small') + plt.setp(autotexts, fontproperties=proptease) + plt.setp(texts, fontproperties=proptease) + + plt.title('Build time per package') + plt.savefig(output) + + +# Generate a pie chart with a portion for the overall time spent in +# each step for all packages. +def pkg_pie_time_per_step(data, output): + steps_values = [] + for step in steps: + val = 0 + for p in data: + val += p.get_duration(step) + steps_values.append(val) + + plt.figure() + + # Draw pie graph + patches, texts, autotexts = plt.pie(steps_values, labels=steps, + autopct='%1.1f%%', shadow=True, + colors=colors) + + # Reduce text size + proptease = fm.FontProperties() + proptease.set_size('xx-small') + plt.setp(autotexts, fontproperties=proptease) + plt.setp(texts, fontproperties=proptease) + + plt.title('Build time per step') + plt.savefig(output) + + +# Parses the csv file passed on standard input and returns a list of +# Package objects, filed with the duration of each step and the total +# duration of the package. +def read_data(input_file): + if input_file is None: + input_file = sys.stdin + else: + input_file = open(input_file) + reader = csv.reader(input_file, delimiter=':') + pkgs = [] + + # Auxilliary function to find a package by name in the list. + def getpkg(name): + for p in pkgs: + if p.name == name: + return p + return None + + for row in reader: + time = float(row[0].strip()) + state = row[1].strip() + step = row[2].strip() + pkg = row[3].strip() + + p = getpkg(pkg) + if p is None: + p = Package(pkg) + pkgs.append(p) + + p.add_step(step, state, time) + + return pkgs + + +parser = argparse.ArgumentParser(description='Draw build time graphs') +parser.add_argument("--type", '-t', metavar="GRAPH_TYPE", + help="Type of graph (histogram, pie-packages, pie-steps)") +parser.add_argument("--order", '-O', metavar="GRAPH_ORDER", + help="Ordering of packages: build or duration (for histogram only)") +parser.add_argument("--alternate-colors", '-c', action="store_true", + help="Use alternate colour-scheme") +parser.add_argument("--input", '-i', metavar="INPUT", + help="Input file (usually $(O)/build/build-time.log)") +parser.add_argument("--output", '-o', metavar="OUTPUT", required=True, + help="Output file (.pdf or .png extension)") +args = parser.parse_args() + +d = read_data(args.input) + +if args.alternate_colors: + colors = alternate_colors +else: + colors = default_colors + +if args.type == "histogram" or args.type is None: + if args.order == "build" or args.order == "duration" or args.order == "name": + pkg_histogram(d, args.output, args.order) + elif args.order is None: + pkg_histogram(d, args.output, "name") + else: + sys.stderr.write("Unknown ordering: %s\n" % args.order) + exit(1) +elif args.type == "pie-packages": + pkg_pie_time_per_package(d, args.output) +elif args.type == "pie-steps": + pkg_pie_time_per_step(d, args.output) +else: + sys.stderr.write("Unknown type: %s\n" % args.type) + exit(1) diff --git a/support/scripts/graph-depends b/support/scripts/graph-depends new file mode 100755 index 00000000..d42bebce --- /dev/null +++ b/support/scripts/graph-depends @@ -0,0 +1,357 @@ +#!/usr/bin/env python + +# Usage (the graphviz package must be installed in your distribution) +# ./support/scripts/graph-depends [-p package-name] > test.dot +# dot -Tpdf test.dot -o test.pdf +# +# With no arguments, graph-depends will draw a complete graph of +# dependencies for the current configuration. +# If '-p ' is specified, graph-depends will draw a graph +# of dependencies for the given package name. +# If '-d ' is specified, graph-depends will limit the depth of +# the dependency graph to 'depth' levels. +# +# Limitations +# +# * Some packages have dependencies that depend on the Buildroot +# configuration. For example, many packages have a dependency on +# openssl if openssl has been enabled. This tool will graph the +# dependencies as they are with the current Buildroot +# configuration. +# +# Copyright (C) 2010-2013 Thomas Petazzoni +# Copyright (C) 2019 Yann E. MORIN + +import logging +import sys +import argparse +from fnmatch import fnmatch + +import brpkgutil + +# Modes of operation: +MODE_FULL = 1 # draw full dependency graph for all selected packages +MODE_PKG = 2 # draw dependency graph for a given package + +allpkgs = [] + + +# The Graphviz "dot" utility doesn't like dashes in node names. So for +# node names, we strip all dashes. Also, nodes can't start with a number, +# so we prepend an underscore. +def pkg_node_name(pkg): + return "_" + pkg.replace("-", "") + + +# Basic cache for the results of the is_dep() function, in order to +# optimize the execution time. The cache is a dict of dict of boolean +# values. The key to the primary dict is "pkg", and the key of the +# sub-dicts is "pkg2". +is_dep_cache = {} + + +def is_dep_cache_insert(pkg, pkg2, val): + try: + is_dep_cache[pkg].update({pkg2: val}) + except KeyError: + is_dep_cache[pkg] = {pkg2: val} + + +# Retrieves from the cache whether pkg2 is a transitive dependency +# of pkg. +# Note: raises a KeyError exception if the dependency is not known. +def is_dep_cache_lookup(pkg, pkg2): + return is_dep_cache[pkg][pkg2] + + +# This function return True if pkg is a dependency (direct or +# transitive) of pkg2, dependencies being listed in the deps +# dictionary. Returns False otherwise. +# This is the un-cached version. +def is_dep_uncached(pkg, pkg2, deps): + try: + for p in deps[pkg2]: + if pkg == p: + return True + if is_dep(pkg, p, deps): + return True + except KeyError: + pass + return False + + +# See is_dep_uncached() above; this is the cached version. +def is_dep(pkg, pkg2, deps): + try: + return is_dep_cache_lookup(pkg, pkg2) + except KeyError: + val = is_dep_uncached(pkg, pkg2, deps) + is_dep_cache_insert(pkg, pkg2, val) + return val + + +# This function eliminates transitive dependencies; for example, given +# these dependency chain: A->{B,C} and B->{C}, the A->{C} dependency is +# already covered by B->{C}, so C is a transitive dependency of A, via B. +# The functions does: +# - for each dependency d[i] of the package pkg +# - if d[i] is a dependency of any of the other dependencies d[j] +# - do not keep d[i] +# - otherwise keep d[i] +def remove_transitive_deps(pkg, deps): + d = deps[pkg] + new_d = [] + for i in range(len(d)): + keep_me = True + for j in range(len(d)): + if j == i: + continue + if is_dep(d[i], d[j], deps): + keep_me = False + if keep_me: + new_d.append(d[i]) + return new_d + + +# List of dependencies that all/many packages have, and that we want +# to trim when generating the dependency graph. +MANDATORY_DEPS = ['toolchain', 'skeleton', 'host-skeleton', 'host-tar', 'host-gzip', 'host-ccache'] + + +# This function removes the dependency on some 'mandatory' package, like the +# 'toolchain' package, or the 'skeleton' package +def remove_mandatory_deps(pkg, deps): + return [p for p in deps[pkg] if p not in MANDATORY_DEPS] + + +# This function returns all dependencies of pkg that are part of the +# mandatory dependencies: +def get_mandatory_deps(pkg, deps): + return [p for p in deps[pkg] if p in MANDATORY_DEPS] + + +# This function will check that there is no loop in the dependency chain +# As a side effect, it builds up the dependency cache. +def check_circular_deps(deps): + def recurse(pkg): + if pkg not in list(deps.keys()): + return + if pkg in not_loop: + return + not_loop.append(pkg) + chain.append(pkg) + for p in deps[pkg]: + if p in chain: + logging.warning("\nRecursion detected for : %s" % (p)) + while True: + _p = chain.pop() + logging.warning("which is a dependency of: %s" % (_p)) + if p == _p: + sys.exit(1) + recurse(p) + chain.pop() + + not_loop = [] + chain = [] + for pkg in list(deps.keys()): + recurse(pkg) + + +# This functions trims down the dependency list of all packages. +# It applies in sequence all the dependency-elimination methods. +def remove_extra_deps(deps, rootpkg, transitive, arrow_dir): + # For the direct dependencies, find and eliminate mandatory + # deps, and add them to the root package. Don't do it for a + # reverse graph, because mandatory deps are only direct deps. + if arrow_dir == "forward": + for pkg in list(deps.keys()): + if not pkg == rootpkg: + for d in get_mandatory_deps(pkg, deps): + if d not in deps[rootpkg]: + deps[rootpkg].append(d) + deps[pkg] = remove_mandatory_deps(pkg, deps) + for pkg in list(deps.keys()): + if not transitive or pkg == rootpkg: + deps[pkg] = remove_transitive_deps(pkg, deps) + return deps + + +# Print the attributes of a node: label and fill-color +def print_attrs(outfile, pkg, pkg_type, pkg_version, depth, colors): + name = pkg_node_name(pkg) + if pkg == 'all': + label = 'ALL' + else: + label = pkg + if depth == 0: + color = colors[0] + else: + if pkg_type == "host": + color = colors[2] + else: + color = colors[1] + if pkg_version == "virtual": + outfile.write("%s [label = <%s>]\n" % (name, label)) + else: + outfile.write("%s [label = \"%s\"]\n" % (name, label)) + outfile.write("%s [color=%s,style=filled]\n" % (name, color)) + + +done_deps = [] + + +# Print the dependency graph of a package +def print_pkg_deps(outfile, dict_deps, dict_types, dict_versions, stop_list, exclude_list, + arrow_dir, draw_graph, depth, max_depth, pkg, colors): + if pkg in done_deps: + return + done_deps.append(pkg) + if draw_graph: + print_attrs(outfile, pkg, dict_types[pkg], dict_versions[pkg], depth, colors) + elif depth != 0: + outfile.write("%s " % pkg) + if pkg not in dict_deps: + return + for p in stop_list: + if fnmatch(pkg, p): + return + if dict_versions[pkg] == "virtual" and "virtual" in stop_list: + return + if dict_types[pkg] == "host" and "host" in stop_list: + return + if max_depth == 0 or depth < max_depth: + for d in dict_deps[pkg]: + if dict_versions[d] == "virtual" and "virtual" in exclude_list: + continue + if dict_types[d] == "host" and "host" in exclude_list: + continue + add = True + for p in exclude_list: + if fnmatch(d, p): + add = False + break + if add: + if draw_graph: + outfile.write("%s -> %s [dir=%s]\n" % (pkg_node_name(pkg), pkg_node_name(d), arrow_dir)) + print_pkg_deps(outfile, dict_deps, dict_types, dict_versions, stop_list, exclude_list, + arrow_dir, draw_graph, depth + 1, max_depth, d, colors) + + +def parse_args(): + parser = argparse.ArgumentParser(description="Graph packages dependencies") + parser.add_argument("--check-only", "-C", dest="check_only", action="store_true", default=False, + help="Only do the dependency checks (circular deps...)") + parser.add_argument("--outfile", "-o", metavar="OUT_FILE", dest="outfile", + help="File in which to generate the dot representation") + parser.add_argument("--package", '-p', metavar="PACKAGE", + help="Graph the dependencies of PACKAGE") + parser.add_argument("--depth", '-d', metavar="DEPTH", dest="depth", type=int, default=0, + help="Limit the dependency graph to DEPTH levels; 0 means no limit.") + parser.add_argument("--stop-on", "-s", metavar="PACKAGE", dest="stop_list", action="append", + help="Do not graph past this package (can be given multiple times)." + + " Can be a package name or a glob, " + + " 'virtual' to stop on virtual packages, or " + + "'host' to stop on host packages.") + parser.add_argument("--exclude", "-x", metavar="PACKAGE", dest="exclude_list", action="append", + help="Like --stop-on, but do not add PACKAGE to the graph.") + parser.add_argument("--exclude-mandatory", "-X", action="store_true", + help="Like if -x was passed for all mandatory dependencies.") + parser.add_argument("--colors", "-c", metavar="COLOR_LIST", dest="colors", + default="lightblue,grey,gainsboro", + help="Comma-separated list of the three colors to use" + + " to draw the top-level package, the target" + + " packages, and the host packages, in this order." + + " Defaults to: 'lightblue,grey,gainsboro'") + parser.add_argument("--transitive", dest="transitive", action='store_true', + default=False) + parser.add_argument("--no-transitive", dest="transitive", action='store_false', + help="Draw (do not draw) transitive dependencies") + parser.add_argument("--direct", dest="direct", action='store_true', default=True, + help="Draw direct dependencies (the default)") + parser.add_argument("--reverse", dest="direct", action='store_false', + help="Draw reverse dependencies") + parser.add_argument("--quiet", '-q', dest="quiet", action='store_true', + help="Quiet") + parser.add_argument("--flat-list", '-f', dest="flat_list", action='store_true', default=False, + help="Do not draw graph, just print a flat list") + return parser.parse_args() + + +def main(): + args = parse_args() + + check_only = args.check_only + + logging.basicConfig(stream=sys.stderr, format='%(message)s', + level=logging.WARNING if args.quiet else logging.INFO) + + if args.outfile is None: + outfile = sys.stdout + else: + if check_only: + logging.error("don't specify outfile and check-only at the same time") + sys.exit(1) + outfile = open(args.outfile, "w") + + if args.package is None: + mode = MODE_FULL + rootpkg = 'all' + else: + mode = MODE_PKG + rootpkg = args.package + + if args.stop_list is None: + stop_list = [] + else: + stop_list = args.stop_list + + if args.exclude_list is None: + exclude_list = [] + else: + exclude_list = args.exclude_list + + if args.exclude_mandatory: + exclude_list += MANDATORY_DEPS + + if args.direct: + arrow_dir = "forward" + else: + if mode == MODE_FULL: + logging.error("--reverse needs a package") + sys.exit(1) + arrow_dir = "back" + + draw_graph = not args.flat_list + + # Get the colors: we need exactly three colors, + # so no need not split more than 4 + # We'll let 'dot' validate the colors... + colors = args.colors.split(',', 4) + if len(colors) != 3: + logging.error("Error: incorrect color list '%s'" % args.colors) + sys.exit(1) + + deps, rdeps, dict_types, dict_versions = brpkgutil.get_dependency_tree() + dict_deps = deps if args.direct else rdeps + + check_circular_deps(dict_deps) + if check_only: + sys.exit(0) + + dict_deps = remove_extra_deps(dict_deps, rootpkg, args.transitive, arrow_dir) + + # Start printing the graph data + if draw_graph: + outfile.write("digraph G {\n") + + print_pkg_deps(outfile, dict_deps, dict_types, dict_versions, stop_list, exclude_list, + arrow_dir, draw_graph, 0, args.depth, rootpkg, colors) + + if draw_graph: + outfile.write("}\n") + else: + outfile.write("\n") + + +if __name__ == "__main__": + sys.exit(main()) diff --git a/support/scripts/hardlink-or-copy b/support/scripts/hardlink-or-copy new file mode 100755 index 00000000..a052318f --- /dev/null +++ b/support/scripts/hardlink-or-copy @@ -0,0 +1,35 @@ +#!/usr/bin/env bash + +# Try to hardlink a file into a directory, fallback to copy on failure. +# +# Hardlink-or-copy the source file in the first argument into the +# destination directory in the second argument, using the basename in +# the third argument as basename for the destination file. If the third +# argument is missing, use the basename of the source file as basename +# for the destination file. +# +# In either case, remove the destination prior to doing the +# hardlink-or-copy. +# +# Note that this is NOT an atomic operation. + +set -e + +main() { + local src_file="${1}" + local dst_dir="${2}" + local dst_file="${3}" + + if [ -n "${dst_file}" ]; then + dst_file="${dst_dir}/${dst_file}" + else + dst_file="${dst_dir}/${src_file##*/}" + fi + + mkdir -p "${dst_dir}" + rm -f "${dst_file}" + ln -f "${src_file}" "${dst_file}" 2>/dev/null \ + || cp -f "${src_file}" "${dst_file}" +} + +main "${@}" diff --git a/support/scripts/mkmakefile b/support/scripts/mkmakefile new file mode 100755 index 00000000..c7569f2c --- /dev/null +++ b/support/scripts/mkmakefile @@ -0,0 +1,52 @@ +#!/bin/sh +# Generates a small Makefile used in the root of the output +# directory, to allow make to be started from there. +# The Makefile also allow for more convenient build of external modules + +# Usage +# $1 - Kernel src directory +# $2 - Output directory + + +test ! -r $2/Makefile -o -O $2/Makefile || exit 0 +# Only overwrite automatically generated Makefiles +# (so we do not overwrite buildroot Makefile) +if test -e $2/Makefile && ! grep -q Automatically $2/Makefile +then + exit 0 +fi +echo " GEN $2/Makefile" + +cat << EOF > $2/Makefile +# Automatically generated by $0: don't edit + +ifeq ("\$(origin V)", "command line") +VERBOSE := \$(V) +endif +ifneq (\$(VERBOSE),1) +Q := @ +endif + +lastword = \$(word \$(words \$(1)),\$(1)) +makedir := \$(dir \$(call lastword,\$(MAKEFILE_LIST))) + +MAKEARGS := -C $1 +MAKEARGS += O=\$(if \$(patsubst /%,,\$(makedir)),\$(CURDIR)/)\$(patsubst %/,%,\$(makedir)) + +MAKEFLAGS += --no-print-directory + +.PHONY: _all \$(MAKECMDGOALS) + +all := \$(filter-out Makefile,\$(MAKECMDGOALS)) + +_all: + \$(Q)umask 0022 && \$(MAKE) \$(MAKEARGS) \$(all) + +Makefile:; + +\$(all): _all + @: + +%/: _all + @: +EOF diff --git a/support/scripts/mkusers b/support/scripts/mkusers new file mode 100755 index 00000000..d00ba338 --- /dev/null +++ b/support/scripts/mkusers @@ -0,0 +1,443 @@ +#!/usr/bin/env bash +set -e +myname="${0##*/}" + +#---------------------------------------------------------------------------- +# Configurable items +MIN_UID=1000 +MAX_UID=1999 +MIN_GID=1000 +MAX_GID=1999 +# No more is configurable below this point +#---------------------------------------------------------------------------- + +#---------------------------------------------------------------------------- +error() { + local fmt="${1}" + shift + + printf "%s: " "${myname}" >&2 + printf "${fmt}" "${@}" >&2 +} +fail() { + error "$@" + exit 1 +} + +#---------------------------------------------------------------------------- +if [ ${#} -ne 2 ]; then + fail "usage: %s USERS_TABLE TARGET_DIR\n" +fi +USERS_TABLE="${1}" +TARGET_DIR="${2}" +shift 2 +PASSWD="${TARGET_DIR}/etc/passwd" +SHADOW="${TARGET_DIR}/etc/shadow" +GROUP="${TARGET_DIR}/etc/group" +# /etc/gshadow is not part of the standard skeleton, so not everybody +# will have it, but some may have it, and its content must be in sync +# with /etc/group, so any use of gshadow must be conditional. +GSHADOW="${TARGET_DIR}/etc/gshadow" + +# We can't simply source ${BR2_CONFIG} as it may contains constructs +# such as: +# BR2_DEFCONFIG="$(CONFIG_DIR)/defconfig" +# which when sourced from a shell script will eventually try to execute +# a command named 'CONFIG_DIR', which is plain wrong for virtually every +# systems out there. +# So, we have to scan that file instead. Sigh... :-( +PASSWD_METHOD="$( sed -r -e '/^BR2_TARGET_GENERIC_PASSWD_METHOD="(.*)"$/!d;' \ + -e 's//\1/;' \ + "${BR2_CONFIG}" \ + )" + +#---------------------------------------------------------------------------- +get_uid() { + local username="${1}" + + awk -F: -v username="${username}" \ + '$1 == username { printf( "%d\n", $3 ); }' "${PASSWD}" +} + +#---------------------------------------------------------------------------- +get_ugid() { + local username="${1}" + + awk -F: -v username="${username}" \ + '$1 == username { printf( "%d\n", $4 ); }' "${PASSWD}" +} + +#---------------------------------------------------------------------------- +get_gid() { + local group="${1}" + + awk -F: -v group="${group}" \ + '$1 == group { printf( "%d\n", $3 ); }' "${GROUP}" +} + +#---------------------------------------------------------------------------- +get_members() { + local group="${1}" + + awk -F: -v group="${group}" \ + '$1 == group { printf( "%s\n", $4 ); }' "${GROUP}" +} + +#---------------------------------------------------------------------------- +get_username() { + local uid="${1}" + + awk -F: -v uid="${uid}" \ + '$3 == uid { printf( "%s\n", $1 ); }' "${PASSWD}" +} + +#---------------------------------------------------------------------------- +get_group() { + local gid="${1}" + + awk -F: -v gid="${gid}" \ + '$3 == gid { printf( "%s\n", $1 ); }' "${GROUP}" +} + +#---------------------------------------------------------------------------- +get_ugroup() { + local username="${1}" + local ugid + + ugid="$( get_ugid "${username}" )" + if [ -n "${ugid}" ]; then + get_group "${ugid}" + fi +} + +#---------------------------------------------------------------------------- +# Sanity-check the new user/group: +# - check the gid is not already used for another group +# - check the group does not already exist with another gid +# - check the user does not already exist with another gid +# - check the uid is not already used for another user +# - check the user does not already exist with another uid +# - check the user does not already exist in another group +check_user_validity() { + local username="${1}" + local uid="${2}" + local group="${3}" + local gid="${4}" + local _uid _ugid _gid _username _group _ugroup + + _group="$( get_group "${gid}" )" + _gid="$( get_gid "${group}" )" + _ugid="$( get_ugid "${username}" )" + _username="$( get_username "${uid}" )" + _uid="$( get_uid "${username}" )" + _ugroup="$( get_ugroup "${username}" )" + + if [ "${username}" = "root" ]; then + fail "invalid username '%s\n'" "${username}" + fi + + if [ ${gid} -lt -1 -o ${gid} -eq 0 ]; then + fail "invalid gid '%d' for '%s'\n" ${gid} "${username}" + elif [ ${gid} -ne -1 ]; then + # check the gid is not already used for another group + if [ -n "${_group}" -a "${_group}" != "${group}" ]; then + fail "gid '%d' for '%s' is already used by group '%s'\n" \ + ${gid} "${username}" "${_group}" + fi + + # check the group does not already exists with another gid + # Need to split the check in two, otherwise '[' complains it + # is missing arguments when _gid is empty + if [ -n "${_gid}" ] && [ ${_gid} -ne ${gid} ]; then + fail "group '%s' for '%s' already exists with gid '%d' (wants '%d')\n" \ + "${group}" "${username}" ${_gid} ${gid} + fi + + # check the user does not already exists with another gid + # Need to split the check in two, otherwise '[' complains it + # is missing arguments when _ugid is empty + if [ -n "${_ugid}" ] && [ ${_ugid} -ne ${gid} ]; then + fail "user '%s' already exists with gid '%d' (wants '%d')\n" \ + "${username}" ${_ugid} ${gid} + fi + fi + + if [ ${uid} -lt -1 -o ${uid} -eq 0 ]; then + fail "invalid uid '%d' for '%s'\n" ${uid} "${username}" + elif [ ${uid} -ne -1 ]; then + # check the uid is not already used for another user + if [ -n "${_username}" -a "${_username}" != "${username}" ]; then + fail "uid '%d' for '%s' already used by user '%s'\n" \ + ${uid} "${username}" "${_username}" + fi + + # check the user does not already exists with another uid + # Need to split the check in two, otherwise '[' complains it + # is missing arguments when _uid is empty + if [ -n "${_uid}" ] && [ ${_uid} -ne ${uid} ]; then + fail "user '%s' already exists with uid '%d' (wants '%d')\n" \ + "${username}" ${_uid} ${uid} + fi + fi + + # check the user does not already exist in another group + if [ -n "${_ugroup}" -a "${_ugroup}" != "${group}" ]; then + fail "user '%s' already exists with group '%s' (wants '%s')\n" \ + "${username}" "${_ugroup}" "${group}" + fi + + return 0 +} + +#---------------------------------------------------------------------------- +# Generate a unique GID for given group. If the group already exists, +# then simply report its current GID. Otherwise, generate the lowest GID +# that is: +# - not 0 +# - comprised in [MIN_GID..MAX_GID] +# - not already used by a group +generate_gid() { + local group="${1}" + local gid + + gid="$( get_gid "${group}" )" + if [ -z "${gid}" ]; then + for(( gid=MIN_GID; gid<=MAX_GID; gid++ )); do + if [ -z "$( get_group "${gid}" )" ]; then + break + fi + done + if [ ${gid} -gt ${MAX_GID} ]; then + fail "can not allocate a GID for group '%s'\n" "${group}" + fi + fi + printf "%d\n" "${gid}" +} + +#---------------------------------------------------------------------------- +# Add a group; if it does already exist, remove it first +add_one_group() { + local group="${1}" + local gid="${2}" + local members + + # Generate a new GID if needed + if [ ${gid} -eq -1 ]; then + gid="$( generate_gid "${group}" )" + fi + + members=$(get_members "$group") + # Remove any previous instance of this group, and re-add the new one + sed -i --follow-symlinks -e '/^'"${group}"':.*/d;' "${GROUP}" + printf "%s:x:%d:%s\n" "${group}" "${gid}" "${members}" >>"${GROUP}" + + # Ditto for /etc/gshadow if it exists + if [ -f "${GSHADOW}" ]; then + sed -i --follow-symlinks -e '/^'"${group}"':.*/d;' "${GSHADOW}" + printf "%s:*::\n" "${group}" >>"${GSHADOW}" + fi +} + +#---------------------------------------------------------------------------- +# Generate a unique UID for given username. If the username already exists, +# then simply report its current UID. Otherwise, generate the lowest UID +# that is: +# - not 0 +# - comprised in [MIN_UID..MAX_UID] +# - not already used by a user +generate_uid() { + local username="${1}" + local uid + + uid="$( get_uid "${username}" )" + if [ -z "${uid}" ]; then + for(( uid=MIN_UID; uid<=MAX_UID; uid++ )); do + if [ -z "$( get_username "${uid}" )" ]; then + break + fi + done + if [ ${uid} -gt ${MAX_UID} ]; then + fail "can not allocate a UID for user '%s'\n" "${username}" + fi + fi + printf "%d\n" "${uid}" +} + +#---------------------------------------------------------------------------- +# Add given user to given group, if not already the case +add_user_to_group() { + local username="${1}" + local group="${2}" + local _f + + for _f in "${GROUP}" "${GSHADOW}"; do + [ -f "${_f}" ] || continue + sed -r -i --follow-symlinks \ + -e 's/^('"${group}"':.*:)(([^:]+,)?)'"${username}"'(,[^:]+*)?$/\1\2\4/;' \ + -e 's/^('"${group}"':.*)$/\1,'"${username}"'/;' \ + -e 's/,+/,/' \ + -e 's/:,/:/' \ + "${_f}" + done +} + +#---------------------------------------------------------------------------- +# Encode a password +encode_password() { + local passwd="${1}" + + mkpasswd -m "${PASSWD_METHOD}" "${passwd}" +} + +#---------------------------------------------------------------------------- +# Add a user; if it does already exist, remove it first +add_one_user() { + local username="${1}" + local uid="${2}" + local group="${3}" + local gid="${4}" + local passwd="${5}" + local home="${6}" + local shell="${7}" + local groups="${8}" + local comment="${9}" + local _f _group _home _shell _gid _passwd + + # First, sanity-check the user + check_user_validity "${username}" "${uid}" "${group}" "${gid}" + + # Generate a new UID if needed + if [ ${uid} -eq -1 ]; then + uid="$( generate_uid "${username}" )" + fi + + # Remove any previous instance of this user + for _f in "${PASSWD}" "${SHADOW}"; do + sed -r -i --follow-symlinks -e '/^'"${username}"':.*/d;' "${_f}" + done + + _gid="$( get_gid "${group}" )" + _shell="${shell}" + if [ "${shell}" = "-" ]; then + _shell="/bin/false" + fi + case "${home}" in + -) _home="/";; + /) fail "home can not explicitly be '/'\n";; + /*) _home="${home}";; + *) fail "home must be an absolute path\n";; + esac + case "${passwd}" in + -) + _passwd="" + ;; + !=*) + _passwd='!'"$( encode_password "${passwd#!=}" )" + ;; + =*) + _passwd="$( encode_password "${passwd#=}" )" + ;; + *) + _passwd="${passwd}" + ;; + esac + + printf "%s:x:%d:%d:%s:%s:%s\n" \ + "${username}" "${uid}" "${_gid}" \ + "${comment}" "${_home}" "${_shell}" \ + >>"${PASSWD}" + printf "%s:%s:::::::\n" \ + "${username}" "${_passwd}" \ + >>"${SHADOW}" + + # Add the user to its additional groups + if [ "${groups}" != "-" ]; then + for _group in ${groups//,/ }; do + add_user_to_group "${username}" "${_group}" + done + fi + + # If the user has a home, chown it + # (Note: stdout goes to the fakeroot-script) + if [ "${home}" != "-" ]; then + mkdir -p "${TARGET_DIR}/${home}" + printf "chown -h -R %d:%d '%s'\n" "${uid}" "${_gid}" "${TARGET_DIR}/${home}" + fi +} + +#---------------------------------------------------------------------------- +main() { + local username uid group gid passwd home shell groups comment + local line + local -a ENTRIES + + # Some sanity checks + if [ ${MIN_UID} -le 0 ]; then + fail "MIN_UID must be >0 (currently %d)\n" ${MIN_UID} + fi + if [ ${MIN_GID} -le 0 ]; then + fail "MIN_GID must be >0 (currently %d)\n" ${MIN_GID} + fi + + # Read in all the file in memory, exclude empty lines and comments + while read line; do + ENTRIES+=( "${line}" ) + done < <( sed -r -e 's/#.*//; /^[[:space:]]*$/d;' "${USERS_TABLE}" ) + + # We first create groups whose gid is not -1, and then we create groups + # whose gid is -1 (automatic), so that, if a group is defined both with + # a specified gid and an automatic gid, we ensure the specified gid is + # used, rather than a different automatic gid is computed. + + # First, create all the main groups which gid is *not* automatic + for line in "${ENTRIES[@]}"; do + read username uid group gid passwd home shell groups comment <<<"${line}" + [ ${gid} -ge 0 ] || continue # Automatic gid + add_one_group "${group}" "${gid}" + done + + # Then, create all the main groups which gid *is* automatic + for line in "${ENTRIES[@]}"; do + read username uid group gid passwd home shell groups comment <<<"${line}" + [ ${gid} -eq -1 ] || continue # Non-automatic gid + add_one_group "${group}" "${gid}" + done + + # Then, create all the additional groups + # If any additional group is already a main group, we should use + # the gid of that main group; otherwise, we can use any gid + for line in "${ENTRIES[@]}"; do + read username uid group gid passwd home shell groups comment <<<"${line}" + if [ "${groups}" != "-" ]; then + for g in ${groups//,/ }; do + add_one_group "${g}" -1 + done + fi + done + + # When adding users, we do as for groups, in case two packages create + # the same user, one with an automatic uid, the other with a specified + # uid, to ensure the specified uid is used, rather than an incompatible + # uid be generated. + + # Now, add users whose uid is *not* automatic + for line in "${ENTRIES[@]}"; do + read username uid group gid passwd home shell groups comment <<<"${line}" + [ "${username}" != "-" ] || continue # Magic string to skip user creation + [ ${uid} -ge 0 ] || continue # Automatic uid + add_one_user "${username}" "${uid}" "${group}" "${gid}" "${passwd}" \ + "${home}" "${shell}" "${groups}" "${comment}" + done + + # Finally, add users whose uid *is* automatic + for line in "${ENTRIES[@]}"; do + read username uid group gid passwd home shell groups comment <<<"${line}" + [ "${username}" != "-" ] || continue # Magic string to skip user creation + [ ${uid} -eq -1 ] || continue # Non-automatic uid + add_one_user "${username}" "${uid}" "${group}" "${gid}" "${passwd}" \ + "${home}" "${shell}" "${groups}" "${comment}" + done +} + +#---------------------------------------------------------------------------- +main "${@}" diff --git a/support/scripts/pkg-stats b/support/scripts/pkg-stats new file mode 100755 index 00000000..44ed4448 --- /dev/null +++ b/support/scripts/pkg-stats @@ -0,0 +1,1132 @@ +#!/usr/bin/env python3 + +# Copyright (C) 2009 by Thomas Petazzoni +# +# 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 + +import aiohttp +import argparse +import asyncio +import datetime +import fnmatch +import os +from collections import defaultdict +import re +import subprocess +import json +import sys + +brpath = os.path.normpath(os.path.join(os.path.dirname(__file__), "..", "..")) + +sys.path.append(os.path.join(brpath, "utils")) +from getdeveloperlib import parse_developers # noqa: E402 +from cpedb import CPEDB # noqa: E402 + +INFRA_RE = re.compile(r"\$\(eval \$\(([a-z-]*)-package\)\)") +URL_RE = re.compile(r"\s*https?://\S*\s*$") + +RM_API_STATUS_ERROR = 1 +RM_API_STATUS_FOUND_BY_DISTRO = 2 +RM_API_STATUS_FOUND_BY_PATTERN = 3 +RM_API_STATUS_NOT_FOUND = 4 + + +class Defconfig: + def __init__(self, name, path): + self.name = name + self.path = path + self.developers = None + + def set_developers(self, developers): + """ + Fills in the .developers field + """ + self.developers = [ + developer.name + for developer in developers + if developer.hasfile(self.path) + ] + + +def get_defconfig_list(): + """ + Builds the list of Buildroot defconfigs, returning a list of Defconfig + objects. + """ + return [ + Defconfig(name[:-len('_defconfig')], os.path.join('configs', name)) + for name in os.listdir(os.path.join(brpath, 'configs')) + if name.endswith('_defconfig') + ] + + +class Package: + all_licenses = dict() + all_license_files = list() + all_versions = dict() + all_ignored_cves = dict() + all_cpeids = dict() + # This is the list of all possible checks. Add new checks to this list so + # a tool that post-processeds the json output knows the checks before + # iterating over the packages. + status_checks = ['cve', 'developers', 'hash', 'license', + 'license-files', 'patches', 'pkg-check', 'url', 'version'] + + def __init__(self, name, path): + self.name = name + self.path = path + self.pkg_path = os.path.dirname(path) + self.infras = None + self.license = None + self.has_license = False + self.has_license_files = False + self.has_hash = False + self.patch_files = [] + self.warnings = 0 + self.current_version = None + self.url = None + self.url_worker = None + self.cpeid = None + self.cves = list() + self.ignored_cves = list() + self.latest_version = {'status': RM_API_STATUS_ERROR, 'version': None, 'id': None} + self.status = {} + + def pkgvar(self): + return self.name.upper().replace("-", "_") + + def set_url(self): + """ + Fills in the .url field + """ + self.status['url'] = ("warning", "no Config.in") + pkgdir = os.path.dirname(os.path.join(brpath, self.path)) + for filename in os.listdir(pkgdir): + if fnmatch.fnmatch(filename, 'Config.*'): + fp = open(os.path.join(pkgdir, filename), "r") + for config_line in fp: + if URL_RE.match(config_line): + self.url = config_line.strip() + self.status['url'] = ("ok", "found") + fp.close() + return + self.status['url'] = ("error", "missing") + fp.close() + + @property + def patch_count(self): + return len(self.patch_files) + + @property + def has_valid_infra(self): + try: + if self.infras[0][1] == 'virtual': + return False + except IndexError: + return False + return True + + def set_infra(self): + """ + Fills in the .infras field + """ + self.infras = list() + with open(os.path.join(brpath, self.path), 'r') as f: + lines = f.readlines() + for line in lines: + match = INFRA_RE.match(line) + if not match: + continue + infra = match.group(1) + if infra.startswith("host-"): + self.infras.append(("host", infra[5:])) + else: + self.infras.append(("target", infra)) + + def set_license(self): + """ + Fills in the .status['license'] and .status['license-files'] fields + """ + if not self.has_valid_infra: + self.status['license'] = ("na", "no valid package infra") + self.status['license-files'] = ("na", "no valid package infra") + return + + var = self.pkgvar() + self.status['license'] = ("error", "missing") + self.status['license-files'] = ("error", "missing") + if var in self.all_licenses: + self.license = self.all_licenses[var] + self.status['license'] = ("ok", "found") + if var in self.all_license_files: + self.status['license-files'] = ("ok", "found") + + def set_hash_info(self): + """ + Fills in the .status['hash'] field + """ + if not self.has_valid_infra: + self.status['hash'] = ("na", "no valid package infra") + self.status['hash-license'] = ("na", "no valid package infra") + return + + hashpath = self.path.replace(".mk", ".hash") + if os.path.exists(os.path.join(brpath, hashpath)): + self.status['hash'] = ("ok", "found") + else: + self.status['hash'] = ("error", "missing") + + def set_patch_count(self): + """ + Fills in the .patch_count, .patch_files and .status['patches'] fields + """ + if not self.has_valid_infra: + self.status['patches'] = ("na", "no valid package infra") + return + + pkgdir = os.path.dirname(os.path.join(brpath, self.path)) + for subdir, _, _ in os.walk(pkgdir): + self.patch_files = fnmatch.filter(os.listdir(subdir), '*.patch') + + if self.patch_count == 0: + self.status['patches'] = ("ok", "no patches") + elif self.patch_count < 5: + self.status['patches'] = ("warning", "some patches") + else: + self.status['patches'] = ("error", "lots of patches") + + def set_current_version(self): + """ + Fills in the .current_version field + """ + var = self.pkgvar() + if var in self.all_versions: + self.current_version = self.all_versions[var] + + def set_cpeid(self): + """ + Fills in the .cpeid field + """ + var = self.pkgvar() + if not self.has_valid_infra: + self.status['cpe'] = ("na", "no valid package infra") + return + + if var in self.all_cpeids: + self.cpeid = self.all_cpeids[var] + # Set a preliminary status, it might be overridden by check_package_cpes() + self.status['cpe'] = ("warning", "not checked against CPE dictionnary") + else: + self.status['cpe'] = ("error", "no verified CPE identifier") + + def set_check_package_warnings(self): + """ + Fills in the .warnings and .status['pkg-check'] fields + """ + cmd = [os.path.join(brpath, "utils/check-package")] + pkgdir = os.path.dirname(os.path.join(brpath, self.path)) + self.status['pkg-check'] = ("error", "Missing") + for root, dirs, files in os.walk(pkgdir): + for f in files: + if f.endswith(".mk") or f.endswith(".hash") or f == "Config.in" or f == "Config.in.host": + cmd.append(os.path.join(root, f)) + o = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE).communicate()[1] + lines = o.splitlines() + for line in lines: + m = re.match("^([0-9]*) warnings generated", line.decode()) + if m: + self.warnings = int(m.group(1)) + if self.warnings == 0: + self.status['pkg-check'] = ("ok", "no warnings") + else: + self.status['pkg-check'] = ("error", "{} warnings".format(self.warnings)) + return + + def set_ignored_cves(self): + """ + Give the list of CVEs ignored by the package + """ + self.ignored_cves = list(self.all_ignored_cves.get(self.pkgvar(), [])) + + def set_developers(self, developers): + """ + Fills in the .developers and .status['developers'] field + """ + self.developers = [ + dev.name + for dev in developers + if dev.hasfile(self.path) + ] + + if self.developers: + self.status['developers'] = ("ok", "{} developers".format(len(self.developers))) + else: + self.status['developers'] = ("warning", "no developers") + + def is_status_ok(self, name): + return name in self.status and self.status[name][0] == 'ok' + + def is_status_error(self, name): + return name in self.status and self.status[name][0] == 'error' + + def is_status_na(self, name): + return name in self.status and self.status[name][0] == 'na' + + def __eq__(self, other): + return self.path == other.path + + def __lt__(self, other): + return self.path < other.path + + def __str__(self): + return "%s (path='%s', license='%s', license_files='%s', hash='%s', patches=%d)" % \ + (self.name, self.path, self.is_status_ok('license'), + self.is_status_ok('license-files'), self.status['hash'], self.patch_count) + + +def get_pkglist(npackages, package_list): + """ + Builds the list of Buildroot packages, returning a list of Package + objects. Only the .name and .path fields of the Package object are + initialized. + + npackages: limit to N packages + package_list: limit to those packages in this list + """ + WALK_USEFUL_SUBDIRS = ["boot", "linux", "package", "toolchain"] + WALK_EXCLUDES = ["boot/common.mk", + "linux/linux-ext-.*.mk", + "package/freescale-imx/freescale-imx.mk", + "package/gcc/gcc.mk", + "package/gstreamer/gstreamer.mk", + "package/gstreamer1/gstreamer1.mk", + "package/gtk2-themes/gtk2-themes.mk", + "package/matchbox/matchbox.mk", + "package/opengl/opengl.mk", + "package/qt5/qt5.mk", + "package/x11r7/x11r7.mk", + "package/doc-asciidoc.mk", + "package/pkg-.*.mk", + "toolchain/toolchain-external/pkg-toolchain-external.mk", + "toolchain/toolchain-external/toolchain-external.mk", + "toolchain/toolchain.mk", + "toolchain/helpers.mk", + "toolchain/toolchain-wrapper.mk"] + packages = list() + count = 0 + for root, dirs, files in os.walk(brpath): + root = os.path.relpath(root, brpath) + rootdir = root.split("/") + if len(rootdir) < 1: + continue + if rootdir[0] not in WALK_USEFUL_SUBDIRS: + continue + for f in files: + if not f.endswith(".mk"): + continue + # Strip ending ".mk" + pkgname = f[:-3] + if package_list and pkgname not in package_list: + continue + pkgpath = os.path.join(root, f) + skip = False + for exclude in WALK_EXCLUDES: + if re.match(exclude, pkgpath): + skip = True + continue + if skip: + continue + p = Package(pkgname, pkgpath) + packages.append(p) + count += 1 + if npackages and count == npackages: + return packages + return packages + + +def get_config_packages(): + cmd = ["make", "--no-print-directory", "show-info"] + js = json.loads(subprocess.check_output(cmd)) + return set([v["name"] for v in js.values()]) + + +def package_init_make_info(): + # Fetch all variables at once + variables = subprocess.check_output(["make", "BR2_HAVE_DOT_CONFIG=y", "-s", "printvars", + "VARS=%_LICENSE %_LICENSE_FILES %_VERSION %_IGNORE_CVES %_CPE_ID"]) + variable_list = variables.decode().splitlines() + + # We process first the host package VERSION, and then the target + # package VERSION. This means that if a package exists in both + # target and host variants, with different values (eg. version + # numbers (unlikely)), we'll report the target one. + variable_list = [x[5:] for x in variable_list if x.startswith("HOST_")] + \ + [x for x in variable_list if not x.startswith("HOST_")] + + for item in variable_list: + # Get variable name and value + pkgvar, value = item.split("=") + + # Strip the suffix according to the variable + if pkgvar.endswith("_LICENSE"): + # If value is "unknown", no license details available + if value == "unknown": + continue + pkgvar = pkgvar[:-8] + Package.all_licenses[pkgvar] = value + + elif pkgvar.endswith("_LICENSE_FILES"): + if pkgvar.endswith("_MANIFEST_LICENSE_FILES"): + continue + pkgvar = pkgvar[:-14] + Package.all_license_files.append(pkgvar) + + elif pkgvar.endswith("_VERSION"): + if pkgvar.endswith("_DL_VERSION"): + continue + pkgvar = pkgvar[:-8] + Package.all_versions[pkgvar] = value + + elif pkgvar.endswith("_IGNORE_CVES"): + pkgvar = pkgvar[:-12] + Package.all_ignored_cves[pkgvar] = value.split() + + elif pkgvar.endswith("_CPE_ID"): + pkgvar = pkgvar[:-7] + Package.all_cpeids[pkgvar] = value + + +check_url_count = 0 + + +async def check_url_status(session, pkg, npkgs, retry=True): + global check_url_count + + try: + async with session.get(pkg.url) as resp: + if resp.status >= 400: + pkg.status['url'] = ("error", "invalid {}".format(resp.status)) + check_url_count += 1 + print("[%04d/%04d] %s" % (check_url_count, npkgs, pkg.name)) + return + except (aiohttp.ClientError, asyncio.TimeoutError): + if retry: + return await check_url_status(session, pkg, npkgs, retry=False) + else: + pkg.status['url'] = ("error", "invalid (err)") + check_url_count += 1 + print("[%04d/%04d] %s" % (check_url_count, npkgs, pkg.name)) + return + + pkg.status['url'] = ("ok", "valid") + check_url_count += 1 + print("[%04d/%04d] %s" % (check_url_count, npkgs, pkg.name)) + + +async def check_package_urls(packages): + tasks = [] + connector = aiohttp.TCPConnector(limit_per_host=5) + async with aiohttp.ClientSession(connector=connector, trust_env=True) as sess: + packages = [p for p in packages if p.status['url'][0] == 'ok'] + for pkg in packages: + tasks.append(asyncio.ensure_future(check_url_status(sess, pkg, len(packages)))) + await asyncio.wait(tasks) + + +def check_package_latest_version_set_status(pkg, status, version, identifier): + pkg.latest_version = { + "status": status, + "version": version, + "id": identifier, + } + + if pkg.latest_version['status'] == RM_API_STATUS_ERROR: + pkg.status['version'] = ('warning', "Release Monitoring API error") + elif pkg.latest_version['status'] == RM_API_STATUS_NOT_FOUND: + pkg.status['version'] = ('warning', "Package not found on Release Monitoring") + + if pkg.latest_version['version'] is None: + pkg.status['version'] = ('warning', "No upstream version available on Release Monitoring") + elif pkg.latest_version['version'] != pkg.current_version: + pkg.status['version'] = ('error', "The newer version {} is available upstream".format(pkg.latest_version['version'])) + else: + pkg.status['version'] = ('ok', 'up-to-date') + + +async def check_package_get_latest_version_by_distro(session, pkg, retry=True): + url = "https://release-monitoring.org//api/project/Buildroot/%s" % pkg.name + try: + async with session.get(url) as resp: + if resp.status != 200: + return False + + data = await resp.json() + version = data['version'] if 'version' in data else None + check_package_latest_version_set_status(pkg, + RM_API_STATUS_FOUND_BY_DISTRO, + version, + data['id']) + return True + + except (aiohttp.ClientError, asyncio.TimeoutError): + if retry: + return await check_package_get_latest_version_by_distro(session, pkg, retry=False) + else: + return False + + +async def check_package_get_latest_version_by_guess(session, pkg, retry=True): + url = "https://release-monitoring.org/api/projects/?pattern=%s" % pkg.name + try: + async with session.get(url) as resp: + if resp.status != 200: + return False + + data = await resp.json() + # filter projects that have the right name and a version defined + projects = [p for p in data['projects'] if p['name'] == pkg.name and 'version' in p] + projects.sort(key=lambda x: x['id']) + + if len(projects) > 0: + check_package_latest_version_set_status(pkg, + RM_API_STATUS_FOUND_BY_DISTRO, + projects[0]['version'], + projects[0]['id']) + return True + + except (aiohttp.ClientError, asyncio.TimeoutError): + if retry: + return await check_package_get_latest_version_by_guess(session, pkg, retry=False) + else: + return False + + +check_latest_count = 0 + + +async def check_package_latest_version_get(session, pkg, npkgs): + global check_latest_count + + if await check_package_get_latest_version_by_distro(session, pkg): + check_latest_count += 1 + print("[%04d/%04d] %s" % (check_latest_count, npkgs, pkg.name)) + return + + if await check_package_get_latest_version_by_guess(session, pkg): + check_latest_count += 1 + print("[%04d/%04d] %s" % (check_latest_count, npkgs, pkg.name)) + return + + check_package_latest_version_set_status(pkg, + RM_API_STATUS_NOT_FOUND, + None, None) + check_latest_count += 1 + print("[%04d/%04d] %s" % (check_latest_count, npkgs, pkg.name)) + + +async def check_package_latest_version(packages): + """ + Fills in the .latest_version field of all Package objects + + This field is a dict and has the following keys: + + - status: one of RM_API_STATUS_ERROR, + RM_API_STATUS_FOUND_BY_DISTRO, RM_API_STATUS_FOUND_BY_PATTERN, + RM_API_STATUS_NOT_FOUND + - version: string containing the latest version known by + release-monitoring.org for this package + - id: string containing the id of the project corresponding to this + package, as known by release-monitoring.org + """ + + for pkg in [p for p in packages if not p.has_valid_infra]: + pkg.status['version'] = ("na", "no valid package infra") + + tasks = [] + connector = aiohttp.TCPConnector(limit_per_host=5) + async with aiohttp.ClientSession(connector=connector, trust_env=True) as sess: + packages = [p for p in packages if p.has_valid_infra] + for pkg in packages: + tasks.append(asyncio.ensure_future(check_package_latest_version_get(sess, pkg, len(packages)))) + await asyncio.wait(tasks) + + +def check_package_cve_affects(cve, cpe_product_pkgs): + for product in cve.affected_products: + if product not in cpe_product_pkgs: + continue + for pkg in cpe_product_pkgs[product]: + if cve.affects(pkg.name, pkg.current_version, pkg.ignored_cves, pkg.cpeid) == cve.CVE_AFFECTS: + pkg.cves.append(cve.identifier) + + +def check_package_cves(nvd_path, packages): + if not os.path.isdir(nvd_path): + os.makedirs(nvd_path) + + cpe_product_pkgs = defaultdict(list) + for pkg in packages: + if not pkg.has_valid_infra: + pkg.status['cve'] = ("na", "no valid package infra") + continue + if not pkg.current_version: + pkg.status['cve'] = ("na", "no version information available") + continue + if pkg.cpeid: + cpe_product = cvecheck.cpe_product(pkg.cpeid) + cpe_product_pkgs[cpe_product].append(pkg) + else: + cpe_product_pkgs[pkg.name].append(pkg) + + for cve in cvecheck.CVE.read_nvd_dir(nvd_path): + check_package_cve_affects(cve, cpe_product_pkgs) + + for pkg in packages: + if 'cve' not in pkg.status: + if pkg.cves: + pkg.status['cve'] = ("error", "affected by CVEs") + else: + pkg.status['cve'] = ("ok", "not affected by CVEs") + + +def check_package_cpes(nvd_path, packages): + cpedb = CPEDB(nvd_path) + cpedb.get_xml_dict() + for p in packages: + if not p.cpeid: + continue + if cpedb.find(p.cpeid): + p.status['cpe'] = ("ok", "verified CPE identifier") + else: + p.status['cpe'] = ("error", "CPE identifier unknown in CPE database") + + +def calculate_stats(packages): + stats = defaultdict(int) + stats['packages'] = len(packages) + for pkg in packages: + # If packages have multiple infra, take the first one. For the + # vast majority of packages, the target and host infra are the + # same. There are very few packages that use a different infra + # for the host and target variants. + if len(pkg.infras) > 0: + infra = pkg.infras[0][1] + stats["infra-%s" % infra] += 1 + else: + stats["infra-unknown"] += 1 + if pkg.is_status_ok('license'): + stats["license"] += 1 + else: + stats["no-license"] += 1 + if pkg.is_status_ok('license-files'): + stats["license-files"] += 1 + else: + stats["no-license-files"] += 1 + if pkg.is_status_ok('hash'): + stats["hash"] += 1 + else: + stats["no-hash"] += 1 + if pkg.latest_version['status'] == RM_API_STATUS_FOUND_BY_DISTRO: + stats["rmo-mapping"] += 1 + else: + stats["rmo-no-mapping"] += 1 + if not pkg.latest_version['version']: + stats["version-unknown"] += 1 + elif pkg.latest_version['version'] == pkg.current_version: + stats["version-uptodate"] += 1 + else: + stats["version-not-uptodate"] += 1 + stats["patches"] += pkg.patch_count + stats["total-cves"] += len(pkg.cves) + if len(pkg.cves) != 0: + stats["pkg-cves"] += 1 + if pkg.cpeid: + stats["cpe-id"] += 1 + else: + stats["no-cpe-id"] += 1 + return stats + + +html_header = """ + + + +Statistics of Buildroot packages + + +Results
    + +

    +""" + + +html_footer = """ + + + +""" + + +def infra_str(infra_list): + if not infra_list: + return "Unknown" + elif len(infra_list) == 1: + return "%s
    %s" % (infra_list[0][1], infra_list[0][0]) + elif infra_list[0][1] == infra_list[1][1]: + return "%s
    %s + %s" % \ + (infra_list[0][1], infra_list[0][0], infra_list[1][0]) + else: + return "%s (%s)
    %s (%s)" % \ + (infra_list[0][1], infra_list[0][0], + infra_list[1][1], infra_list[1][0]) + + +def boolean_str(b): + if b: + return "Yes" + else: + return "No" + + +def dump_html_pkg(f, pkg): + f.write(" \n") + f.write(" %s\n" % pkg.path) + + # Patch count + td_class = ["centered"] + if pkg.patch_count == 0: + td_class.append("nopatches") + elif pkg.patch_count < 5: + td_class.append("somepatches") + else: + td_class.append("lotsofpatches") + f.write(" %s\n" % + (" ".join(td_class), str(pkg.patch_count))) + + # Infrastructure + infra = infra_str(pkg.infras) + td_class = ["centered"] + if infra == "Unknown": + td_class.append("wrong") + else: + td_class.append("correct") + f.write(" %s\n" % + (" ".join(td_class), infra_str(pkg.infras))) + + # License + td_class = ["centered"] + if pkg.is_status_ok('license'): + td_class.append("correct") + else: + td_class.append("wrong") + f.write(" %s\n" % + (" ".join(td_class), boolean_str(pkg.is_status_ok('license')))) + + # License files + td_class = ["centered"] + if pkg.is_status_ok('license-files'): + td_class.append("correct") + else: + td_class.append("wrong") + f.write(" %s\n" % + (" ".join(td_class), boolean_str(pkg.is_status_ok('license-files')))) + + # Hash + td_class = ["centered"] + if pkg.is_status_ok('hash'): + td_class.append("correct") + else: + td_class.append("wrong") + f.write(" %s\n" % + (" ".join(td_class), boolean_str(pkg.is_status_ok('hash')))) + + # Current version + if len(pkg.current_version) > 20: + current_version = pkg.current_version[:20] + "..." + else: + current_version = pkg.current_version + f.write(" %s\n" % current_version) + + # Latest version + if pkg.latest_version['status'] == RM_API_STATUS_ERROR: + td_class.append("version-error") + if pkg.latest_version['version'] is None: + td_class.append("version-unknown") + elif pkg.latest_version['version'] != pkg.current_version: + td_class.append("version-needs-update") + else: + td_class.append("version-good") + + if pkg.latest_version['status'] == RM_API_STATUS_ERROR: + latest_version_text = "Error" + elif pkg.latest_version['status'] == RM_API_STATUS_NOT_FOUND: + latest_version_text = "Not found" + else: + if pkg.latest_version['version'] is None: + latest_version_text = "Found, but no version" + else: + latest_version_text = "%s" % \ + (pkg.latest_version['id'], str(pkg.latest_version['version'])) + + latest_version_text += "
    " + + if pkg.latest_version['status'] == RM_API_STATUS_FOUND_BY_DISTRO: + latest_version_text += "found by distro" + else: + latest_version_text += "found by guess" + + f.write(" %s\n" % + (" ".join(td_class), latest_version_text)) + + # Warnings + td_class = ["centered"] + if pkg.warnings == 0: + td_class.append("correct") + else: + td_class.append("wrong") + f.write(" %d\n" % + (" ".join(td_class), pkg.warnings)) + + # URL status + td_class = ["centered"] + url_str = pkg.status['url'][1] + if pkg.status['url'][0] in ("error", "warning"): + td_class.append("missing_url") + if pkg.status['url'][0] == "error": + td_class.append("invalid_url") + url_str = "%s" % (pkg.url, pkg.status['url'][1]) + else: + td_class.append("good_url") + url_str = "Link" % pkg.url + f.write(" %s\n" % + (" ".join(td_class), url_str)) + + # CVEs + td_class = ["centered"] + if pkg.is_status_ok("cve"): + td_class.append("cve-ok") + elif pkg.is_status_error("cve"): + td_class.append("cve-nok") + else: + td_class.append("cve-unknown") + f.write(" \n" % " ".join(td_class)) + if pkg.is_status_error("cve"): + for cve in pkg.cves: + f.write(" %s
    \n" % (cve, cve)) + elif pkg.is_status_na("cve"): + f.write(" %s" % pkg.status['cve'][1]) + else: + f.write(" N/A\n") + f.write(" \n") + + # CPE ID + td_class = ["left"] + if pkg.is_status_ok("cpe"): + td_class.append("cpe-ok") + elif pkg.is_status_error("cpe"): + td_class.append("cpe-nok") + else: + td_class.append("cpe-unknown") + f.write(" \n" % " ".join(td_class)) + if pkg.cpeid: + f.write(" %s\n" % pkg.cpeid) + if not pkg.is_status_ok("cpe"): + f.write(" %s%s\n" % ("
    " if pkg.cpeid else "", pkg.status['cpe'][1])) + f.write(" \n") + + f.write(" \n") + + +def dump_html_all_pkgs(f, packages): + f.write(""" + + + + + + + + + + + + + + + +""") + for pkg in sorted(packages): + dump_html_pkg(f, pkg) + f.write("
    PackagePatch countInfrastructureLicenseLicense filesHash fileCurrent versionLatest versionWarningsUpstream URLCVEsCPE ID
    ") + + +def dump_html_stats(f, stats): + f.write("
    \n") + f.write("\n") + infras = [infra[6:] for infra in stats.keys() if infra.startswith("infra-")] + for infra in infras: + f.write(" \n" % + (infra, stats["infra-%s" % infra])) + f.write(" \n" % + stats["license"]) + f.write(" \n" % + stats["no-license"]) + f.write(" \n" % + stats["license-files"]) + f.write(" \n" % + stats["no-license-files"]) + f.write(" \n" % + stats["hash"]) + f.write(" \n" % + stats["no-hash"]) + f.write(" \n" % + stats["patches"]) + f.write("\n" % + stats["rmo-mapping"]) + f.write("\n" % + stats["rmo-no-mapping"]) + f.write("\n" % + stats["version-uptodate"]) + f.write("\n" % + stats["version-not-uptodate"]) + f.write("\n" % + stats["version-unknown"]) + f.write("\n" % + stats["pkg-cves"]) + f.write("\n" % + stats["total-cves"]) + f.write("\n" % + stats["cpe-id"]) + f.write("\n" % + stats["no-cpe-id"]) + f.write("
    Packages using the %s infrastructure%s
    Packages having license information%s
    Packages not having license information%s
    Packages having license files information%s
    Packages not having license files information%s
    Packages having a hash file%s
    Packages not having a hash file%s
    Total number of patches%s
    Packages having a mapping on release-monitoring.org%s
    Packages lacking a mapping on release-monitoring.org%s
    Packages that are up-to-date%s
    Packages that are not up-to-date%s
    Packages with no known upstream version%s
    Packages affected by CVEs%s
    Total number of CVEs affecting all packages%s
    Packages with CPE ID%s
    Packages without CPE ID%s
    \n") + + +def dump_html_gen_info(f, date, commit): + # Updated on Mon Feb 19 08:12:08 CET 2018, Git commit aa77030b8f5e41f1c53eb1c1ad664b8c814ba032 + f.write("

    Updated on %s, git commit %s

    \n" % (str(date), commit)) + + +def dump_html(packages, stats, date, commit, output): + with open(output, 'w') as f: + f.write(html_header) + dump_html_all_pkgs(f, packages) + dump_html_stats(f, stats) + dump_html_gen_info(f, date, commit) + f.write(html_footer) + + +def dump_json(packages, defconfigs, stats, date, commit, output): + # Format packages as a dictionnary instead of a list + # Exclude local field that does not contains real date + excluded_fields = ['url_worker', 'name'] + pkgs = { + pkg.name: { + k: v + for k, v in pkg.__dict__.items() + if k not in excluded_fields + } for pkg in packages + } + defconfigs = { + d.name: { + k: v + for k, v in d.__dict__.items() + } for d in defconfigs + } + # Aggregate infrastructures into a single dict entry + statistics = { + k: v + for k, v in stats.items() + if not k.startswith('infra-') + } + statistics['infra'] = {k[6:]: v for k, v in stats.items() if k.startswith('infra-')} + # The actual structure to dump, add commit and date to it + final = {'packages': pkgs, + 'stats': statistics, + 'defconfigs': defconfigs, + 'package_status_checks': Package.status_checks, + 'commit': commit, + 'date': str(date)} + + with open(output, 'w') as f: + json.dump(final, f, indent=2, separators=(',', ': ')) + f.write('\n') + + +def resolvepath(path): + return os.path.abspath(os.path.expanduser(path)) + + +def parse_args(): + parser = argparse.ArgumentParser() + output = parser.add_argument_group('output', 'Output file(s)') + output.add_argument('--html', dest='html', type=resolvepath, + help='HTML output file') + output.add_argument('--json', dest='json', type=resolvepath, + help='JSON output file') + packages = parser.add_mutually_exclusive_group() + packages.add_argument('-c', dest='configpackages', action='store_true', + help='Apply to packages enabled in current configuration') + packages.add_argument('-n', dest='npackages', type=int, action='store', + help='Number of packages') + packages.add_argument('-p', dest='packages', action='store', + help='List of packages (comma separated)') + parser.add_argument('--nvd-path', dest='nvd_path', + help='Path to the local NVD database', type=resolvepath) + args = parser.parse_args() + if not args.html and not args.json: + parser.error('at least one of --html or --json (or both) is required') + return args + + +def __main__(): + global cvecheck + + args = parse_args() + + if args.nvd_path: + import cve as cvecheck + + if args.packages: + package_list = args.packages.split(",") + elif args.configpackages: + package_list = get_config_packages() + else: + package_list = None + date = datetime.datetime.utcnow() + commit = subprocess.check_output(['git', '-C', brpath, + 'rev-parse', + 'HEAD']).splitlines()[0].decode() + print("Build package list ...") + packages = get_pkglist(args.npackages, package_list) + print("Getting developers ...") + developers = parse_developers() + print("Build defconfig list ...") + defconfigs = get_defconfig_list() + for d in defconfigs: + d.set_developers(developers) + print("Getting package make info ...") + package_init_make_info() + print("Getting package details ...") + for pkg in packages: + pkg.set_infra() + pkg.set_license() + pkg.set_hash_info() + pkg.set_patch_count() + pkg.set_check_package_warnings() + pkg.set_current_version() + pkg.set_cpeid() + pkg.set_url() + pkg.set_ignored_cves() + pkg.set_developers(developers) + print("Checking URL status") + loop = asyncio.get_event_loop() + loop.run_until_complete(check_package_urls(packages)) + print("Getting latest versions ...") + loop = asyncio.get_event_loop() + loop.run_until_complete(check_package_latest_version(packages)) + if args.nvd_path: + print("Checking packages CVEs") + check_package_cves(args.nvd_path, packages) + check_package_cpes(args.nvd_path, packages) + print("Calculate stats") + stats = calculate_stats(packages) + if args.html: + print("Write HTML") + dump_html(packages, stats, date, commit, args.html) + if args.json: + print("Write JSON") + dump_json(packages, defconfigs, stats, date, commit, args.json) + + +__main__() diff --git a/support/scripts/pycompile.py b/support/scripts/pycompile.py new file mode 100644 index 00000000..b8cd3cee --- /dev/null +++ b/support/scripts/pycompile.py @@ -0,0 +1,93 @@ +#!/usr/bin/env python + +""" +Byte compile all .py files from provided directories. This script is an +alternative implementation of compileall.compile_dir written with +cross-compilation in mind. +""" + +from __future__ import print_function + +import argparse +import os +import py_compile +import re +import sys + + +def compile_one(host_path, strip_root=None, verbose=False): + """ + Compile a .py file into a .pyc file located next to it. + + :arg host_path: + Absolute path to the file to compile on the host running the build. + :arg strip_root: + Prefix to remove from the original source paths encoded in compiled + files. + :arg verbose: + Print compiled file paths. + """ + if os.path.islink(host_path) or not os.path.isfile(host_path): + return # only compile real files + + if not re.match(r"^[_A-Za-z][_A-Za-z0-9]*\.py$", + os.path.basename(host_path)): + return # only compile "importable" python modules + + if strip_root is not None: + # determine the runtime path of the file (i.e.: relative path to root + # dir prepended with "/"). + runtime_path = os.path.join("/", os.path.relpath(host_path, strip_root)) + else: + runtime_path = host_path + + if verbose: + print(" PYC {}".format(runtime_path)) + + # will raise an error if the file cannot be compiled + py_compile.compile(host_path, cfile=host_path + "c", + dfile=runtime_path, doraise=True) + + +def existing_dir_abs(arg): + """ + argparse type callback that checks that argument is a directory and returns + its absolute path. + """ + if not os.path.isdir(arg): + raise argparse.ArgumentTypeError('no such directory: {!r}'.format(arg)) + return os.path.abspath(arg) + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument("dirs", metavar="DIR", nargs="+", type=existing_dir_abs, + help="Directory to recursively scan and compile") + parser.add_argument("--strip-root", metavar="ROOT", type=existing_dir_abs, + help=""" + Prefix to remove from the original source paths encoded + in compiled files + """) + parser.add_argument("--verbose", action="store_true", + help="Print compiled files") + + args = parser.parse_args() + + try: + for d in args.dirs: + if args.strip_root and ".." in os.path.relpath(d, args.strip_root): + parser.error("DIR: not inside ROOT dir: {!r}".format(d)) + for parent, _, files in os.walk(d): + for f in files: + compile_one(os.path.join(parent, f), args.strip_root, + args.verbose) + + except Exception as e: + print("error: {}".format(e)) + return 1 + + return 0 + + +if __name__ == "__main__": + sys.exit(main()) diff --git a/support/scripts/setlocalversion b/support/scripts/setlocalversion new file mode 100755 index 00000000..d492f2db --- /dev/null +++ b/support/scripts/setlocalversion @@ -0,0 +1,93 @@ +#!/bin/sh +# +# This scripts adds local version information from the version +# control systems git, mercurial (hg) and subversion (svn). +# +# If something goes wrong, send a mail the kernel build mailinglist +# (see MAINTAINERS) and CC Nico Schottelius +# . +# +# + +usage() { + echo "Usage: $0 [srctree]" >&2 + exit 1 +} + +cd "${1:-.}" || usage + +# Check for git and a git repo. +if head=`git rev-parse --verify --short HEAD 2>/dev/null`; then + + atag="`git describe 2>/dev/null`" + + # Show -g if we have no tag, or just the tag + # otherwise. + if [ -z "${atag}" ] ; then + printf "%s%s" -g ${head} + else + printf ${atag} + fi + + # Is this git on svn? + if git config --get svn-remote.svn.url >/dev/null; then + printf -- '-svn%s' "`git svn find-rev $head`" + fi + + # Update index only on r/w media + [ -w . ] && git update-index --refresh --unmerged > /dev/null + + # Check for uncommitted changes + if git diff-index --name-only HEAD | grep -v "^scripts/package" \ + | read dummy; then + printf '%s' -dirty + fi + + # All done with git + exit +fi + +# Check for mercurial and a mercurial repo. +# In the git case, 'git describe' will show the latest tag, and unless we are +# exactly on that tag, the number of commits since then, and last commit id. +# Mimic something similar in the Mercurial case. +if hgid=`HGRCPATH= hg id --id --tags 2>/dev/null`; then + tag=`printf '%s' "$hgid" | cut -d' ' -f2 --only-delimited` + + # Do we have an untagged version? + if [ -z "$tag" -o "$tag" = tip ]; then + # current revision is not tagged, determine latest tag + latesttag=`HGRCPATH= hg log -r. -T '{latesttag}' 2>/dev/null` + # In case there is more than one tag on the latest tagged commit, + # 'latesttag' will separate them by colon (:). We'll retain this. + # In case there is no tag at all, 'null' will be returned. + if [ "$latesttag" = "null" ]; then + latesttag='' + fi + + # add the commit id + id=`printf '%s' "$hgid" | sed 's/[+ ].*//'` + printf '%s%s%s' "${latesttag}" -hg "$id" + else + # current revision is tagged, just print the tag + printf ${tag} + fi + + # Are there uncommitted changes? + # These are represented by + after the changeset id. + case "$hgid" in + *+|*+\ *) printf '%s' -dirty ;; + esac + + # All done with mercurial + exit +fi + +# Check for svn and a svn repo. +if rev=`LC_ALL=C svn info 2>/dev/null | grep '^Last Changed Rev'`; then + rev=`echo $rev | awk '{print $NF}'` + printf -- '-svn%s' "$rev" + + # All done with svn + exit +fi diff --git a/support/scripts/size-stats b/support/scripts/size-stats new file mode 100755 index 00000000..dea3a600 --- /dev/null +++ b/support/scripts/size-stats @@ -0,0 +1,308 @@ +#!/usr/bin/env python + +# Copyright (C) 2014 by Thomas Petazzoni + +# 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 + +import sys +import os +import os.path +import argparse +import csv +import collections +import math + +try: + import matplotlib + matplotlib.use('Agg') + import matplotlib.font_manager as fm + import matplotlib.pyplot as plt +except ImportError: + sys.stderr.write("You need python-matplotlib to generate the size graph\n") + exit(1) + + +class Config: + biggest_first = False + iec = False + size_limit = 0.01 + colors = ['#e60004', '#f28e00', '#ffed00', '#940084', + '#2e1d86', '#0068b5', '#009836', '#97c000'] + + +# +# This function adds a new file to 'filesdict', after checking its +# size. The 'filesdict' contain the relative path of the file as the +# key, and as the value a tuple containing the name of the package to +# which the file belongs and the size of the file. +# +# filesdict: the dict to which the file is added +# relpath: relative path of the file +# fullpath: absolute path to the file +# pkg: package to which the file belongs +# +def add_file(filesdict, relpath, abspath, pkg): + if not os.path.exists(abspath): + return + if os.path.islink(abspath): + return + sz = os.stat(abspath).st_size + filesdict[relpath] = (pkg, sz) + + +# +# This function returns a dict where each key is the path of a file in +# the root filesystem, and the value is a tuple containing two +# elements: the name of the package to which this file belongs and the +# size of the file. +# +# builddir: path to the Buildroot output directory +# +def build_package_dict(builddir): + filesdict = {} + with open(os.path.join(builddir, "build", "packages-file-list.txt")) as f: + for l in f.readlines(): + pkg, fpath = l.split(",", 1) + # remove the initial './' in each file path + fpath = fpath.strip()[2:] + fullpath = os.path.join(builddir, "target", fpath) + add_file(filesdict, fpath, fullpath, pkg) + return filesdict + + +# +# This function builds a dictionary that contains the name of a +# package as key, and the size of the files installed by this package +# as the value. +# +# filesdict: dictionary with the name of the files as key, and as +# value a tuple containing the name of the package to which the files +# belongs, and the size of the file. As returned by +# build_package_dict. +# +# builddir: path to the Buildroot output directory +# +def build_package_size(filesdict, builddir): + pkgsize = collections.defaultdict(int) + + seeninodes = set() + for root, _, files in os.walk(os.path.join(builddir, "target")): + for f in files: + fpath = os.path.join(root, f) + if os.path.islink(fpath): + continue + + st = os.stat(fpath) + if st.st_ino in seeninodes: + # hard link + continue + else: + seeninodes.add(st.st_ino) + + frelpath = os.path.relpath(fpath, os.path.join(builddir, "target")) + if frelpath not in filesdict: + print("WARNING: %s is not part of any package" % frelpath) + pkg = "unknown" + else: + pkg = filesdict[frelpath][0] + + pkgsize[pkg] += st.st_size + + return pkgsize + + +# +# Given a dict returned by build_package_size(), this function +# generates a pie chart of the size installed by each package. +# +# pkgsize: dictionary with the name of the package as a key, and the +# size as the value, as returned by build_package_size. +# +# outputf: output file for the graph +# +def draw_graph(pkgsize, outputf): + def size2string(sz): + if Config.iec: + divider = 1024.0 + prefixes = ['', 'Ki', 'Mi', 'Gi', 'Ti'] + else: + divider = 1000.0 + prefixes = ['', 'k', 'M', 'G', 'T'] + while sz > divider and len(prefixes) > 1: + prefixes = prefixes[1:] + sz = sz/divider + # precision is made so that there are always at least three meaningful + # digits displayed (e.g. '3.14' and '10.4', not just '3' and '10') + precision = int(2-math.floor(math.log10(sz))) if sz < 1000 else 0 + return '{:.{prec}f} {}B'.format(sz, prefixes[0], prec=precision) + + total = sum(pkgsize.values()) + labels = [] + values = [] + other_value = 0 + unknown_value = 0 + for (p, sz) in sorted(pkgsize.items(), key=lambda x: x[1], + reverse=Config.biggest_first): + if sz < (total * Config.size_limit): + other_value += sz + elif p == "unknown": + unknown_value = sz + else: + labels.append("%s (%s)" % (p, size2string(sz))) + values.append(sz) + if unknown_value != 0: + labels.append("Unknown (%s)" % (size2string(unknown_value))) + values.append(unknown_value) + if other_value != 0: + labels.append("Other (%s)" % (size2string(other_value))) + values.append(other_value) + + plt.figure() + patches, texts, autotexts = plt.pie(values, labels=labels, + autopct='%1.1f%%', shadow=True, + colors=Config.colors) + # Reduce text size + proptease = fm.FontProperties() + proptease.set_size('xx-small') + plt.setp(autotexts, fontproperties=proptease) + plt.setp(texts, fontproperties=proptease) + + plt.suptitle("Filesystem size per package", fontsize=18, y=.97) + plt.title("Total filesystem size: %s" % (size2string(total)), fontsize=10, + y=.96) + plt.savefig(outputf) + + +# +# Generate a CSV file with statistics about the size of each file, its +# size contribution to the package and to the overall system. +# +# filesdict: dictionary with the name of the files as key, and as +# value a tuple containing the name of the package to which the files +# belongs, and the size of the file. As returned by +# build_package_dict. +# +# pkgsize: dictionary with the name of the package as a key, and the +# size as the value, as returned by build_package_size. +# +# outputf: output CSV file +# +def gen_files_csv(filesdict, pkgsizes, outputf): + total = 0 + for (p, sz) in pkgsizes.items(): + total += sz + with open(outputf, 'w') as csvfile: + wr = csv.writer(csvfile, delimiter=',', quoting=csv.QUOTE_MINIMAL) + wr.writerow(["File name", + "Package name", + "File size", + "Package size", + "File size in package (%)", + "File size in system (%)"]) + for f, (pkgname, filesize) in filesdict.items(): + pkgsize = pkgsizes[pkgname] + + if pkgsize == 0: + percent_pkg = 0 + else: + percent_pkg = float(filesize) / pkgsize * 100 + + percent_total = float(filesize) / total * 100 + + wr.writerow([f, pkgname, filesize, pkgsize, + "%.1f" % percent_pkg, + "%.1f" % percent_total]) + + +# +# Generate a CSV file with statistics about the size of each package, +# and their size contribution to the overall system. +# +# pkgsize: dictionary with the name of the package as a key, and the +# size as the value, as returned by build_package_size. +# +# outputf: output CSV file +# +def gen_packages_csv(pkgsizes, outputf): + total = sum(pkgsizes.values()) + with open(outputf, 'w') as csvfile: + wr = csv.writer(csvfile, delimiter=',', quoting=csv.QUOTE_MINIMAL) + wr.writerow(["Package name", "Package size", + "Package size in system (%)"]) + for (pkg, size) in pkgsizes.items(): + wr.writerow([pkg, size, "%.1f" % (float(size) / total * 100)]) + + +# +# Our special action for --iec, --binary, --si, --decimal +# +class PrefixAction(argparse.Action): + def __init__(self, option_strings, dest, **kwargs): + for key in ["type", "nargs"]: + if key in kwargs: + raise ValueError('"{}" not allowed'.format(key)) + super(PrefixAction, self).__init__(option_strings, dest, nargs=0, + type=bool, **kwargs) + + def __call__(self, parser, namespace, values, option_string=None): + setattr(namespace, self.dest, option_string in ["--iec", "--binary"]) + + +def main(): + parser = argparse.ArgumentParser(description='Draw size statistics graphs') + + parser.add_argument("--builddir", '-i', metavar="BUILDDIR", required=True, + help="Buildroot output directory") + parser.add_argument("--graph", '-g', metavar="GRAPH", + help="Graph output file (.pdf or .png extension)") + parser.add_argument("--file-size-csv", '-f', metavar="FILE_SIZE_CSV", + help="CSV output file with file size statistics") + parser.add_argument("--package-size-csv", '-p', metavar="PKG_SIZE_CSV", + help="CSV output file with package size statistics") + parser.add_argument("--biggest-first", action='store_true', + help="Sort packages in decreasing size order, " + + "rather than in increasing size order") + parser.add_argument("--iec", "--binary", "--si", "--decimal", + action=PrefixAction, + help="Use IEC (binary, powers of 1024) or SI (decimal, " + "powers of 1000, the default) prefixes") + parser.add_argument("--size-limit", "-l", type=float, + help='Under this size ratio, files are accounted to ' + + 'the generic "Other" package. Default: 0.01 (1%%)') + args = parser.parse_args() + + Config.biggest_first = args.biggest_first + Config.iec = args.iec + if args.size_limit is not None: + if args.size_limit < 0.0 or args.size_limit > 1.0: + parser.error("--size-limit must be in [0.0..1.0]") + Config.size_limit = args.size_limit + + # Find out which package installed what files + pkgdict = build_package_dict(args.builddir) + + # Collect the size installed by each package + pkgsize = build_package_size(pkgdict, args.builddir) + + if args.graph: + draw_graph(pkgsize, args.graph) + if args.file_size_csv: + gen_files_csv(pkgdict, pkgsize, args.file_size_csv) + if args.package_size_csv: + gen_packages_csv(pkgsize, args.package_size_csv) + + +if __name__ == "__main__": + main() diff --git a/support/testing/conf/binfmt-misc-kernel-fragment.config b/support/testing/conf/binfmt-misc-kernel-fragment.config new file mode 100644 index 00000000..7c992ff7 --- /dev/null +++ b/support/testing/conf/binfmt-misc-kernel-fragment.config @@ -0,0 +1,2 @@ +# Needed for binfmt_misc service: "Arbitrary Executable File Formats File System" +CONFIG_BINFMT_MISC=y diff --git a/support/testing/conf/docker-compose-kernel.config b/support/testing/conf/docker-compose-kernel.config new file mode 100644 index 00000000..4d30a578 --- /dev/null +++ b/support/testing/conf/docker-compose-kernel.config @@ -0,0 +1,77 @@ +# CONFIG_SWAP is not set +CONFIG_SYSVIPC=y +# CONFIG_CROSS_MEMORY_ATTACH is not set +CONFIG_HIGH_RES_TIMERS=y +# CONFIG_COMPAT_BRK is not set +# CONFIG_X86_EXTENDED_PLATFORM is not set +CONFIG_IOSF_MBI=y +CONFIG_MCORE2=y +# CONFIG_X86_MCE is not set +# CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS is not set +CONFIG_LEGACY_VSYSCALL_NONE=y +# CONFIG_SUSPEND is not set +# CONFIG_ACPI is not set +CONFIG_CPU_IDLE=y +CONFIG_PCI_MSI=y +# CONFIG_VIRTUALIZATION is not set +# CONFIG_IOSCHED_CFQ is not set +# CONFIG_MQ_IOSCHED_DEADLINE is not set +# CONFIG_MQ_IOSCHED_KYBER is not set +# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set +CONFIG_TRANSPARENT_HUGEPAGE=y +CONFIG_NET=y +CONFIG_PACKET=y +CONFIG_UNIX=y +CONFIG_INET=y +CONFIG_IP_MULTICAST=y +CONFIG_IP_ADVANCED_ROUTER=y +# CONFIG_INET_XFRM_MODE_TRANSPORT is not set +# CONFIG_INET_XFRM_MODE_TUNNEL is not set +# CONFIG_INET_XFRM_MODE_BEET is not set +# CONFIG_IPV6 is not set +# CONFIG_NF_CONNTRACK_PROCFS is not set +# CONFIG_NF_CT_PROTO_DCCP is not set +# CONFIG_NF_CT_PROTO_SCTP is not set +# CONFIG_NF_CT_PROTO_UDPLITE is not set +CONFIG_IP_VS=y +CONFIG_IP_VS_RR=y +CONFIG_IP_VS_NFCT=y +# CONFIG_BRIDGE_IGMP_SNOOPING is not set +# CONFIG_WIRELESS is not set +CONFIG_DEVTMPFS=y +CONFIG_DEVTMPFS_MOUNT=y +CONFIG_VIRTIO_BLK=y +CONFIG_NETDEVICES=y +CONFIG_VIRTIO_NET=y +# CONFIG_ETHERNET is not set +# CONFIG_WLAN is not set +# CONFIG_INPUT_KEYBOARD is not set +# CONFIG_INPUT_MOUSE is not set +# CONFIG_SERIO is not set +CONFIG_VT_HW_CONSOLE_BINDING=y +# CONFIG_DEVMEM is not set +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_CONSOLE=y +# CONFIG_SERIAL_8250_LPSS is not set +# CONFIG_SERIAL_8250_MID is not set +# CONFIG_HW_RANDOM_INTEL is not set +# CONFIG_HW_RANDOM_AMD is not set +# CONFIG_HW_RANDOM_VIA is not set +CONFIG_HW_RANDOM_VIRTIO=y +# CONFIG_DEVPORT is not set +# CONFIG_HWMON is not set +# CONFIG_USB_SUPPORT is not set +CONFIG_RTC_CLASS=y +CONFIG_VIRTIO_PCI=y +# CONFIG_VIRTIO_PCI_LEGACY is not set +# CONFIG_X86_PLATFORM_DEVICES is not set +# CONFIG_IOMMU_SUPPORT is not set +CONFIG_EXT4_FS=y +CONFIG_TMPFS=y +# CONFIG_MISC_FILESYSTEMS is not set +# CONFIG_NETWORK_FILESYSTEMS is not set +CONFIG_SECURITYFS=y +# CONFIG_CRYPTO_ECHAINIV is not set +# CONFIG_CRYPTO_HW is not set +# CONFIG_UNUSED_SYMBOLS is not set +CONFIG_UNWINDER_FRAME_POINTER=y diff --git a/support/testing/conf/docker-compose.yml b/support/testing/conf/docker-compose.yml new file mode 100644 index 00000000..ce89d79b --- /dev/null +++ b/support/testing/conf/docker-compose.yml @@ -0,0 +1,9 @@ +version: '3' +services: + busybox: + image: "busybox:latest" + command: httpd -f -h /www/ + ports: + - "80:80" + volumes: + - "/bin:/www" diff --git a/support/testing/conf/f2fs-kernel-fragment.config b/support/testing/conf/f2fs-kernel-fragment.config new file mode 100644 index 00000000..0fca7e78 --- /dev/null +++ b/support/testing/conf/f2fs-kernel-fragment.config @@ -0,0 +1,5 @@ +CONFIG_F2FS_FS=y +CONFIG_F2FS_STAT_FS=y +CONFIG_F2FS_FS_XATTR=y +CONFIG_F2FS_FS_POSIX_ACL=y +CONFIG_F2FS_FS_SECURITY=y diff --git a/support/testing/conf/grub2.cfg b/support/testing/conf/grub2.cfg new file mode 100644 index 00000000..a982d0b7 --- /dev/null +++ b/support/testing/conf/grub2.cfg @@ -0,0 +1,7 @@ +set default="0" +set timeout="1" + +menuentry "Buildroot" { + linux __KERNEL_PATH__ root=/dev/sr0 console=ttyS0,115200 + initrd __INITRD_PATH__ +} diff --git a/support/testing/conf/isolinux.cfg b/support/testing/conf/isolinux.cfg new file mode 100644 index 00000000..ba031a68 --- /dev/null +++ b/support/testing/conf/isolinux.cfg @@ -0,0 +1,5 @@ +default 1 +label 1 + kernel __KERNEL_PATH__ + initrd __INITRD_PATH__ + append root=/dev/sr0 console=ttyS0,115200 diff --git a/support/testing/conf/minimal-x86-qemu-kernel.config b/support/testing/conf/minimal-x86-qemu-kernel.config new file mode 100644 index 00000000..cc8ee6a7 --- /dev/null +++ b/support/testing/conf/minimal-x86-qemu-kernel.config @@ -0,0 +1,49 @@ +CONFIG_SYSVIPC=y +CONFIG_MODULES=y +CONFIG_MODULE_UNLOAD=y +CONFIG_SMP=y +CONFIG_HYPERVISOR_GUEST=y +CONFIG_PARAVIRT=y +CONFIG_NET=y +CONFIG_PACKET=y +CONFIG_UNIX=y +CONFIG_INET=y +CONFIG_VIRTIO_BLK=y +CONFIG_BLK_DEV_SD=y +CONFIG_BLK_DEV_SR=y +CONFIG_SCSI_VIRTIO=y +CONFIG_ATA=y +CONFIG_ATA_PIIX=y +CONFIG_NETDEVICES=y +CONFIG_VIRTIO_NET=y +CONFIG_NE2K_PCI=y +CONFIG_8139CP=y +CONFIG_INPUT_EVDEV=y +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_VIRTIO_CONSOLE=y +CONFIG_HW_RANDOM_VIRTIO=m +CONFIG_DRM=y +CONFIG_DRM_BOCHS=y +CONFIG_DRM_QXL=y +CONFIG_DRM_VIRTIO_GPU=y +CONFIG_SOUND=y +CONFIG_SND=y +CONFIG_SND_HDA_INTEL=y +CONFIG_SND_HDA_GENERIC=y +CONFIG_USB=y +CONFIG_USB_XHCI_HCD=y +CONFIG_USB_EHCI_HCD=y +CONFIG_USB_UHCI_HCD=y +CONFIG_USB_STORAGE=y +CONFIG_VIRTIO_PCI=y +CONFIG_VIRTIO_BALLOON=y +CONFIG_VIRTIO_INPUT=y +CONFIG_VIRTIO_MMIO=y +CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y +CONFIG_EXT4_FS=y +CONFIG_ISO9660_FS=y +CONFIG_ZISOFS=y +CONFIG_JOLIET=y +CONFIG_TMPFS=y +CONFIG_TMPFS_POSIX_ACL=y diff --git a/support/testing/conf/unittest.cfg b/support/testing/conf/unittest.cfg new file mode 100644 index 00000000..4f516fb8 --- /dev/null +++ b/support/testing/conf/unittest.cfg @@ -0,0 +1,5 @@ +[unittest] +plugins = nose2.plugins.mp + +[multiprocess] +always-on = True diff --git a/support/testing/infra/__init__.py b/support/testing/infra/__init__.py new file mode 100644 index 00000000..6522a265 --- /dev/null +++ b/support/testing/infra/__init__.py @@ -0,0 +1,114 @@ +import os +import re +import sys +import tempfile +import subprocess +from urllib.request import urlopen +from urllib.error import HTTPError, URLError + +ARTIFACTS_URL = "http://autobuild.buildroot.net/artefacts/" +BASE_DIR = os.path.realpath(os.path.join(os.path.dirname(__file__), "../../..")) + + +def open_log_file(builddir, stage, logtofile=True): + """ + Open a file for logging and return its handler. + If logtofile is True, returns sys.stdout. Otherwise opens a file + with a suitable name in the build directory. + """ + if logtofile: + fhandle = open("{}-{}.log".format(builddir, stage), 'a+') + else: + fhandle = sys.stdout + return fhandle + + +def basepath(relpath=""): + """Return the absolute path for a file or directory relative to the Buildroot top directory.""" + return os.path.join(BASE_DIR, relpath) + + +def filepath(relpath): + return os.path.join(BASE_DIR, "support/testing", relpath) + + +def download(dldir, filename): + finalpath = os.path.join(dldir, filename) + if os.path.exists(finalpath): + return finalpath + + if not os.path.exists(dldir): + os.makedirs(dldir) + + tmpfile = tempfile.mktemp(dir=dldir) + print("Downloading to {}".format(tmpfile)) + + try: + url_fh = urlopen(os.path.join(ARTIFACTS_URL, filename)) + with open(tmpfile, "w+b") as tmpfile_fh: + tmpfile_fh.write(url_fh.read()) + except (HTTPError, URLError) as err: + os.unlink(tmpfile) + raise err + + print("Renaming from {} to {}".format(tmpfile, finalpath)) + os.rename(tmpfile, finalpath) + return finalpath + + +def run_cmd_on_host(builddir, cmd): + """Call subprocess.check_output and return the text output.""" + out = subprocess.check_output(cmd, + stderr=open(os.devnull, "w"), + cwd=builddir, + env={"LANG": "C"}, + universal_newlines=True) + return out + + +def get_elf_arch_tag(builddir, prefix, fpath, tag): + """ + Runs the cross readelf on 'fpath', then extracts the value of tag 'tag'. + Example: + >>> get_elf_arch_tag('output', 'arm-none-linux-gnueabi-', + 'bin/busybox', 'Tag_CPU_arch') + v5TEJ + >>> + """ + cmd = ["host/bin/{}-readelf".format(prefix), + "-A", os.path.join("target", fpath)] + out = run_cmd_on_host(builddir, cmd) + regexp = re.compile(r"^ {}: (.*)$".format(tag)) + for line in out.splitlines(): + m = regexp.match(line) + if not m: + continue + return m.group(1) + return None + + +def get_file_arch(builddir, prefix, fpath): + return get_elf_arch_tag(builddir, prefix, fpath, "Tag_CPU_arch") + + +def get_elf_prog_interpreter(builddir, prefix, fpath): + """ + Runs the cross readelf on 'fpath' to extract the program interpreter + name and returns it. + Example: + >>> get_elf_prog_interpreter('br-tests/TestExternalToolchainLinaroArm', + 'arm-linux-gnueabihf', + 'bin/busybox') + /lib/ld-linux-armhf.so.3 + >>> + """ + cmd = ["host/bin/{}-readelf".format(prefix), + "-l", os.path.join("target", fpath)] + out = run_cmd_on_host(builddir, cmd) + regexp = re.compile(r"^ *\[Requesting program interpreter: (.*)\]$") + for line in out.splitlines(): + m = regexp.match(line) + if not m: + continue + return m.group(1) + return None diff --git a/support/testing/infra/basetest.py b/support/testing/infra/basetest.py new file mode 100644 index 00000000..a97a8144 --- /dev/null +++ b/support/testing/infra/basetest.py @@ -0,0 +1,92 @@ +import unittest +import os +import datetime + +from infra.builder import Builder +from infra.emulator import Emulator + +BASIC_TOOLCHAIN_CONFIG = \ + """ + BR2_arm=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y + BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y + BR2_TOOLCHAIN_EXTERNAL_URL="https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs/armv5-eabi--uclibc--bleeding-edge-2018.11-1.tar.bz2" + BR2_TOOLCHAIN_EXTERNAL_GCC_8=y + BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_14=y + BR2_TOOLCHAIN_EXTERNAL_LOCALE=y + BR2_TOOLCHAIN_HAS_THREADS_DEBUG=y + BR2_TOOLCHAIN_EXTERNAL_CXX=y + """ + +MINIMAL_CONFIG = \ + """ + BR2_INIT_NONE=y + BR2_SYSTEM_BIN_SH_NONE=y + # BR2_PACKAGE_BUSYBOX is not set + # BR2_TARGET_ROOTFS_TAR is not set + """ + + +class BRConfigTest(unittest.TestCase): + config = None + br2_external = list() + downloaddir = None + outputdir = None + logtofile = True + keepbuilds = False + jlevel = 0 + timeout_multiplier = 1 + + def __init__(self, names): + super(BRConfigTest, self).__init__(names) + self.testname = self.__class__.__name__ + self.builddir = self.outputdir and os.path.join(self.outputdir, self.testname) + self.config += '\nBR2_DL_DIR="{}"\n'.format(self.downloaddir) + self.config += "\nBR2_JLEVEL={}\n".format(self.jlevel) + + def show_msg(self, msg): + print("{} {:40s} {}".format(datetime.datetime.now().strftime("%H:%M:%S"), + self.testname, msg)) + + def setUp(self): + self.show_msg("Starting") + self.b = Builder(self.config, self.builddir, self.logtofile) + + if not self.keepbuilds: + self.b.delete() + + if not self.b.is_finished(): + self.b.configure(make_extra_opts=["BR2_EXTERNAL={}".format(":".join(self.br2_external))]) + + def tearDown(self): + self.show_msg("Cleaning up") + if self.b and not self.keepbuilds: + self.b.delete() + + +class BRTest(BRConfigTest): + def __init__(self, names): + super(BRTest, self).__init__(names) + self.emulator = None + + def setUp(self): + super(BRTest, self).setUp() + if not self.b.is_finished(): + self.show_msg("Building") + self.b.build() + self.show_msg("Building done") + + self.emulator = Emulator(self.builddir, self.downloaddir, + self.logtofile, self.timeout_multiplier) + + def tearDown(self): + if self.emulator: + self.emulator.stop() + super(BRTest, self).tearDown() + + # Run the given 'cmd' with a 'timeout' on the target and + # assert that the command succeeded + def assertRunOk(self, cmd, timeout=-1): + _, exit_code = self.emulator.run(cmd, timeout) + self.assertEqual(exit_code, 0) diff --git a/support/testing/infra/builder.py b/support/testing/infra/builder.py new file mode 100644 index 00000000..922a7072 --- /dev/null +++ b/support/testing/infra/builder.py @@ -0,0 +1,107 @@ +import os +import shutil +import subprocess + +import infra + + +class Builder(object): + def __init__(self, config, builddir, logtofile): + self.config = '\n'.join([line.lstrip() for line in + config.splitlines()]) + '\n' + self.builddir = builddir + self.logfile = infra.open_log_file(builddir, "build", logtofile) + + def is_defconfig_valid(self, configfile, defconfig): + """Check if the .config is contains all lines present in the defconfig.""" + with open(configfile) as configf: + configlines = configf.readlines() + + defconfiglines = defconfig.split("\n") + + # Check that all the defconfig lines are still present + for defconfigline in defconfiglines: + if defconfigline + "\n" not in configlines: + self.logfile.write("WARN: defconfig can't be used\n") + self.logfile.write(" Missing: %s\n" % defconfigline.strip()) + self.logfile.flush() + return False + + return True + + def configure(self, make_extra_opts=[], make_extra_env={}): + """Configure the build. + + make_extra_opts: a list of arguments to be passed to the make + command. + e.g. make_extra_opts=["BR2_EXTERNAL=/path"] + + make_extra_env: a dict of variables to be appended (or replaced) + in the environment that calls make. + e.g. make_extra_env={"BR2_DL_DIR": "/path"} + """ + if not os.path.isdir(self.builddir): + os.makedirs(self.builddir) + + config_file = os.path.join(self.builddir, ".config") + with open(config_file, "w+") as cf: + cf.write(self.config) + # dump the defconfig to the logfile for easy debugging + self.logfile.write("> start defconfig\n" + self.config + + "> end defconfig\n") + self.logfile.flush() + + env = {"PATH": os.environ["PATH"]} + env.update(make_extra_env) + + cmd = ["make", + "O={}".format(self.builddir)] + cmd += make_extra_opts + cmd += ["olddefconfig"] + + ret = subprocess.call(cmd, stdout=self.logfile, stderr=self.logfile, + cwd=infra.basepath(), env=env) + if ret != 0: + raise SystemError("Cannot olddefconfig") + + if not self.is_defconfig_valid(config_file, self.config): + raise SystemError("The defconfig is not valid") + + def build(self, make_extra_opts=[], make_extra_env={}): + """Perform the build. + + make_extra_opts: a list of arguments to be passed to the make + command. It can include a make target. + e.g. make_extra_opts=["foo-source"] + + make_extra_env: a dict of variables to be appended (or replaced) + in the environment that calls make. + e.g. make_extra_env={"BR2_DL_DIR": "/path"} + """ + env = {"PATH": os.environ["PATH"]} + if "http_proxy" in os.environ: + self.logfile.write("Using system proxy: " + + os.environ["http_proxy"] + "\n") + env['http_proxy'] = os.environ["http_proxy"] + env['https_proxy'] = os.environ["http_proxy"] + env.update(make_extra_env) + + cmd = ["make", "-C", self.builddir] + cmd += make_extra_opts + + ret = subprocess.call(cmd, stdout=self.logfile, stderr=self.logfile, + env=env) + if ret != 0: + raise SystemError("Build failed") + + open(self.stamp_path(), 'a').close() + + def stamp_path(self): + return os.path.join(self.builddir, "build-done") + + def is_finished(self): + return os.path.exists(self.stamp_path()) + + def delete(self): + if os.path.exists(self.builddir): + shutil.rmtree(self.builddir) diff --git a/support/testing/infra/emulator.py b/support/testing/infra/emulator.py new file mode 100644 index 00000000..5611ec96 --- /dev/null +++ b/support/testing/infra/emulator.py @@ -0,0 +1,125 @@ +import pexpect + +import infra + + +class Emulator(object): + + def __init__(self, builddir, downloaddir, logtofile, timeout_multiplier): + self.qemu = None + self.downloaddir = downloaddir + self.logfile = infra.open_log_file(builddir, "run", logtofile) + # We use elastic runners on the cloud to runs our tests. Those runners + # can take a long time to run the emulator. Use a timeout multiplier + # when running the tests to avoid sporadic failures. + self.timeout_multiplier = timeout_multiplier + + # Start Qemu to boot the system + # + # arch: Qemu architecture to use + # + # kernel: path to the kernel image, or the special string + # 'builtin'. 'builtin' means a pre-built kernel image will be + # downloaded from ARTEFACTS_URL and suitable options are + # automatically passed to qemu and added to the kernel cmdline. So + # far only armv5, armv7 and i386 builtin kernels are available. + # If None, then no kernel is used, and we assume a bootable device + # will be specified. + # + # kernel_cmdline: array of kernel arguments to pass to Qemu -append option + # + # options: array of command line options to pass to Qemu + # + def boot(self, arch, kernel=None, kernel_cmdline=None, options=None): + if arch in ["armv7", "armv5"]: + qemu_arch = "arm" + else: + qemu_arch = arch + + qemu_cmd = ["qemu-system-{}".format(qemu_arch), + "-serial", "stdio", + "-display", "none", + "-m", "256"] + + if options: + qemu_cmd += options + + if kernel_cmdline is None: + kernel_cmdline = [] + + if kernel: + if kernel == "builtin": + if arch in ["armv7", "armv5"]: + kernel_cmdline.append("console=ttyAMA0") + + if arch == "armv7": + kernel = infra.download(self.downloaddir, + "kernel-vexpress") + dtb = infra.download(self.downloaddir, + "vexpress-v2p-ca9.dtb") + qemu_cmd += ["-dtb", dtb] + qemu_cmd += ["-M", "vexpress-a9"] + elif arch == "armv5": + kernel = infra.download(self.downloaddir, + "kernel-versatile-4.19") + dtb = infra.download(self.downloaddir, + "versatile-pb-4.19.dtb") + qemu_cmd += ["-dtb", dtb] + qemu_cmd += ["-M", "versatilepb"] + qemu_cmd += ["-device", "virtio-rng-pci"] + + qemu_cmd += ["-kernel", kernel] + + if kernel_cmdline: + qemu_cmd += ["-append", " ".join(kernel_cmdline)] + + self.logfile.write("> starting qemu with '%s'\n" % " ".join(qemu_cmd)) + self.qemu = pexpect.spawn(qemu_cmd[0], qemu_cmd[1:], + timeout=5 * self.timeout_multiplier, + encoding='utf-8', + env={"QEMU_AUDIO_DRV": "none"}) + # We want only stdout into the log to avoid double echo + self.qemu.logfile_read = self.logfile + + # Wait for the login prompt to appear, and then login as root with + # the provided password, or no password if not specified. + def login(self, password=None): + # The login prompt can take some time to appear when running multiple + # instances in parallel, so set the timeout to a large value + index = self.qemu.expect(["buildroot login:", pexpect.TIMEOUT], + timeout=60 * self.timeout_multiplier) + if index != 0: + self.logfile.write("==> System does not boot") + raise SystemError("System does not boot") + + self.qemu.sendline("root") + if password: + self.qemu.expect("Password:") + self.qemu.sendline(password) + index = self.qemu.expect(["# ", pexpect.TIMEOUT]) + if index != 0: + raise SystemError("Cannot login") + self.run("dmesg -n 1") + + # Run the given 'cmd' with a 'timeout' on the target + # return a tuple (output, exit_code) + def run(self, cmd, timeout=-1): + self.qemu.sendline(cmd) + if timeout != -1: + timeout *= self.timeout_multiplier + self.qemu.expect("# ", timeout=timeout) + # Remove double carriage return from qemu stdout so str.splitlines() + # works as expected. + output = self.qemu.before.replace("\r\r", "\r").splitlines()[1:] + + self.qemu.sendline("echo $?") + self.qemu.expect("# ") + exit_code = self.qemu.before.splitlines()[2] + exit_code = int(exit_code) + + return output, exit_code + + def stop(self): + if self.qemu is None: + return + self.qemu.terminate(force=True) diff --git a/support/testing/run-tests b/support/testing/run-tests new file mode 100755 index 00000000..022209b4 --- /dev/null +++ b/support/testing/run-tests @@ -0,0 +1,123 @@ +#!/usr/bin/env python3 +import argparse +import multiprocessing +import os +import sys + +import nose2 + +from infra.basetest import BRConfigTest + + +def main(): + parser = argparse.ArgumentParser(description='Run Buildroot tests') + parser.add_argument('testname', nargs='*', + help='list of test cases to execute') + parser.add_argument('-l', '--list', action='store_true', + help='list of available test cases') + parser.add_argument('-a', '--all', action='store_true', + help='execute all test cases') + parser.add_argument('-s', '--stdout', action='store_true', + help='log everything to stdout') + parser.add_argument('-o', '--output', + help='output directory') + parser.add_argument('-d', '--download', + help='download directory') + parser.add_argument('-k', '--keep', + help='keep build directories', + action='store_true') + parser.add_argument('-t', '--testcases', type=int, default=1, + help='number of testcases to run simultaneously') + parser.add_argument('-j', '--jlevel', type=int, + help='BR2_JLEVEL to use for each testcase') + parser.add_argument('--timeout-multiplier', type=int, default=1, + help='increase timeouts (useful for slow machines)') + + args = parser.parse_args() + + script_path = os.path.realpath(__file__) + test_dir = os.path.dirname(script_path) + + if args.stdout: + BRConfigTest.logtofile = False + + if args.list: + print("List of tests") + nose2.discover(argv=[script_path, + "-s", test_dir, + "-v", + "--collect-only"], + plugins=["nose2.plugins.collect"]) + return 0 + + if args.download is None: + args.download = os.getenv("BR2_DL_DIR") + if args.download is None: + print("Missing download directory, please use -d/--download") + print("") + parser.print_help() + return 1 + + BRConfigTest.downloaddir = os.path.abspath(args.download) + + if args.output is None: + print("Missing output directory, please use -o/--output") + print("") + parser.print_help() + return 1 + + if not os.path.exists(args.output): + os.mkdir(args.output) + + BRConfigTest.outputdir = os.path.abspath(args.output) + + if args.all is False and not args.testname: + print("No test selected") + print("") + parser.print_help() + return 1 + + BRConfigTest.keepbuilds = args.keep + + if args.testcases != 1: + if args.testcases < 1: + print("Invalid number of testcases to run simultaneously") + print("") + parser.print_help() + return 1 + # same default BR2_JLEVEL as package/Makefile.in + br2_jlevel = 1 + multiprocessing.cpu_count() + each_testcase = br2_jlevel / args.testcases + if each_testcase < 1: + each_testcase = 1 + BRConfigTest.jlevel = each_testcase + + if args.jlevel: + if args.jlevel < 0: + print("Invalid BR2_JLEVEL to use for each testcase") + print("") + parser.print_help() + return 1 + # the user can override the auto calculated value + BRConfigTest.jlevel = args.jlevel + + if args.timeout_multiplier < 1: + print("Invalid multiplier for timeout values") + print("") + parser.print_help() + return 1 + BRConfigTest.timeout_multiplier = args.timeout_multiplier + + nose2_args = ["-v", + "-N", str(args.testcases), + "-s", test_dir, + "-c", os.path.join(test_dir, "conf/unittest.cfg")] + + if args.testname: + nose2_args += args.testname + + nose2.discover(argv=nose2_args) + + +if __name__ == "__main__": + sys.exit(main()) diff --git a/support/testing/tests/__init__.py b/support/testing/tests/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/support/testing/tests/boot/__init__.py b/support/testing/tests/boot/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/support/testing/tests/boot/test_atf.py b/support/testing/tests/boot/test_atf.py new file mode 100644 index 00000000..e6c11aa7 --- /dev/null +++ b/support/testing/tests/boot/test_atf.py @@ -0,0 +1,57 @@ +import infra.basetest + + +class TestATFVexpress(infra.basetest.BRTest): + config = \ + """ + BR2_aarch64=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64=y + BR2_TARGET_ARM_TRUSTED_FIRMWARE=y + BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_GIT=y + BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_URL="https://github.com/ARM-software/arm-trusted-firmware.git" + BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="v2.2" + BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="juno" + BR2_TARGET_ARM_TRUSTED_FIRMWARE_FIP=y + BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_AS_BL33=y + BR2_TARGET_ARM_TRUSTED_FIRMWARE_NEEDS_DTC=y + BR2_TARGET_UBOOT=y + BR2_TARGET_UBOOT_BOARDNAME="vexpress_aemv8a_juno" + BR2_TARGET_UBOOT_CUSTOM_VERSION=y + BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2020.07" + BR2_TARGET_VEXPRESS_FIRMWARE=y + """ + + def test_run(self): + pass + + +class TestATFAllwinner(infra.basetest.BRTest): + config = \ + """ + BR2_aarch64=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64=y + BR2_TARGET_ARM_TRUSTED_FIRMWARE=y + BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_GIT=y + BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_URL="https://github.com/apritzel/arm-trusted-firmware.git" + BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="sun50iw1p1" + BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="aa75c8da415158a94b82a430b2b40000778e851f" + BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y + BR2_TARGET_UBOOT=y + BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y + BR2_TARGET_UBOOT_CUSTOM_VERSION=y + BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2020.10" + BR2_TARGET_UBOOT_BOARD_DEFCONFIG="bananapi_m64" + BR2_TARGET_UBOOT_NEEDS_DTC=y + BR2_TARGET_UBOOT_NEEDS_PYTHON3=y + BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y + BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y + BR2_TARGET_UBOOT_FORMAT_CUSTOM=y + BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot.itb" + BR2_TARGET_UBOOT_SPL=y + BR2_TARGET_UBOOT_SPL_NAME="spl/sunxi-spl.bin" + """ + + def test_run(self): + pass diff --git a/support/testing/tests/boot/test_syslinux.py b/support/testing/tests/boot/test_syslinux.py new file mode 100644 index 00000000..467d564e --- /dev/null +++ b/support/testing/tests/boot/test_syslinux.py @@ -0,0 +1,85 @@ +import infra.basetest + + +class TestSysLinuxBase(infra.basetest.BRTest): + x86_toolchain_config = \ + """ + BR2_x86_i686=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y + BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y + BR2_TOOLCHAIN_EXTERNAL_URL="http://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs/x86-i686--glibc--bleeding-edge-2018.11-1.tar.bz2" + BR2_TOOLCHAIN_EXTERNAL_GCC_8=y + BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_14=y + BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC=y + BR2_TOOLCHAIN_EXTERNAL_CXX=y + """ + + x86_64_toolchain_config = \ + """ + BR2_x86_64=y + BR2_x86_corei7=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y + BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y + BR2_TOOLCHAIN_EXTERNAL_URL="http://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs/x86-64-core-i7--glibc--stable-2018.11-1.tar.bz2" + BR2_TOOLCHAIN_EXTERNAL_GCC_7=y + BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_1=y + BR2_TOOLCHAIN_EXTERNAL_CXX=y + BR2_TOOLCHAIN_EXTERNAL_HAS_SSP=y + BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC=y + """ + + syslinux_legacy_config = \ + """ + BR2_TARGET_SYSLINUX=y + BR2_TARGET_SYSLINUX_ISOLINUX=y + BR2_TARGET_SYSLINUX_PXELINUX=y + BR2_TARGET_SYSLINUX_MBR=y + """ + + syslinux_efi_config = \ + """ + BR2_TARGET_SYSLINUX=y + BR2_TARGET_SYSLINUX_EFI=y + """ + + +class TestSysLinuxX86LegacyBios(TestSysLinuxBase): + config = \ + TestSysLinuxBase.x86_toolchain_config + \ + infra.basetest.MINIMAL_CONFIG + \ + TestSysLinuxBase.syslinux_legacy_config + + def test_run(self): + pass + + +class TestSysLinuxX86EFI(TestSysLinuxBase): + config = \ + TestSysLinuxBase.x86_toolchain_config + \ + infra.basetest.MINIMAL_CONFIG + \ + TestSysLinuxBase.syslinux_efi_config + + def test_run(self): + pass + + +class TestSysLinuxX86_64LegacyBios(TestSysLinuxBase): + config = \ + TestSysLinuxBase.x86_64_toolchain_config + \ + infra.basetest.MINIMAL_CONFIG + \ + TestSysLinuxBase.syslinux_legacy_config + + def test_run(self): + pass + + +class TestSysLinuxX86_64EFI(TestSysLinuxBase): + config = \ + TestSysLinuxBase.x86_64_toolchain_config + \ + infra.basetest.MINIMAL_CONFIG + \ + TestSysLinuxBase.syslinux_efi_config + + def test_run(self): + pass diff --git a/support/testing/tests/core/__init__.py b/support/testing/tests/core/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/support/testing/tests/core/cpeid-br2-external/Config.in b/support/testing/tests/core/cpeid-br2-external/Config.in new file mode 100644 index 00000000..e69de29b diff --git a/support/testing/tests/core/cpeid-br2-external/external.desc b/support/testing/tests/core/cpeid-br2-external/external.desc new file mode 100644 index 00000000..d19ae79e --- /dev/null +++ b/support/testing/tests/core/cpeid-br2-external/external.desc @@ -0,0 +1 @@ +name: CPE_ID diff --git a/support/testing/tests/core/cpeid-br2-external/external.mk b/support/testing/tests/core/cpeid-br2-external/external.mk new file mode 100644 index 00000000..47492d7f --- /dev/null +++ b/support/testing/tests/core/cpeid-br2-external/external.mk @@ -0,0 +1 @@ +include $(sort $(wildcard $(BR2_EXTERNAL_CPE_ID_PATH)/package/*/*.mk)) diff --git a/support/testing/tests/core/cpeid-br2-external/package/cpe-id-pkg1/cpe-id-pkg1.mk b/support/testing/tests/core/cpeid-br2-external/package/cpe-id-pkg1/cpe-id-pkg1.mk new file mode 100644 index 00000000..5e746028 --- /dev/null +++ b/support/testing/tests/core/cpeid-br2-external/package/cpe-id-pkg1/cpe-id-pkg1.mk @@ -0,0 +1,4 @@ +CPE_ID_PKG1_VERSION = 42 + +$(eval $(generic-package)) +$(eval $(host-generic-package)) diff --git a/support/testing/tests/core/cpeid-br2-external/package/cpe-id-pkg2/cpe-id-pkg2.mk b/support/testing/tests/core/cpeid-br2-external/package/cpe-id-pkg2/cpe-id-pkg2.mk new file mode 100644 index 00000000..12b3f322 --- /dev/null +++ b/support/testing/tests/core/cpeid-br2-external/package/cpe-id-pkg2/cpe-id-pkg2.mk @@ -0,0 +1,3 @@ +CPE_ID_PKG2_VERSION = 67 + +$(eval $(host-generic-package)) diff --git a/support/testing/tests/core/cpeid-br2-external/package/cpe-id-pkg3/cpe-id-pkg3.mk b/support/testing/tests/core/cpeid-br2-external/package/cpe-id-pkg3/cpe-id-pkg3.mk new file mode 100644 index 00000000..7f539ad5 --- /dev/null +++ b/support/testing/tests/core/cpeid-br2-external/package/cpe-id-pkg3/cpe-id-pkg3.mk @@ -0,0 +1,5 @@ +CPE_ID_PKG3_VERSION = 67 +CPE_ID_PKG3_CPE_ID_VENDOR = cpe-id-pkg3_project + +$(eval $(generic-package)) +$(eval $(host-generic-package)) diff --git a/support/testing/tests/core/cpeid-br2-external/package/cpe-id-pkg4/cpe-id-pkg4.mk b/support/testing/tests/core/cpeid-br2-external/package/cpe-id-pkg4/cpe-id-pkg4.mk new file mode 100644 index 00000000..557acff8 --- /dev/null +++ b/support/testing/tests/core/cpeid-br2-external/package/cpe-id-pkg4/cpe-id-pkg4.mk @@ -0,0 +1,9 @@ +CPE_ID_PKG4_VERSION = 67 +CPE_ID_PKG4_CPE_ID_VENDOR = foo +CPE_ID_PKG4_CPE_ID_PRODUCT = bar +CPE_ID_PKG4_CPE_ID_VERSION = 42 +CPE_ID_PKG4_CPE_ID_UPDATE = b2 +CPE_ID_PKG4_CPE_ID_PREFIX = cpe:2.4:a + +$(eval $(generic-package)) +$(eval $(host-generic-package)) diff --git a/support/testing/tests/core/cpeid-br2-external/package/cpe-id-pkg5/cpe-id-pkg5.mk b/support/testing/tests/core/cpeid-br2-external/package/cpe-id-pkg5/cpe-id-pkg5.mk new file mode 100644 index 00000000..d0db5f03 --- /dev/null +++ b/support/testing/tests/core/cpeid-br2-external/package/cpe-id-pkg5/cpe-id-pkg5.mk @@ -0,0 +1,16 @@ +CPE_ID_PKG5_VERSION = 57 + +CPE_ID_PKG5_CPE_ID_VENDOR = foo +CPE_ID_PKG5_CPE_ID_PRODUCT = bar +CPE_ID_PKG5_CPE_ID_VERSION = 42 +CPE_ID_PKG5_CPE_ID_UPDATE = b2 +CPE_ID_PKG5_CPE_ID_PREFIX = cpe:2.4:a + +HOST_CPE_ID_PKG5_CPE_ID_VENDOR = baz +HOST_CPE_ID_PKG5_CPE_ID_PRODUCT = fuz +HOST_CPE_ID_PKG5_CPE_ID_VERSION = 43 +HOST_CPE_ID_PKG5_CPE_ID_UPDATE = b3 +HOST_CPE_ID_PKG5_CPE_ID_PREFIX = cpe:2.5:a + +$(eval $(generic-package)) +$(eval $(host-generic-package)) diff --git a/support/testing/tests/core/device_table2.txt b/support/testing/tests/core/device_table2.txt new file mode 100644 index 00000000..f8323217 --- /dev/null +++ b/support/testing/tests/core/device_table2.txt @@ -0,0 +1,7 @@ +# +/usr/sbin/getcap f 755 0 0 - - - - - +|xattr cap_sys_nice+eip +# leading spaces are ignored for xattr + |xattr cap_kill+eip +# leading tabs are ignored for xattr + |xattr cap_sys_time+eip diff --git a/support/testing/tests/core/post-build.sh b/support/testing/tests/core/post-build.sh new file mode 100755 index 00000000..f3d0dbe5 --- /dev/null +++ b/support/testing/tests/core/post-build.sh @@ -0,0 +1,12 @@ +#!/bin/sh +( +printf "arg1,%s\n" "${1}" +printf "arg2,%s\n" "${2}" +printf "arg3,%s\n" "${3}" +printf "TARGET_DIR,%s\n" "${TARGET_DIR}" +printf "BUILD_DIR,%s\n" "${BUILD_DIR}" +printf "HOST_DIR,%s\n" "${HOST_DIR}" +printf "STAGING_DIR,%s\n" "${STAGING_DIR}" +printf "BINARIES_DIR,%s\n" "${BINARIES_DIR}" +printf "BR2_CONFIG,%s\n" "${BR2_CONFIG}" +) > ${BUILD_DIR}/$(basename "${0}" .sh).log diff --git a/support/testing/tests/core/post-fakeroot.sh b/support/testing/tests/core/post-fakeroot.sh new file mode 120000 index 00000000..d680fcca --- /dev/null +++ b/support/testing/tests/core/post-fakeroot.sh @@ -0,0 +1 @@ +post-build.sh \ No newline at end of file diff --git a/support/testing/tests/core/post-image.sh b/support/testing/tests/core/post-image.sh new file mode 120000 index 00000000..d680fcca --- /dev/null +++ b/support/testing/tests/core/post-image.sh @@ -0,0 +1 @@ +post-build.sh \ No newline at end of file diff --git a/support/testing/tests/core/rootfs-overlay1/test-file1 b/support/testing/tests/core/rootfs-overlay1/test-file1 new file mode 100644 index 00000000..323fae03 --- /dev/null +++ b/support/testing/tests/core/rootfs-overlay1/test-file1 @@ -0,0 +1 @@ +foobar diff --git a/support/testing/tests/core/rootfs-overlay2/etc/test-file2 b/support/testing/tests/core/rootfs-overlay2/etc/test-file2 new file mode 100644 index 00000000..34a3ec23 --- /dev/null +++ b/support/testing/tests/core/rootfs-overlay2/etc/test-file2 @@ -0,0 +1 @@ +barfoo diff --git a/support/testing/tests/core/squashfs-xattr-kernel.config b/support/testing/tests/core/squashfs-xattr-kernel.config new file mode 100644 index 00000000..81b21b94 --- /dev/null +++ b/support/testing/tests/core/squashfs-xattr-kernel.config @@ -0,0 +1 @@ +CONFIG_SQUASHFS_XATTR=y diff --git a/support/testing/tests/core/test_cpeid.py b/support/testing/tests/core/test_cpeid.py new file mode 100644 index 00000000..11c84721 --- /dev/null +++ b/support/testing/tests/core/test_cpeid.py @@ -0,0 +1,110 @@ +import infra +import subprocess +import json + + +class CpeIdTest(infra.basetest.BRConfigTest): + config = "" + br2_external = [infra.filepath("tests/core/cpeid-br2-external")] + + def get_vars(self, var): + cmd = ["make", "--no-print-directory", "-C", self.b.builddir, + "VARS=%s%%" % var, "printvars"] + lines = subprocess.check_output(cmd).splitlines() + return dict([str(x, "utf-8").split("=") for x in lines]) + + def get_json(self, pkg): + cmd = ["make", "--no-print-directory", "-C", self.b.builddir, + "%s-show-info" % pkg] + return json.loads(subprocess.check_output(cmd)) + + def test_pkg1(self): + # this package has no CPE ID information, it should not have + # any CPE_ID variable defined. + pkg_vars = self.get_vars("CPE_ID_PKG1_CPE_ID") + cpe_vars = ["CPE_ID_VALID", "CPE_ID_PRODUCT", "CPE_ID_VERSION", "CPE_ID_UPDATE", + "CPE_ID_PREFIX", "CPE_ID"] + for v in cpe_vars: + self.assertNotIn("CPE_ID_PKG1_%s" % v, pkg_vars) + pkg_json = self.get_json("cpe-id-pkg1") + self.assertNotIn("cpe-id", pkg_json['cpe-id-pkg1']) + + pkg_vars = self.get_vars("HOST_CPE_ID_PKG1_CPE_ID") + for v in cpe_vars: + self.assertNotIn("HOST_CPE_ID_PKG1_%s" % v, pkg_vars) + pkg_json = self.get_json("host-cpe-id-pkg1") + self.assertNotIn("cpe-id", pkg_json['host-cpe-id-pkg1']) + + def test_pkg2(self): + # this package has no CPE ID information, it should not have + # any CPE_ID variable defined. + pkg_vars = self.get_vars("HOST_CPE_ID_PKG2_CPE_ID") + cpe_vars = ["CPE_ID_VALID", "CPE_ID_PRODUCT", "CPE_ID_VERSION", "CPE_ID_UPDATE", + "CPE_ID_PREFIX", "CPE_ID"] + for v in cpe_vars: + self.assertNotIn("HOST_CPE_ID_PKG2_%s" % v, pkg_vars) + pkg_json = self.get_json("host-cpe-id-pkg2") + self.assertNotIn("cpe-id", pkg_json['host-cpe-id-pkg2']) + + def test_pkg3(self): + # this package has just _CPE_ID_VENDOR defined, so verify + # it has the default CPE_ID value, and that inheritance of the + # values for the host package is working + pkg_vars = self.get_vars("CPE_ID_PKG3_CPE_ID") + self.assertEqual(pkg_vars["CPE_ID_PKG3_CPE_ID"], + "cpe:2.3:a:cpe-id-pkg3_project:cpe-id-pkg3:67:*:*:*:*:*:*:*") + self.assertEqual(pkg_vars["CPE_ID_PKG3_CPE_ID_VALID"], "YES") + pkg_json = self.get_json("cpe-id-pkg3") + self.assertEqual(pkg_json['cpe-id-pkg3']['cpe-id'], + "cpe:2.3:a:cpe-id-pkg3_project:cpe-id-pkg3:67:*:*:*:*:*:*:*") + + pkg_vars = self.get_vars("HOST_CPE_ID_PKG3_CPE_ID") + self.assertEqual(pkg_vars["HOST_CPE_ID_PKG3_CPE_ID"], + "cpe:2.3:a:cpe-id-pkg3_project:cpe-id-pkg3:67:*:*:*:*:*:*:*") + self.assertEqual(pkg_vars["HOST_CPE_ID_PKG3_CPE_ID_VALID"], "YES") + pkg_json = self.get_json("host-cpe-id-pkg3") + self.assertEqual(pkg_json['host-cpe-id-pkg3']['cpe-id'], + "cpe:2.3:a:cpe-id-pkg3_project:cpe-id-pkg3:67:*:*:*:*:*:*:*") + + def test_pkg4(self): + # this package defines + # _CPE_ID_{VENDOR,PRODUCT,VERSION,UPDATE,PREFIX}, + # make sure we get the computed _CPE_ID, and that it is + # inherited by the host variant + pkg_vars = self.get_vars("CPE_ID_PKG4_CPE_ID") + self.assertEqual(pkg_vars["CPE_ID_PKG4_CPE_ID"], + "cpe:2.4:a:foo:bar:42:b2:*:*:*:*:*:*") + self.assertEqual(pkg_vars["CPE_ID_PKG4_CPE_ID_VALID"], "YES") + pkg_json = self.get_json("cpe-id-pkg4") + self.assertEqual(pkg_json['cpe-id-pkg4']['cpe-id'], + "cpe:2.4:a:foo:bar:42:b2:*:*:*:*:*:*") + + pkg_vars = self.get_vars("HOST_CPE_ID_PKG4_CPE_ID") + self.assertEqual(pkg_vars["HOST_CPE_ID_PKG4_CPE_ID"], + "cpe:2.4:a:foo:bar:42:b2:*:*:*:*:*:*") + self.assertEqual(pkg_vars["HOST_CPE_ID_PKG4_CPE_ID_VALID"], "YES") + pkg_json = self.get_json("host-cpe-id-pkg4") + self.assertEqual(pkg_json['host-cpe-id-pkg4']['cpe-id'], + "cpe:2.4:a:foo:bar:42:b2:*:*:*:*:*:*") + + def test_pkg5(self): + # this package defines + # _CPE_ID_{VENDOR,PRODUCT,VERSION,UPDATE,PREFIX} and + # HOST__CPE_ID_{VENDOR,PRODUCT,VERSION,UPDATE,PREFIX} + # separately, with different values. Make sure we get the + # right _CPE_ID and HOST__CPE_ID values. + pkg_vars = self.get_vars("CPE_ID_PKG5_CPE_ID") + self.assertEqual(pkg_vars["CPE_ID_PKG5_CPE_ID"], + "cpe:2.4:a:foo:bar:42:b2:*:*:*:*:*:*") + self.assertEqual(pkg_vars["CPE_ID_PKG5_CPE_ID_VALID"], "YES") + pkg_json = self.get_json("cpe-id-pkg5") + self.assertEqual(pkg_json['cpe-id-pkg5']['cpe-id'], + "cpe:2.4:a:foo:bar:42:b2:*:*:*:*:*:*") + + pkg_vars = self.get_vars("HOST_CPE_ID_PKG5_CPE_ID") + self.assertEqual(pkg_vars["HOST_CPE_ID_PKG5_CPE_ID"], + "cpe:2.5:a:baz:fuz:43:b3:*:*:*:*:*:*") + self.assertEqual(pkg_vars["HOST_CPE_ID_PKG5_CPE_ID_VALID"], "YES") + pkg_json = self.get_json("host-cpe-id-pkg5") + self.assertEqual(pkg_json['host-cpe-id-pkg5']['cpe-id'], + "cpe:2.5:a:baz:fuz:43:b3:*:*:*:*:*:*") diff --git a/support/testing/tests/core/test_file_capabilities.py b/support/testing/tests/core/test_file_capabilities.py new file mode 100644 index 00000000..b9ece18d --- /dev/null +++ b/support/testing/tests/core/test_file_capabilities.py @@ -0,0 +1,47 @@ +import os +import subprocess + +import infra.basetest + + +class TestFileCapabilities(infra.basetest.BRTest): + config = \ + """ + BR2_arm=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_ROOTFS_DEVICE_TABLE="system/device_table.txt {}" + BR2_ROOTFS_DEVICE_TABLE_SUPPORTS_EXTENDED_ATTRIBUTES=y + BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.11.3" + BR2_LINUX_KERNEL_DEFCONFIG="vexpress" + BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="{}" + BR2_LINUX_KERNEL_DTS_SUPPORT=y + BR2_LINUX_KERNEL_INTREE_DTS_NAME="vexpress-v2p-ca9" + BR2_PACKAGE_LIBCAP=y + BR2_PACKAGE_LIBCAP_TOOLS=y + BR2_TARGET_ROOTFS_SQUASHFS=y + # BR2_TARGET_ROOTFS_TAR is not set + """.format(infra.filepath("tests/core/device_table2.txt"), + infra.filepath("tests/core/squashfs-xattr-kernel.config")) + + def test_run(self): + img = os.path.join(self.builddir, "images", "rootfs.squashfs") + subprocess.call(["truncate", "-s", "%1M", img]) + + self.emulator.boot(arch="armv7", + kernel=os.path.join(self.builddir, "images", "zImage"), + kernel_cmdline=["root=/dev/mmcblk0", + "rootfstype=squashfs"], + options=["-drive", "file={},if=sd,format=raw".format(img), + "-M", "vexpress-a9", + "-dtb", os.path.join(self.builddir, "images", "vexpress-v2p-ca9.dtb")]) + self.emulator.login() + + cmd = "getcap -v /usr/sbin/getcap" + output, _ = self.emulator.run(cmd) + self.assertIn("cap_kill", output[0]) + self.assertIn("cap_sys_nice", output[0]) + self.assertIn("cap_sys_time", output[0]) + self.assertIn("=eip", output[0]) diff --git a/support/testing/tests/core/test_hardening.py b/support/testing/tests/core/test_hardening.py new file mode 100644 index 00000000..60e14303 --- /dev/null +++ b/support/testing/tests/core/test_hardening.py @@ -0,0 +1,114 @@ +import os +import json + +import infra.basetest + + +class TestHardeningBase(infra.basetest.BRTest): + config = \ + """ + BR2_powerpc64=y + BR2_powerpc_e5500=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y + BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y + BR2_TOOLCHAIN_EXTERNAL_URL="https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e5500/tarballs/powerpc64-e5500--glibc--stable-2018.02-2.tar.bz2" + BR2_TOOLCHAIN_EXTERNAL_GCC_6=y + BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_1=y + BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC=y + BR2_TOOLCHAIN_EXTERNAL_CXX=y + BR2_PACKAGE_LIGHTTPD=y + BR2_PACKAGE_HOST_CHECKSEC=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + checksec_files = ["usr/sbin/lighttpd", "bin/busybox"] + + def checksec_run(self, target_file): + filepath = os.path.join(self.builddir, "target", target_file) + cmd = ["host/bin/checksec", "--format=json", + "--file={}".format(filepath)] + # Checksec is being used for elf file analysis only. There are no + # assumptions of target/run-time checks as part of this testing. + ret = infra.run_cmd_on_host(self.builddir, cmd) + return json.loads(ret) + + +class TestRelro(TestHardeningBase): + config = TestHardeningBase.config + \ + """ + BR2_RELRO_FULL=y + """ + + def test_run(self): + for f in self.checksec_files: + out = self.checksec_run(f) + filepath = os.path.join(self.builddir, "target", f) + self.assertEqual(out[filepath]["relro"], "full") + self.assertEqual(out[filepath]["pie"], "yes") + + +class TestRelroPartial(TestHardeningBase): + config = TestHardeningBase.config + \ + """ + BR2_RELRO_PARTIAL=y + """ + + def test_run(self): + for f in self.checksec_files: + out = self.checksec_run(f) + filepath = os.path.join(self.builddir, "target", f) + self.assertEqual(out[filepath]["relro"], "partial") + self.assertEqual(out[filepath]["pie"], "no") + + +class TestSspNone(TestHardeningBase): + config = TestHardeningBase.config + \ + """ + BR2_SSP_NONE=y + """ + + def test_run(self): + for f in self.checksec_files: + out = self.checksec_run(f) + filepath = os.path.join(self.builddir, "target", f) + self.assertEqual(out[filepath]["canary"], "no") + + +class TestSspStrong(TestHardeningBase): + config = TestHardeningBase.config + \ + """ + BR2_SSP_STRONG=y + """ + + def test_run(self): + for f in self.checksec_files: + out = self.checksec_run(f) + filepath = os.path.join(self.builddir, "target", f) + self.assertEqual(out[filepath]["canary"], "yes") + + +class TestFortifyNone(TestHardeningBase): + config = TestHardeningBase.config + \ + """ + BR2_FORTIFY_SOURCE_NONE=y + """ + + def test_run(self): + for f in self.checksec_files: + out = self.checksec_run(f) + filepath = os.path.join(self.builddir, "target", f) + self.assertEqual(out[filepath]["fortified"], "0") + + +class TestFortifyConserv(TestHardeningBase): + config = TestHardeningBase.config + \ + """ + BR2_FORTIFY_SOURCE_1=y + """ + + def test_run(self): + for f in self.checksec_files: + out = self.checksec_run(f) + filepath = os.path.join(self.builddir, "target", f) + self.assertNotEqual(out[filepath]["fortified"], "0") diff --git a/support/testing/tests/core/test_post_scripts.py b/support/testing/tests/core/test_post_scripts.py new file mode 100644 index 00000000..bc61f4af --- /dev/null +++ b/support/testing/tests/core/test_post_scripts.py @@ -0,0 +1,48 @@ +import os +import csv + +import infra.basetest + + +class TestPostScripts(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_INIT_NONE=y + BR2_SYSTEM_BIN_SH_NONE=y + # BR2_PACKAGE_BUSYBOX is not set + BR2_ROOTFS_POST_BUILD_SCRIPT="{}" + BR2_ROOTFS_POST_FAKEROOT_SCRIPT="{}" + BR2_ROOTFS_POST_IMAGE_SCRIPT="{}" + BR2_ROOTFS_POST_SCRIPT_ARGS="foobar baz" + """.format(infra.filepath("tests/core/post-build.sh"), + infra.filepath("tests/core/post-fakeroot.sh"), + infra.filepath("tests/core/post-image.sh")) + + def check_post_log_file(self, f, what, target_dir): + lines = {} + with open(os.path.join(self.builddir, "build", f), newline='') as csvfile: + r = csv.reader(csvfile, delimiter=',') + for row in r: + lines[row[0]] = row[1] + + self.assertEqual(lines["arg1"], what) + self.assertEqual(lines["arg2"], "foobar") + self.assertEqual(lines["arg3"], "baz") + self.assertEqual(lines["TARGET_DIR"], target_dir) + self.assertEqual(lines["BUILD_DIR"], os.path.join(self.builddir, "build")) + self.assertEqual(lines["HOST_DIR"], os.path.join(self.builddir, "host")) + staging = os.readlink(os.path.join(self.builddir, "staging")) + self.assertEqual(lines["STAGING_DIR"], staging) + self.assertEqual(lines["BINARIES_DIR"], os.path.join(self.builddir, "images")) + self.assertEqual(lines["BR2_CONFIG"], os.path.join(self.builddir, ".config")) + + def test_run(self): + self.check_post_log_file("post-build.log", + os.path.join(self.builddir, "target"), + os.path.join(self.builddir, "target")) + self.check_post_log_file("post-fakeroot.log", + os.path.join(self.builddir, "build/buildroot-fs/tar/target"), + os.path.join(self.builddir, "build/buildroot-fs/tar/target")) + self.check_post_log_file("post-image.log", + os.path.join(self.builddir, "images"), + os.path.join(self.builddir, "target")) diff --git a/support/testing/tests/core/test_root_password.py b/support/testing/tests/core/test_root_password.py new file mode 100644 index 00000000..aefcd360 --- /dev/null +++ b/support/testing/tests/core/test_root_password.py @@ -0,0 +1,36 @@ +import os +import infra.basetest +from crypt import crypt + + +class TestRootPassword(infra.basetest.BRTest): + password = "foo" + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_TARGET_ROOTFS_CPIO=y + BR2_TARGET_ENABLE_ROOT_LOGIN=y + BR2_TARGET_GENERIC_ROOT_PASSWD="{}" + """.format(password) + + def test_run(self): + # 1. Test by looking hash in the /etc/shadow + shadow = os.path.join(self.builddir, "target", "etc", "shadow") + with open(shadow, "r") as f: + users = f.readlines() + for user in users: + s = user.split(":") + n, h = s[0], s[1] + if n == "root": + # Fail if the account is disabled or no password is required + self.assertTrue(h not in ["", "*"]) + # Fail if the hash isn't right + self.assertEqual(crypt(self.password, h), h) + + # 2. Test by attempting to login + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + try: + self.emulator.boot(arch="armv7", kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login(self.password) + except SystemError: + self.fail("Unable to login with the password") diff --git a/support/testing/tests/core/test_rootfs_overlay.py b/support/testing/tests/core/test_rootfs_overlay.py new file mode 100644 index 00000000..fedd40d8 --- /dev/null +++ b/support/testing/tests/core/test_rootfs_overlay.py @@ -0,0 +1,30 @@ +import os +import subprocess + +import infra.basetest + + +def compare_file(file1, file2): + return subprocess.call(["cmp", file1, file2]) + + +class TestRootfsOverlay(infra.basetest.BRTest): + + rootfs_overlay_path = infra.filepath("tests/core/rootfs-overlay") + + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + infra.basetest.MINIMAL_CONFIG + \ + """ + BR2_ROOTFS_OVERLAY="{0}1 {0}2" + """.format(rootfs_overlay_path) + + def test_run(self): + target_file = os.path.join(self.builddir, "target", "test-file1") + overlay_file = "{}1/test-file1".format(self.rootfs_overlay_path) + ret = compare_file(overlay_file, target_file) + self.assertEqual(ret, 0) + + target_file = os.path.join(self.builddir, "target", "etc", "test-file2") + overlay_file = "{}2/etc/test-file2".format(self.rootfs_overlay_path) + ret = compare_file(overlay_file, target_file) + self.assertEqual(ret, 0) diff --git a/support/testing/tests/core/test_selinux.py b/support/testing/tests/core/test_selinux.py new file mode 100644 index 00000000..683a424d --- /dev/null +++ b/support/testing/tests/core/test_selinux.py @@ -0,0 +1,86 @@ +import os + +import infra.basetest + + +class TestSELinuxInfra(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG +\ + """ + BR2_PACKAGE_REFPOLICY=y + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_SETOOLS=y + BR2_TARGET_ROOTFS_CPIO=y + """ + + def base_test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + +class TestSELinuxExtraModules(TestSELinuxInfra): + config = TestSELinuxInfra.config + \ + """ + BR2_REFPOLICY_EXTRA_MODULES="ntp tor" + """ + + def test_run(self): + TestSELinuxInfra.base_test_run(self) + + out, ret = self.emulator.run("seinfo -t ntpd_t", 15) + self.assertEqual(ret, 0) + self.assertEqual(out[2].strip(), "ntpd_t") + + out, ret = self.emulator.run("seinfo -t tor_t", 15) + self.assertEqual(ret, 0) + self.assertEqual(out[2].strip(), "tor_t") + + +class TestSELinuxExtraModulesDirs(TestSELinuxInfra): + config = TestSELinuxInfra.config + \ + """ + BR2_REFPOLICY_EXTRA_MODULES_DIRS="{}" + """.format(infra.filepath("tests/core/test_selinux/extra_modules")) + + def test_run(self): + TestSELinuxInfra.base_test_run(self) + + out, ret = self.emulator.run("seinfo -t buildroot_test_t", 15) + self.assertEqual(ret, 0) + self.assertEqual(out[2].strip(), "buildroot_test_t") + + +class TestSELinuxCustomGit(TestSELinuxInfra): + config = TestSELinuxInfra.config + \ + """ + BR2_PACKAGE_REFPOLICY_CUSTOM_GIT=y + BR2_PACKAGE_REFPOLICY_CUSTOM_REPO_URL="https://github.com/SELinuxProject/refpolicy.git" + BR2_PACKAGE_REFPOLICY_CUSTOM_REPO_VERSION="RELEASE_2_20200818" + """ + + def test_run(self): + pass + + +class TestSELinuxPackage(TestSELinuxInfra): + br2_external = [infra.filepath("tests/core/test_selinux/br2_external")] + config = TestSELinuxInfra.config + \ + """ + BR2_PACKAGE_SELINUX_TEST=y + """ + + def test_run(self): + TestSELinuxInfra.base_test_run(self) + + out, ret = self.emulator.run("seinfo -t ntpd_t", 15) + self.assertEqual(ret, 0) + self.assertEqual(out[2].strip(), "ntpd_t") + + out, ret = self.emulator.run("seinfo -t tor_t", 15) + self.assertEqual(ret, 0) + self.assertEqual(out[2].strip(), "tor_t") + + out, ret = self.emulator.run("seinfo -t buildroot_test_t", 15) + self.assertEqual(ret, 0) + self.assertEqual(out[2].strip(), "buildroot_test_t") diff --git a/support/testing/tests/core/test_selinux/br2_external/Config.in b/support/testing/tests/core/test_selinux/br2_external/Config.in new file mode 100644 index 00000000..9d9c84ee --- /dev/null +++ b/support/testing/tests/core/test_selinux/br2_external/Config.in @@ -0,0 +1 @@ +source "$BR2_EXTERNAL_SELINUX_PATH/package/selinux-test/Config.in" diff --git a/support/testing/tests/core/test_selinux/br2_external/external.desc b/support/testing/tests/core/test_selinux/br2_external/external.desc new file mode 100644 index 00000000..44b5b95f --- /dev/null +++ b/support/testing/tests/core/test_selinux/br2_external/external.desc @@ -0,0 +1 @@ +name: SELINUX diff --git a/support/testing/tests/core/test_selinux/br2_external/external.mk b/support/testing/tests/core/test_selinux/br2_external/external.mk new file mode 100644 index 00000000..54d2402d --- /dev/null +++ b/support/testing/tests/core/test_selinux/br2_external/external.mk @@ -0,0 +1 @@ +include $(sort $(wildcard $(BR2_EXTERNAL_SELINUX_PATH)/package/*/*.mk)) diff --git a/support/testing/tests/core/test_selinux/br2_external/package/selinux-test/Config.in b/support/testing/tests/core/test_selinux/br2_external/package/selinux-test/Config.in new file mode 100644 index 00000000..e30ac831 --- /dev/null +++ b/support/testing/tests/core/test_selinux/br2_external/package/selinux-test/Config.in @@ -0,0 +1,4 @@ +config BR2_PACKAGE_SELINUX_TEST + bool "SELinux test package" + help + Test package for SELinux Buildroot helpers. diff --git a/support/testing/tests/core/test_selinux/br2_external/package/selinux-test/selinux-test.mk b/support/testing/tests/core/test_selinux/br2_external/package/selinux-test/selinux-test.mk new file mode 100644 index 00000000..0100b718 --- /dev/null +++ b/support/testing/tests/core/test_selinux/br2_external/package/selinux-test/selinux-test.mk @@ -0,0 +1,9 @@ +################################################################################ +# +# SELinux test package +# +################################################################################ + +SELINUX_TEST_SELINUX_MODULES = ntp tor + +$(eval $(generic-package)) diff --git a/support/testing/tests/core/test_selinux/br2_external/package/selinux-test/selinux/buildroot.fc b/support/testing/tests/core/test_selinux/br2_external/package/selinux-test/selinux/buildroot.fc new file mode 100644 index 00000000..e69de29b diff --git a/support/testing/tests/core/test_selinux/br2_external/package/selinux-test/selinux/buildroot.if b/support/testing/tests/core/test_selinux/br2_external/package/selinux-test/selinux/buildroot.if new file mode 100644 index 00000000..acf797e6 --- /dev/null +++ b/support/testing/tests/core/test_selinux/br2_external/package/selinux-test/selinux/buildroot.if @@ -0,0 +1 @@ +## Buildroot rules diff --git a/support/testing/tests/core/test_selinux/br2_external/package/selinux-test/selinux/buildroot.te b/support/testing/tests/core/test_selinux/br2_external/package/selinux-test/selinux/buildroot.te new file mode 100644 index 00000000..266bc03b --- /dev/null +++ b/support/testing/tests/core/test_selinux/br2_external/package/selinux-test/selinux/buildroot.te @@ -0,0 +1,3 @@ +policy_module(buildroot, 1.0.0) + +type buildroot_test_t; diff --git a/support/testing/tests/core/test_selinux/extra_modules/buildroot.fc b/support/testing/tests/core/test_selinux/extra_modules/buildroot.fc new file mode 100644 index 00000000..e69de29b diff --git a/support/testing/tests/core/test_selinux/extra_modules/buildroot.if b/support/testing/tests/core/test_selinux/extra_modules/buildroot.if new file mode 100644 index 00000000..acf797e6 --- /dev/null +++ b/support/testing/tests/core/test_selinux/extra_modules/buildroot.if @@ -0,0 +1 @@ +## Buildroot rules diff --git a/support/testing/tests/core/test_selinux/extra_modules/buildroot.te b/support/testing/tests/core/test_selinux/extra_modules/buildroot.te new file mode 100644 index 00000000..266bc03b --- /dev/null +++ b/support/testing/tests/core/test_selinux/extra_modules/buildroot.te @@ -0,0 +1,3 @@ +policy_module(buildroot, 1.0.0) + +type buildroot_test_t; diff --git a/support/testing/tests/core/test_timezone.py b/support/testing/tests/core/test_timezone.py new file mode 100644 index 00000000..f6615191 --- /dev/null +++ b/support/testing/tests/core/test_timezone.py @@ -0,0 +1,72 @@ +import os + +import infra.basetest + + +def boot_armv5_cpio(emulator, builddir): + img = os.path.join(builddir, "images", "rootfs.cpio") + emulator.boot(arch="armv5", kernel="builtin", + options=["-initrd", img]) + emulator.login() + + +class TestNoTimezone(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + # BR2_TARGET_TZ_INFO is not set + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def test_run(self): + boot_armv5_cpio(self.emulator, self.builddir) + tz, _ = self.emulator.run("TZ=UTC date +%Z") + self.assertEqual(tz[0].strip(), "UTC") + tz, _ = self.emulator.run("TZ=America/Los_Angeles date +%Z") + self.assertEqual(tz[0].strip(), "UTC") + + +class TestGlibcAllTimezone(infra.basetest.BRTest): + config = \ + """ + BR2_arm=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TARGET_TZ_INFO=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def test_run(self): + boot_armv5_cpio(self.emulator, self.builddir) + tz, _ = self.emulator.run("date +%Z") + self.assertEqual(tz[0].strip(), "UTC") + tz, _ = self.emulator.run("TZ=UTC date +%Z") + self.assertEqual(tz[0].strip(), "UTC") + tz, _ = self.emulator.run("TZ=America/Los_Angeles date +%Z") + self.assertEqual(tz[0].strip(), "PST") + tz, _ = self.emulator.run("TZ=Europe/Paris date +%Z") + self.assertEqual(tz[0].strip(), "CET") + + +class TestGlibcNonDefaultLimitedTimezone(infra.basetest.BRTest): + config = \ + """ + BR2_arm=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TARGET_TZ_INFO=y + BR2_TARGET_TZ_ZONELIST="northamerica" + BR2_TARGET_LOCALTIME="America/New_York" + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def test_run(self): + boot_armv5_cpio(self.emulator, self.builddir) + tz, _ = self.emulator.run("date +%Z") + self.assertEqual(tz[0].strip(), "EST") + tz, _ = self.emulator.run("TZ=UTC date +%Z") + self.assertEqual(tz[0].strip(), "UTC") + tz, _ = self.emulator.run("TZ=America/Los_Angeles date +%Z") + self.assertEqual(tz[0].strip(), "PST") + tz, _ = self.emulator.run("TZ=Europe/Paris date +%Z") + self.assertEqual(tz[0].strip(), "Europe") diff --git a/support/testing/tests/download/__init__.py b/support/testing/tests/download/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/support/testing/tests/download/br2-external/git-hash/Config.in b/support/testing/tests/download/br2-external/git-hash/Config.in new file mode 100644 index 00000000..e69de29b diff --git a/support/testing/tests/download/br2-external/git-hash/external.desc b/support/testing/tests/download/br2-external/git-hash/external.desc new file mode 100644 index 00000000..41316c8b --- /dev/null +++ b/support/testing/tests/download/br2-external/git-hash/external.desc @@ -0,0 +1 @@ +name: GIT_HASH diff --git a/support/testing/tests/download/br2-external/git-hash/external.mk b/support/testing/tests/download/br2-external/git-hash/external.mk new file mode 100644 index 00000000..4646dfe2 --- /dev/null +++ b/support/testing/tests/download/br2-external/git-hash/external.mk @@ -0,0 +1,4 @@ +include $(sort $(wildcard $(BR2_EXTERNAL_GIT_HASH_PATH)/package/*/*.mk)) + +# Get the git server port number from the test infra +GITREMOTE_PORT_NUMBER ?= 9418 diff --git a/support/testing/tests/download/br2-external/git-hash/package/bad/bad.hash b/support/testing/tests/download/br2-external/git-hash/package/bad/bad.hash new file mode 100644 index 00000000..b44b1f82 --- /dev/null +++ b/support/testing/tests/download/br2-external/git-hash/package/bad/bad.hash @@ -0,0 +1 @@ +sha256 0000000000000000000000000000000000000000000000000000000000000000 bad-a238b1dfcd825d47d834af3c5223417c8411d90d-br1.tar.gz diff --git a/support/testing/tests/download/br2-external/git-hash/package/bad/bad.mk b/support/testing/tests/download/br2-external/git-hash/package/bad/bad.mk new file mode 100644 index 00000000..5497bd6b --- /dev/null +++ b/support/testing/tests/download/br2-external/git-hash/package/bad/bad.mk @@ -0,0 +1,10 @@ +################################################################################ +# +# bad +# +################################################################################ + +BAD_VERSION = a238b1dfcd825d47d834af3c5223417c8411d90d +BAD_SITE = git://localhost:$(GITREMOTE_PORT_NUMBER)/repo.git + +$(eval $(generic-package)) diff --git a/support/testing/tests/download/br2-external/git-hash/package/good/good.hash b/support/testing/tests/download/br2-external/git-hash/package/good/good.hash new file mode 100644 index 00000000..fc3f60da --- /dev/null +++ b/support/testing/tests/download/br2-external/git-hash/package/good/good.hash @@ -0,0 +1 @@ +sha256 682ad1f39f258bfb35e26f213f3798f44bb8105bb55fad47bdc003113765b650 good-a238b1dfcd825d47d834af3c5223417c8411d90d-br1.tar.gz diff --git a/support/testing/tests/download/br2-external/git-hash/package/good/good.mk b/support/testing/tests/download/br2-external/git-hash/package/good/good.mk new file mode 100644 index 00000000..0f0eefd9 --- /dev/null +++ b/support/testing/tests/download/br2-external/git-hash/package/good/good.mk @@ -0,0 +1,10 @@ +################################################################################ +# +# good +# +################################################################################ + +GOOD_VERSION = a238b1dfcd825d47d834af3c5223417c8411d90d +GOOD_SITE = git://localhost:$(GITREMOTE_PORT_NUMBER)/repo.git + +$(eval $(generic-package)) diff --git a/support/testing/tests/download/br2-external/git-hash/package/nohash/nohash.mk b/support/testing/tests/download/br2-external/git-hash/package/nohash/nohash.mk new file mode 100644 index 00000000..1da19d88 --- /dev/null +++ b/support/testing/tests/download/br2-external/git-hash/package/nohash/nohash.mk @@ -0,0 +1,10 @@ +################################################################################ +# +# nohash +# +################################################################################ + +NOHASH_VERSION = a238b1dfcd825d47d834af3c5223417c8411d90d +NOHASH_SITE = git://localhost:$(GITREMOTE_PORT_NUMBER)/repo.git + +$(eval $(generic-package)) diff --git a/support/testing/tests/download/br2-external/git-refs/Config.in b/support/testing/tests/download/br2-external/git-refs/Config.in new file mode 100644 index 00000000..e69de29b diff --git a/support/testing/tests/download/br2-external/git-refs/external.desc b/support/testing/tests/download/br2-external/git-refs/external.desc new file mode 100644 index 00000000..69f40d46 --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/external.desc @@ -0,0 +1 @@ +name: GIT_REFS diff --git a/support/testing/tests/download/br2-external/git-refs/external.mk b/support/testing/tests/download/br2-external/git-refs/external.mk new file mode 100644 index 00000000..ab38c27e --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/external.mk @@ -0,0 +1,4 @@ +include $(sort $(wildcard $(BR2_EXTERNAL_GIT_REFS_PATH)/package/*/*.mk)) + +# Get the git server port number from the test infra +GITREMOTE_PORT_NUMBER ?= 9418 diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-branch-head/git-partial-sha1-branch-head.hash b/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-branch-head/git-partial-sha1-branch-head.hash new file mode 100644 index 00000000..26a6b358 --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-branch-head/git-partial-sha1-branch-head.hash @@ -0,0 +1,2 @@ +sha256 c27041b3e874beb0d0218158e7d6507ad1515b684de5eed5fabd0f7205e9718e git-partial-sha1-branch-head-68c197d0879d485f4f6c-br1.tar.gz +sha256 2c1126513651b0d346a4e6d1bb75ac1c9999217e18026302d27bea47b06c7fb2 file diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-branch-head/git-partial-sha1-branch-head.mk b/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-branch-head/git-partial-sha1-branch-head.mk new file mode 100644 index 00000000..6d4177c5 --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-branch-head/git-partial-sha1-branch-head.mk @@ -0,0 +1,11 @@ +################################################################################ +# +# git-partial-sha1-branch-head +# +################################################################################ + +GIT_PARTIAL_SHA1_BRANCH_HEAD_VERSION = 68c197d0879d485f4f6c +GIT_PARTIAL_SHA1_BRANCH_HEAD_SITE = git://localhost:$(GITREMOTE_PORT_NUMBER)/repo.git +GIT_PARTIAL_SHA1_BRANCH_HEAD_LICENSE_FILES = file + +$(eval $(generic-package)) diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-reachable-by-branch/git-partial-sha1-reachable-by-branch.hash b/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-reachable-by-branch/git-partial-sha1-reachable-by-branch.hash new file mode 100644 index 00000000..ab1edc73 --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-reachable-by-branch/git-partial-sha1-reachable-by-branch.hash @@ -0,0 +1,2 @@ +sha256 1bbba9bf2788bd789ed8da4e47cabbf3467b1f706875b3f6b62df38e08fb9aba git-partial-sha1-reachable-by-branch-317406308d9259e2231b-br1.tar.gz +sha256 fabbc65c442bacb5e69b7adfea6d14fbbfc1327134322efd12771dc84387d507 file diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-reachable-by-branch/git-partial-sha1-reachable-by-branch.mk b/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-reachable-by-branch/git-partial-sha1-reachable-by-branch.mk new file mode 100644 index 00000000..2f65b5c9 --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-reachable-by-branch/git-partial-sha1-reachable-by-branch.mk @@ -0,0 +1,11 @@ +################################################################################ +# +# git-partial-sha1-reachable-by-branch +# +################################################################################ + +GIT_PARTIAL_SHA1_REACHABLE_BY_BRANCH_VERSION = 317406308d9259e2231b +GIT_PARTIAL_SHA1_REACHABLE_BY_BRANCH_SITE = git://localhost:$(GITREMOTE_PORT_NUMBER)/repo.git +GIT_PARTIAL_SHA1_REACHABLE_BY_BRANCH_LICENSE_FILES = file + +$(eval $(generic-package)) diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-reachable-by-tag/git-partial-sha1-reachable-by-tag.hash b/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-reachable-by-tag/git-partial-sha1-reachable-by-tag.hash new file mode 100644 index 00000000..e4a08342 --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-reachable-by-tag/git-partial-sha1-reachable-by-tag.hash @@ -0,0 +1,2 @@ +sha256 52d223f3b2d625216c259e9ff949ca8818452a531ba61557dd91f3889c7919d7 git-partial-sha1-reachable-by-tag-46bae5b639e5a18e2cc4-br1.tar.gz +sha256 2de87d77a2f226813f2d9bda906e970e4195605cdba6680443c0c04d89c532b6 file diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-reachable-by-tag/git-partial-sha1-reachable-by-tag.mk b/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-reachable-by-tag/git-partial-sha1-reachable-by-tag.mk new file mode 100644 index 00000000..05aa659d --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-reachable-by-tag/git-partial-sha1-reachable-by-tag.mk @@ -0,0 +1,11 @@ +################################################################################ +# +# git-partial-sha1-reachable-by-tag +# +################################################################################ + +GIT_PARTIAL_SHA1_REACHABLE_BY_TAG_VERSION = 46bae5b639e5a18e2cc4 +GIT_PARTIAL_SHA1_REACHABLE_BY_TAG_SITE = git://localhost:$(GITREMOTE_PORT_NUMBER)/repo.git +GIT_PARTIAL_SHA1_REACHABLE_BY_TAG_LICENSE_FILES = file + +$(eval $(generic-package)) diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-tag-itself/git-partial-sha1-tag-itself.hash b/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-tag-itself/git-partial-sha1-tag-itself.hash new file mode 100644 index 00000000..6e83e637 --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-tag-itself/git-partial-sha1-tag-itself.hash @@ -0,0 +1,2 @@ +sha256 5cfc004b05f48b3fb419a5db4b7239223d670225fbbb91de2ae151c97910b36c git-partial-sha1-tag-itself-2b0e0d98a49c97da6a61-br1.tar.gz +sha256 6de8772a0a58fa62e2b8c58d4dae55c9db7534ad3b3918ecc849a9008d58f081 file diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-tag-itself/git-partial-sha1-tag-itself.mk b/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-tag-itself/git-partial-sha1-tag-itself.mk new file mode 100644 index 00000000..51549239 --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-tag-itself/git-partial-sha1-tag-itself.mk @@ -0,0 +1,11 @@ +################################################################################ +# +# git-partial-sha1-tag-itself +# +################################################################################ + +GIT_PARTIAL_SHA1_TAG_ITSELF_VERSION = 2b0e0d98a49c97da6a61 +GIT_PARTIAL_SHA1_TAG_ITSELF_SITE = git://localhost:$(GITREMOTE_PORT_NUMBER)/repo.git +GIT_PARTIAL_SHA1_TAG_ITSELF_LICENSE_FILES = file + +$(eval $(generic-package)) diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-tag-points-to/git-partial-sha1-tag-points-to.hash b/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-tag-points-to/git-partial-sha1-tag-points-to.hash new file mode 100644 index 00000000..7d538e72 --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-tag-points-to/git-partial-sha1-tag-points-to.hash @@ -0,0 +1,2 @@ +sha256 0f40d7f39bf2e389cc2ce03c73cc0cc9ded1119378aaa68e2a2ef8597f6fd2f3 git-partial-sha1-tag-points-to-516c9c5f64ec66534d4d-br1.tar.gz +sha256 6de8772a0a58fa62e2b8c58d4dae55c9db7534ad3b3918ecc849a9008d58f081 file diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-tag-points-to/git-partial-sha1-tag-points-to.mk b/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-tag-points-to/git-partial-sha1-tag-points-to.mk new file mode 100644 index 00000000..c810e811 --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-tag-points-to/git-partial-sha1-tag-points-to.mk @@ -0,0 +1,11 @@ +################################################################################ +# +# git-partial-sha1-tag-points-to +# +################################################################################ + +GIT_PARTIAL_SHA1_TAG_POINTS_TO_VERSION = 516c9c5f64ec66534d4d +GIT_PARTIAL_SHA1_TAG_POINTS_TO_SITE = git://localhost:$(GITREMOTE_PORT_NUMBER)/repo.git +GIT_PARTIAL_SHA1_TAG_POINTS_TO_LICENSE_FILES = file + +$(eval $(generic-package)) diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-sha1-branch-head/git-sha1-branch-head.hash b/support/testing/tests/download/br2-external/git-refs/package/git-sha1-branch-head/git-sha1-branch-head.hash new file mode 100644 index 00000000..2fc4fbcb --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-sha1-branch-head/git-sha1-branch-head.hash @@ -0,0 +1,2 @@ +sha256 3ab67c485ce1825abbbf5db1d90d94dfadc89b30bb740041cfc75fc04021e218 git-sha1-branch-head-68c197d0879d485f4f6cee85544722b79e68e59f-br1.tar.gz +sha256 2c1126513651b0d346a4e6d1bb75ac1c9999217e18026302d27bea47b06c7fb2 file diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-sha1-branch-head/git-sha1-branch-head.mk b/support/testing/tests/download/br2-external/git-refs/package/git-sha1-branch-head/git-sha1-branch-head.mk new file mode 100644 index 00000000..d3ecaa85 --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-sha1-branch-head/git-sha1-branch-head.mk @@ -0,0 +1,11 @@ +################################################################################ +# +# git-sha1-branch-head +# +################################################################################ + +GIT_SHA1_BRANCH_HEAD_VERSION = 68c197d0879d485f4f6cee85544722b79e68e59f +GIT_SHA1_BRANCH_HEAD_SITE = git://localhost:$(GITREMOTE_PORT_NUMBER)/repo.git +GIT_SHA1_BRANCH_HEAD_LICENSE_FILES = file + +$(eval $(generic-package)) diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-sha1-reachable-by-branch/git-sha1-reachable-by-branch.hash b/support/testing/tests/download/br2-external/git-refs/package/git-sha1-reachable-by-branch/git-sha1-reachable-by-branch.hash new file mode 100644 index 00000000..38f0578f --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-sha1-reachable-by-branch/git-sha1-reachable-by-branch.hash @@ -0,0 +1,2 @@ +sha256 a5936d6d6022ea101a6076864a2afa918ab2776764012c4be589027001044041 git-sha1-reachable-by-branch-317406308d9259e2231bd0d6ddad3de3832bce08-br1.tar.gz +sha256 fabbc65c442bacb5e69b7adfea6d14fbbfc1327134322efd12771dc84387d507 file diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-sha1-reachable-by-branch/git-sha1-reachable-by-branch.mk b/support/testing/tests/download/br2-external/git-refs/package/git-sha1-reachable-by-branch/git-sha1-reachable-by-branch.mk new file mode 100644 index 00000000..badf9e13 --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-sha1-reachable-by-branch/git-sha1-reachable-by-branch.mk @@ -0,0 +1,11 @@ +################################################################################ +# +# git-sha1-reachable-by-branch +# +################################################################################ + +GIT_SHA1_REACHABLE_BY_BRANCH_VERSION = 317406308d9259e2231bd0d6ddad3de3832bce08 +GIT_SHA1_REACHABLE_BY_BRANCH_SITE = git://localhost:$(GITREMOTE_PORT_NUMBER)/repo.git +GIT_SHA1_REACHABLE_BY_BRANCH_LICENSE_FILES = file + +$(eval $(generic-package)) diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-sha1-reachable-by-tag/git-sha1-reachable-by-tag.hash b/support/testing/tests/download/br2-external/git-refs/package/git-sha1-reachable-by-tag/git-sha1-reachable-by-tag.hash new file mode 100644 index 00000000..bd4673b1 --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-sha1-reachable-by-tag/git-sha1-reachable-by-tag.hash @@ -0,0 +1,2 @@ +sha256 c203f968e358ca478d4c5344b1e4ae9bf13f9fb1120f2ed96a12154dd64195a6 git-sha1-reachable-by-tag-46bae5b639e5a18e2cc4dc508f080d566baeff59-br1.tar.gz +sha256 2de87d77a2f226813f2d9bda906e970e4195605cdba6680443c0c04d89c532b6 file diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-sha1-reachable-by-tag/git-sha1-reachable-by-tag.mk b/support/testing/tests/download/br2-external/git-refs/package/git-sha1-reachable-by-tag/git-sha1-reachable-by-tag.mk new file mode 100644 index 00000000..b5fde7b5 --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-sha1-reachable-by-tag/git-sha1-reachable-by-tag.mk @@ -0,0 +1,11 @@ +################################################################################ +# +# git-sha1-reachable-by-tag +# +################################################################################ + +GIT_SHA1_REACHABLE_BY_TAG_VERSION = 46bae5b639e5a18e2cc4dc508f080d566baeff59 +GIT_SHA1_REACHABLE_BY_TAG_SITE = git://localhost:$(GITREMOTE_PORT_NUMBER)/repo.git +GIT_SHA1_REACHABLE_BY_TAG_LICENSE_FILES = file + +$(eval $(generic-package)) diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-sha1-tag-itself/git-sha1-tag-itself.hash b/support/testing/tests/download/br2-external/git-refs/package/git-sha1-tag-itself/git-sha1-tag-itself.hash new file mode 100644 index 00000000..c6862da7 --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-sha1-tag-itself/git-sha1-tag-itself.hash @@ -0,0 +1,2 @@ +sha256 57f08e9f3914e79a10e7fb5d346b26fef2773dd22eed0d61fd755e79e62cee93 git-sha1-tag-itself-2b0e0d98a49c97da6a618ab36337e2058eb733a2-br1.tar.gz +sha256 6de8772a0a58fa62e2b8c58d4dae55c9db7534ad3b3918ecc849a9008d58f081 file diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-sha1-tag-itself/git-sha1-tag-itself.mk b/support/testing/tests/download/br2-external/git-refs/package/git-sha1-tag-itself/git-sha1-tag-itself.mk new file mode 100644 index 00000000..89144966 --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-sha1-tag-itself/git-sha1-tag-itself.mk @@ -0,0 +1,11 @@ +################################################################################ +# +# git-sha1-tag-itself +# +################################################################################ + +GIT_SHA1_TAG_ITSELF_VERSION = 2b0e0d98a49c97da6a618ab36337e2058eb733a2 +GIT_SHA1_TAG_ITSELF_SITE = git://localhost:$(GITREMOTE_PORT_NUMBER)/repo.git +GIT_SHA1_TAG_ITSELF_LICENSE_FILES = file + +$(eval $(generic-package)) diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-sha1-tag-points-to/git-sha1-tag-points-to.hash b/support/testing/tests/download/br2-external/git-refs/package/git-sha1-tag-points-to/git-sha1-tag-points-to.hash new file mode 100644 index 00000000..188cb689 --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-sha1-tag-points-to/git-sha1-tag-points-to.hash @@ -0,0 +1,2 @@ +sha256 1d8b565827137aa21ba37cde382aa291e33a135c697e38dcd31f14e195386327 git-sha1-tag-points-to-516c9c5f64ec66534d4d069c2e408d9ae4dce023-br1.tar.gz +sha256 6de8772a0a58fa62e2b8c58d4dae55c9db7534ad3b3918ecc849a9008d58f081 file diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-sha1-tag-points-to/git-sha1-tag-points-to.mk b/support/testing/tests/download/br2-external/git-refs/package/git-sha1-tag-points-to/git-sha1-tag-points-to.mk new file mode 100644 index 00000000..adaae732 --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-sha1-tag-points-to/git-sha1-tag-points-to.mk @@ -0,0 +1,11 @@ +################################################################################ +# +# git-sha1-tag-points-to +# +################################################################################ + +GIT_SHA1_TAG_POINTS_TO_VERSION = 516c9c5f64ec66534d4d069c2e408d9ae4dce023 +GIT_SHA1_TAG_POINTS_TO_SITE = git://localhost:$(GITREMOTE_PORT_NUMBER)/repo.git +GIT_SHA1_TAG_POINTS_TO_LICENSE_FILES = file + +$(eval $(generic-package)) diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-submodule-disabled/git-submodule-disabled.hash b/support/testing/tests/download/br2-external/git-refs/package/git-submodule-disabled/git-submodule-disabled.hash new file mode 100644 index 00000000..c0698e7b --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-submodule-disabled/git-submodule-disabled.hash @@ -0,0 +1,2 @@ +sha256 e8e0febc7f1408df22bce2d73d9a30081e03b45e152bc25effd14435ca8b3433 git-submodule-disabled-a9dbc1e23c45e8e1b88c0448763f54d714eb6f8f-br1.tar.gz +sha256 ba8b6ddc4726bfb6a05045ebfd8c43263c968ad1bc601bd46a25bc055008eddc file diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-submodule-disabled/git-submodule-disabled.mk b/support/testing/tests/download/br2-external/git-refs/package/git-submodule-disabled/git-submodule-disabled.mk new file mode 100644 index 00000000..7a35b3b5 --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-submodule-disabled/git-submodule-disabled.mk @@ -0,0 +1,11 @@ +################################################################################ +# +# git-submodule-disabled +# +################################################################################ + +GIT_SUBMODULE_DISABLED_VERSION = a9dbc1e23c45e8e1b88c0448763f54d714eb6f8f +GIT_SUBMODULE_DISABLED_SITE = git://localhost:$(GITREMOTE_PORT_NUMBER)/repo.git +GIT_SUBMODULE_DISABLED_LICENSE_FILES = file + +$(eval $(generic-package)) diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-submodule-enabled/git-submodule-enabled.hash b/support/testing/tests/download/br2-external/git-refs/package/git-submodule-enabled/git-submodule-enabled.hash new file mode 100644 index 00000000..b95c51fe --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-submodule-enabled/git-submodule-enabled.hash @@ -0,0 +1 @@ +sha256 176c32f10ad11f290b6251d701835450292ba281eb59c7fb57b244407a55ceab git-submodule-enabled-a9dbc1e23c45e8e1b88c0448763f54d714eb6f8f-br1.tar.gz diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-submodule-enabled/git-submodule-enabled.mk b/support/testing/tests/download/br2-external/git-refs/package/git-submodule-enabled/git-submodule-enabled.mk new file mode 100644 index 00000000..48a42f5e --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-submodule-enabled/git-submodule-enabled.mk @@ -0,0 +1,11 @@ +################################################################################ +# +# git-submodule-enabled +# +################################################################################ + +GIT_SUBMODULE_ENABLED_VERSION = a9dbc1e23c45e8e1b88c0448763f54d714eb6f8f +GIT_SUBMODULE_ENABLED_SITE = git://localhost:$(GITREMOTE_PORT_NUMBER)/repo.git +GIT_SUBMODULE_ENABLED_GIT_SUBMODULES = YES + +$(eval $(generic-package)) diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-tag/git-tag.hash b/support/testing/tests/download/br2-external/git-refs/package/git-tag/git-tag.hash new file mode 100644 index 00000000..c7ebcf0e --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-tag/git-tag.hash @@ -0,0 +1,2 @@ +sha256 c66b2366d8ccb1670951012334fe8d48de3358aef39b3da2912b339448fefcde git-tag-mytag-br1.tar.gz +sha256 6de8772a0a58fa62e2b8c58d4dae55c9db7534ad3b3918ecc849a9008d58f081 file diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-tag/git-tag.mk b/support/testing/tests/download/br2-external/git-refs/package/git-tag/git-tag.mk new file mode 100644 index 00000000..6960ceb2 --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-tag/git-tag.mk @@ -0,0 +1,11 @@ +################################################################################ +# +# git-tag +# +################################################################################ + +GIT_TAG_VERSION = mytag +GIT_TAG_SITE = git://localhost:$(GITREMOTE_PORT_NUMBER)/repo.git +GIT_TAG_LICENSE_FILES = file + +$(eval $(generic-package)) diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-wrong-content/git-wrong-content.hash b/support/testing/tests/download/br2-external/git-refs/package/git-wrong-content/git-wrong-content.hash new file mode 100644 index 00000000..453ffc0a --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-wrong-content/git-wrong-content.hash @@ -0,0 +1,2 @@ + sha256 4a230e667227310289438cd7d899276a0d45ca8778abfd043dfc0a10ed2c9085 git-wrong-content-a238b1dfcd825d47d834af3c5223417c8411d90d-br1.tar.gz + sha256 0000000000000000000000000000000000000000000000000000000000000000 file diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-wrong-content/git-wrong-content.mk b/support/testing/tests/download/br2-external/git-refs/package/git-wrong-content/git-wrong-content.mk new file mode 100644 index 00000000..786224da --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-wrong-content/git-wrong-content.mk @@ -0,0 +1,11 @@ +################################################################################ +# +# git-wrong-content +# +################################################################################ + +GIT_WRONG_CONTENT_VERSION = a238b1dfcd825d47d834af3c5223417c8411d90d +GIT_WRONG_CONTENT_SITE = git://localhost:$(GITREMOTE_PORT_NUMBER)/repo.git +GIT_WRONG_CONTENT_LICENSE_FILES = file + +$(eval $(generic-package)) diff --git a/support/testing/tests/download/br2-external/git-refs/package/git-wrong-sha1/git-wrong-sha1.mk b/support/testing/tests/download/br2-external/git-refs/package/git-wrong-sha1/git-wrong-sha1.mk new file mode 100644 index 00000000..f9d0d222 --- /dev/null +++ b/support/testing/tests/download/br2-external/git-refs/package/git-wrong-sha1/git-wrong-sha1.mk @@ -0,0 +1,11 @@ +################################################################################ +# +# git-wrong-sha1 +# +################################################################################ + +GIT_WRONG_SHA1_VERSION = 0000000000000000000000000000000000000000 +GIT_WRONG_SHA1_SITE = git://localhost:$(GITREMOTE_PORT_NUMBER)/repo.git +GIT_WRONG_SHA1_LICENSE_FILES = file + +$(eval $(generic-package)) diff --git a/support/testing/tests/download/git-remote/refs-sub1.git/.gitattributes b/support/testing/tests/download/git-remote/refs-sub1.git/.gitattributes new file mode 100644 index 00000000..eb50c64a --- /dev/null +++ b/support/testing/tests/download/git-remote/refs-sub1.git/.gitattributes @@ -0,0 +1 @@ +objects/*/* binary diff --git a/support/testing/tests/download/git-remote/refs-sub1.git/HEAD b/support/testing/tests/download/git-remote/refs-sub1.git/HEAD new file mode 100644 index 00000000..4e92c1f2 --- /dev/null +++ b/support/testing/tests/download/git-remote/refs-sub1.git/HEAD @@ -0,0 +1 @@ +cb545facf77bbc5f24f95b6d503c338d10b7b717 diff --git a/support/testing/tests/download/git-remote/refs-sub1.git/config b/support/testing/tests/download/git-remote/refs-sub1.git/config new file mode 100644 index 00000000..07d359d0 --- /dev/null +++ b/support/testing/tests/download/git-remote/refs-sub1.git/config @@ -0,0 +1,4 @@ +[core] + repositoryformatversion = 0 + filemode = true + bare = true diff --git a/support/testing/tests/download/git-remote/refs-sub1.git/objects/07/cabc655213bdf7087d8dd50fda95124e935570 b/support/testing/tests/download/git-remote/refs-sub1.git/objects/07/cabc655213bdf7087d8dd50fda95124e935570 new file mode 100644 index 0000000000000000000000000000000000000000..cbf5085af8cdca19c43017c92369ddc8002f1a3d GIT binary patch literal 22 dcmbUJ21Qop+W=aH2UY+8 literal 0 HcmV?d00001 diff --git a/support/testing/tests/download/git-remote/refs-sub1.git/objects/1d/f823cb8a6d1866148ae50a8009762a9c4c777f b/support/testing/tests/download/git-remote/refs-sub1.git/objects/1d/f823cb8a6d1866148ae50a8009762a9c4c777f new file mode 100644 index 0000000000000000000000000000000000000000..04055b899ecbdc3bceb2d7936757f360e90544a5 GIT binary patch literal 180 zcmV;l089UP0j-Wf4#FT106p^xK2WpJg47t}2fXMDb{9~h6hrag?``72yYV{7OomI& zsmWfORjVOLR6Sr+R$C(U-VSb1q?wp3@(?`O-VrJk53FHoGCBYi%*KHN7_CMVmVh>k zG4N<%AvQY_fi>fV64+lcAx>o iLYL_l{*)8*lT@dLIH$`Ld{<)Z=(YXjRlEVZ`fTHP_gG8- literal 0 HcmV?d00001 diff --git a/support/testing/tests/download/git-remote/refs-sub1.git/objects/7d/52f458bdb0f9f5a4beb46fa82824421b8b988e b/support/testing/tests/download/git-remote/refs-sub1.git/objects/7d/52f458bdb0f9f5a4beb46fa82824421b8b988e new file mode 100644 index 0000000000000000000000000000000000000000..2b78a01965068cc6f7c89402eea4e7f9a03ba807 GIT binary patch literal 65 zcmV-H0KWft0ZYosPf{>5V~8#;P0GzrDa}b$P%27IE7k?_jg(@!I13U>G8AkT;9^{y XrA0YF0X;o^xR_pgW(gMne83k7uwXDWFfcPQQP4}zEXmDJDa}bOW~dGN60vu~&#z1NZOLDu zq2eUnJ);k*EG;u9m4W@#p41@Wz27-%d$01}nkwWsIkdpg%m4@!ic-^xb&E@rj2O=P cCjD3J+P-ChfArrU3~L^=ueW&(03qxzkxyhgmjD0& literal 0 HcmV?d00001 diff --git a/support/testing/tests/download/git-remote/refs-sub1.git/objects/bc/c81ba6e5bd8bf52c95688ae8d3e697e131fa23 b/support/testing/tests/download/git-remote/refs-sub1.git/objects/bc/c81ba6e5bd8bf52c95688ae8d3e697e131fa23 new file mode 100644 index 0000000000000000000000000000000000000000..7d2a9d55c1a92dfa2122308cc05a4a5b96d70d8f GIT binary patch literal 22 dcmb7uwXDWFfcPQQP4}zEXmDJDa}bOW~dGN60vu~&#z1NZOLDu zq2eUnJ);k*EG;u9m0`~b>19v%c7N5Gn$h**^0Vm=4Sy*cni&9rLQ!g3v2Jl`k`cpM c-=zPFUE8-T@Q?ocgJI2s_VqTe0l@My>J95W4gdfE literal 0 HcmV?d00001 diff --git a/support/testing/tests/download/git-remote/refs-sub1.git/objects/e7/9c5e8f964493290a409888d5413a737e8e5dd5 b/support/testing/tests/download/git-remote/refs-sub1.git/objects/e7/9c5e8f964493290a409888d5413a737e8e5dd5 new file mode 100644 index 0000000000000000000000000000000000000000..df2037a2d2d30afb20e31cd558c92c2edabe7cf6 GIT binary patch literal 23 fcmbeEHo=7RuBigTc zdbzh&r$+0a<|suo8w3gBg5A7viIdm@=pYIf-q5*1A#+gQX_S5HOx}4(Sz;v0UaXVN zQ(zC65mz=qk)nwzUFSz1`dD)s-1U1Jv+lWHKC6BicRaKQzMWgDUx(b=t2Q21@L>hi m3s?Yk)7$hc|CCdgE1AV8b*ksR@X|#V`g#7#tNI184{X$IS6W&C literal 0 HcmV?d00001 diff --git a/support/testing/tests/download/git-remote/refs-sub1.git/refs/heads/submodule b/support/testing/tests/download/git-remote/refs-sub1.git/refs/heads/submodule new file mode 100644 index 00000000..bf97dc41 --- /dev/null +++ b/support/testing/tests/download/git-remote/refs-sub1.git/refs/heads/submodule @@ -0,0 +1 @@ +1df823cb8a6d1866148ae50a8009762a9c4c777f diff --git a/support/testing/tests/download/git-remote/refs-sub2.git/.gitattributes b/support/testing/tests/download/git-remote/refs-sub2.git/.gitattributes new file mode 100644 index 00000000..eb50c64a --- /dev/null +++ b/support/testing/tests/download/git-remote/refs-sub2.git/.gitattributes @@ -0,0 +1 @@ +objects/*/* binary diff --git a/support/testing/tests/download/git-remote/refs-sub2.git/HEAD b/support/testing/tests/download/git-remote/refs-sub2.git/HEAD new file mode 100644 index 00000000..bbf19a4b --- /dev/null +++ b/support/testing/tests/download/git-remote/refs-sub2.git/HEAD @@ -0,0 +1 @@ +32d61bae693af7879da63b89a60d3ae67f851e56 diff --git a/support/testing/tests/download/git-remote/refs-sub2.git/config b/support/testing/tests/download/git-remote/refs-sub2.git/config new file mode 100644 index 00000000..07d359d0 --- /dev/null +++ b/support/testing/tests/download/git-remote/refs-sub2.git/config @@ -0,0 +1,4 @@ +[core] + repositoryformatversion = 0 + filemode = true + bare = true diff --git a/support/testing/tests/download/git-remote/refs-sub2.git/objects/0a/846af45c3e455789435f49f80d70e86b65b9d7 b/support/testing/tests/download/git-remote/refs-sub2.git/objects/0a/846af45c3e455789435f49f80d70e86b65b9d7 new file mode 100644 index 0000000000000000000000000000000000000000..aaa29dbd8a5a74a24f51a8522b695a7474349f3c GIT binary patch literal 22 dcmb9VlXr?Ff%bxNXyJgW#DSb`VwR38s6y~@A-qb;6--o&g%g8 GZVq_HQWiM? literal 0 HcmV?d00001 diff --git a/support/testing/tests/download/git-remote/refs-sub2.git/objects/85/8f666af75b7c0dfba6b8be7eac5f196e7a1221 b/support/testing/tests/download/git-remote/refs-sub2.git/objects/85/8f666af75b7c0dfba6b8be7eac5f196e7a1221 new file mode 100644 index 0000000000000000000000000000000000000000..10f24a087ff08320b8fc5922db728472bd276e9a GIT binary patch literal 49 zcmb3 literal 0 HcmV?d00001 diff --git a/support/testing/tests/download/git-remote/refs-sub2.git/objects/99/f2e3e1cb15f9b52fa29f66d380dda061d917ab b/support/testing/tests/download/git-remote/refs-sub2.git/objects/99/f2e3e1cb15f9b52fa29f66d380dda061d917ab new file mode 100644 index 0000000000000000000000000000000000000000..9db72668cf9374b0b85a25a19f30084fd460072d GIT binary patch literal 49 zcmbfy8RY^ z{@h!u)9yV!%^_kFCJiBwM&y{GC{y6X5`{9VdkzxGdGE{*4cVs6Wi7$0dY6bJuLP?i zYtaNiSs+EyeHJ!!na4itXU#N9w;wcS-Eu#ls(l^*xNA3jKQyY}yWHEGbqEPCphLTW k2QXK?PEUDI&YUmo7jMj0J#12zuDbB=%RR5=4+?N@DHiEdA^-pY literal 0 HcmV?d00001 diff --git a/support/testing/tests/download/git-remote/refs-sub2.git/refs/heads/submodule b/support/testing/tests/download/git-remote/refs-sub2.git/refs/heads/submodule new file mode 100644 index 00000000..39dc53f0 --- /dev/null +++ b/support/testing/tests/download/git-remote/refs-sub2.git/refs/heads/submodule @@ -0,0 +1 @@ +e83f6f805bd016b90acafc8702c52d778eb57310 diff --git a/support/testing/tests/download/git-remote/repo.git/.gitattributes b/support/testing/tests/download/git-remote/repo.git/.gitattributes new file mode 100644 index 00000000..eb50c64a --- /dev/null +++ b/support/testing/tests/download/git-remote/repo.git/.gitattributes @@ -0,0 +1 @@ +objects/*/* binary diff --git a/support/testing/tests/download/git-remote/repo.git/HEAD b/support/testing/tests/download/git-remote/repo.git/HEAD new file mode 100644 index 00000000..cb089cd8 --- /dev/null +++ b/support/testing/tests/download/git-remote/repo.git/HEAD @@ -0,0 +1 @@ +ref: refs/heads/master diff --git a/support/testing/tests/download/git-remote/repo.git/config b/support/testing/tests/download/git-remote/repo.git/config new file mode 100644 index 00000000..07d359d0 --- /dev/null +++ b/support/testing/tests/download/git-remote/repo.git/config @@ -0,0 +1,4 @@ +[core] + repositoryformatversion = 0 + filemode = true + bare = true diff --git a/support/testing/tests/download/git-remote/repo.git/objects/0b/d8ceb961c3b2b210f64a67d57f4b5cd669d343 b/support/testing/tests/download/git-remote/repo.git/objects/0b/d8ceb961c3b2b210f64a67d57f4b5cd669d343 new file mode 100644 index 0000000000000000000000000000000000000000..ef7fbd4154aea755d8ee2684e420700467e9245c GIT binary patch literal 22 dcmbAT(SQY{RanuOb literal 0 HcmV?d00001 diff --git a/support/testing/tests/download/git-remote/repo.git/objects/25/59d83bfe937fc0412d96ed664663c9e8a99055 b/support/testing/tests/download/git-remote/repo.git/objects/25/59d83bfe937fc0412d96ed664663c9e8a99055 new file mode 100644 index 0000000000000000000000000000000000000000..cbf60fc7298ec12b3d7cd388fecac606ca31536e GIT binary patch literal 22 dcmbfX_pTQVgXFZ*LP9?v2|?W-`9y zoEleBZ(1ed0ZDFA1Yzu;w9*KG;8n@fvydbGOYBD68F&+@j z>O_rU6i9A}CNjIUTdDk¦'ÿSN•^¬R§zÞ˜–.²”ï׿̪1nS \ No newline at end of file diff --git a/support/testing/tests/download/git-remote/repo.git/objects/34/d1da713bf7de1c535e1d7d3ca985afd84bc7e5 b/support/testing/tests/download/git-remote/repo.git/objects/34/d1da713bf7de1c535e1d7d3ca985afd84bc7e5 new file mode 100644 index 0000000000000000000000000000000000000000..29f2d4fd004afa03b43e3148207e258e7aa9fc41 GIT binary patch literal 23 fcmbAT3SQY^Qam@(V literal 0 HcmV?d00001 diff --git a/support/testing/tests/download/git-remote/repo.git/objects/46/bae5b639e5a18e2cc4dc508f080d566baeff59 b/support/testing/tests/download/git-remote/repo.git/objects/46/bae5b639e5a18e2cc4dc508f080d566baeff59 new file mode 100644 index 00000000..3bf8865e --- /dev/null +++ b/support/testing/tests/download/git-remote/repo.git/objects/46/bae5b639e5a18e2cc4dc508f080d566baeff59 @@ -0,0 +1 @@ +x­Î1n!@Qל‚ ¬Å0àa£(òÒÄ'˜e`�–“··¥î-·¯øú±ÕZ†F‹»ÑSÒ1›ìrðB )![±~™çƒ‡À�(±1 ~¹§mh¶�%X/Ž$ ãŒÑ[‹( ³Åãܺþ*‘»4ýÉ}”-¶ËwÑïý÷õ�ǵrùÙÇV?4xC³pðz2hŒºë}z¤åÔà”:•uK2µœ§åúöÌ©ºÍFkb \ No newline at end of file diff --git a/support/testing/tests/download/git-remote/repo.git/objects/51/6c9c5f64ec66534d4d069c2e408d9ae4dce023 b/support/testing/tests/download/git-remote/repo.git/objects/51/6c9c5f64ec66534d4d069c2e408d9ae4dce023 new file mode 100644 index 00000000..0bda23ab --- /dev/null +++ b/support/testing/tests/download/git-remote/repo.git/objects/51/6c9c5f64ec66534d4d069c2e408d9ae4dce023 @@ -0,0 +1,2 @@ +x­ÎKN1EQÆ^…7БåBQ6À„¬ º\n¬à6rœ»'æˆéyÒÓ¥ÞZ�Òû4³dc|ZK +¾pÖœÅ\ôV“Ââ‚uшO¼OéüŠ «·‰udCä2�ŠEE•Á?æR ¼Í÷>ä[%¹ËW³îÔ¯—*_ÆÚ/ž¶†õã@½¥D¬\”UJÜõ=ùŸîÄÄÍq®ÛÎyé¥,ë×ó_JÅ7Êle \ No newline at end of file diff --git a/support/testing/tests/download/git-remote/repo.git/objects/68/c197d0879d485f4f6cee85544722b79e68e59f b/support/testing/tests/download/git-remote/repo.git/objects/68/c197d0879d485f4f6cee85544722b79e68e59f new file mode 100644 index 00000000..3e421bb9 --- /dev/null +++ b/support/testing/tests/download/git-remote/repo.git/objects/68/c197d0879d485f4f6cee85544722b79e68e59f @@ -0,0 +1 @@ +x­Î=N1†ajŸÂØÈ;³ë„ !'ÏL+x�Œ)¸=+¥HÑ>Ò÷éåVkÁ?�®j3,cð°¨pˆâ ÍxA&I™R`拺nûp‹óè¢$X“àœÅ‰!AQŒ™ÕEC?ãÒºý(L]š}§>ÊÆíûZìK¿á¡Þñí\©|¸ÕW;¯.¤5¢G;9tÎìºGý§;“;m|cŽå¼©Lítšòïó#±æ$bl· \ No newline at end of file diff --git a/support/testing/tests/download/git-remote/repo.git/objects/8b/8a7e885a041da72b1ee9a47c5b9300b172a9e7 b/support/testing/tests/download/git-remote/repo.git/objects/8b/8a7e885a041da72b1ee9a47c5b9300b172a9e7 new file mode 100644 index 0000000000000000000000000000000000000000..70cf1795f3210f81951d0995823bb958867ba710 GIT binary patch literal 65 zcmbc8ET5e-2otN7bXAz literal 0 HcmV?d00001 diff --git a/support/testing/tests/download/git-remote/repo.git/objects/92/ef85be57d627f280d8ce3724452ac21c9a6452 b/support/testing/tests/download/git-remote/repo.git/objects/92/ef85be57d627f280d8ce3724452ac21c9a6452 new file mode 100644 index 0000000000000000000000000000000000000000..1f2474ba3209802c0f297f390eb517b4419621f9 GIT binary patch literal 20 bcmbRu$&;~&-~u5KipxZpJlJ^_>ocTx0A{CtxuHtpv)kOZ{w$R{aqq=Y5Kr@lr^^Nx#*Anz+HXf*Qs*3>|(2*8XW|19*ox$ l7yz~DHa*fm<<#}Iz=TR2%V|wAwVbErzJKLa{Q9VlXr?Ff%bxNXyJgWiYvTtI+!UJ(=J**;<>Gt?O@iAAbq} H3k46<$LbTr literal 0 HcmV?d00001 diff --git a/support/testing/tests/download/git-remote/repo.git/objects/cf/0f4f85d7a1237e377a2d25b996518a877ea001 b/support/testing/tests/download/git-remote/repo.git/objects/cf/0f4f85d7a1237e377a2d25b996518a877ea001 new file mode 100644 index 0000000000000000000000000000000000000000..fd224552518d57b0b8b0a1d618eef507f798555f GIT binary patch literal 49 zcmV-10M7q-0V^p=O;s>9VlXr?Ff%bxNXyJgWtjB7bzk^3^-m2q&Y7#YY8{f9l@bI1 H7n%=ExH=M# literal 0 HcmV?d00001 diff --git a/support/testing/tests/download/git-remote/repo.git/objects/d4/e2941d18a63535400476324ddeb7f40164be41 b/support/testing/tests/download/git-remote/repo.git/objects/d4/e2941d18a63535400476324ddeb7f40164be41 new file mode 100644 index 0000000000000000000000000000000000000000..4d82169300d0d8a2e31ced481501bff6647ef6b7 GIT binary patch literal 121 zcmV-<0EYi~0V^p=O;s>7uwXDWFfcPQQP4}zEXmDJDa}bOX6Wv!>xg2JU9K(na!F0} zWQL7JE1yG^rDf)%GN?x0u>Lo>{(z(Iw6|$)$tPc|oDgbgW&i{VMX71Uy2YhQh73O# b=2AU<WBpF}NR{H!

    7uwXDWFfcPQQP4}zEXmDJDa}bOX6Wv!>xg2JU9K(na!F0} zWQL7JE1yG^rDf)%GH~BGw=?nZrcDChywb1Md&gYMyzFdfW&i{VMX71Uy2YhQh73O# b=2AU<WBwy!O?8)rGE literal 0 HcmV?d00001 diff --git a/support/testing/tests/download/git-remote/repo.git/refs/heads/master b/support/testing/tests/download/git-remote/repo.git/refs/heads/master new file mode 100644 index 00000000..b6bccc1c --- /dev/null +++ b/support/testing/tests/download/git-remote/repo.git/refs/heads/master @@ -0,0 +1 @@ +a238b1dfcd825d47d834af3c5223417c8411d90d diff --git a/support/testing/tests/download/git-remote/repo.git/refs/heads/mybranch b/support/testing/tests/download/git-remote/repo.git/refs/heads/mybranch new file mode 100644 index 00000000..45cec546 --- /dev/null +++ b/support/testing/tests/download/git-remote/repo.git/refs/heads/mybranch @@ -0,0 +1 @@ +68c197d0879d485f4f6cee85544722b79e68e59f diff --git a/support/testing/tests/download/git-remote/repo.git/refs/heads/submodule b/support/testing/tests/download/git-remote/repo.git/refs/heads/submodule new file mode 100644 index 00000000..e9f4f32c --- /dev/null +++ b/support/testing/tests/download/git-remote/repo.git/refs/heads/submodule @@ -0,0 +1 @@ +2fa37f6885d7eb746df75eccaddbacf3ac82799d diff --git a/support/testing/tests/download/git-remote/repo.git/refs/tags/mytag b/support/testing/tests/download/git-remote/repo.git/refs/tags/mytag new file mode 100644 index 00000000..8c09448a --- /dev/null +++ b/support/testing/tests/download/git-remote/repo.git/refs/tags/mytag @@ -0,0 +1 @@ +2b0e0d98a49c97da6a618ab36337e2058eb733a2 diff --git a/support/testing/tests/download/gitremote.py b/support/testing/tests/download/gitremote.py new file mode 100644 index 00000000..7df252d0 --- /dev/null +++ b/support/testing/tests/download/gitremote.py @@ -0,0 +1,47 @@ +# subprocess does not kill the child daemon when a test case fails by raising +# an exception. So use pexpect instead. +import infra + +import pexpect + + +GIT_REMOTE_PORT_INITIAL = 9418 +GIT_REMOTE_PORT_LAST = GIT_REMOTE_PORT_INITIAL + 99 + + +class GitRemote(object): + def __init__(self, builddir, serveddir, logtofile): + """ + Start a local git server. + + In order to support test cases in parallel, select the port the + server will listen to in runtime. Since there is no reliable way + to allocate the port prior to starting the server (another + process in the host machine can use the port between it is + selected from a list and it is really allocated to the server) + try to start the server in a port and in the case it is already + in use, try the next one in the allowed range. + """ + self.daemon = None + self.port = None + self.logfile = infra.open_log_file(builddir, "gitremote", logtofile) + + daemon_cmd = ["git", "daemon", "--reuseaddr", "--verbose", + "--listen=localhost", "--export-all", + "--base-path={}".format(serveddir)] + for port in range(GIT_REMOTE_PORT_INITIAL, GIT_REMOTE_PORT_LAST + 1): + cmd = daemon_cmd + ["--port={port}".format(port=port)] + self.logfile.write("> starting git remote with '{}'\n".format(" ".join(cmd))) + self.daemon = pexpect.spawn(cmd[0], cmd[1:], logfile=self.logfile, + encoding='utf-8') + ret = self.daemon.expect(["Ready to rumble", + "Address already in use"]) + if ret == 0: + self.port = port + return + raise SystemError("Could not find a free port to run git remote") + + def stop(self): + if self.daemon is None: + return + self.daemon.terminate(force=True) diff --git a/support/testing/tests/download/test_git.py b/support/testing/tests/download/test_git.py new file mode 100644 index 00000000..ec5b8f3f --- /dev/null +++ b/support/testing/tests/download/test_git.py @@ -0,0 +1,81 @@ +import os +import shutil + +from tests.download.gitremote import GitRemote + +import infra + + +class GitTestBase(infra.basetest.BRConfigTest): + config = \ + """ + BR2_BACKUP_SITE="" + """ + gitremotedir = infra.filepath("tests/download/git-remote") + gitremote = None + + def setUp(self): + super(GitTestBase, self).setUp() + self.gitremote = GitRemote(self.builddir, self.gitremotedir, self.logtofile) + + def tearDown(self): + self.show_msg("Cleaning up") + if self.gitremote: + self.gitremote.stop() + if self.b and not self.keepbuilds: + self.b.delete() + + def check_hash(self, package): + # store downloaded tarball inside the output dir so the test infra + # cleans it up at the end + env = {"BR2_DL_DIR": os.path.join(self.builddir, "dl"), + "GITREMOTE_PORT_NUMBER": str(self.gitremote.port)} + self.b.build(["{}-dirclean".format(package), + "{}-source".format(package)], + env) + + def check_download(self, package): + # store downloaded tarball inside the output dir so the test infra + # cleans it up at the end + dl_dir = os.path.join(self.builddir, "dl") + # enforce we test the download + if os.path.exists(dl_dir): + shutil.rmtree(dl_dir) + env = {"BR2_DL_DIR": dl_dir, + "GITREMOTE_PORT_NUMBER": str(self.gitremote.port)} + self.b.build(["{}-dirclean".format(package), + "{}-legal-info".format(package)], + env) + + +class TestGitHash(GitTestBase): + br2_external = [infra.filepath("tests/download/br2-external/git-hash")] + + def test_run(self): + with self.assertRaises(SystemError): + self.check_hash("bad") + self.check_hash("good") + self.check_hash("nohash") + + +class TestGitRefs(GitTestBase): + br2_external = [infra.filepath("tests/download/br2-external/git-refs")] + + def test_run(self): + with self.assertRaises(SystemError): + self.check_download("git-wrong-content") + with self.assertRaises(SystemError): + self.check_download("git-wrong-sha1") + self.check_download("git-partial-sha1-branch-head") + self.check_download("git-partial-sha1-reachable-by-branch") + self.check_download("git-partial-sha1-reachable-by-tag") + self.check_download("git-partial-sha1-tag-itself") + self.check_download("git-partial-sha1-tag-points-to") + self.check_download("git-sha1-branch-head") + self.check_download("git-sha1-reachable-by-branch") + self.check_download("git-sha1-reachable-by-tag") + self.check_download("git-sha1-tag-itself") + self.check_download("git-sha1-tag-points-to") + self.check_download("git-submodule-disabled") + self.check_download("git-submodule-enabled") + self.check_download("git-tag") diff --git a/support/testing/tests/fs/__init__.py b/support/testing/tests/fs/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/support/testing/tests/fs/test_ext.py b/support/testing/tests/fs/test_ext.py new file mode 100644 index 00000000..16b308cf --- /dev/null +++ b/support/testing/tests/fs/test_ext.py @@ -0,0 +1,121 @@ +import os + +import infra.basetest + +VOLNAME_PROP = "Filesystem volume name" +REVISION_PROP = "Filesystem revision #" +FEATURES_PROP = "Filesystem features" +BLOCKCNT_PROP = "Block count" +INODECNT_PROP = "Inode count" +RESBLKCNT_PROP = "Reserved block count" + +CHECK_FS_TYPE_CMD = "mount | grep '/dev/root on / type {}'" + + +def dumpe2fs_run(builddir, image): + cmd = ["host/sbin/dumpe2fs", os.path.join("images", image)] + ret = infra.run_cmd_on_host(builddir, cmd) + return ret.strip().splitlines() + + +def dumpe2fs_getprop(out, prop): + for line in out: + fields = line.split(": ") + if fields[0] == prop: + return fields[1].strip() + + +def boot_img_and_check_fs_type(emulator, builddir, fs_type): + img = os.path.join(builddir, "images", "rootfs.{}".format(fs_type)) + emulator.boot(arch="armv7", + kernel="builtin", + kernel_cmdline=["root=/dev/mmcblk0", + "rootfstype={}".format(fs_type)], + options=["-drive", "file={},if=sd".format(img)]) + emulator.login() + _, exit_code = emulator.run(CHECK_FS_TYPE_CMD.format(fs_type)) + return exit_code + + +class TestExt2(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_TARGET_ROOTFS_EXT2=y + BR2_TARGET_ROOTFS_EXT2_2r0=y + BR2_TARGET_ROOTFS_EXT2_LABEL="foobaz" + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def test_run(self): + out = dumpe2fs_run(self.builddir, "rootfs.ext2") + self.assertEqual(dumpe2fs_getprop(out, VOLNAME_PROP), "foobaz") + self.assertEqual(dumpe2fs_getprop(out, REVISION_PROP), "0 (original)") + + exit_code = boot_img_and_check_fs_type(self.emulator, + self.builddir, "ext2") + self.assertEqual(exit_code, 0) + + +class TestExt2r1(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_TARGET_ROOTFS_EXT2=y + BR2_TARGET_ROOTFS_EXT2_2r1=y + BR2_TARGET_ROOTFS_EXT2_LABEL="foobar" + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def test_run(self): + out = dumpe2fs_run(self.builddir, "rootfs.ext2") + self.assertEqual(dumpe2fs_getprop(out, VOLNAME_PROP), "foobar") + self.assertEqual(dumpe2fs_getprop(out, REVISION_PROP), "1 (dynamic)") + self.assertNotIn("has_journal", dumpe2fs_getprop(out, FEATURES_PROP)) + + exit_code = boot_img_and_check_fs_type(self.emulator, + self.builddir, "ext2") + self.assertEqual(exit_code, 0) + + +class TestExt3(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_TARGET_ROOTFS_EXT2=y + BR2_TARGET_ROOTFS_EXT2_3=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def test_run(self): + out = dumpe2fs_run(self.builddir, "rootfs.ext3") + self.assertEqual(dumpe2fs_getprop(out, REVISION_PROP), "1 (dynamic)") + self.assertIn("has_journal", dumpe2fs_getprop(out, FEATURES_PROP)) + self.assertNotIn("extent", dumpe2fs_getprop(out, FEATURES_PROP)) + + exit_code = boot_img_and_check_fs_type(self.emulator, + self.builddir, "ext3") + self.assertEqual(exit_code, 0) + + +class TestExt4(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_TARGET_ROOTFS_EXT2=y + BR2_TARGET_ROOTFS_EXT2_4=y + BR2_TARGET_ROOTFS_EXT2_SIZE="16384" + BR2_TARGET_ROOTFS_EXT2_INODES=3000 + BR2_TARGET_ROOTFS_EXT2_RESBLKS=10 + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def test_run(self): + out = dumpe2fs_run(self.builddir, "rootfs.ext4") + self.assertEqual(dumpe2fs_getprop(out, REVISION_PROP), "1 (dynamic)") + self.assertEqual(dumpe2fs_getprop(out, BLOCKCNT_PROP), "16384") + # Yes there are 8 more inodes than requested + self.assertEqual(dumpe2fs_getprop(out, INODECNT_PROP), "3008") + self.assertEqual(dumpe2fs_getprop(out, RESBLKCNT_PROP), "1638") + self.assertIn("has_journal", dumpe2fs_getprop(out, FEATURES_PROP)) + self.assertIn("extent", dumpe2fs_getprop(out, FEATURES_PROP)) + + exit_code = boot_img_and_check_fs_type(self.emulator, + self.builddir, "ext4") + self.assertEqual(exit_code, 0) diff --git a/support/testing/tests/fs/test_f2fs.py b/support/testing/tests/fs/test_f2fs.py new file mode 100644 index 00000000..950d4cf2 --- /dev/null +++ b/support/testing/tests/fs/test_f2fs.py @@ -0,0 +1,48 @@ +import os + +import infra.basetest + + +def dumpf2fs_getprop(out, prop): + for line in out: + fields = line.split(" = ") + if fields[0] == prop: + return fields[1].strip() + + +class TestF2FS(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_TARGET_ROOTFS_F2FS=y + BR2_TARGET_ROOTFS_F2FS_SIZE="128M" + BR2_TARGET_ROOTFS_F2FS_OVERPROVISION=0 + BR2_TARGET_ROOTFS_F2FS_DISCARD=y + # BR2_TARGET_ROOTFS_TAR is not set + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.16.7" + BR2_LINUX_KERNEL_USE_DEFCONFIG=y + BR2_LINUX_KERNEL_DEFCONFIG="vexpress" + BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="{}" + """.format(infra.filepath("conf/f2fs-kernel-fragment.config")) + + def test_run(self): + img = os.path.join(self.builddir, "images", "rootfs.f2fs") + out = infra.run_cmd_on_host(self.builddir, ["host/sbin/dump.f2fs", img]) + out = out.splitlines() + prop = dumpf2fs_getprop(out, "Info: total sectors") + self.assertEqual(prop, "262144 (128 MB)") + + kernel = os.path.join(self.builddir, "images", "zImage") + kernel_cmdline = ["root=/dev/mmcblk0", "rootfstype=f2fs", + "console=ttyAMA0"] + dtb = infra.download(self.downloaddir, "vexpress-v2p-ca9.dtb") + options = ["-M", "vexpress-a9", "-dtb", dtb, + "-drive", "file={},if=sd,format=raw".format(img)] + self.emulator.boot(arch="armv7", kernel=kernel, + kernel_cmdline=kernel_cmdline, + options=options) + self.emulator.login() + cmd = "mount | grep '/dev/root on / type f2fs'" + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) diff --git a/support/testing/tests/fs/test_iso9660.py b/support/testing/tests/fs/test_iso9660.py new file mode 100644 index 00000000..68f48408 --- /dev/null +++ b/support/testing/tests/fs/test_iso9660.py @@ -0,0 +1,169 @@ +import os + +import infra.basetest + +BASIC_CONFIG = \ + """ + BR2_x86_pentium4=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y + BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y + BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-i386-pentium4-full-2017.05-1078-g95b1dae.tar.bz2" + BR2_TOOLCHAIN_EXTERNAL_GCC_6=y + BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_2=y + BR2_TOOLCHAIN_EXTERNAL_LOCALE=y + # BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG is not set + BR2_TOOLCHAIN_EXTERNAL_CXX=y + BR2_TARGET_GENERIC_GETTY_PORT="ttyS0" + BR2_TARGET_GENERIC_GETTY_BAUDRATE_115200=y + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.11" + BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y + BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="{}" + # BR2_TARGET_ROOTFS_TAR is not set + """.format(infra.filepath("conf/minimal-x86-qemu-kernel.config")) + + +def test_mount_internal_external(emulator, builddir, internal=True): + img = os.path.join(builddir, "images", "rootfs.iso9660") + emulator.boot(arch="i386", options=["-cdrom", img]) + emulator.login() + + if internal: + cmd = "mount | grep 'rootfs on / type rootfs'" + else: + cmd = "mount | grep '/dev/root on / type iso9660'" + + _, exit_code = emulator.run(cmd) + return exit_code + + +def test_touch_file(emulator): + _, exit_code = emulator.run("touch test") + return exit_code + +# +# Grub 2 + + +class TestIso9660Grub2External(infra.basetest.BRTest): + config = BASIC_CONFIG + \ + """ + BR2_TARGET_ROOTFS_ISO9660=y + # BR2_TARGET_ROOTFS_ISO9660_INITRD is not set + BR2_TARGET_GRUB2=y + BR2_TARGET_GRUB2_BOOT_PARTITION="cd" + BR2_TARGET_GRUB2_BUILTIN_MODULES="boot linux ext2 fat part_msdos part_gpt normal biosdisk iso9660" + BR2_TARGET_ROOTFS_ISO9660_BOOT_MENU="{}" + """.format(infra.filepath("conf/grub2.cfg")) + + def test_run(self): + exit_code = test_mount_internal_external(self.emulator, + self.builddir, internal=False) + self.assertEqual(exit_code, 0) + + exit_code = test_touch_file(self.emulator) + self.assertEqual(exit_code, 1) + + +class TestIso9660Grub2ExternalCompress(infra.basetest.BRTest): + config = BASIC_CONFIG + \ + """ + BR2_TARGET_ROOTFS_ISO9660=y + # BR2_TARGET_ROOTFS_ISO9660_INITRD is not set + BR2_TARGET_ROOTFS_ISO9660_TRANSPARENT_COMPRESSION=y + BR2_TARGET_GRUB2=y + BR2_TARGET_GRUB2_BOOT_PARTITION="cd" + BR2_TARGET_GRUB2_BUILTIN_MODULES="boot linux ext2 fat part_msdos part_gpt normal biosdisk iso9660" + BR2_TARGET_ROOTFS_ISO9660_BOOT_MENU="{}" + """.format(infra.filepath("conf/grub2.cfg")) + + def test_run(self): + exit_code = test_mount_internal_external(self.emulator, + self.builddir, internal=False) + self.assertEqual(exit_code, 0) + + exit_code = test_touch_file(self.emulator) + self.assertEqual(exit_code, 1) + + +class TestIso9660Grub2Internal(infra.basetest.BRTest): + config = BASIC_CONFIG + \ + """ + BR2_TARGET_ROOTFS_ISO9660=y + BR2_TARGET_ROOTFS_ISO9660_INITRD=y + BR2_TARGET_GRUB2=y + BR2_TARGET_GRUB2_BOOT_PARTITION="cd" + BR2_TARGET_GRUB2_BUILTIN_MODULES="boot linux ext2 fat part_msdos part_gpt normal biosdisk iso9660" + BR2_TARGET_ROOTFS_ISO9660_BOOT_MENU="{}" + """.format(infra.filepath("conf/grub2.cfg")) + + def test_run(self): + exit_code = test_mount_internal_external(self.emulator, + self.builddir, internal=True) + self.assertEqual(exit_code, 0) + + exit_code = test_touch_file(self.emulator) + self.assertEqual(exit_code, 0) + +# +# Syslinux + + +class TestIso9660SyslinuxExternal(infra.basetest.BRTest): + config = BASIC_CONFIG + \ + """ + BR2_TARGET_ROOTFS_ISO9660=y + # BR2_TARGET_ROOTFS_ISO9660_INITRD is not set + BR2_TARGET_ROOTFS_ISO9660_HYBRID=y + BR2_TARGET_ROOTFS_ISO9660_BOOT_MENU="{}" + BR2_TARGET_SYSLINUX=y + """.format(infra.filepath("conf/isolinux.cfg")) + + def test_run(self): + exit_code = test_mount_internal_external(self.emulator, + self.builddir, internal=False) + self.assertEqual(exit_code, 0) + + exit_code = test_touch_file(self.emulator) + self.assertEqual(exit_code, 1) + + +class TestIso9660SyslinuxExternalCompress(infra.basetest.BRTest): + config = BASIC_CONFIG + \ + """ + BR2_TARGET_ROOTFS_ISO9660=y + # BR2_TARGET_ROOTFS_ISO9660_INITRD is not set + BR2_TARGET_ROOTFS_ISO9660_TRANSPARENT_COMPRESSION=y + BR2_TARGET_ROOTFS_ISO9660_HYBRID=y + BR2_TARGET_ROOTFS_ISO9660_BOOT_MENU="{}" + BR2_TARGET_SYSLINUX=y + """.format(infra.filepath("conf/isolinux.cfg")) + + def test_run(self): + exit_code = test_mount_internal_external(self.emulator, + self.builddir, internal=False) + self.assertEqual(exit_code, 0) + + exit_code = test_touch_file(self.emulator) + self.assertEqual(exit_code, 1) + + +class TestIso9660SyslinuxInternal(infra.basetest.BRTest): + config = BASIC_CONFIG + \ + """ + BR2_TARGET_ROOTFS_ISO9660=y + BR2_TARGET_ROOTFS_ISO9660_INITRD=y + BR2_TARGET_ROOTFS_ISO9660_HYBRID=y + BR2_TARGET_ROOTFS_ISO9660_BOOT_MENU="{}" + BR2_TARGET_SYSLINUX=y + """.format(infra.filepath("conf/isolinux.cfg")) + + def test_run(self): + exit_code = test_mount_internal_external(self.emulator, + self.builddir, internal=True) + self.assertEqual(exit_code, 0) + + exit_code = test_touch_file(self.emulator) + self.assertEqual(exit_code, 0) diff --git a/support/testing/tests/fs/test_jffs2.py b/support/testing/tests/fs/test_jffs2.py new file mode 100644 index 00000000..f5066ff0 --- /dev/null +++ b/support/testing/tests/fs/test_jffs2.py @@ -0,0 +1,45 @@ +import os + +import infra.basetest + + +def jffs2dump_find_file(files_list, fname): + for file_name in files_list: + file_name = file_name.strip() + if file_name.startswith("Dirent") and file_name.endswith(fname): + return True + return False + + +class TestJffs2(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_TARGET_ROOTFS_JFFS2=y + BR2_TARGET_ROOTFS_JFFS2_CUSTOM=y + BR2_TARGET_ROOTFS_JFFS2_CUSTOM_EBSIZE=0x80000 + BR2_TARGET_ROOTFS_JFFS2_NOCLEANMARKER=y + BR2_TARGET_ROOTFS_JFFS2_PAD=y + BR2_TARGET_ROOTFS_JFFS2_PADSIZE=0x4000000 + # BR2_TARGET_ROOTFS_TAR is not set + """ + + # TODO: there are some scary JFFS2 messages when one starts to + # write files in the rootfs: "jffs2: Newly-erased block contained + # word 0x0 at offset 0x046c0000". To be investigated. + + def test_run(self): + img = os.path.join(self.builddir, "images", "rootfs.jffs2") + cmd = ["host/sbin/jffs2dump", "-c", img] + out = infra.run_cmd_on_host(self.builddir, cmd) + out = out.splitlines() + self.assertTrue(jffs2dump_find_file(out, "busybox")) + + self.emulator.boot(arch="armv7", + kernel="builtin", + kernel_cmdline=["root=/dev/mtdblock0", + "rootfstype=jffs2"], + options=["-drive", "file={},if=pflash".format(img)]) + self.emulator.login() + cmd = "mount | grep '/dev/root on / type jffs2'" + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) diff --git a/support/testing/tests/fs/test_squashfs.py b/support/testing/tests/fs/test_squashfs.py new file mode 100644 index 00000000..234f4944 --- /dev/null +++ b/support/testing/tests/fs/test_squashfs.py @@ -0,0 +1,36 @@ +import os +import subprocess + +import infra.basetest + + +class TestSquashfs(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_TARGET_ROOTFS_SQUASHFS=y + # BR2_TARGET_ROOTFS_SQUASHFS4_GZIP is not set + BR2_TARGET_ROOTFS_SQUASHFS4_LZ4=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def test_run(self): + unsquashfs_cmd = ["host/bin/unsquashfs", "-s", "images/rootfs.squashfs"] + out = infra.run_cmd_on_host(self.builddir, unsquashfs_cmd) + out = out.splitlines() + self.assertEqual(out[0], + "Found a valid SQUASHFS 4:0 superblock on images/rootfs.squashfs.") + self.assertEqual(out[3], "Compression lz4") + + img = os.path.join(self.builddir, "images", "rootfs.squashfs") + subprocess.call(["truncate", "-s", "%1M", img]) + + self.emulator.boot(arch="armv7", + kernel="builtin", + kernel_cmdline=["root=/dev/mmcblk0", + "rootfstype=squashfs"], + options=["-drive", "file={},if=sd,format=raw".format(img)]) + self.emulator.login() + + cmd = "mount | grep '/dev/root on / type squashfs'" + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) diff --git a/support/testing/tests/fs/test_ubi.py b/support/testing/tests/fs/test_ubi.py new file mode 100644 index 00000000..7321f83d --- /dev/null +++ b/support/testing/tests/fs/test_ubi.py @@ -0,0 +1,39 @@ +import subprocess +import os + +import infra.basetest + + +class TestUbi(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_TARGET_ROOTFS_UBIFS=y + BR2_TARGET_ROOTFS_UBIFS_LEBSIZE=0x7ff80 + BR2_TARGET_ROOTFS_UBIFS_MINIOSIZE=0x1 + BR2_TARGET_ROOTFS_UBI=y + BR2_TARGET_ROOTFS_UBI_PEBSIZE=0x80000 + BR2_TARGET_ROOTFS_UBI_SUBSIZE=1 + """ + + # TODO: if you boot Qemu twice on the same UBI image, it fails to + # attach the image the second time, with "ubi0 error: + # ubi_read_volume_table: the layout volume was not found". + # To be investigated. + def test_run(self): + img = os.path.join(self.builddir, "images", "rootfs.ubi") + out = infra.run_cmd_on_host(self.builddir, ["file", img]) + out = out.splitlines() + self.assertIn("UBI image, version 1", out[0]) + + subprocess.call(["truncate", "-s 128M", img]) + + self.emulator.boot(arch="armv7", + kernel="builtin", + kernel_cmdline=["root=ubi0:rootfs", + "ubi.mtd=0", + "rootfstype=ubifs"], + options=["-drive", "file={},if=pflash".format(img)]) + self.emulator.login() + cmd = "mount | grep 'ubi0:rootfs on / type ubifs'" + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) diff --git a/support/testing/tests/fs/test_yaffs2.py b/support/testing/tests/fs/test_yaffs2.py new file mode 100644 index 00000000..b60e90e6 --- /dev/null +++ b/support/testing/tests/fs/test_yaffs2.py @@ -0,0 +1,15 @@ +import os + +import infra.basetest + + +class TestYaffs2(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + infra.basetest.MINIMAL_CONFIG + \ + """ + BR2_TARGET_ROOTFS_YAFFS2=y + """ + + def test_run(self): + img = os.path.join(self.builddir, "images", "rootfs.yaffs2") + self.assertTrue(os.path.exists(img)) diff --git a/support/testing/tests/init/__init__.py b/support/testing/tests/init/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/support/testing/tests/init/base.py b/support/testing/tests/init/base.py new file mode 100644 index 00000000..75cfbe9c --- /dev/null +++ b/support/testing/tests/init/base.py @@ -0,0 +1,48 @@ +import os +import subprocess +import infra.basetest + + +class InitSystemBase(infra.basetest.BRTest): + + def start_emulator(self, fs_type, kernel=None, dtb=None, init=None): + img = os.path.join(self.builddir, "images", "rootfs.{}".format(fs_type)) + subprocess.call(["truncate", "-s", "%1M", img]) + + options = ["-drive", + "file={},if=sd,format=raw".format(img), + "-M", "vexpress-a9"] + + if kernel is None: + kernel = "builtin" + else: + kernel = os.path.join(self.builddir, "images", kernel) + options.extend(["-dtb", os.path.join(self.builddir, "images", + "{}.dtb".format(dtb))]) + + kernel_cmdline = ["root=/dev/mmcblk0", + "rootfstype={}".format(fs_type), + "rootwait", + "ro", + "console=ttyAMA0"] + + if init is not None: + kernel_cmdline.extend(["init={}".format(init)]) + + self.emulator.boot(arch="armv7", + kernel=kernel, + kernel_cmdline=kernel_cmdline, + options=options) + + if init is None: + self.emulator.login() + + def check_init(self, path): + cmd = "cmp /proc/1/exe {}".format(path) + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + + def check_network(self, interface, exitCode=0): + cmd = "ip addr show {} |grep inet".format(interface) + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, exitCode) diff --git a/support/testing/tests/init/systemd-factory/var/foo/bar b/support/testing/tests/init/systemd-factory/var/foo/bar new file mode 100644 index 00000000..323fae03 --- /dev/null +++ b/support/testing/tests/init/systemd-factory/var/foo/bar @@ -0,0 +1 @@ +foobar diff --git a/support/testing/tests/init/test_busybox.py b/support/testing/tests/init/test_busybox.py new file mode 100644 index 00000000..3be4dea3 --- /dev/null +++ b/support/testing/tests/init/test_busybox.py @@ -0,0 +1,64 @@ +import infra.basetest +from tests.init.base import InitSystemBase as InitSystemBase + + +class InitSystemBusyboxBase(InitSystemBase): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def check_init(self): + super(InitSystemBusyboxBase, self).check_init("/bin/busybox") + + +class TestInitSystemBusyboxRo(InitSystemBusyboxBase): + config = InitSystemBusyboxBase.config + \ + """ + # BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set + BR2_TARGET_ROOTFS_SQUASHFS=y + """ + + def test_run(self): + self.start_emulator("squashfs") + self.check_init() + self.check_network("eth0", 1) + + +class TestInitSystemBusyboxRw(InitSystemBusyboxBase): + config = InitSystemBusyboxBase.config + \ + """ + BR2_TARGET_ROOTFS_EXT2=y + """ + + def test_run(self): + self.start_emulator("ext2") + self.check_init() + self.check_network("eth0", 1) + + +class TestInitSystemBusyboxRoNet(InitSystemBusyboxBase): + config = InitSystemBusyboxBase.config + \ + """ + BR2_SYSTEM_DHCP="eth0" + # BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set + BR2_TARGET_ROOTFS_SQUASHFS=y + """ + + def test_run(self): + self.start_emulator("squashfs") + self.check_init() + self.check_network("eth0") + + +class TestInitSystemBusyboxRwNet(InitSystemBusyboxBase): + config = InitSystemBusyboxBase.config + \ + """ + BR2_SYSTEM_DHCP="eth0" + BR2_TARGET_ROOTFS_EXT2=y + """ + + def test_run(self): + self.start_emulator("ext2") + self.check_init() + self.check_network("eth0") diff --git a/support/testing/tests/init/test_none.py b/support/testing/tests/init/test_none.py new file mode 100644 index 00000000..5b9b4e43 --- /dev/null +++ b/support/testing/tests/init/test_none.py @@ -0,0 +1,33 @@ +import pexpect + +import infra.basetest +from tests.init.base import InitSystemBase as InitSystemBase + + +class TestInitSystemNone(InitSystemBase): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_INIT_NONE=y + # BR2_TARGET_ROOTFS_TAR is not set + BR2_TARGET_ROOTFS_SQUASHFS=y + """ + + def test_run(self): + self.start_emulator(fs_type="squashfs", init="/bin/sh") + index = self.emulator.qemu.expect(["/bin/sh: can't access tty; job control turned off", pexpect.TIMEOUT], timeout=60) + if index != 0: + self.emulator.logfile.write("==> System does not boot") + raise SystemError("System does not boot") + index = self.emulator.qemu.expect(["#", pexpect.TIMEOUT], timeout=60) + if index != 0: + self.emulator.logfile.write("==> System does not boot") + raise SystemError("System does not boot") + + out, exit_code = self.emulator.run("sh -c 'echo $PPID'") + self.assertEqual(exit_code, 0) + self.assertEqual(out[0], "1") + + _, exit_code = self.emulator.run("mount -t proc none /proc") + self.assertEqual(exit_code, 0) + + self.check_init("/bin/sh") diff --git a/support/testing/tests/init/test_openrc.py b/support/testing/tests/init/test_openrc.py new file mode 100644 index 00000000..14839434 --- /dev/null +++ b/support/testing/tests/init/test_openrc.py @@ -0,0 +1,50 @@ +from tests.init.base import InitSystemBase as InitSystemBase + + +class InitSystemOpenrcBase(InitSystemBase): + config = \ + """ + BR2_arm=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_INIT_OPENRC=y + BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.5.7" + BR2_LINUX_KERNEL_DEFCONFIG="vexpress" + BR2_LINUX_KERNEL_DTS_SUPPORT=y + BR2_LINUX_KERNEL_INTREE_DTS_NAME="vexpress-v2p-ca9" + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def check_init(self): + super(InitSystemOpenrcBase, self).check_init('/sbin/openrc-init') + + # Test all services are OK + output, _ = self.emulator.run("rc-status -c") + self.assertEqual(len(output), 0) + + +class TestInitSystemOpenrcRoFull(InitSystemOpenrcBase): + config = InitSystemOpenrcBase.config + \ + """ + BR2_SYSTEM_DHCP="eth0" + # BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set + BR2_TARGET_ROOTFS_SQUASHFS=y + """ + + def test_run(self): + self.start_emulator("squashfs", "zImage", "vexpress-v2p-ca9") + self.check_init() + + +class TestInitSystemOpenrcRwFull(InitSystemOpenrcBase): + config = InitSystemOpenrcBase.config + \ + """ + BR2_SYSTEM_DHCP="eth0" + BR2_TARGET_ROOTFS_EXT2=y + """ + + def test_run(self): + self.start_emulator("ext2", "zImage", "vexpress-v2p-ca9") + self.check_init() diff --git a/support/testing/tests/init/test_systemd.py b/support/testing/tests/init/test_systemd.py new file mode 100644 index 00000000..c0ef5e12 --- /dev/null +++ b/support/testing/tests/init/test_systemd.py @@ -0,0 +1,161 @@ +import infra.basetest +from tests.init.base import InitSystemBase as InitSystemBase + + +class InitSystemSystemdBase(InitSystemBase): + config = \ + """ + BR2_arm=y + BR2_cortex_a9=y + BR2_ARM_ENABLE_VFP=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_INIT_SYSTEMD=y + BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.11.3" + BR2_LINUX_KERNEL_DEFCONFIG="vexpress" + BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="{}" + BR2_LINUX_KERNEL_DTS_SUPPORT=y + BR2_LINUX_KERNEL_INTREE_DTS_NAME="vexpress-v2p-ca9" + # BR2_TARGET_ROOTFS_TAR is not set + """.format(infra.filepath("conf/binfmt-misc-kernel-fragment.config")) + + def check_init(self): + super(InitSystemSystemdBase, self).check_init("/lib/systemd/systemd") + + # Test all units are OK + output, _ = self.emulator.run("systemctl --no-pager --failed --no-legend") + self.assertEqual(len(output), 0) + + # Test we can reach the DBus daemon + _, exit_code = self.emulator.run("busctl --no-pager") + self.assertEqual(exit_code, 0) + + # Test we can read at least one line from the journal + output, _ = self.emulator.run("journalctl --no-pager --lines 1 --quiet") + self.assertEqual(len(output), 1) + + +class TestInitSystemSystemdRoNetworkd(InitSystemSystemdBase): + config = InitSystemSystemdBase.config + \ + """ + BR2_SYSTEM_DHCP="eth0" + # BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set + BR2_ROOTFS_OVERLAY="{}" + BR2_TARGET_ROOTFS_SQUASHFS=y + """.format(infra.filepath("tests/init/systemd-factory")) + + def test_run(self): + self.start_emulator("squashfs", "zImage", "vexpress-v2p-ca9") + self.check_init() + self.check_network("eth0") + + # This one must be executed on the target, to check that + # the factory feature works as expected + out, exit_code = self.emulator.run("cat /var/foo/bar") + self.assertEqual(exit_code, 0) + self.assertEqual(out[0], "foobar") + + +class TestInitSystemSystemdRwNetworkd(InitSystemSystemdBase): + config = InitSystemSystemdBase.config + \ + """ + BR2_SYSTEM_DHCP="eth0" + BR2_TARGET_ROOTFS_EXT2=y + """ + + def test_run(self): + self.start_emulator("ext2", "zImage", "vexpress-v2p-ca9") + self.check_init() + self.check_network("eth0") + + +class TestInitSystemSystemdRoIfupdown(InitSystemSystemdBase): + config = InitSystemSystemdBase.config + \ + """ + BR2_SYSTEM_DHCP="eth0" + # BR2_PACKAGE_SYSTEMD_NETWORKD is not set + # BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set + BR2_TARGET_ROOTFS_SQUASHFS=y + """ + + def test_run(self): + self.start_emulator("squashfs", "zImage", "vexpress-v2p-ca9") + self.check_init() + self.check_network("eth0") + + +class TestInitSystemSystemdRwIfupdown(InitSystemSystemdBase): + config = InitSystemSystemdBase.config + \ + """ + BR2_SYSTEM_DHCP="eth0" + # BR2_PACKAGE_SYSTEMD_NETWORKD is not set + BR2_TARGET_ROOTFS_EXT2=y + """ + + def test_run(self): + self.start_emulator("ext2", "zImage", "vexpress-v2p-ca9") + self.check_init() + self.check_network("eth0") + + +class TestInitSystemSystemdRoFull(InitSystemSystemdBase): + config = InitSystemSystemdBase.config + \ + """ + BR2_SYSTEM_DHCP="eth0" + # BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set + BR2_PACKAGE_SYSTEMD_JOURNAL_REMOTE=y + BR2_PACKAGE_SYSTEMD_BACKLIGHT=y + BR2_PACKAGE_SYSTEMD_BINFMT=y + BR2_PACKAGE_SYSTEMD_COREDUMP=y + BR2_PACKAGE_SYSTEMD_FIRSTBOOT=y + BR2_PACKAGE_SYSTEMD_HIBERNATE=y + BR2_PACKAGE_SYSTEMD_IMPORTD=y + BR2_PACKAGE_SYSTEMD_LOCALED=y + BR2_PACKAGE_SYSTEMD_LOGIND=y + BR2_PACKAGE_SYSTEMD_MACHINED=y + BR2_PACKAGE_SYSTEMD_POLKIT=y + BR2_PACKAGE_SYSTEMD_QUOTACHECK=y + BR2_PACKAGE_SYSTEMD_RANDOMSEED=y + BR2_PACKAGE_SYSTEMD_RFKILL=y + BR2_PACKAGE_SYSTEMD_SMACK_SUPPORT=y + BR2_PACKAGE_SYSTEMD_SYSUSERS=y + BR2_PACKAGE_SYSTEMD_VCONSOLE=y + BR2_TARGET_ROOTFS_SQUASHFS=y + """ + + def test_run(self): + self.start_emulator("squashfs", "zImage", "vexpress-v2p-ca9") + self.check_init() + self.check_network("eth0") + + +class TestInitSystemSystemdRwFull(InitSystemSystemdBase): + config = InitSystemSystemdBase.config + \ + """ + BR2_SYSTEM_DHCP="eth0" + BR2_PACKAGE_SYSTEMD_JOURNAL_REMOTE=y + BR2_PACKAGE_SYSTEMD_BACKLIGHT=y + BR2_PACKAGE_SYSTEMD_BINFMT=y + BR2_PACKAGE_SYSTEMD_COREDUMP=y + BR2_PACKAGE_SYSTEMD_FIRSTBOOT=y + BR2_PACKAGE_SYSTEMD_HIBERNATE=y + BR2_PACKAGE_SYSTEMD_IMPORTD=y + BR2_PACKAGE_SYSTEMD_LOCALED=y + BR2_PACKAGE_SYSTEMD_LOGIND=y + BR2_PACKAGE_SYSTEMD_MACHINED=y + BR2_PACKAGE_SYSTEMD_POLKIT=y + BR2_PACKAGE_SYSTEMD_QUOTACHECK=y + BR2_PACKAGE_SYSTEMD_RANDOMSEED=y + BR2_PACKAGE_SYSTEMD_RFKILL=y + BR2_PACKAGE_SYSTEMD_SMACK_SUPPORT=y + BR2_PACKAGE_SYSTEMD_SYSUSERS=y + BR2_PACKAGE_SYSTEMD_VCONSOLE=y + BR2_TARGET_ROOTFS_EXT2=y + """ + + def test_run(self): + self.start_emulator("ext2", "zImage", "vexpress-v2p-ca9") + self.check_init() + self.check_network("eth0") diff --git a/support/testing/tests/init/test_systemd_selinux.py b/support/testing/tests/init/test_systemd_selinux.py new file mode 100644 index 00000000..73604cfc --- /dev/null +++ b/support/testing/tests/init/test_systemd_selinux.py @@ -0,0 +1,76 @@ +import os + +import infra.basetest + + +class TestSELinuxSystemd(infra.basetest.BRTest): + config = \ + """ + BR2_x86_64=y + BR2_x86_corei7=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_INIT_SYSTEMD=y + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.8.12" + BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y + BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/x86_64/linux.config" + BR2_PACKAGE_LIBSELINUX=y + BR2_PACKAGE_REFPOLICY=y + """ + + def wait_boot(self): + # The complete boot with systemd takes more time than what the default multipler permits + self.emulator.timeout_multiplier *= 10 + self.emulator.login() + + def run_tests(self, fstype): + kernel = os.path.join(self.builddir, "images", "bzImage") + rootfs = os.path.join(self.builddir, "images", "rootfs.{}".format(fstype)) + + self.emulator.boot(arch="x86_64", kernel=kernel, + kernel_cmdline=["root=/dev/vda", "rootfstype={}".format(fstype), + "console=ttyS0", "security=selinux"], + options=["-cpu", "Nehalem", + "-drive", "file={},if=virtio,format=raw".format(rootfs)]) + self.wait_boot() + + # Test the reported SELinux mode. + out, ret = self.emulator.run("getenforce") + self.assertEqual(ret, 0) + self.assertEqual(out[0], "Permissive") + + # Check the extended arguments are correctly set. + out, ret = self.emulator.run("ls -dZ /") + self.assertEqual(ret, 0) + self.assertEqual(out[0].split()[0], "system_u:object_r:root_t") + + # Check init's attributes. + out, ret = self.emulator.run("cat /proc/1/attr/current") + self.assertEqual(ret, 0) + self.assertEqual(out[0], "system_u:system_r:init_t\0") + + +class TestSELinuxSystemdExt4(TestSELinuxSystemd): + config = TestSELinuxSystemd.config + \ + """ + BR2_TARGET_ROOTFS_EXT2=y + BR2_TARGET_ROOTFS_EXT2_4=y + BR2_TARGET_ROOTFS_EXT2_SIZE="100M" + """ + + def test_run(self): + self.run_tests("ext4") + + +class TestSELinuxSystemdSquashfs(TestSELinuxSystemd): + config = TestSELinuxSystemd.config + \ + """ + BR2_TARGET_ROOTFS_SQUASHFS=y + BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="{}" + """.format( + infra.filepath("tests/init/test_systemd_selinux/linux-squashfs.fragment"), + ) + + def test_run(self): + self.run_tests("squashfs") diff --git a/support/testing/tests/init/test_systemd_selinux/linux-squashfs.fragment b/support/testing/tests/init/test_systemd_selinux/linux-squashfs.fragment new file mode 100644 index 00000000..7a89d006 --- /dev/null +++ b/support/testing/tests/init/test_systemd_selinux/linux-squashfs.fragment @@ -0,0 +1 @@ +CONFIG_SQUASHFS=y diff --git a/support/testing/tests/package/__init__.py b/support/testing/tests/package/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/support/testing/tests/package/br2-external/openjdk/Config.in b/support/testing/tests/package/br2-external/openjdk/Config.in new file mode 100644 index 00000000..2588b340 --- /dev/null +++ b/support/testing/tests/package/br2-external/openjdk/Config.in @@ -0,0 +1,2 @@ +source "$BR2_EXTERNAL_OPENJDK_PATH/package/openjdk-hello-world/Config.in" +source "$BR2_EXTERNAL_OPENJDK_PATH/package/openjdk-jni-test/Config.in" diff --git a/support/testing/tests/package/br2-external/openjdk/external.desc b/support/testing/tests/package/br2-external/openjdk/external.desc new file mode 100644 index 00000000..f28ba506 --- /dev/null +++ b/support/testing/tests/package/br2-external/openjdk/external.desc @@ -0,0 +1 @@ +name: OPENJDK diff --git a/support/testing/tests/package/br2-external/openjdk/external.mk b/support/testing/tests/package/br2-external/openjdk/external.mk new file mode 100644 index 00000000..54c24e8c --- /dev/null +++ b/support/testing/tests/package/br2-external/openjdk/external.mk @@ -0,0 +1 @@ +include $(sort $(wildcard $(BR2_EXTERNAL_OPENJDK_PATH)/package/*/*.mk)) diff --git a/support/testing/tests/package/br2-external/openjdk/package/openjdk-hello-world/Config.in b/support/testing/tests/package/br2-external/openjdk/package/openjdk-hello-world/Config.in new file mode 100644 index 00000000..c37346a4 --- /dev/null +++ b/support/testing/tests/package/br2-external/openjdk/package/openjdk-hello-world/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_OPENJDK_HELLO_WORLD + bool "openjdk hello world" + depends on BR2_PACKAGE_OPENJDK + help + Simple class for testing openjdk diff --git a/support/testing/tests/package/br2-external/openjdk/package/openjdk-hello-world/HelloWorld.java b/support/testing/tests/package/br2-external/openjdk/package/openjdk-hello-world/HelloWorld.java new file mode 100644 index 00000000..37489e44 --- /dev/null +++ b/support/testing/tests/package/br2-external/openjdk/package/openjdk-hello-world/HelloWorld.java @@ -0,0 +1,7 @@ +public class HelloWorld +{ + public static void main(String[] args) + { + System.out.println("Hello, World"); + } +} diff --git a/support/testing/tests/package/br2-external/openjdk/package/openjdk-hello-world/openjdk-hello-world.mk b/support/testing/tests/package/br2-external/openjdk/package/openjdk-hello-world/openjdk-hello-world.mk new file mode 100644 index 00000000..ddd5e388 --- /dev/null +++ b/support/testing/tests/package/br2-external/openjdk/package/openjdk-hello-world/openjdk-hello-world.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# openjdk hello world +# +################################################################################ + +OPENJDK_HELLO_WORLD_DEPENDENCIES = openjdk + +define OPENJDK_HELLO_WORLD_BUILD_CMDS + $(INSTALL) -D $(OPENJDK_HELLO_WORLD_PKGDIR)/HelloWorld.java $(@D)/HelloWorld.java + $(JAVAC) $(@D)/HelloWorld.java +endef + +define OPENJDK_HELLO_WORLD_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 755 $(@D)/HelloWorld.class $(TARGET_DIR)/usr/bin/HelloWorld.class +endef + +$(eval $(generic-package)) diff --git a/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/Config.in b/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/Config.in new file mode 100644 index 00000000..22cd0c0a --- /dev/null +++ b/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_OPENJDK_JNI_TEST + bool "openjdk JNI test" + depends on BR2_PACKAGE_OPENJDK + help + Tests openjdk JNI support diff --git a/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/JniHelper.java b/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/JniHelper.java new file mode 100644 index 00000000..9e2a0387 --- /dev/null +++ b/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/JniHelper.java @@ -0,0 +1,9 @@ +public class JniHelper +{ + public void HelloManagedWorld() + { + stringMember = "Hello, Managed World"; + } + + public String stringMember = "Set from Java"; +} diff --git a/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/JniTest.java b/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/JniTest.java new file mode 100644 index 00000000..3d6c17b7 --- /dev/null +++ b/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/JniTest.java @@ -0,0 +1,92 @@ +public class JniTest +{ + private static void Test( + String name, + Object actual, + Object expected, + String actualAsString, + String expectedAsString) + { + if (!actual.equals(expected)) + { + System.out.println(String.format( + "Test: %s failed\nExpected: \"%s\", Actual: \"%s\"", + name, + expected, + actual)); + JniTest.exitCode = -1; + } + else + { + System.out.println(String.format("Test: %s passed", name)); + } + } + + private static void Test( + String name, + String actual, + String expected) + { + JniTest.Test(name, actual, expected, actual, expected); + } + + public static void main(String[] args) + { + var actualVersion = JniWrapper.get_jni_version(); + var expectedVersion = 0x000A0000; + JniTest.Test( + "Get JNI Version", + actualVersion, + expectedVersion, + String.format("0x%08X", actualVersion), + String.format("0x%08X", expectedVersion)); + + JniTest.Test( + "Read Native String Constant", + JniWrapper.read_constant_string(), + "Hello from C"); + + JniTest.Test( + "Write Java String to Native Library", + JniWrapper.write_string("Hello from Java"), + "Hello from Java"); + + JniTest.Test( + "Write Java Char Array to Native Library", + JniWrapper.write_char_array("Hello from Java".toCharArray()), + "Hello from Java"); + + var helper = new JniHelper(); + JniTest.Test( + "Write String Member to Native Library", + JniWrapper.write_string_member(helper), + "Set from Java"); + + JniWrapper.set_string_member(helper); + JniTest.Test( + "Set String Member from Native Library", + helper.stringMember, + "Set from C"); + + JniWrapper.execute_java_function(helper); + JniTest.Test( + "Execeute Java Function from Native Library", + helper.stringMember, + "Hello, Managed World"); + + helper = JniWrapper.instantiate_java_class(); + JniTest.Test( + "Instantiate Java Class", + helper.stringMember, + "Instantiated from C"); + + JniTest.Test( + "Call Native Library to Set System Time", + JniWrapper.set_and_write_time_in_seconds(1000), + "1000"); + + System.exit(exitCode); + } + + public static int exitCode = 0; +} diff --git a/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/JniWrapper.c b/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/JniWrapper.c new file mode 100644 index 00000000..0dde4e0c --- /dev/null +++ b/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/JniWrapper.c @@ -0,0 +1,50 @@ +#include "JniWrapper.h" +#include "jni_helper.h" + +// Proxies the generated function calls to the jni_helper + +JNIEXPORT jint JNICALL Java_JniWrapper_get_1jni_1version + (JNIEnv* env, jclass class) +{ + return get_jni_version(env); +} +JNIEXPORT jstring JNICALL Java_JniWrapper_read_1constant_1string + (JNIEnv* env, jclass class) +{ + return read_constant_jstring(env); +} +JNIEXPORT jstring JNICALL Java_JniWrapper_write_1string + (JNIEnv* env, jclass class, jstring string) +{ + return write_jstring(env, string); +} +JNIEXPORT jstring JNICALL Java_JniWrapper_write_1char_1array + (JNIEnv* env, jclass class, jcharArray chars) +{ + return write_jchar_array(env, chars); +} +JNIEXPORT jstring JNICALL Java_JniWrapper_write_1string_1member + (JNIEnv* env, jclass class, jobject helper) +{ + return write_string_member(env, helper); +} +JNIEXPORT void JNICALL Java_JniWrapper_set_1string_1member + (JNIEnv* env, jclass class, jobject helper) +{ + set_string_member(env, helper); +} +JNIEXPORT void JNICALL Java_JniWrapper_execute_1java_1function + (JNIEnv* env, jclass class, jobject helper) +{ + execute_java_function(env, helper); +} +JNIEXPORT jobject JNICALL Java_JniWrapper_instantiate_1java_1class + (JNIEnv* env, jclass class) +{ + return instantiate_java_class(env); +} +JNIEXPORT jstring JNICALL Java_JniWrapper_set_1and_1write_1time_1in_1seconds + (JNIEnv* env, jclass class, jint seconds) +{ + return set_and_write_time_in_seconds(env, seconds); +} diff --git a/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/JniWrapper.java b/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/JniWrapper.java new file mode 100644 index 00000000..d11e99bf --- /dev/null +++ b/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/JniWrapper.java @@ -0,0 +1,17 @@ +public class JniWrapper +{ + static + { + System.loadLibrary("jni_native"); + } + + public static native int get_jni_version(); + public static native String read_constant_string(); + public static native String write_string(String string); + public static native String write_char_array(char[] string); + public static native String write_string_member(JniHelper helper); + public static native void set_string_member(JniHelper helper); + public static native void execute_java_function(JniHelper helper); + public static native JniHelper instantiate_java_class(); + public static native String set_and_write_time_in_seconds(int seconds); +} diff --git a/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/jni_helper.c b/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/jni_helper.c new file mode 100644 index 00000000..e6e2eec8 --- /dev/null +++ b/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/jni_helper.c @@ -0,0 +1,94 @@ +#include "jni_helper.h" +#include "native.h" + +// Handles Java/C interop + +jint get_jni_version(JNIEnv* env) +{ + return (*env)->GetVersion(env); +} +jstring read_constant_jstring(JNIEnv* env) +{ + return (*env)->NewStringUTF(env, read_constant_string()); +} +static jstring read_internal_string_as_jstring(JNIEnv* env) +{ + return (*env)->NewStringUTF(env, read_internal_string()); +} +jstring write_jstring(JNIEnv* env, jstring string) +{ + const char* utf8_string = (*env)->GetStringUTFChars(env, string, NULL); + write_internal_string(utf8_string); + + (*env)->ReleaseStringUTFChars(env, string, utf8_string); + return read_internal_string_as_jstring(env); +} +jstring write_jchar_array(JNIEnv* env, jcharArray chars) +{ + jsize length = (*env)->GetArrayLength(env, chars); + jchar* body = (*env)->GetCharArrayElements(env, chars, NULL); + jstring input = (*env)->NewString(env, body, length); + jstring output = write_jstring(env, input); + + (*env)->ReleaseCharArrayElements(env, chars, body, JNI_ABORT); + return output; +} +static jfieldID get_string_member_field(JNIEnv* env, jobject helper) +{ + jclass class = (*env)->GetObjectClass(env, helper); + return (*env)->GetFieldID(env, class, "stringMember", "Ljava/lang/String;"); +} +jstring write_string_member(JNIEnv* env, jobject helper) +{ + jfieldID fieldID = get_string_member_field(env, helper); + jstring string = (*env)->GetObjectField(env, helper, fieldID); + + return write_jstring(env, string); +} +static void set_string_member_helper(JNIEnv* env, jobject helper, const char* utf8_string) +{ + jfieldID fieldID = get_string_member_field(env, helper); + jstring string = (*env)->NewStringUTF(env, utf8_string); + (*env)->SetObjectField(env, helper, fieldID, string); +} +void set_string_member(JNIEnv* env, jobject helper) +{ + char stringBuffer[256]; + write_external_string(stringBuffer, 256); + set_string_member_helper(env, helper, stringBuffer); +} + +typedef struct +{ + JNIEnv* env; + jobject object; + jmethodID methodID; +} method_parameters; +static void call_void_java_method(void* context) +{ + method_parameters* parameters = (method_parameters*)context; + (*parameters->env)->CallVoidMethod(parameters->env, parameters->object, parameters->methodID); +} +void execute_java_function(JNIEnv* env, jobject helper) +{ + jclass class = (*env)->GetObjectClass(env, helper); + jmethodID methodID = (*env)->GetMethodID(env, class, "HelloManagedWorld", "()V"); + + method_parameters parameters = {env, helper, methodID}; + execute_function(call_void_java_method, (void*)¶meters); +} +jobject instantiate_java_class(JNIEnv* env) +{ + jclass class = (*env)->FindClass(env, "JniHelper"); + jmethodID methodID = (*env)->GetMethodID(env, class, "", "()V"); + + jobject object =(*env)->NewObject(env, class, methodID); + set_string_member_helper(env, object, "Instantiated from C"); + return object; +} +jstring set_and_write_time_in_seconds(JNIEnv* env, jint seconds) +{ + set_time_in_seconds((int)seconds); + write_internal_time_in_seconds(); + return read_internal_string_as_jstring(env); +} diff --git a/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/jni_helper.h b/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/jni_helper.h new file mode 100644 index 00000000..4c9aab3b --- /dev/null +++ b/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/jni_helper.h @@ -0,0 +1,13 @@ +#pragma once + +#include + +jint get_jni_version(JNIEnv* env); +jstring read_constant_jstring(JNIEnv* env); +jstring write_jstring(JNIEnv* env, jstring string); +jstring write_jchar_array(JNIEnv* env, jcharArray chars); +jstring write_string_member(JNIEnv* env, jobject helper); +void set_string_member(JNIEnv* env, jobject helper); +void execute_java_function(JNIEnv* env, jobject helper); +jobject instantiate_java_class(JNIEnv* env); +jstring set_and_write_time_in_seconds(JNIEnv* env, jint seconds); diff --git a/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/native.c b/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/native.c new file mode 100644 index 00000000..ed87e345 --- /dev/null +++ b/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/native.c @@ -0,0 +1,39 @@ +#include "native.h" +#include +#include + +// Pure native functions + +#define CHAR_BUFFER_SIZE 256 +static char buffer[CHAR_BUFFER_SIZE]; + +const char* read_constant_string() +{ + return "Hello from C"; +} +const char* read_internal_string() +{ + return buffer; +} +void write_internal_string(const char* string) +{ + snprintf(buffer, CHAR_BUFFER_SIZE, "%s", string); +} +void write_external_string(char* string, size_t maxLength) +{ + snprintf(string, maxLength, "Set from C"); +} +void execute_function(void(*function)(void*), void* context) +{ + function(context); +} +void set_time_in_seconds(int seconds) +{ + time_t timeToSet = seconds; + stime(&timeToSet); +} +void write_internal_time_in_seconds() +{ + time_t systemTime = time(NULL); + snprintf(buffer, CHAR_BUFFER_SIZE, "%u", systemTime); +} diff --git a/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/native.h b/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/native.h new file mode 100644 index 00000000..a25f1779 --- /dev/null +++ b/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/native.h @@ -0,0 +1,11 @@ +#pragma once + +#include + +const char* read_constant_string(); +const char* read_internal_string(); +void write_internal_string(const char* string); +void write_external_string(char* string, size_t maxLength); +void execute_function(void(*function)(void*), void* context); +void set_time_in_seconds(int seconds); +void write_internal_time_in_seconds(); diff --git a/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/openjdk-jni-test.mk b/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/openjdk-jni-test.mk new file mode 100644 index 00000000..2028ad40 --- /dev/null +++ b/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/openjdk-jni-test.mk @@ -0,0 +1,34 @@ +################################################################################ +# +# openjdk jni test +# +################################################################################ + +OPENJDK_JNI_TEST_DEPENDENCIES = openjdk + +JNI_INCLUDE_PATH = $(BUILD_DIR)/openjdk-$(OPENJDK_VERSION)/build/linux-aarch64-server-release/jdk/include + +define OPENJDK_JNI_TEST_BUILD_CMDS + # Compile Java classes and generate native headers + $(JAVAC) -d $(@D) -h $(@D) \ + $(OPENJDK_JNI_TEST_PKGDIR)/JniTest.java \ + $(OPENJDK_JNI_TEST_PKGDIR)/JniWrapper.java \ + $(OPENJDK_JNI_TEST_PKGDIR)/JniHelper.java + + # Compile shared library + $(TARGET_MAKE_ENV) $(TARGET_CC) -shared -fPIC \ + -I$(JNI_INCLUDE_PATH) -I$(JNI_INCLUDE_PATH)/linux -I$(@D) \ + -o $(@D)/libjni_native.so \ + $(OPENJDK_JNI_TEST_PKGDIR)/JniWrapper.c \ + $(OPENJDK_JNI_TEST_PKGDIR)/jni_helper.c \ + $(OPENJDK_JNI_TEST_PKGDIR)/native.c +endef + +define OPENJDK_JNI_TEST_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 755 $(@D)/JniTest.class $(TARGET_DIR)/usr/bin/JniTest.class + $(INSTALL) -D -m 755 $(@D)/JniWrapper.class $(TARGET_DIR)/usr/bin/JniWrapper.class + $(INSTALL) -D -m 755 $(@D)/JniHelper.class $(TARGET_DIR)/usr/bin/JniHelper.class + $(INSTALL) -D -m 755 $(@D)/libjni_native.so $(TARGET_DIR)/usr/lib/libjni_native.so +endef + +$(eval $(generic-package)) diff --git a/support/testing/tests/package/copy-sample-script-to-target.sh b/support/testing/tests/package/copy-sample-script-to-target.sh new file mode 100755 index 00000000..6448a80d --- /dev/null +++ b/support/testing/tests/package/copy-sample-script-to-target.sh @@ -0,0 +1,7 @@ +#!/bin/sh +set -e + +shift +for file in "$@"; do + cp -f "${file}" "${TARGET_DIR}/root/" +done diff --git a/support/testing/tests/package/sample_gst1_python.py b/support/testing/tests/package/sample_gst1_python.py new file mode 100644 index 00000000..fab7e74f --- /dev/null +++ b/support/testing/tests/package/sample_gst1_python.py @@ -0,0 +1,32 @@ +#!/usr/bin/env python +"""A simple test that uses gst1-python to run a fake videotestsrc for 100 +frames +""" +import sys +import gi +gi.require_version('Gst', '1.0') +from gi.repository import Gst, GLib # noqa: E402 + + +def on_message(bus, message, loop): + print('Received Gst.Message.type: {}'.format(message.type)) + if message.type == Gst.MessageType.EOS: + loop.quit() + return True + + +def main(): + # Initializes Gstreamer + Gst.init(sys.argv) + pipeline = Gst.parse_launch("videotestsrc num-buffers=100 ! fakevideosink") + bus = pipeline.get_bus() + bus.add_signal_watch() + pipeline.set_state(Gst.State.PLAYING) + loop = GLib.MainLoop() + bus.connect("message", on_message, loop) + loop.run() + pipeline.set_state(Gst.State.NULL) + + +if __name__ == '__main__': + main() diff --git a/support/testing/tests/package/sample_libftdi1.py b/support/testing/tests/package/sample_libftdi1.py new file mode 100644 index 00000000..2da6124b --- /dev/null +++ b/support/testing/tests/package/sample_libftdi1.py @@ -0,0 +1 @@ +import ftdi1 # noqa diff --git a/support/testing/tests/package/sample_python_argh.py b/support/testing/tests/package/sample_python_argh.py new file mode 100644 index 00000000..48247bf6 --- /dev/null +++ b/support/testing/tests/package/sample_python_argh.py @@ -0,0 +1,10 @@ +import argh + + +@argh.arg("foo", help="help for foo") +@argh.arg("--bar", help="help for bar") +def main(foo, bar=False): + print("{}, {}".format(foo, bar)) + + +argh.dispatch_command(main) diff --git a/support/testing/tests/package/sample_python_attrs.py b/support/testing/tests/package/sample_python_attrs.py new file mode 100644 index 00000000..f2249449 --- /dev/null +++ b/support/testing/tests/package/sample_python_attrs.py @@ -0,0 +1,15 @@ +import attr + + +@attr.s +class Obj(object): + x = attr.ib() + y = attr.ib(default=1) + + +obj1 = Obj(2) +assert(obj1.x == 2) +assert(obj1.y == 1) +obj2 = Obj(3, 4) +assert(obj2.x == 3) +assert(obj2.y == 4) diff --git a/support/testing/tests/package/sample_python_autobahn.py b/support/testing/tests/package/sample_python_autobahn.py new file mode 100644 index 00000000..8189b6a6 --- /dev/null +++ b/support/testing/tests/package/sample_python_autobahn.py @@ -0,0 +1 @@ +import autobahn.wamp # noqa diff --git a/support/testing/tests/package/sample_python_automat.py b/support/testing/tests/package/sample_python_automat.py new file mode 100644 index 00000000..baf536f9 --- /dev/null +++ b/support/testing/tests/package/sample_python_automat.py @@ -0,0 +1,27 @@ +from automat import MethodicalMachine + + +class Led(object): + _machine = MethodicalMachine() + + @_machine.state() + def led_on(self): + "led is on" + + @_machine.state(initial=True) + def led_off(self): + "led is off" + + @_machine.input() + def turn_on(self): + "turn the led on" + + @_machine.output() + def _light(self): + print("light") + + led_off.upon(turn_on, enter=led_on, outputs=[_light]) + + +led = Led() +led.turn_on() diff --git a/support/testing/tests/package/sample_python_avro.py b/support/testing/tests/package/sample_python_avro.py new file mode 100644 index 00000000..79d2dcdb --- /dev/null +++ b/support/testing/tests/package/sample_python_avro.py @@ -0,0 +1,23 @@ +from io import BytesIO +from avro.schema import Parse +from avro.io import DatumReader, BinaryDecoder + +schema = Parse("""{ +"namespace": "org.buildroot.package.python_avro", +"type": "record", +"name": "Developer", +"fields": [ + {"name": "email", "type": "string"}, + {"name": "maintainer_of", "type": "string"} +] +}""") + +example = b' RESULT.FAIL.value) +assert(RESULT.get(-5) == RESULT.FAIL) diff --git a/support/testing/tests/package/sample_python_crossbar.py b/support/testing/tests/package/sample_python_crossbar.py new file mode 100644 index 00000000..374cccd8 --- /dev/null +++ b/support/testing/tests/package/sample_python_crossbar.py @@ -0,0 +1,5 @@ +import os +import crossbar + +os.environ["AUTOBAHN_USE_UMSGPACK"] = "1" +crossbar.run(["version"]) diff --git a/support/testing/tests/package/sample_python_cryptography.py b/support/testing/tests/package/sample_python_cryptography.py new file mode 100644 index 00000000..ec9883dc --- /dev/null +++ b/support/testing/tests/package/sample_python_cryptography.py @@ -0,0 +1,3 @@ +from cryptography.fernet import Fernet +key = Fernet.generate_key() +f = Fernet(key) diff --git a/support/testing/tests/package/sample_python_django.py b/support/testing/tests/package/sample_python_django.py new file mode 100644 index 00000000..c2bad566 --- /dev/null +++ b/support/testing/tests/package/sample_python_django.py @@ -0,0 +1 @@ +import django # noqa: F401 diff --git a/support/testing/tests/package/sample_python_gitdb2.py b/support/testing/tests/package/sample_python_gitdb2.py new file mode 100644 index 00000000..4a82fdf5 --- /dev/null +++ b/support/testing/tests/package/sample_python_gitdb2.py @@ -0,0 +1 @@ +from gitdb import * # noqa diff --git a/support/testing/tests/package/sample_python_gobject.py b/support/testing/tests/package/sample_python_gobject.py new file mode 100644 index 00000000..50564aa7 --- /dev/null +++ b/support/testing/tests/package/sample_python_gobject.py @@ -0,0 +1,14 @@ +#!/usr/bin/env python +"""A simple test that uses python-gobject to find the path of sh.""" +from gi.repository import GLib + + +def main(): + sh_path = GLib.find_program_in_path('sh') + if sh_path == "/bin/sh": + return True + return False + + +if __name__ == '__main__': + main() diff --git a/support/testing/tests/package/sample_python_gpiozero.py b/support/testing/tests/package/sample_python_gpiozero.py new file mode 100644 index 00000000..b95df07f --- /dev/null +++ b/support/testing/tests/package/sample_python_gpiozero.py @@ -0,0 +1,5 @@ +from gpiozero import pi_info + +piBoardInfo = pi_info('a020d3') # 3B+ + +assert(piBoardInfo.model == '3B+') diff --git a/support/testing/tests/package/sample_python_incremental.py b/support/testing/tests/package/sample_python_incremental.py new file mode 100644 index 00000000..b6e2aa80 --- /dev/null +++ b/support/testing/tests/package/sample_python_incremental.py @@ -0,0 +1,3 @@ +import incremental +v = incremental.Version("package", 1, 2, 3, release_candidate=4) +assert(str(v) == "[package, version 1.2.3rc4]") diff --git a/support/testing/tests/package/sample_python_passlib.py b/support/testing/tests/package/sample_python_passlib.py new file mode 100644 index 00000000..3ab348b9 --- /dev/null +++ b/support/testing/tests/package/sample_python_passlib.py @@ -0,0 +1,5 @@ +from passlib.hash import pbkdf2_sha256 + +hash = pbkdf2_sha256.hash("password") +assert(pbkdf2_sha256.verify("passWord", hash) is False) +assert(pbkdf2_sha256.verify("password", hash) is True) diff --git a/support/testing/tests/package/sample_python_pexpect.py b/support/testing/tests/package/sample_python_pexpect.py new file mode 100644 index 00000000..cfe395fc --- /dev/null +++ b/support/testing/tests/package/sample_python_pexpect.py @@ -0,0 +1,8 @@ +import pexpect + +p = pexpect.spawn(["login"]) +p.expect("login:") +p.sendline("wrong") +p.expect("Password:") +p.sendline("wrong") +p.expect("Login incorrect") diff --git a/support/testing/tests/package/sample_python_pynacl.py b/support/testing/tests/package/sample_python_pynacl.py new file mode 100644 index 00000000..d17c50eb --- /dev/null +++ b/support/testing/tests/package/sample_python_pynacl.py @@ -0,0 +1,3 @@ +import nacl.utils + +nonce = nacl.utils.random(16) diff --git a/support/testing/tests/package/sample_python_pytest.py b/support/testing/tests/package/sample_python_pytest.py new file mode 100644 index 00000000..870cc851 --- /dev/null +++ b/support/testing/tests/package/sample_python_pytest.py @@ -0,0 +1,25 @@ +import pytest + + +x = 1 + + +@pytest.fixture() +def f1(): + global x + x = 2 + yield 15 + x = 3 + + +def test_1(): + assert x == 1 + + +def test_2(f1): + assert x == 2 + assert f1 == 15 + + +def test_3(): + assert x == 3 diff --git a/support/testing/tests/package/sample_python_pytest_asyncio.py b/support/testing/tests/package/sample_python_pytest_asyncio.py new file mode 100644 index 00000000..cdb8cd9f --- /dev/null +++ b/support/testing/tests/package/sample_python_pytest_asyncio.py @@ -0,0 +1,31 @@ +import asyncio +import pytest + + +x = 1 + + +@pytest.fixture() +def f1(): + global x + x = 2 + yield 15 + x = 3 + + +@pytest.mark.asyncio +async def test_1(): + assert x == 1 + + +@pytest.mark.asyncio +async def test_2(f1): + assert x == 2 + assert f1 == 15 + + +@pytest.mark.asyncio +async def test_3(): + assert x == 3 + await asyncio.sleep(0.1) + assert x == 3 diff --git a/support/testing/tests/package/sample_python_pyyaml_dec.py b/support/testing/tests/package/sample_python_pyyaml_dec.py new file mode 100644 index 00000000..9ab89311 --- /dev/null +++ b/support/testing/tests/package/sample_python_pyyaml_dec.py @@ -0,0 +1,10 @@ +import yaml + +with open("/tmp/data.yml", "rb") as f: + serialized = f.read() +data = yaml.load(serialized) +print(data) +assert(data["name"] == "python-pyyaml") +assert(data["versions"] == ["1", "2"]) +assert(data["group"]["is_a_package"] is True) +assert(data["group"]["value"] == 42) diff --git a/support/testing/tests/package/sample_python_pyyaml_enc.py b/support/testing/tests/package/sample_python_pyyaml_enc.py new file mode 100644 index 00000000..30759949 --- /dev/null +++ b/support/testing/tests/package/sample_python_pyyaml_enc.py @@ -0,0 +1,14 @@ +import yaml + +data = { + "name": "python-pyyaml", + "versions": ["1", "2"], + "group": { + "is_a_package": True, + "value": 42 + } +} +serialized = yaml.dump(data, default_flow_style=False) +print(serialized) +with open("/tmp/data.yml", "w") as f: + f.write(serialized) diff --git a/support/testing/tests/package/sample_python_rpi_gpio.py b/support/testing/tests/package/sample_python_rpi_gpio.py new file mode 100644 index 00000000..5f0d884e --- /dev/null +++ b/support/testing/tests/package/sample_python_rpi_gpio.py @@ -0,0 +1,6 @@ +try: + import RPi.GPIO # noqa +except RuntimeError as e: + assert(str(e) == 'This module can only be run on a Raspberry Pi!') +else: + raise RuntimeError('Import succeeded when it should not have!') diff --git a/support/testing/tests/package/sample_python_service_identity.py b/support/testing/tests/package/sample_python_service_identity.py new file mode 100644 index 00000000..3184b6c5 --- /dev/null +++ b/support/testing/tests/package/sample_python_service_identity.py @@ -0,0 +1,2 @@ +from service_identity import VerificationError # noqa +from service_identity.pyopenssl import verify_hostname # noqa diff --git a/support/testing/tests/package/sample_python_smmap2.py b/support/testing/tests/package/sample_python_smmap2.py new file mode 100644 index 00000000..494fc26e --- /dev/null +++ b/support/testing/tests/package/sample_python_smmap2.py @@ -0,0 +1,6 @@ +# Taken from smmap/test/test_tutorial.py + +import smmap +mman = smmap.SlidingWindowMapManager() +assert mman.num_file_handles() == 0 +assert mman.mapped_memory_size() == 0 diff --git a/support/testing/tests/package/sample_python_subprocess32.py b/support/testing/tests/package/sample_python_subprocess32.py new file mode 100644 index 00000000..8579745c --- /dev/null +++ b/support/testing/tests/package/sample_python_subprocess32.py @@ -0,0 +1,6 @@ +import subprocess32 + +output = subprocess32.check_output(["ls", "-l", "/dev/null"]) +print(output) +assert("/dev/null" in output) +assert("No such" not in output) diff --git a/support/testing/tests/package/sample_python_treq.py b/support/testing/tests/package/sample_python_treq.py new file mode 100644 index 00000000..974fdcd8 --- /dev/null +++ b/support/testing/tests/package/sample_python_treq.py @@ -0,0 +1,16 @@ +from twisted.internet import reactor +import treq + + +def done(response): + print(response.code) + reactor.stop() + + +def err(fail): + print(fail.value) + reactor.stop() + + +treq.get("https://localhost").addCallback(done).addErrback(err) +reactor.run() diff --git a/support/testing/tests/package/sample_python_twisted.py b/support/testing/tests/package/sample_python_twisted.py new file mode 100644 index 00000000..47d6c5de --- /dev/null +++ b/support/testing/tests/package/sample_python_twisted.py @@ -0,0 +1,9 @@ +from twisted.internet import protocol, reactor, endpoints + + +class F(protocol.Factory): + pass + + +endpoints.serverFromString(reactor, "tcp:1234").listen(F()) +reactor.run() diff --git a/support/testing/tests/package/sample_python_txaio_asyncio.py b/support/testing/tests/package/sample_python_txaio_asyncio.py new file mode 100644 index 00000000..77f11ed8 --- /dev/null +++ b/support/testing/tests/package/sample_python_txaio_asyncio.py @@ -0,0 +1,3 @@ +import txaio +txaio.use_asyncio() +f0 = txaio.create_future() diff --git a/support/testing/tests/package/sample_python_txaio_twisted.py b/support/testing/tests/package/sample_python_txaio_twisted.py new file mode 100644 index 00000000..13ea82a9 --- /dev/null +++ b/support/testing/tests/package/sample_python_txaio_twisted.py @@ -0,0 +1,3 @@ +import txaio +txaio.use_twisted() +f0 = txaio.create_future() diff --git a/support/testing/tests/package/sample_python_txtorcon.py b/support/testing/tests/package/sample_python_txtorcon.py new file mode 100644 index 00000000..c4a2ae6f --- /dev/null +++ b/support/testing/tests/package/sample_python_txtorcon.py @@ -0,0 +1 @@ +import txtorcon # noqa diff --git a/support/testing/tests/package/sample_python_ubjson_dec.py b/support/testing/tests/package/sample_python_ubjson_dec.py new file mode 100644 index 00000000..12ccdfd5 --- /dev/null +++ b/support/testing/tests/package/sample_python_ubjson_dec.py @@ -0,0 +1,10 @@ +import ubjson + +with open("/tmp/data.json", "rb") as f: + serialized = f.read() +data = ubjson.loadb(serialized) +print(data) +assert(data["name"] == "python-ubjson") +assert(data["versions"] == ["1", "2"]) +assert(data["group"]["is_a_package"] is True) +assert(data["group"]["value"] == 42) diff --git a/support/testing/tests/package/sample_python_ubjson_enc.py b/support/testing/tests/package/sample_python_ubjson_enc.py new file mode 100644 index 00000000..9a2140ef --- /dev/null +++ b/support/testing/tests/package/sample_python_ubjson_enc.py @@ -0,0 +1,14 @@ +import ubjson + +data = { + "name": "python-ubjson", + "versions": ["1", "2"], + "group": { + "is_a_package": True, + "value": 42 + } +} +serialized = ubjson.dumpb(data) +print(serialized) +with open("/tmp/data.json", "wb") as f: + f.write(serialized) diff --git a/support/testing/tests/package/test_atop.py b/support/testing/tests/package/test_atop.py new file mode 100644 index 00000000..1da1ac7c --- /dev/null +++ b/support/testing/tests/package/test_atop.py @@ -0,0 +1,41 @@ +import os + +import infra.basetest + +BASIC_TOOLCHAIN_CONFIG_HEADERS_AT_LEAST_3_14 = \ + """ + BR2_arm=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y + BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y + BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-arm-full-2019.05.1.tar.bz2" + BR2_TOOLCHAIN_EXTERNAL_GCC_4_9=y + BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_14=y + BR2_TOOLCHAIN_EXTERNAL_LOCALE=y + # BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG is not set + BR2_TOOLCHAIN_EXTERNAL_CXX=y + """ + + +class TestAtop(infra.basetest.BRTest): + config = BASIC_TOOLCHAIN_CONFIG_HEADERS_AT_LEAST_3_14 + \ + """ + BR2_PACKAGE_ATOP=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + cmd = "atop -V | grep '^Version'" + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + + cmd = "atop -a 1 2 | grep '% *atop *$'" + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) diff --git a/support/testing/tests/package/test_crudini.py b/support/testing/tests/package/test_crudini.py new file mode 100644 index 00000000..e320d320 --- /dev/null +++ b/support/testing/tests/package/test_crudini.py @@ -0,0 +1,49 @@ +import os +from tests.package.test_python import TestPythonPackageBase + + +INI_FILE_CONTENT = """ +[section] +param = this-is-the-magic-value +other = dont care +""" + + +class TestCrudiniBase(TestPythonPackageBase): + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_CRUDINI=y + """ + + def test_run(self): + img = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", kernel="builtin", + options=["-initrd", img]) + + self.emulator.login() + + # 1. Create some sample .ini file + cmd = "echo -e '%s' > config.ini" % INI_FILE_CONTENT + _, ret = self.emulator.run(cmd) + self.assertEqual(ret, 0) + + # 2. Attempt to get the value + out, ret = self.emulator.run("crudini --get config.ini section param") + self.assertEqual(ret, 0) + self.assertEqual(out, ['this-is-the-magic-value']) + + +class TestCrudiniPy2(TestCrudiniBase): + __test__ = True + config = TestCrudiniBase.config + \ + """ + BR2_PACKAGE_PYTHON=y + """ + + +class TestCrudiniPy3(TestCrudiniBase): + __test__ = True + config = TestCrudiniBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + """ diff --git a/support/testing/tests/package/test_docker_compose.py b/support/testing/tests/package/test_docker_compose.py new file mode 100644 index 00000000..737dbf39 --- /dev/null +++ b/support/testing/tests/package/test_docker_compose.py @@ -0,0 +1,66 @@ +import os + +import infra.basetest + + +class TestDockerCompose(infra.basetest.BRTest): + config = \ + """ + BR2_x86_64=y + BR2_x86_core2=y + BR2_TOOLCHAIN_BUILDROOT_GLIBC=y + BR2_KERNEL_HEADERS_4_19=y + BR2_TOOLCHAIN_BUILDROOT_CXX=y + BR2_SYSTEM_DHCP="eth0" + BR2_ROOTFS_POST_BUILD_SCRIPT="{}" + BR2_ROOTFS_POST_SCRIPT_ARGS="{}" + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19" + BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y + BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="{}" + BR2_PACKAGE_CA_CERTIFICATES=y + BR2_PACKAGE_DOCKER_CLI=y + BR2_PACKAGE_DOCKER_COMPOSE=y + BR2_PACKAGE_DOCKER_ENGINE=y + BR2_TARGET_ROOTFS_EXT2=y + BR2_TARGET_ROOTFS_EXT2_SIZE="512M" + # BR2_TARGET_ROOTFS_TAR is not set + """.format( + infra.filepath("tests/package/copy-sample-script-to-target.sh"), + infra.filepath("conf/docker-compose.yml"), + infra.filepath("conf/docker-compose-kernel.config")) + + def wait_for_dockerd(self): + # dockerd takes a while to start up + _, _ = self.emulator.run('while [ ! -e /var/run/docker.sock ]; do sleep 1; done', 120) + + def docker_test(self): + # will download container if not available, which may take some time + _, exit_code = self.emulator.run('docker run --rm -p 8888:8888 busybox:latest /bin/true', 120) + self.assertEqual(exit_code, 0) + + def docker_compose_test(self): + # will download container if not available, which may take some time + self.assertRunOk('docker-compose up -d', 120) + # container may take some time to start + self.assertRunOk('while ! docker inspect root_busybox_1 2>&1 >/dev/null; do sleep 1; done', 120) + self.assertRunOk('wget -O /tmp/busybox http://127.0.0.1/busybox', 120) + self.assertRunOk('cmp /bin/busybox /tmp/busybox', 120) + + def test_run(self): + kernel = os.path.join(self.builddir, "images", "bzImage") + rootfs = os.path.join(self.builddir, "images", "rootfs.ext2") + self.emulator.boot(arch="x86_64", + kernel=kernel, + kernel_cmdline=["root=/dev/vda", "console=ttyS0"], + options=["-cpu", "core2duo", + "-m", "512M", + "-device", "virtio-rng-pci", + "-drive", "file={},format=raw,if=virtio".format(rootfs), + "-net", "nic,model=virtio", + "-net", "user"]) + self.emulator.login() + self.wait_for_dockerd() + self.docker_test() + self.docker_compose_test() diff --git a/support/testing/tests/package/test_dropbear.py b/support/testing/tests/package/test_dropbear.py new file mode 100644 index 00000000..bfec8701 --- /dev/null +++ b/support/testing/tests/package/test_dropbear.py @@ -0,0 +1,32 @@ +import os + +import infra.basetest + + +class TestDropbear(infra.basetest.BRTest): + passwd = "testpwd" + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_TARGET_GENERIC_ROOT_PASSWD="{}" + BR2_SYSTEM_DHCP="eth0" + BR2_PACKAGE_DROPBEAR=y + BR2_PACKAGE_SSHPASS=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """.format(passwd) + + def test_run(self): + img = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", img, + "-net", "nic", + "-net", "user"]) + self.emulator.login(self.passwd) + cmd = "netstat -ltn 2>/dev/null | grep 0.0.0.0:22" + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + + cmd = "sshpass -p {} ssh -y localhost /bin/true".format(self.passwd) + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) diff --git a/support/testing/tests/package/test_glxinfo.py b/support/testing/tests/package/test_glxinfo.py new file mode 100644 index 00000000..f37236d1 --- /dev/null +++ b/support/testing/tests/package/test_glxinfo.py @@ -0,0 +1,62 @@ +import os + +import infra.basetest + +GLXINFO_TIMEOUT = 120 + + +class TestGlxinfo(infra.basetest.BRTest): + config = \ + """ + BR2_x86_core2=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y + BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y + BR2_TOOLCHAIN_EXTERNAL_URL="http://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs/x86-core2--glibc--bleeding-edge-2018.11-1.tar.bz2" + BR2_TOOLCHAIN_EXTERNAL_GCC_8=y + BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_14=y + BR2_TOOLCHAIN_EXTERNAL_CXX=y + BR2_TOOLCHAIN_EXTERNAL_HAS_SSP=y + BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC=y + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.16.7" + BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y + BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/x86/linux.config" + BR2_PACKAGE_MESA3D_DEMOS=y + BR2_PACKAGE_MESA3D=y + BR2_PACKAGE_MESA3D_DRI_DRIVER_SWRAST=y + BR2_PACKAGE_MESA3D_OPENGL_GLX=y + BR2_PACKAGE_XORG7=y + BR2_PACKAGE_XSERVER_XORG_SERVER=y + BR2_TARGET_GENERIC_GETTY_PORT="ttyS0" + BR2_TARGET_ROOTFS_EXT2=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def wait_for_xserver(self): + # xserver takes some time to start up + # The test case fail here if for some reason xserver is not properly installed + _, _ = self.emulator.run('while [ ! -e /var/run/xorg.pid ]; do sleep 1; done', 120) + + def login(self): + img = os.path.join(self.builddir, "images", "rootfs.ext2") + kern = os.path.join(self.builddir, "images", "bzImage") + # glxinfo overallocate memory and the minimum that seemed to work was 512MB + self.emulator.boot(arch="i386", + kernel=kern, + kernel_cmdline=["root=/dev/vda console=ttyS0"], + options=["-M", "pc", "-m", "512", "-drive", "file={},if=virtio,format=raw".format(img)]) + self.emulator.login() + + def test_run(self): + self.login() + self.wait_for_xserver() + + # The test case verifies that the xserver with GLX is working + cmd = "glxinfo -B -display :0" + output, exit_code = self.emulator.run(cmd, GLXINFO_TIMEOUT) + self.assertEqual(exit_code, 0) + for line in output: + self.assertNotIn("Error", line) + # Error case: "Error: couldn't find RGB GLX visual or fbconfig" diff --git a/support/testing/tests/package/test_gst1_python.py b/support/testing/tests/package/test_gst1_python.py new file mode 100644 index 00000000..caae3e6b --- /dev/null +++ b/support/testing/tests/package/test_gst1_python.py @@ -0,0 +1,31 @@ +import os +from tests.package.test_python import TestPythonPackageBase + + +class TestGst1Python(TestPythonPackageBase): + __test__ = True + config = \ + """ + BR2_arm=y + BR2_cortex_a9=y + BR2_ARM_ENABLE_VFP=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM=y + BR2_PACKAGE_GSTREAMER1=y + BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_VIDEOTESTSRC=y + BR2_PACKAGE_GST1_PLUGINS_BAD=y + BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DEBUGUTILS=y + BR2_PACKAGE_GST1_PYTHON=y + BR2_PACKAGE_PYTHON3=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def login(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv7", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + sample_scripts = ["tests/package/sample_gst1_python.py"] + timeout = 200 diff --git a/support/testing/tests/package/test_ipython.py b/support/testing/tests/package/test_ipython.py new file mode 100644 index 00000000..50b00da7 --- /dev/null +++ b/support/testing/tests/package/test_ipython.py @@ -0,0 +1,22 @@ +from tests.package.test_python import TestPythonBase +# +# The following pythong tests are not being used here: +# +# - version_test: IPython does not support --version option +# +# - zlib_test: IPython does not return a non-zero code the way CPython +# does, so this test ends up being a false-negative + + +class TestIPythonPy3(TestPythonBase): + config = TestPythonBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_IPYTHON=y + """ + interpreter = "ipython" + + def test_run(self): + self.login() + self.math_floor_test(40) + self.libc_time_test(40) diff --git a/support/testing/tests/package/test_libftdi1.py b/support/testing/tests/package/test_libftdi1.py new file mode 100644 index 00000000..78c92848 --- /dev/null +++ b/support/testing/tests/package/test_libftdi1.py @@ -0,0 +1,25 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy2Libftdi1(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON=y + BR2_PACKAGE_LIBFTDI1=y + BR2_PACKAGE_LIBFTDI1_PYTHON_BINDINGS=y + """ + sample_scripts = ["tests/package/sample_libftdi1.py"] + timeout = 40 + + +class TestPythonPy3Libftdi1(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_LIBFTDI1=y + BR2_PACKAGE_LIBFTDI1_PYTHON_BINDINGS=y + """ + sample_scripts = ["tests/package/sample_libftdi1.py"] + timeout = 40 diff --git a/support/testing/tests/package/test_lpeg.py b/support/testing/tests/package/test_lpeg.py new file mode 100644 index 00000000..4e1ee343 --- /dev/null +++ b/support/testing/tests/package/test_lpeg.py @@ -0,0 +1,27 @@ +from tests.package.test_lua import TestLuaBase + + +class TestLuaLPeg(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUA=y + BR2_PACKAGE_LPEG=y + """ + + def test_run(self): + self.login() + self.module_test("lpeg") + self.module_test("re") + + +class TestLuajitLPeg(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUAJIT=y + BR2_PACKAGE_LPEG=y + """ + + def test_run(self): + self.login() + self.module_test("lpeg") + self.module_test("re") diff --git a/support/testing/tests/package/test_lsqlite3.py b/support/testing/tests/package/test_lsqlite3.py new file mode 100644 index 00000000..d8747746 --- /dev/null +++ b/support/testing/tests/package/test_lsqlite3.py @@ -0,0 +1,25 @@ +from tests.package.test_lua import TestLuaBase + + +class TestLuaLsqlite3(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUA=y + BR2_PACKAGE_LSQLITE3=y + """ + + def test_run(self): + self.login() + self.module_test("lsqlite3") + + +class TestLuajitLsqlite3(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUAJIT=y + BR2_PACKAGE_LSQLITE3=y + """ + + def test_run(self): + self.login() + self.module_test("lsqlite3") diff --git a/support/testing/tests/package/test_lua.py b/support/testing/tests/package/test_lua.py new file mode 100644 index 00000000..66ae85c9 --- /dev/null +++ b/support/testing/tests/package/test_lua.py @@ -0,0 +1,59 @@ +import os + +import infra.basetest + + +class TestLuaBase(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def login(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + def version_test(self, version): + cmd = "lua -v" + output, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + self.assertIn(version, output[0]) + + def g_version_test(self, expected): + cmd = "lua -e 'print(_G._VERSION)'" + output, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + self.assertEqual(output[0], expected) + + def module_test(self, module, script="a=1"): + cmd = "lua -l {} -e '{}'".format(module, script) + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + + +class TestLua(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUA=y + """ + + def test_run(self): + self.login() + self.version_test('Lua 5.3') + self.g_version_test('Lua 5.3') + + +class TestLuajit(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUAJIT=y + """ + + def test_run(self): + self.login() + self.version_test('LuaJIT 2') + self.g_version_test('Lua 5.1') diff --git a/support/testing/tests/package/test_lua_cqueues.py b/support/testing/tests/package/test_lua_cqueues.py new file mode 100644 index 00000000..e823651c --- /dev/null +++ b/support/testing/tests/package/test_lua_cqueues.py @@ -0,0 +1,59 @@ +from tests.package.test_lua import TestLuaBase + + +class TestLuaLuaCqueues(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUA=y + BR2_PACKAGE_LUA_CQUEUES=y + """ + + def test_run(self): + self.login() + self.module_test("_cqueues") + self.module_test("cqueues") + self.module_test("cqueues.auxlib") + self.module_test("cqueues.condition") + self.module_test("cqueues.dns") + self.module_test("cqueues.dns.config") + self.module_test("cqueues.dns.hints") + self.module_test("cqueues.dns.hosts") + self.module_test("cqueues.dns.packet") + self.module_test("cqueues.dns.record") + self.module_test("cqueues.dns.resolver") + self.module_test("cqueues.dns.resolvers") + self.module_test("cqueues.errno") + self.module_test("cqueues.notify") + self.module_test("cqueues.promise") + self.module_test("cqueues.signal") + self.module_test("cqueues.socket") + self.module_test("cqueues.thread") + + +class TestLuajitLuaCqueues(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUAJIT=y + BR2_PACKAGE_LUA_CQUEUES=y + """ + + def test_run(self): + self.login() + self.module_test("_cqueues") + self.module_test("cqueues") + self.module_test("cqueues.auxlib") + self.module_test("cqueues.condition") + self.module_test("cqueues.dns") + self.module_test("cqueues.dns.config") + self.module_test("cqueues.dns.hints") + self.module_test("cqueues.dns.hosts") + self.module_test("cqueues.dns.packet") + self.module_test("cqueues.dns.record") + self.module_test("cqueues.dns.resolver") + self.module_test("cqueues.dns.resolvers") + self.module_test("cqueues.errno") + self.module_test("cqueues.notify") + self.module_test("cqueues.promise") + self.module_test("cqueues.signal") + self.module_test("cqueues.socket") + self.module_test("cqueues.thread") diff --git a/support/testing/tests/package/test_lua_curl.py b/support/testing/tests/package/test_lua_curl.py new file mode 100644 index 00000000..08130394 --- /dev/null +++ b/support/testing/tests/package/test_lua_curl.py @@ -0,0 +1,27 @@ +from tests.package.test_lua import TestLuaBase + + +class TestLuaLuacURL(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUA=y + BR2_PACKAGE_LUA_CURL=y + """ + + def test_run(self): + self.login() + self.module_test("cURL") + self.module_test("lcurl") + + +class TestLuajitLuacURL(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUAJIT=y + BR2_PACKAGE_LUA_CURL=y + """ + + def test_run(self): + self.login() + self.module_test("cURL") + self.module_test("lcurl") diff --git a/support/testing/tests/package/test_lua_gd.py b/support/testing/tests/package/test_lua_gd.py new file mode 100644 index 00000000..f79f2086 --- /dev/null +++ b/support/testing/tests/package/test_lua_gd.py @@ -0,0 +1,31 @@ +from tests.package.test_lua import TestLuaBase + + +class TestLuaLuaGD(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUA=y + BR2_PACKAGE_LUA_GD=y + BR2_PACKAGE_FONTCONFIG=y + BR2_PACKAGE_JPEG=y + BR2_PACKAGE_LIBPNG=y + """ + + def test_run(self): + self.login() + self.module_test("gd") + + +class TestLuajitLuaGD(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUAJIT=y + BR2_PACKAGE_LUA_GD=y + BR2_PACKAGE_FONTCONFIG=y + BR2_PACKAGE_JPEG=y + BR2_PACKAGE_LIBPNG=y + """ + + def test_run(self): + self.login() + self.module_test("gd") diff --git a/support/testing/tests/package/test_lua_http.py b/support/testing/tests/package/test_lua_http.py new file mode 100644 index 00000000..ba6096a1 --- /dev/null +++ b/support/testing/tests/package/test_lua_http.py @@ -0,0 +1,37 @@ +from tests.package.test_lua import TestLuaBase + + +class TestLuaHttp(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUA=y + BR2_PACKAGE_LUA_HTTP=y + """ + + def test_run(self): + self.login() + self.module_test("http.version", script="local ver=require[[http.version]]; print(ver.name, ver.version)") + self.module_test("http.client") + self.module_test("http.cookie") + self.module_test("http.proxies") + self.module_test("http.server") + self.module_test("http.socks") + self.module_test("http.websocket") + + +class TestLuajitHttp(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUAJIT=y + BR2_PACKAGE_LUA_HTTP=y + """ + + def test_run(self): + self.login() + self.module_test("http.version", script="local ver=require[[http.version]]; print(ver.name, ver.version)") + self.module_test("http.client") + self.module_test("http.cookie") + self.module_test("http.proxies") + self.module_test("http.server") + self.module_test("http.socks") + self.module_test("http.websocket") diff --git a/support/testing/tests/package/test_lua_lyaml.py b/support/testing/tests/package/test_lua_lyaml.py new file mode 100644 index 00000000..ece3c675 --- /dev/null +++ b/support/testing/tests/package/test_lua_lyaml.py @@ -0,0 +1,27 @@ +from tests.package.test_lua import TestLuaBase + + +class TestLuaLuaLyaml(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUA=y + BR2_PACKAGE_LUA_LYAML=y + """ + + def test_run(self): + self.login() + self.module_test("yaml") + self.module_test("lyaml") + + +class TestLuajitLuaLyaml(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUAJIT=y + BR2_PACKAGE_LUA_LYAML=y + """ + + def test_run(self): + self.login() + self.module_test("yaml") + self.module_test("lyaml") diff --git a/support/testing/tests/package/test_lua_sdl2.py b/support/testing/tests/package/test_lua_sdl2.py new file mode 100644 index 00000000..22c4087f --- /dev/null +++ b/support/testing/tests/package/test_lua_sdl2.py @@ -0,0 +1,41 @@ +from tests.package.test_lua import TestLuaBase + + +class TestLuaLuaSDL2(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUA=y + BR2_PACKAGE_LUA_SDL2=y + BR2_PACKAGE_SDL2_IMAGE=y + BR2_PACKAGE_SDL2_MIXER=y + BR2_PACKAGE_SDL2_NET=y + BR2_PACKAGE_SDL2_TTF=y + """ + + def test_run(self): + self.login() + self.module_test("SDL") + self.module_test("SDL.image") + self.module_test("SDL.mixer") + self.module_test("SDL.net") + self.module_test("SDL.ttf") + + +class TestLuajitLuaSDL2(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUAJIT=y + BR2_PACKAGE_LUA_SDL2=y + BR2_PACKAGE_SDL2_IMAGE=y + BR2_PACKAGE_SDL2_MIXER=y + BR2_PACKAGE_SDL2_NET=y + BR2_PACKAGE_SDL2_TTF=y + """ + + def test_run(self): + self.login() + self.module_test("SDL") + self.module_test("SDL.image") + self.module_test("SDL.mixer") + self.module_test("SDL.net") + self.module_test("SDL.ttf") diff --git a/support/testing/tests/package/test_lua_utf8.py b/support/testing/tests/package/test_lua_utf8.py new file mode 100644 index 00000000..5946a439 --- /dev/null +++ b/support/testing/tests/package/test_lua_utf8.py @@ -0,0 +1,25 @@ +from tests.package.test_lua import TestLuaBase + + +class TestLuaUtf8(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUA=y + BR2_PACKAGE_LUA_UTF8=y + """ + + def test_run(self): + self.login() + self.module_test("lua-utf8") + + +class TestLuajitUtf8(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUAJIT=y + BR2_PACKAGE_LUA_UTF8=y + """ + + def test_run(self): + self.login() + self.module_test("lua-utf8") diff --git a/support/testing/tests/package/test_luaexpat.py b/support/testing/tests/package/test_luaexpat.py new file mode 100644 index 00000000..c71c3fad --- /dev/null +++ b/support/testing/tests/package/test_luaexpat.py @@ -0,0 +1,25 @@ +from tests.package.test_lua import TestLuaBase + + +class TestLuaLuaExpat(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUA=y + BR2_PACKAGE_LUAEXPAT=y + """ + + def test_run(self): + self.login() + self.module_test("lxp") + + +class TestLuajitLuaExpat(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUAJIT=y + BR2_PACKAGE_LUAEXPAT=y + """ + + def test_run(self): + self.login() + self.module_test("lxp") diff --git a/support/testing/tests/package/test_luafilesystem.py b/support/testing/tests/package/test_luafilesystem.py new file mode 100644 index 00000000..a84c1f30 --- /dev/null +++ b/support/testing/tests/package/test_luafilesystem.py @@ -0,0 +1,25 @@ +from tests.package.test_lua import TestLuaBase + + +class TestLuaLuaFileSystem(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUA=y + BR2_PACKAGE_LUAFILESYSTEM=y + """ + + def test_run(self): + self.login() + self.module_test("lfs") + + +class TestLuajitLuaFileSystem(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUAJIT=y + BR2_PACKAGE_LUAFILESYSTEM=y + """ + + def test_run(self): + self.login() + self.module_test("lfs") diff --git a/support/testing/tests/package/test_lualdap.py b/support/testing/tests/package/test_lualdap.py new file mode 100644 index 00000000..2ec0d582 --- /dev/null +++ b/support/testing/tests/package/test_lualdap.py @@ -0,0 +1,25 @@ +from tests.package.test_lua import TestLuaBase + + +class TestLuaLuaLdap(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUA=y + BR2_PACKAGE_LUALDAP=y + """ + + def test_run(self): + self.login() + self.module_test("lualdap") + + +class TestLuajitLuaLdap(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUAJIT=y + BR2_PACKAGE_LUALDAP=y + """ + + def test_run(self): + self.login() + self.module_test("lualdap") diff --git a/support/testing/tests/package/test_luaossl.py b/support/testing/tests/package/test_luaossl.py new file mode 100644 index 00000000..f9f9ab4e --- /dev/null +++ b/support/testing/tests/package/test_luaossl.py @@ -0,0 +1,27 @@ +from tests.package.test_lua import TestLuaBase + + +class TestLuaLuaossl(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUA=y + BR2_PACKAGE_LUAOSSL=y + """ + + def test_run(self): + self.login() + self.module_test("openssl") + self.module_test("_openssl") + + +class TestLuajitLuaossl(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUAJIT=y + BR2_PACKAGE_LUAOSSL=y + """ + + def test_run(self): + self.login() + self.module_test("openssl") + self.module_test("_openssl") diff --git a/support/testing/tests/package/test_luaposix.py b/support/testing/tests/package/test_luaposix.py new file mode 100644 index 00000000..2918ee61 --- /dev/null +++ b/support/testing/tests/package/test_luaposix.py @@ -0,0 +1,83 @@ +from tests.package.test_lua import TestLuaBase + + +class TestLuaLuaPosix(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUA=y + BR2_PACKAGE_LUAPOSIX=y + """ + + def test_run(self): + self.login() + self.module_test("posix.version", "print(require[[posix.version]])") + self.module_test("posix.ctype") + self.module_test("posix.dirent") + self.module_test("posix.errno") + self.module_test("posix.fcntl") + self.module_test("posix.fnmatch") + self.module_test("posix.glob") + self.module_test("posix.grp") + self.module_test("posix.libgen") + self.module_test("posix.poll") + self.module_test("posix.pwd") + self.module_test("posix.sched") + self.module_test("posix.signal") + self.module_test("posix.stdio") + self.module_test("posix.stdlib") + self.module_test("posix.sys.msg") + self.module_test("posix.sys.resource") + self.module_test("posix.sys.socket") + self.module_test("posix.sys.stat") + self.module_test("posix.sys.statvfs") + self.module_test("posix.sys.time") + self.module_test("posix.sys.times") + self.module_test("posix.sys.utsname") + self.module_test("posix.sys.wait") + self.module_test("posix.syslog") + self.module_test("posix.termio") + self.module_test("posix.time") + self.module_test("posix.unistd") + self.module_test("posix.utime") + self.module_test("posix") + + +class TestLuajitLuaPosix(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUAJIT=y + BR2_PACKAGE_LUAPOSIX=y + """ + + def test_run(self): + self.login() + self.module_test("posix.version", "print(require[[posix.version]])") + self.module_test("posix.ctype") + self.module_test("posix.dirent") + self.module_test("posix.errno") + self.module_test("posix.fcntl") + self.module_test("posix.fnmatch") + self.module_test("posix.glob") + self.module_test("posix.grp") + self.module_test("posix.libgen") + self.module_test("posix.poll") + self.module_test("posix.pwd") + self.module_test("posix.sched") + self.module_test("posix.signal") + self.module_test("posix.stdio") + self.module_test("posix.stdlib") + self.module_test("posix.sys.msg") + self.module_test("posix.sys.resource") + self.module_test("posix.sys.socket") + self.module_test("posix.sys.stat") + self.module_test("posix.sys.statvfs") + self.module_test("posix.sys.time") + self.module_test("posix.sys.times") + self.module_test("posix.sys.utsname") + self.module_test("posix.sys.wait") + self.module_test("posix.syslog") + self.module_test("posix.termio") + self.module_test("posix.time") + self.module_test("posix.unistd") + self.module_test("posix.utime") + self.module_test("posix") diff --git a/support/testing/tests/package/test_luasec.py b/support/testing/tests/package/test_luasec.py new file mode 100644 index 00000000..f8732636 --- /dev/null +++ b/support/testing/tests/package/test_luasec.py @@ -0,0 +1,25 @@ +from tests.package.test_lua import TestLuaBase + + +class TestLuaLuaSec(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUA=y + BR2_PACKAGE_LUASEC=y + """ + + def test_run(self): + self.login() + self.module_test("ssl") + + +class TestLuajitLuaSec(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUAJIT=y + BR2_PACKAGE_LUASEC=y + """ + + def test_run(self): + self.login() + self.module_test("ssl") diff --git a/support/testing/tests/package/test_luasocket.py b/support/testing/tests/package/test_luasocket.py new file mode 100644 index 00000000..3d21df1d --- /dev/null +++ b/support/testing/tests/package/test_luasocket.py @@ -0,0 +1,29 @@ +from tests.package.test_lua import TestLuaBase + + +class TestLuaLuaSocket(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUA=y + BR2_PACKAGE_LUASOCKET=y + """ + + def test_run(self): + self.login() + self.module_test("ltn12") + self.module_test("mime") + self.module_test("socket") + + +class TestLuajitLuaSocket(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUAJIT=y + BR2_PACKAGE_LUASOCKET=y + """ + + def test_run(self): + self.login() + self.module_test("ltn12") + self.module_test("mime") + self.module_test("socket") diff --git a/support/testing/tests/package/test_luasyslog.py b/support/testing/tests/package/test_luasyslog.py new file mode 100644 index 00000000..158b95cb --- /dev/null +++ b/support/testing/tests/package/test_luasyslog.py @@ -0,0 +1,27 @@ +from tests.package.test_lua import TestLuaBase + + +class TestLuaLuasyslog(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUA=y + BR2_PACKAGE_LUASYSLOG=y + """ + + def test_run(self): + self.login() + self.module_test("lsyslog") + self.module_test("logging.syslog") + + +class TestLuajitLuasyslog(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUAJIT=y + BR2_PACKAGE_LUASYSLOG=y + """ + + def test_run(self): + self.login() + self.module_test("lsyslog") + self.module_test("logging.syslog") diff --git a/support/testing/tests/package/test_luvi.py b/support/testing/tests/package/test_luvi.py new file mode 100644 index 00000000..a85a6f4d --- /dev/null +++ b/support/testing/tests/package/test_luvi.py @@ -0,0 +1,36 @@ +import os + +import infra.basetest + + +class TestLuvi(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + BR2_PACKAGE_LUAJIT=y + BR2_PACKAGE_LUVI=y + BR2_PACKAGE_OPENSSL=y + BR2_PACKAGE_PCRE=y + BR2_PACKAGE_ZLIB=y + """ + + def login(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv7", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + def version_test(self): + cmd = "luvi -v" + output, exit_code = self.emulator.run(cmd) + self.assertIn('luvi', output[0]) + self.assertIn('zlib', output[1]) + self.assertIn('rex', output[2]) + self.assertIn('libuv', output[3]) + self.assertIn('ssl', output[4]) + + def test_run(self): + self.login() + self.version_test() diff --git a/support/testing/tests/package/test_lxc.py b/support/testing/tests/package/test_lxc.py new file mode 100644 index 00000000..b32b7a20 --- /dev/null +++ b/support/testing/tests/package/test_lxc.py @@ -0,0 +1,58 @@ +import os + +import infra.basetest + + +class TestLxc(infra.basetest.BRTest): + config = \ + """ + BR2_arm=y + BR2_cortex_a9=y + BR2_ARM_ENABLE_VFP=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19.79" + BR2_LINUX_KERNEL_DEFCONFIG="vexpress" + BR2_LINUX_KERNEL_DTS_SUPPORT=y + BR2_LINUX_KERNEL_INTREE_DTS_NAME="vexpress-v2p-ca9" + BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="{}" + BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" + BR2_INIT_SYSTEMD=y + BR2_PACKAGE_LXC=y + BR2_PACKAGE_TINI=y + BR2_PACKAGE_IPERF3=y + BR2_ROOTFS_OVERLAY="{}" + BR2_TARGET_ROOTFS_CPIO=y + """.format( + infra.filepath("tests/package/test_lxc/lxc-kernel.config"), + infra.filepath("tests/package/test_lxc/rootfs-overlay")) + + def run_ok(self, cmd): + self.assertRunOk(cmd, 120) + + def wait_boot(self): + # the complete boot with systemd takes more time than what the default multipler permits + self.emulator.timeout_multiplier *= 10 + self.emulator.login() + + def setup_run_test_container(self): + self.run_ok("lxc-create -n lxc_iperf3 -t none -f /usr/share/lxc/config/minimal-iperf3.conf") + self.run_ok("lxc-start -l trace -n lxc_iperf3 -o /tmp/lxc.log -L /tmp/lxc.console.log") + # need to wait for the container to be fully started + self.run_ok("sleep 2") + self.run_ok("iperf3 -c 192.168.1.2 -t 2") + # if the test fails, just cat /tmp/*.log + + def test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + kernel_file = os.path.join(self.builddir, "images", "zImage") + dtb_file = os.path.join(self.builddir, "images", "vexpress-v2p-ca9.dtb") + self.emulator.boot(arch="armv7", kernel=kernel_file, + kernel_cmdline=[ + "console=ttyAMA0,115200"], + options=["-initrd", cpio_file, + "-dtb", dtb_file, + "-M", "vexpress-a9"]) + self.wait_boot() + self.setup_run_test_container() diff --git a/support/testing/tests/package/test_lxc/lxc-kernel.config b/support/testing/tests/package/test_lxc/lxc-kernel.config new file mode 100644 index 00000000..32f8bdd6 --- /dev/null +++ b/support/testing/tests/package/test_lxc/lxc-kernel.config @@ -0,0 +1,20 @@ +CONFIG_FIX_EARLYCON_MEM=y +CONFIG_BLK_CGROUP=y +CONFIG_CGROUP_SCHED=y +CONFIG_CGROUP_PIDS=y +CONFIG_CGROUP_FREEZER=y +CONFIG_CGROUP_DEVICE=y +CONFIG_CGROUP_CPUACCT=y +CONFIG_CGROUP_DEBUG=y +CONFIG_NETFILTER_XT_MATCH_CGROUP=y +CONFIG_SOCK_CGROUP_DATA=y +CONFIG_CGROUP_NET_PRIO=y +CONFIG_CGROUP_NET_CLASSID=y +CONFIG_NAMESPACES=y +CONFIG_IPC_NS=y +CONFIG_PID_NS=y +CONFIG_UTS_NS=y +CONFIG_USER_NS=y +CONFIG_NET_NS=y +CONFIG_BRIDGE=y +CONFIG_VETH=y diff --git a/support/testing/tests/package/test_lxc/rootfs-overlay/usr/bin/iperf3.sh b/support/testing/tests/package/test_lxc/rootfs-overlay/usr/bin/iperf3.sh new file mode 100755 index 00000000..7045ca48 --- /dev/null +++ b/support/testing/tests/package/test_lxc/rootfs-overlay/usr/bin/iperf3.sh @@ -0,0 +1,2 @@ +#!/bin/sh +iperf3 -s -1 > /tmp/iperf3.serv.log 2>&1 diff --git a/support/testing/tests/package/test_lxc/rootfs-overlay/usr/share/lxc/config/minimal-iperf3.conf b/support/testing/tests/package/test_lxc/rootfs-overlay/usr/share/lxc/config/minimal-iperf3.conf new file mode 100644 index 00000000..41cc5311 --- /dev/null +++ b/support/testing/tests/package/test_lxc/rootfs-overlay/usr/share/lxc/config/minimal-iperf3.conf @@ -0,0 +1,4 @@ +lxc.include = /usr/share/lxc/config/minimal.conf +lxc.hook.version = 1 +lxc.hook.start-host = ip a add 192.168.1.1/24 dev lxc0 +lxc.init.cmd = tini -g iperf3.sh diff --git a/support/testing/tests/package/test_lxc/rootfs-overlay/usr/share/lxc/config/minimal.conf b/support/testing/tests/package/test_lxc/rootfs-overlay/usr/share/lxc/config/minimal.conf new file mode 100644 index 00000000..73198215 --- /dev/null +++ b/support/testing/tests/package/test_lxc/rootfs-overlay/usr/share/lxc/config/minimal.conf @@ -0,0 +1,6 @@ +lxc.autodev = 0 +lxc.net.0.type = veth +lxc.net.0.veth.pair = lxc0 +lxc.net.0.name = eth0 +lxc.net.0.flags = up +lxc.net.0.ipv4.address = 192.168.1.2/24 diff --git a/support/testing/tests/package/test_lzlib.py b/support/testing/tests/package/test_lzlib.py new file mode 100644 index 00000000..84e76791 --- /dev/null +++ b/support/testing/tests/package/test_lzlib.py @@ -0,0 +1,14 @@ +from tests.package.test_lua import TestLuaBase + + +class TestLuaLzlib(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUA=y + BR2_PACKAGE_LZLIB=y + """ + + def test_run(self): + self.login() + self.module_test("zlib") + self.module_test("gzip") diff --git a/support/testing/tests/package/test_netdata.py b/support/testing/tests/package/test_netdata.py new file mode 100644 index 00000000..7418b762 --- /dev/null +++ b/support/testing/tests/package/test_netdata.py @@ -0,0 +1,23 @@ +import os + +import infra.basetest + + +class TestNetdata(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_PACKAGE_NETDATA=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + cmd = "wget localhost:19999 -O - | grep 'netdata dashboard'" + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) diff --git a/support/testing/tests/package/test_openjdk.py b/support/testing/tests/package/test_openjdk.py new file mode 100644 index 00000000..26b7f9ee --- /dev/null +++ b/support/testing/tests/package/test_openjdk.py @@ -0,0 +1,48 @@ +import os + +import infra.basetest + + +class TestOpenJdk(infra.basetest.BRTest): + br2_external = [infra.filepath("tests/package/br2-external/openjdk")] + config = \ + """ + BR2_aarch64=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.10.34" + BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y + BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/aarch64-virt/linux.config" + BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y + BR2_TARGET_ROOTFS_CPIO=y + BR2_TARGET_ROOTFS_CPIO_GZIP=y + BR2_PACKAGE_XORG7=y + BR2_PACKAGE_OPENJDK=y + BR2_PACKAGE_OPENJDK_HELLO_WORLD=y + BR2_PACKAGE_OPENJDK_JNI_TEST=y + """ + + def login(self): + img = os.path.join(self.builddir, "images", "rootfs.cpio.gz") + kern = os.path.join(self.builddir, "images", "Image") + self.emulator.boot(arch="aarch64", + kernel=kern, + kernel_cmdline=["console=ttyAMA0"], + options=["-M", "virt", "-cpu", "cortex-a57", "-m", "512M", "-initrd", img]) + self.emulator.login() + + def test_run(self): + self.login() + + cmd = "java -cp /usr/bin HelloWorld" + output, exit_code = self.emulator.run(cmd, 120) + print(output) + self.assertEqual(exit_code, 0) + self.assertEqual(output, ["Hello, World"]) + + cmd = "java -cp /usr/bin JniTest" + output, exit_code = self.emulator.run(cmd, 120) + print(output) + self.assertEqual(exit_code, 0) diff --git a/support/testing/tests/package/test_openssh.py b/support/testing/tests/package/test_openssh.py new file mode 100644 index 00000000..2ae5030d --- /dev/null +++ b/support/testing/tests/package/test_openssh.py @@ -0,0 +1,60 @@ +import os + +import infra.basetest + + +class TestOpensshBase(infra.basetest.BRTest): + passwd = "testpwd" + opensshconfig = \ + """ + BR2_TARGET_GENERIC_ROOT_PASSWD="{}" + BR2_PACKAGE_OPENSSH=y + BR2_PACKAGE_SSHPASS=y + BR2_ROOTFS_POST_BUILD_SCRIPT="{}" + # BR2_TARGET_ROOTFS_TAR is not set + """.format( + passwd, + infra.filepath("tests/package/test_openssh/post-build.sh")) + + def openssh_test(self): + img = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", img, + "-net", "none"]) + self.emulator.login(self.passwd) + + cmd = "netstat -ltn 2>/dev/null | grep 0.0.0.0:22" + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + + cmd = "sshpass -p {} ssh -oStrictHostKeyChecking=no localhost /bin/true".format(self.passwd) + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + + +class TestOpenSshuClibc(TestOpensshBase): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + TestOpensshBase.opensshconfig + \ + """ + BR2_TARGET_ROOTFS_CPIO=y + """ + + def test_run(self): + self.openssh_test() + + +class TestOpenSshGlibc(TestOpensshBase): + config = \ + TestOpensshBase.opensshconfig + \ + """ + BR2_arm=y + BR2_TOOLCHAIN_BUILDROOT_GLIBC=y + BR2_KERNEL_HEADERS_4_19=y + BR2_TOOLCHAIN_BUILDROOT_CXX=y + BR2_PACKAGE_RNG_TOOLS=y + BR2_TARGET_ROOTFS_CPIO=y + """ + + def test_run(self): + self.openssh_test() diff --git a/support/testing/tests/package/test_openssh/post-build.sh b/support/testing/tests/package/test_openssh/post-build.sh new file mode 100755 index 00000000..5a81ede5 --- /dev/null +++ b/support/testing/tests/package/test_openssh/post-build.sh @@ -0,0 +1,6 @@ +#!/usr/bin/env bash + +cat <<_EOF_ >>"${TARGET_DIR}/etc/ssh/sshd_config" +PermitRootLogin yes +PasswordAuthentication yes +_EOF_ diff --git a/support/testing/tests/package/test_opkg.py b/support/testing/tests/package/test_opkg.py new file mode 100644 index 00000000..aa937082 --- /dev/null +++ b/support/testing/tests/package/test_opkg.py @@ -0,0 +1,65 @@ +import os + +import infra.basetest + + +class TestOpkg(infra.basetest.BRTest): + # The snmpd service is used as an example for this test of a set of files + # that can be archived up and deployed/removed to test opkg + # + # The post build script uses an ipk-build template and assembles the test + # package. + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_PACKAGE_NETSNMP=y + # BR2_PACKAGE_NETSNMP_CLIENTS is not set + # BR2_PACKAGE_NETSNMP_ENABLE_MIBS is not set + BR2_PACKAGE_OPKG=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + BR2_PACKAGE_HOST_OPKG_UTILS=y + BR2_ROOTFS_POST_BUILD_SCRIPT="{}" + """.format(infra.filepath("tests/package/test_opkg/post-build.sh")) + + def test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + # This test sequence tests the install and removal of a running + # service and configuration files. It also exercises the postinst + # and prerm scripting provided in the package archive. + + cmd = "opkg install example-snmpd-package_1.0_arm.ipk" + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + + cmd = "opkg list-installed | grep example-snmpd-package" + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + + # Check that postinst script ran to start the services + cmd = "ps aux | grep [s]nmpd" + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + + # If successful, the prerm script ran to stop the service prior to + # the removal of the service scripting and files + cmd = "opkg remove example-snmpd-package" + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + + # Verify after package removal that the services is not + # running, but let's give it some time to really stop + # (otherwise a [snmpd] process might show up in the ps output) + cmd = "sleep 1 && ps aux | grep [s]nmpd" + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 1) + + # This folder for configs is provided by the package install and + # should no longer be present after package removal + cmd = "ls /etc/snmp" + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 1) diff --git a/support/testing/tests/package/test_opkg/post-build.sh b/support/testing/tests/package/test_opkg/post-build.sh new file mode 100755 index 00000000..1a6981b5 --- /dev/null +++ b/support/testing/tests/package/test_opkg/post-build.sh @@ -0,0 +1,47 @@ +#!/usr/bin/env bash + +IPK_BUILD=${BUILD_DIR}/ipk-build + +# Pull the files for the snmpd service out of the target to create a install archive +# and setup a basic configuration so that the startup script works. +mkdir -p ${IPK_BUILD}/CONTROL \ + ${IPK_BUILD}/etc/init.d/ \ + ${IPK_BUILD}/usr/sbin \ + ${IPK_BUILD}/etc/snmp \ + ${IPK_BUILD}/etc/default +mv -f ${TARGET_DIR}/etc/init.d/S59snmpd ${IPK_BUILD}/etc/init.d/ +mv -f ${TARGET_DIR}/usr/sbin/snmpd ${IPK_BUILD}/usr/sbin/ +echo "agentuser nobody" > ${IPK_BUILD}/etc/snmp/snmpd.conf +echo "SNMPDRUN=yes" > ${IPK_BUILD}/etc/default/snmpd + +# build the control file +cat <${IPK_BUILD}/CONTROL/control +Package: example-snmpd-package +Version: 1.0 +Architecture: arm +Maintainer: user@domain.tld +Section: extras +Priority: optional +Source: http://example.com +Description: This is an example IPK package for installing snmpd +EOM + +# preinst script is not created to run before the install for this test example + +# postinst script is ran after install completes to start the services +cat <${IPK_BUILD}/CONTROL/postinst +#!/bin/sh +/etc/init.d/S59snmpd start +EOM +chmod +x ${IPK_BUILD}/CONTROL/postinst + +# prerm script is ran before removal so that the services isn't in use +cat <${IPK_BUILD}/CONTROL/prerm +#!/bin/sh +/etc/init.d/S59snmpd stop +EOM +chmod +x ${IPK_BUILD}/CONTROL/prerm + +# build the archive from template and pkg files +${HOST_DIR}/bin/opkg-build -Z gzip ${IPK_BUILD} ${TARGET_DIR}/root/ +rm -fr ${IPK_BUILD} diff --git a/support/testing/tests/package/test_perl.py b/support/testing/tests/package/test_perl.py new file mode 100644 index 00000000..37e7390a --- /dev/null +++ b/support/testing/tests/package/test_perl.py @@ -0,0 +1,66 @@ +import os + +import infra.basetest + + +class TestPerlBase(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def login(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + def module_test(self, module, script="1"): + cmd = "perl -M{} -e '{}'".format(module, script) + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + + +class TestPerl(TestPerlBase): + config = TestPerlBase.config + \ + """ + BR2_PACKAGE_PERL=y + """ + + def version_test(self): + cmd = "perl -v" + output, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + self.assertIn("This is perl 5", output[1]) + + def core_modules_test(self): + self.module_test("Cwd") + self.module_test("Data::Dumper") + self.module_test("Devel::Peek") + self.module_test("Digest::MD5") + self.module_test("Digest::SHA") + self.module_test("Encode") + self.module_test("Fcntl") + self.module_test("File::Glob") + self.module_test("Hash::Util") + self.module_test("I18N::Langinfo") + self.module_test("IO::Handle") + self.module_test("IPC::SysV") + self.module_test("List::Util") + self.module_test("MIME::Base64") + self.module_test("POSIX") + self.module_test("Socket") + self.module_test("Storable") + self.module_test("Sys::Hostname") + self.module_test("Sys::Syslog") + self.module_test("Time::HiRes") + self.module_test("Time::Piece") + self.module_test("Unicode::Collate") + self.module_test("Unicode::Normalize") + + def test_run(self): + self.login() + self.version_test() + self.core_modules_test() diff --git a/support/testing/tests/package/test_perl_class_load.py b/support/testing/tests/package/test_perl_class_load.py new file mode 100644 index 00000000..04229700 --- /dev/null +++ b/support/testing/tests/package/test_perl_class_load.py @@ -0,0 +1,29 @@ +from tests.package.test_perl import TestPerlBase + + +class TestPerlClassLoad(TestPerlBase): + """ + package: + Class-Load + direct dependencies: + Data-OptList + Module-Implementation + Module-Runtime + Package-Stash + Try-Tiny + indirect dependencies: + Dist-CheckConflicts + Params-Util XS + Sub-Install + """ + + config = TestPerlBase.config + \ + """ + BR2_PACKAGE_PERL=y + BR2_PACKAGE_PERL_CLASS_LOAD=y + """ + + def test_run(self): + self.login() + self.module_test("Params::Util") + self.module_test("Class::Load") diff --git a/support/testing/tests/package/test_perl_dbd_mysql.py b/support/testing/tests/package/test_perl_dbd_mysql.py new file mode 100644 index 00000000..f8fe832b --- /dev/null +++ b/support/testing/tests/package/test_perl_dbd_mysql.py @@ -0,0 +1,21 @@ +from tests.package.test_perl import TestPerlBase + + +class TestPerlDBDmysql(TestPerlBase): + """ + package: + DBD-mysql XS + direct dependencies: + DBI XS + """ + + config = TestPerlBase.config + \ + """ + BR2_PACKAGE_PERL=y + BR2_PACKAGE_PERL_DBD_MYSQL=y + """ + + def test_run(self): + self.login() + self.module_test("DBI") + self.module_test("DBD::mysql") diff --git a/support/testing/tests/package/test_perl_encode_detect.py b/support/testing/tests/package/test_perl_encode_detect.py new file mode 100644 index 00000000..4b33fee0 --- /dev/null +++ b/support/testing/tests/package/test_perl_encode_detect.py @@ -0,0 +1,20 @@ +from tests.package.test_perl import TestPerlBase + + +class TestPerlEncodeDetect(TestPerlBase): + """ + package: + Encode-Detect XS + direct dependencies: + Module-Build + """ + + config = TestPerlBase.config + \ + """ + BR2_PACKAGE_PERL=y + BR2_PACKAGE_PERL_ENCODE_DETECT=y + """ + + def test_run(self): + self.login() + self.module_test("Encode::Detect") diff --git a/support/testing/tests/package/test_perl_gdgraph.py b/support/testing/tests/package/test_perl_gdgraph.py new file mode 100644 index 00000000..23ddbca4 --- /dev/null +++ b/support/testing/tests/package/test_perl_gdgraph.py @@ -0,0 +1,22 @@ +from tests.package.test_perl import TestPerlBase + + +class TestPerlGDGraph(TestPerlBase): + """ + package: + GDGraph + direct dependencies: + GD XS + GDTextUtil + """ + + config = TestPerlBase.config + \ + """ + BR2_PACKAGE_PERL=y + BR2_PACKAGE_PERL_GDGRAPH=y + """ + + def test_run(self): + self.login() + self.module_test("GD") + self.module_test("GD::Graph") diff --git a/support/testing/tests/package/test_perl_html_parser.py b/support/testing/tests/package/test_perl_html_parser.py new file mode 100644 index 00000000..64316334 --- /dev/null +++ b/support/testing/tests/package/test_perl_html_parser.py @@ -0,0 +1,20 @@ +from tests.package.test_perl import TestPerlBase + + +class TestPerlHTMLParser(TestPerlBase): + """ + package: + HTML-Parser XS + direct dependencies: + HTML-Tagset + """ + + config = TestPerlBase.config + \ + """ + BR2_PACKAGE_PERL=y + BR2_PACKAGE_PERL_HTML_PARSER=y + """ + + def test_run(self): + self.login() + self.module_test("HTML::Parser") diff --git a/support/testing/tests/package/test_perl_io_socket_multicast.py b/support/testing/tests/package/test_perl_io_socket_multicast.py new file mode 100644 index 00000000..48a086a6 --- /dev/null +++ b/support/testing/tests/package/test_perl_io_socket_multicast.py @@ -0,0 +1,21 @@ +from tests.package.test_perl import TestPerlBase + + +class TestPerlIOSocketMulticast(TestPerlBase): + """ + package: + IO-Socket-Multicast XS + direct dependencies: + IO-Interface XS + """ + + config = TestPerlBase.config + \ + """ + BR2_PACKAGE_PERL=y + BR2_PACKAGE_PERL_IO_SOCKET_MULTICAST=y + """ + + def test_run(self): + self.login() + self.module_test("IO::Interface") + self.module_test("IO::Socket::Multicast") diff --git a/support/testing/tests/package/test_perl_io_socket_ssl.py b/support/testing/tests/package/test_perl_io_socket_ssl.py new file mode 100644 index 00000000..51663e83 --- /dev/null +++ b/support/testing/tests/package/test_perl_io_socket_ssl.py @@ -0,0 +1,21 @@ +from tests.package.test_perl import TestPerlBase + + +class TestPerlIOSocketSSL(TestPerlBase): + """ + package: + IO-Socket-SSL + direct dependencies: + Net-SSLeay XS + """ + + config = TestPerlBase.config + \ + """ + BR2_PACKAGE_PERL=y + BR2_PACKAGE_PERL_IO_SOCKET_SSL=y + """ + + def test_run(self): + self.login() + self.module_test("Net::SSLeay") + self.module_test("IO::Socket::SSL") diff --git a/support/testing/tests/package/test_perl_libwww_perl.py b/support/testing/tests/package/test_perl_libwww_perl.py new file mode 100644 index 00000000..7b30e4b9 --- /dev/null +++ b/support/testing/tests/package/test_perl_libwww_perl.py @@ -0,0 +1,42 @@ +from tests.package.test_perl import TestPerlBase + + +class TestPerllibwwwperl(TestPerlBase): + """ + package: + libwww-perl + direct dependencies: + Encode-Locale + File-Listing + HTML-Parser XS + HTTP-Cookies + HTTP-Daemon + HTTP-Date + HTTP-Message + HTTP-Negotiate + LWP-MediaTypes + Net-HTTP + Try-Tiny + URI + WWW-RobotRules + indirect dependencies: + HTML-Tagset + IO-HTML + """ + + config = TestPerlBase.config + \ + """ + BR2_PACKAGE_PERL=y + BR2_PACKAGE_PERL_LIBWWW_PERL=y + """ + + def test_run(self): + self.login() + self.module_test("LWP") + self.module_test("LWP::UserAgent") + self.module_test("LWP::Authen::Basic") + self.module_test("LWP::Authen::Digest") + self.module_test("HTML::Parser") + self.module_test("HTTP::Message") + self.module_test("HTTP::Daemon") + self.module_test("WWW::RobotRules") diff --git a/support/testing/tests/package/test_perl_lwp_protocol_https.py b/support/testing/tests/package/test_perl_lwp_protocol_https.py new file mode 100644 index 00000000..35437459 --- /dev/null +++ b/support/testing/tests/package/test_perl_lwp_protocol_https.py @@ -0,0 +1,42 @@ +from tests.package.test_perl import TestPerlBase + + +class TestPerlLWPProtocolhttps(TestPerlBase): + """ + package: + LWP-Protocol-https + direct dependencies: + IO-Socket-SSL + Mozilla-CA + Net-HTTP + libwww-perl + indirect dependencies: + Encode-Locale + File-Listing + HTML-Parser XS + HTML-Tagset + HTTP-Cookies + HTTP-Daemon + HTTP-Date + HTTP-Message + HTTP-Negotiate + IO-HTML + LWP-MediaTypes + Net-SSLeay XS + TimeDate + Try-Tiny + URI + WWW-RobotRules + """ + + config = TestPerlBase.config + \ + """ + BR2_PACKAGE_PERL=y + BR2_PACKAGE_PERL_LWP_PROTOCOL_HTTPS=y + """ + + def test_run(self): + self.login() + self.module_test("HTML::Parser") + self.module_test("Net::SSLeay") + self.module_test("LWP::Protocol::https") diff --git a/support/testing/tests/package/test_perl_mail_dkim.py b/support/testing/tests/package/test_perl_mail_dkim.py new file mode 100644 index 00000000..cd9e7579 --- /dev/null +++ b/support/testing/tests/package/test_perl_mail_dkim.py @@ -0,0 +1,30 @@ +from tests.package.test_perl import TestPerlBase + + +class TestPerlMailDKIM(TestPerlBase): + """ + package: + Mail-DKIM + direct dependencies: + Crypt-OpenSSL-RSA XS + MailTools + Net-DNS + Net-DNS-Resolver-Mock + YAML-LibYAML XS + indirect dependencies: + Crypt-OpenSSL-Random XS + Digest-HMAC + TimeDate + """ + + config = TestPerlBase.config + \ + """ + BR2_PACKAGE_PERL=y + BR2_PACKAGE_PERL_MAIL_DKIM=y + """ + + def test_run(self): + self.login() + self.module_test("Crypt::OpenSSL::Random") + self.module_test("Crypt::OpenSSL::RSA") + self.module_test("Mail::DKIM") diff --git a/support/testing/tests/package/test_perl_x10.py b/support/testing/tests/package/test_perl_x10.py new file mode 100644 index 00000000..b587804a --- /dev/null +++ b/support/testing/tests/package/test_perl_x10.py @@ -0,0 +1,23 @@ +from tests.package.test_perl import TestPerlBase + + +class TestPerlX10(TestPerlBase): + """ + package: + X10 + direct dependencies: + Astro-SunTime + Device-SerialPort XS + Time-ParseDate + """ + + config = TestPerlBase.config + \ + """ + BR2_PACKAGE_PERL=y + BR2_PACKAGE_PERL_X10=y + """ + + def test_run(self): + self.login() + self.module_test("Device::SerialPort") + self.module_test("X10") diff --git a/support/testing/tests/package/test_perl_xml_libxml.py b/support/testing/tests/package/test_perl_xml_libxml.py new file mode 100644 index 00000000..faace5dd --- /dev/null +++ b/support/testing/tests/package/test_perl_xml_libxml.py @@ -0,0 +1,22 @@ +from tests.package.test_perl import TestPerlBase + + +class TestPerlXMLLibXML(TestPerlBase): + """ + package: + XML-LibXML XS + direct dependencies: + XML-NamespaceSupport + XML-SAX + XML-SAX-Base + """ + + config = TestPerlBase.config + \ + """ + BR2_PACKAGE_PERL=y + BR2_PACKAGE_PERL_XML_LIBXML=y + """ + + def test_run(self): + self.login() + self.module_test("XML::LibXML") diff --git a/support/testing/tests/package/test_prosody.py b/support/testing/tests/package/test_prosody.py new file mode 100644 index 00000000..8ef8ff95 --- /dev/null +++ b/support/testing/tests/package/test_prosody.py @@ -0,0 +1,48 @@ +from tests.package.test_lua import TestLuaBase + + +class TestProsody(TestLuaBase): + def lua_dependencies_test(self): + self.module_test('bit') # luabitop + self.module_test('lfs') # luafilesystem + self.module_test('lxp') # luaexpat + self.module_test('socket') # luasocket + self.module_test('ssl') # luasec + + def prosody_test(self): + # prosody was launched as service + cmd = "prosodyctl status" + output, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + self.assertIn("Prosody is running", output[0]) + + +class TestProsodyLua51(TestProsody): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUA=y + BR2_PACKAGE_LUA_5_1=y + BR2_PACKAGE_PROSODY=y + """ + + def test_run(self): + self.login() + self.version_test('Lua 5.1') + self.g_version_test('Lua 5.1') + self.lua_dependencies_test() + self.prosody_test() + + +class TestProsodyLuajit(TestProsody): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUAJIT=y + BR2_PACKAGE_PROSODY=y + """ + + def test_run(self): + self.login() + self.version_test('LuaJIT 2') + self.g_version_test('Lua 5.1') + self.lua_dependencies_test() + self.prosody_test() diff --git a/support/testing/tests/package/test_python.py b/support/testing/tests/package/test_python.py new file mode 100644 index 00000000..bcd363ad --- /dev/null +++ b/support/testing/tests/package/test_python.py @@ -0,0 +1,125 @@ +import os + +import infra.basetest + + +class TestPythonBase(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + interpreter = "python" + + def login(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + def version_test(self, version, timeout=-1): + cmd = self.interpreter + " --version 2>&1 | grep '^{}'".format(version) + _, exit_code = self.emulator.run(cmd, timeout) + self.assertEqual(exit_code, 0) + + def math_floor_test(self, timeout=-1): + cmd = self.interpreter + " -c 'import math; math.floor(12.3)'" + _, exit_code = self.emulator.run(cmd, timeout) + self.assertEqual(exit_code, 0) + + def libc_time_test(self, timeout=-1): + cmd = self.interpreter + " -c 'from __future__ import print_function;" + cmd += "import ctypes;" + cmd += "libc = ctypes.cdll.LoadLibrary(\"libc.so.1\");" + cmd += "print(libc.time(None))'" + _, exit_code = self.emulator.run(cmd, timeout) + self.assertEqual(exit_code, 0) + + def zlib_test(self, timeout=-1): + cmd = self.interpreter + " -c 'import zlib'" + _, exit_code = self.emulator.run(cmd, timeout) + self.assertEqual(exit_code, 1) + + +class TestPython2(TestPythonBase): + config = TestPythonBase.config + \ + """ + BR2_PACKAGE_PYTHON=y + """ + + def test_run(self): + self.login() + self.version_test("Python 2") + self.math_floor_test() + self.libc_time_test() + self.zlib_test() + + +class TestPython3(TestPythonBase): + config = TestPythonBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + """ + + def test_run(self): + self.login() + self.version_test("Python 3") + self.math_floor_test() + self.libc_time_test() + self.zlib_test() + + +class TestPythonPackageBase(TestPythonBase): + """Common class to test a python package. + + Build an image containing the scripts listed in sample_scripts, start the + emulator, login to it and for each sample script in the image run the python + interpreter passing the name of the script and check the status code is 0. + + Each test case that inherits from this class must have: + __test__ = True - to let nose2 know that it is a test case + config - defconfig fragment with the packages to run the test + It also can have: + sample_scripts - list of scripts to add to the image and run on the target + timeout - timeout to the script to run when the default from the + test infra is not enough + When custom commands need be issued on the target the method + run_sample_scripts can be overridden. + """ + + __test__ = False + config_sample_scripts = \ + """ + BR2_ROOTFS_POST_BUILD_SCRIPT="{}" + BR2_ROOTFS_POST_SCRIPT_ARGS="{}" + """.format(infra.filepath("tests/package/copy-sample-script-to-target.sh"), + "{sample_scripts}") + sample_scripts = None + timeout = -1 + + def __init__(self, names): + """Add the scripts to the target in build time.""" + super(TestPythonPackageBase, self).__init__(names) + if self.sample_scripts: + scripts = [infra.filepath(s) for s in self.sample_scripts] + self.config += self.config_sample_scripts.format(sample_scripts=" ".join(scripts)) + + def check_sample_scripts_exist(self): + """Check the scripts were really added to the image.""" + scripts = [os.path.basename(s) for s in self.sample_scripts] + cmd = "md5sum " + " ".join(scripts) + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + + def run_sample_scripts(self): + """Run each script previously added to the image.""" + for script in self.sample_scripts: + cmd = self.interpreter + " " + os.path.basename(script) + _, exit_code = self.emulator.run(cmd, timeout=self.timeout) + self.assertEqual(exit_code, 0) + + def test_run(self): + self.login() + self.check_sample_scripts_exist() + self.run_sample_scripts() diff --git a/support/testing/tests/package/test_python_argh.py b/support/testing/tests/package/test_python_argh.py new file mode 100644 index 00000000..de4b4cbe --- /dev/null +++ b/support/testing/tests/package/test_python_argh.py @@ -0,0 +1,45 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonArgh(TestPythonPackageBase): + config = TestPythonPackageBase.config + sample_scripts = ["tests/package/sample_python_argh.py"] + + def run_sample_scripts(self): + cmd = self.interpreter + " sample_python_argh.py -h" + output, exit_code = self.emulator.run(cmd) + self.assertIn("usage:", output[0]) + self.assertEqual(exit_code, 0) + + cmd = self.interpreter + " sample_python_argh.py 123" + output, exit_code = self.emulator.run(cmd) + self.assertEqual(output[0], "123, False") + self.assertEqual(exit_code, 0) + + cmd = self.interpreter + " sample_python_argh.py --bar 456" + output, exit_code = self.emulator.run(cmd) + self.assertEqual(output[0], "456, True") + self.assertEqual(exit_code, 0) + + cmd = self.interpreter + " sample_python_argh.py" + output, exit_code = self.emulator.run(cmd) + self.assertIn("usage:", output[0]) + self.assertEqual(exit_code, 2) + + +class TestPythonPy2Argh(TestPythonArgh): + __test__ = True + config = TestPythonArgh.config + \ + """ + BR2_PACKAGE_PYTHON=y + BR2_PACKAGE_PYTHON_ARGH=y + """ + + +class TestPythonPy3Argh(TestPythonArgh): + __test__ = True + config = TestPythonArgh.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_ARGH=y + """ diff --git a/support/testing/tests/package/test_python_attrs.py b/support/testing/tests/package/test_python_attrs.py new file mode 100644 index 00000000..9f597034 --- /dev/null +++ b/support/testing/tests/package/test_python_attrs.py @@ -0,0 +1,21 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy2Attrs(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON=y + BR2_PACKAGE_PYTHON_ATTRS=y + """ + sample_scripts = ["tests/package/sample_python_attrs.py"] + + +class TestPythonPy3Attrs(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_ATTRS=y + """ + sample_scripts = ["tests/package/sample_python_attrs.py"] diff --git a/support/testing/tests/package/test_python_autobahn.py b/support/testing/tests/package/test_python_autobahn.py new file mode 100644 index 00000000..a237ce46 --- /dev/null +++ b/support/testing/tests/package/test_python_autobahn.py @@ -0,0 +1,11 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy3Autobahn(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_AUTOBAHN=y + """ + sample_scripts = ["tests/package/sample_python_autobahn.py"] diff --git a/support/testing/tests/package/test_python_automat.py b/support/testing/tests/package/test_python_automat.py new file mode 100644 index 00000000..00a7ed65 --- /dev/null +++ b/support/testing/tests/package/test_python_automat.py @@ -0,0 +1,23 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy2Automat(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON=y + BR2_PACKAGE_PYTHON_AUTOMAT=y + """ + sample_scripts = ["tests/package/sample_python_automat.py"] + timeout = 30 + + +class TestPythonPy3Automat(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_AUTOMAT=y + """ + sample_scripts = ["tests/package/sample_python_automat.py"] + timeout = 30 diff --git a/support/testing/tests/package/test_python_avro.py b/support/testing/tests/package/test_python_avro.py new file mode 100644 index 00000000..6eee2760 --- /dev/null +++ b/support/testing/tests/package/test_python_avro.py @@ -0,0 +1,11 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonAvro(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_AVRO=y + """ + sample_scripts = ["tests/package/sample_python_avro.py"] diff --git a/support/testing/tests/package/test_python_bitstring.py b/support/testing/tests/package/test_python_bitstring.py new file mode 100644 index 00000000..63b3fdb6 --- /dev/null +++ b/support/testing/tests/package/test_python_bitstring.py @@ -0,0 +1,21 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy2Bitstring(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON=y + BR2_PACKAGE_PYTHON_BITSTRING=y + """ + sample_scripts = ["tests/package/sample_python_bitstring.py"] + + +class TestPythonPy3Bitstring(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_BITSTRING=y + """ + sample_scripts = ["tests/package/sample_python_bitstring.py"] diff --git a/support/testing/tests/package/test_python_can.py b/support/testing/tests/package/test_python_can.py new file mode 100644 index 00000000..d509d05d --- /dev/null +++ b/support/testing/tests/package/test_python_can.py @@ -0,0 +1,23 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy2Can(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON=y + BR2_PACKAGE_PYTHON_CAN=y + """ + sample_scripts = ["tests/package/sample_python_can.py"] + timeout = 40 + + +class TestPythonPy3Can(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_CAN=y + """ + sample_scripts = ["tests/package/sample_python_can.py"] + timeout = 40 diff --git a/support/testing/tests/package/test_python_cbor.py b/support/testing/tests/package/test_python_cbor.py new file mode 100644 index 00000000..9da35037 --- /dev/null +++ b/support/testing/tests/package/test_python_cbor.py @@ -0,0 +1,23 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy2Cbor(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON=y + BR2_PACKAGE_PYTHON_CBOR=y + """ + sample_scripts = ["tests/package/sample_python_cbor_enc.py", + "tests/package/sample_python_cbor_dec.py"] + + +class TestPythonPy3Cbor(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_CBOR=y + """ + sample_scripts = ["tests/package/sample_python_cbor_enc.py", + "tests/package/sample_python_cbor_dec.py"] diff --git a/support/testing/tests/package/test_python_click.py b/support/testing/tests/package/test_python_click.py new file mode 100644 index 00000000..db57d3aa --- /dev/null +++ b/support/testing/tests/package/test_python_click.py @@ -0,0 +1,44 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonClick(TestPythonPackageBase): + sample_scripts = ["tests/package/sample_python_click.py"] + + def run_sample_scripts(self): + cmd = self.interpreter + " sample_python_click.py --help" + output, exit_code = self.emulator.run(cmd) + self.assertIn("Usage:", output[0]) + self.assertEqual(exit_code, 0) + + cmd = self.interpreter + " sample_python_click.py 123" + output, exit_code = self.emulator.run(cmd) + self.assertEqual(output[0], "123, False") + self.assertEqual(exit_code, 0) + + cmd = self.interpreter + " sample_python_click.py --bar 456" + output, exit_code = self.emulator.run(cmd) + self.assertEqual(output[0], "456, True") + self.assertEqual(exit_code, 0) + + cmd = self.interpreter + " sample_python_click.py" + output, exit_code = self.emulator.run(cmd) + self.assertIn("Usage:", output[0]) + self.assertEqual(exit_code, 2) + + +class TestPythonPy2Click(TestPythonClick): + __test__ = True + config = TestPythonClick.config + \ + """ + BR2_PACKAGE_PYTHON=y + BR2_PACKAGE_PYTHON_CLICK=y + """ + + +class TestPythonPy3Click(TestPythonClick): + __test__ = True + config = TestPythonClick.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_CLICK=y + """ diff --git a/support/testing/tests/package/test_python_colorzero.py b/support/testing/tests/package/test_python_colorzero.py new file mode 100644 index 00000000..b7c228ac --- /dev/null +++ b/support/testing/tests/package/test_python_colorzero.py @@ -0,0 +1,23 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy2Colorzero(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON=y + BR2_PACKAGE_PYTHON_COLORZERO=y + """ + sample_scripts = ["tests/package/sample_python_colorzero.py"] + timeout = 30 + + +class TestPythonPy3Colorzero(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_COLORZERO=y + """ + sample_scripts = ["tests/package/sample_python_colorzero.py"] + timeout = 30 diff --git a/support/testing/tests/package/test_python_constantly.py b/support/testing/tests/package/test_python_constantly.py new file mode 100644 index 00000000..5be01c4f --- /dev/null +++ b/support/testing/tests/package/test_python_constantly.py @@ -0,0 +1,21 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy2Constantly(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON=y + BR2_PACKAGE_PYTHON_CONSTANTLY=y + """ + sample_scripts = ["tests/package/sample_python_constantly.py"] + + +class TestPythonPy3Constantly(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_CONSTANTLY=y + """ + sample_scripts = ["tests/package/sample_python_constantly.py"] diff --git a/support/testing/tests/package/test_python_crossbar.py b/support/testing/tests/package/test_python_crossbar.py new file mode 100644 index 00000000..d7843ddd --- /dev/null +++ b/support/testing/tests/package/test_python_crossbar.py @@ -0,0 +1,12 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy3Crossbar(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_CROSSBAR=y + """ + sample_scripts = ["tests/package/sample_python_crossbar.py"] + timeout = 60 diff --git a/support/testing/tests/package/test_python_cryptography.py b/support/testing/tests/package/test_python_cryptography.py new file mode 100644 index 00000000..14515fcd --- /dev/null +++ b/support/testing/tests/package/test_python_cryptography.py @@ -0,0 +1,23 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy2Cryptography(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON=y + BR2_PACKAGE_PYTHON_CRYPTOGRAPHY=y + """ + sample_scripts = ["tests/package/sample_python_cryptography.py"] + timeout = 40 + + +class TestPythonPy3Cryptography(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_CRYPTOGRAPHY=y + """ + sample_scripts = ["tests/package/sample_python_cryptography.py"] + timeout = 40 diff --git a/support/testing/tests/package/test_python_django.py b/support/testing/tests/package/test_python_django.py new file mode 100644 index 00000000..0b7d35bb --- /dev/null +++ b/support/testing/tests/package/test_python_django.py @@ -0,0 +1,35 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonDjango(TestPythonPackageBase): + config = TestPythonPackageBase.config + sample_scripts = ["tests/package/sample_python_django.py"] + + def run_sample_scripts(self): + timeout = 35 * self.emulator.timeout_multiplier + + cmd = "cd /opt && /usr/bin/django-admin startproject testsite" + self.assertRunOk(cmd, timeout=timeout) + + cmd = "cd /opt/testsite && " + self.interpreter + " ./manage.py migrate" + output, exit_code = self.emulator.run(cmd, timeout=timeout) + self.assertIn("Operations to perform:", output[0]) + self.assertEqual(exit_code, 0) + + cmd = "cd /opt/testsite && " + self.interpreter + " ./manage.py runserver 0.0.0.0:1234 & " + # give some time to setup the server + cmd += "sleep {}".format(str(30 * self.emulator.timeout_multiplier)) + self.assertRunOk(cmd, timeout=timeout) + + cmd = "netstat -ltn 2>/dev/null | grep 0.0.0.0:1234" + self.assertRunOk(cmd) + + +class TestPythonPy3Django(TestPythonDjango): + __test__ = True + config = TestPythonDjango.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_DJANGO=y + BR2_PACKAGE_PYTHON3_SQLITE=y + """ diff --git a/support/testing/tests/package/test_python_gitdb2.py b/support/testing/tests/package/test_python_gitdb2.py new file mode 100644 index 00000000..fc55f208 --- /dev/null +++ b/support/testing/tests/package/test_python_gitdb2.py @@ -0,0 +1,21 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy2Gitdb2(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON=y + BR2_PACKAGE_PYTHON_GITDB2=y + """ + sample_scripts = ["tests/package/sample_python_gitdb2.py"] + + +class TestPythonPy3Gitdb2(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_GITDB2=y + """ + sample_scripts = ["tests/package/sample_python_gitdb2.py"] diff --git a/support/testing/tests/package/test_python_gobject.py b/support/testing/tests/package/test_python_gobject.py new file mode 100644 index 00000000..cd8a4325 --- /dev/null +++ b/support/testing/tests/package/test_python_gobject.py @@ -0,0 +1,27 @@ +import os +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy3Gobject(TestPythonPackageBase): + __test__ = True + config = \ + """ + BR2_arm=y + BR2_ARM_ENABLE_VFP=y + BR2_cortex_a9=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_PACKAGE_GOBJECT_INTROSPECTION=y + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_GOBJECT=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def login(self): + img = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv7", + kernel="builtin", + options=["-initrd", img]) + self.emulator.login() + + sample_scripts = ["tests/package/sample_python_gobject.py"] diff --git a/support/testing/tests/package/test_python_gpiozero.py b/support/testing/tests/package/test_python_gpiozero.py new file mode 100644 index 00000000..2498a555 --- /dev/null +++ b/support/testing/tests/package/test_python_gpiozero.py @@ -0,0 +1,32 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonGpiozero(TestPythonPackageBase): + config = TestPythonPackageBase.config + sample_scripts = ["tests/package/sample_python_gpiozero.py"] + + def run_sample_scripts(self): + cmd = self.interpreter + " sample_python_gpiozero.py" + output, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + + cmd = "pinout -r a020d3 -m | cat" + self.assertRunOk(cmd) + + +class TestPythonPy2Gpiozero(TestPythonGpiozero): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON=y + BR2_PACKAGE_PYTHON_GPIOZERO=y + """ + + +class TestPythonPy3Gpiozero(TestPythonGpiozero): + __test__ = True + config = TestPythonGpiozero.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_GPIOZERO=y + """ diff --git a/support/testing/tests/package/test_python_incremental.py b/support/testing/tests/package/test_python_incremental.py new file mode 100644 index 00000000..49800d89 --- /dev/null +++ b/support/testing/tests/package/test_python_incremental.py @@ -0,0 +1,23 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy2Incremental(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON=y + BR2_PACKAGE_PYTHON_INCREMENTAL=y + """ + sample_scripts = ["tests/package/sample_python_incremental.py"] + timeout = 30 + + +class TestPythonPy3Incremental(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_INCREMENTAL=y + """ + sample_scripts = ["tests/package/sample_python_incremental.py"] + timeout = 30 diff --git a/support/testing/tests/package/test_python_passlib.py b/support/testing/tests/package/test_python_passlib.py new file mode 100644 index 00000000..7c85882b --- /dev/null +++ b/support/testing/tests/package/test_python_passlib.py @@ -0,0 +1,23 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy2Passlib(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON=y + BR2_PACKAGE_PYTHON_PASSLIB=y + """ + sample_scripts = ["tests/package/sample_python_passlib.py"] + timeout = 30 + + +class TestPythonPy3Passlib(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_PASSLIB=y + """ + sample_scripts = ["tests/package/sample_python_passlib.py"] + timeout = 30 diff --git a/support/testing/tests/package/test_python_pexpect.py b/support/testing/tests/package/test_python_pexpect.py new file mode 100644 index 00000000..ba31cdbd --- /dev/null +++ b/support/testing/tests/package/test_python_pexpect.py @@ -0,0 +1,21 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy2Pexpect(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON=y + BR2_PACKAGE_PYTHON_PEXPECT=y + """ + sample_scripts = ["tests/package/sample_python_pexpect.py"] + + +class TestPythonPy3Pexpect(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_PEXPECT=y + """ + sample_scripts = ["tests/package/sample_python_pexpect.py"] diff --git a/support/testing/tests/package/test_python_pynacl.py b/support/testing/tests/package/test_python_pynacl.py new file mode 100644 index 00000000..f4dd5494 --- /dev/null +++ b/support/testing/tests/package/test_python_pynacl.py @@ -0,0 +1,23 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy2Pynacl(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON=y + BR2_PACKAGE_PYTHON_PYNACL=y + """ + sample_scripts = ["tests/package/sample_python_pynacl.py"] + timeout = 10 + + +class TestPythonPy3Pynacl(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_PYNACL=y + """ + sample_scripts = ["tests/package/sample_python_pynacl.py"] + timeout = 10 diff --git a/support/testing/tests/package/test_python_pytest.py b/support/testing/tests/package/test_python_pytest.py new file mode 100644 index 00000000..7fa7e440 --- /dev/null +++ b/support/testing/tests/package/test_python_pytest.py @@ -0,0 +1,19 @@ +import os + +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy3Pytest(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_PYTEST=y + """ + sample_scripts = ["tests/package/sample_python_pytest.py"] + + def run_sample_scripts(self): + for script in self.sample_scripts: + cmd = self.interpreter + " -m pytest " + os.path.basename(script) + _, exit_code = self.emulator.run(cmd, timeout=self.timeout) + self.assertEqual(exit_code, 0) diff --git a/support/testing/tests/package/test_python_pytest_asyncio.py b/support/testing/tests/package/test_python_pytest_asyncio.py new file mode 100644 index 00000000..caf034be --- /dev/null +++ b/support/testing/tests/package/test_python_pytest_asyncio.py @@ -0,0 +1,20 @@ +import os + +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy3PytestAsyncio(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_PYTEST=y + BR2_PACKAGE_PYTHON_PYTEST_ASYNCIO=y + """ + sample_scripts = ["tests/package/sample_python_pytest_asyncio.py"] + + def run_sample_scripts(self): + for script in self.sample_scripts: + cmd = self.interpreter + " -m pytest " + os.path.basename(script) + _, exit_code = self.emulator.run(cmd, timeout=self.timeout) + self.assertEqual(exit_code, 0) diff --git a/support/testing/tests/package/test_python_pyyaml.py b/support/testing/tests/package/test_python_pyyaml.py new file mode 100644 index 00000000..cd45a57b --- /dev/null +++ b/support/testing/tests/package/test_python_pyyaml.py @@ -0,0 +1,23 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy2Pyyaml(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON=y + BR2_PACKAGE_PYTHON_PYYAML=y + """ + sample_scripts = ["tests/package/sample_python_pyyaml_enc.py", + "tests/package/sample_python_pyyaml_dec.py"] + + +class TestPythonPy3Pyyaml(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_PYYAML=y + """ + sample_scripts = ["tests/package/sample_python_pyyaml_enc.py", + "tests/package/sample_python_pyyaml_dec.py"] diff --git a/support/testing/tests/package/test_python_rpi_gpio.py b/support/testing/tests/package/test_python_rpi_gpio.py new file mode 100644 index 00000000..c938ea39 --- /dev/null +++ b/support/testing/tests/package/test_python_rpi_gpio.py @@ -0,0 +1,11 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy3RpiGpio(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_RPI_GPIO=y + """ + sample_scripts = ["tests/package/sample_python_rpi_gpio.py"] diff --git a/support/testing/tests/package/test_python_service_identity.py b/support/testing/tests/package/test_python_service_identity.py new file mode 100644 index 00000000..6aeb77de --- /dev/null +++ b/support/testing/tests/package/test_python_service_identity.py @@ -0,0 +1,23 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy2ServiceIdentity(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON=y + BR2_PACKAGE_PYTHON_SERVICE_IDENTITY=y + """ + sample_scripts = ["tests/package/sample_python_service_identity.py"] + timeout = 30 + + +class TestPythonPy3ServiceIdentity(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_SERVICE_IDENTITY=y + """ + sample_scripts = ["tests/package/sample_python_service_identity.py"] + timeout = 30 diff --git a/support/testing/tests/package/test_python_smmap2.py b/support/testing/tests/package/test_python_smmap2.py new file mode 100644 index 00000000..07c0e662 --- /dev/null +++ b/support/testing/tests/package/test_python_smmap2.py @@ -0,0 +1,21 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy2Smmap2(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON=y + BR2_PACKAGE_PYTHON_SMMAP2=y + """ + sample_scripts = ["tests/package/sample_python_smmap2.py"] + + +class TestPythonPy3Smmap2(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_SMMAP2=y + """ + sample_scripts = ["tests/package/sample_python_smmap2.py"] diff --git a/support/testing/tests/package/test_python_subprocess32.py b/support/testing/tests/package/test_python_subprocess32.py new file mode 100644 index 00000000..d2878046 --- /dev/null +++ b/support/testing/tests/package/test_python_subprocess32.py @@ -0,0 +1,11 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy2Subprocess32(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON=y + BR2_PACKAGE_PYTHON_SUBPROCESS32=y + """ + sample_scripts = ["tests/package/sample_python_subprocess32.py"] diff --git a/support/testing/tests/package/test_python_treq.py b/support/testing/tests/package/test_python_treq.py new file mode 100644 index 00000000..e24ae845 --- /dev/null +++ b/support/testing/tests/package/test_python_treq.py @@ -0,0 +1,30 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonTreq(TestPythonPackageBase): + sample_scripts = ["tests/package/sample_python_treq.py"] + + def run_sample_scripts(self): + cmd = self.interpreter + " sample_python_treq.py" + output, exit_code = self.emulator.run(cmd, timeout=20) + refuse_msgs = [1 for l in output if "Connection refused" in l] + self.assertGreater(sum(refuse_msgs), 0) + self.assertEqual(exit_code, 0) + + +class TestPythonPy2Treq(TestPythonTreq): + __test__ = True + config = TestPythonTreq.config + \ + """ + BR2_PACKAGE_PYTHON=y + BR2_PACKAGE_PYTHON_TREQ=y + """ + + +class TestPythonPy3Treq(TestPythonTreq): + __test__ = True + config = TestPythonTreq.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_TREQ=y + """ diff --git a/support/testing/tests/package/test_python_twisted.py b/support/testing/tests/package/test_python_twisted.py new file mode 100644 index 00000000..a458ee45 --- /dev/null +++ b/support/testing/tests/package/test_python_twisted.py @@ -0,0 +1,39 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonTwisted(TestPythonPackageBase): + config = TestPythonPackageBase.config + sample_scripts = ["tests/package/sample_python_twisted.py"] + + def run_sample_scripts(self): + cmd = "netstat -ltn 2>/dev/null | grep 0.0.0.0:1234" + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 1) + + cmd = self.interpreter + " sample_python_twisted.py &" + # give some time to setup the server + cmd += "sleep 30" + _, exit_code = self.emulator.run(cmd, timeout=35) + self.assertEqual(exit_code, 0) + + cmd = "netstat -ltn 2>/dev/null | grep 0.0.0.0:1234" + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + + +class TestPythonPy2Twisted(TestPythonTwisted): + __test__ = True + config = TestPythonTwisted.config + \ + """ + BR2_PACKAGE_PYTHON=y + BR2_PACKAGE_PYTHON_TWISTED=y + """ + + +class TestPythonPy3Twisted(TestPythonTwisted): + __test__ = True + config = TestPythonTwisted.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_TWISTED=y + """ diff --git a/support/testing/tests/package/test_python_txaio.py b/support/testing/tests/package/test_python_txaio.py new file mode 100644 index 00000000..f1bb2c79 --- /dev/null +++ b/support/testing/tests/package/test_python_txaio.py @@ -0,0 +1,11 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy3Txaio(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_TXAIO=y + """ + sample_scripts = ["tests/package/sample_python_txaio_asyncio.py"] diff --git a/support/testing/tests/package/test_python_txtorcon.py b/support/testing/tests/package/test_python_txtorcon.py new file mode 100644 index 00000000..1ac2f691 --- /dev/null +++ b/support/testing/tests/package/test_python_txtorcon.py @@ -0,0 +1,23 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy2Txtorcon(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON=y + BR2_PACKAGE_PYTHON_TXTORCON=y + """ + sample_scripts = ["tests/package/sample_python_txtorcon.py"] + timeout = 30 + + +class TestPythonPy3Txtorcon(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_TXTORCON=y + """ + sample_scripts = ["tests/package/sample_python_txtorcon.py"] + timeout = 30 diff --git a/support/testing/tests/package/test_python_ubjson.py b/support/testing/tests/package/test_python_ubjson.py new file mode 100644 index 00000000..85c707e2 --- /dev/null +++ b/support/testing/tests/package/test_python_ubjson.py @@ -0,0 +1,23 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy2Ubjson(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON=y + BR2_PACKAGE_PYTHON_UBJSON=y + """ + sample_scripts = ["tests/package/sample_python_ubjson_enc.py", + "tests/package/sample_python_ubjson_dec.py"] + + +class TestPythonPy3Ubjson(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_UBJSON=y + """ + sample_scripts = ["tests/package/sample_python_ubjson_enc.py", + "tests/package/sample_python_ubjson_dec.py"] diff --git a/support/testing/tests/package/test_redis.py b/support/testing/tests/package/test_redis.py new file mode 100644 index 00000000..d7999851 --- /dev/null +++ b/support/testing/tests/package/test_redis.py @@ -0,0 +1,24 @@ +import os + +import infra.basetest + + +class TestRedis(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + """ + BR2_TARGET_ROOTFS_CPIO=y + BR2_PACKAGE_REDIS=y + """ + + def test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + _, exit_code = self.emulator.run("redis-cli SET hello world") + self.assertEqual(exit_code, 0) + + output, exit_code = self.emulator.run("redis-cli GET hello") + self.assertEqual(exit_code, 0) + self.assertEqual(output[0].strip(), '"world"') diff --git a/support/testing/tests/package/test_rings.py b/support/testing/tests/package/test_rings.py new file mode 100644 index 00000000..be9765f1 --- /dev/null +++ b/support/testing/tests/package/test_rings.py @@ -0,0 +1,25 @@ +from tests.package.test_lua import TestLuaBase + + +class TestLuaRings(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUA=y + BR2_PACKAGE_RINGS=y + """ + + def test_run(self): + self.login() + self.module_test("rings") + + +class TestLuajitRings(TestLuaBase): + config = TestLuaBase.config + \ + """ + BR2_PACKAGE_LUAJIT=y + BR2_PACKAGE_RINGS=y + """ + + def test_run(self): + self.login() + self.module_test("rings") diff --git a/support/testing/tests/package/test_rust.py b/support/testing/tests/package/test_rust.py new file mode 100644 index 00000000..15bb93dd --- /dev/null +++ b/support/testing/tests/package/test_rust.py @@ -0,0 +1,112 @@ +import os +import tempfile +import subprocess +import shutil + +import infra.basetest + + +class TestRustBase(infra.basetest.BRTest): + + target = 'armv7-unknown-linux-gnueabihf' + crate = 'hello-world' + + def login(self): + img = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv7", + kernel="builtin", + options=["-initrd", img]) + self.emulator.login() + + def build_test_prog(self): + hostdir = os.path.join(self.builddir, 'host') + env = os.environ.copy() + env["USER"] = "br-user" + env["PATH"] = "{}:".format(os.path.join(hostdir, 'bin')) + env["PATH"] + env["CARGO_HOME"] = os.path.join(hostdir, 'usr', 'share', 'cargo') + env["RUST_TARGET_PATH"] = os.path.join(hostdir, 'etc', 'rustc') + cargo = os.path.join(hostdir, 'bin', 'cargo') + workdir = os.path.join(tempfile.mkdtemp(suffix='-br2-testing-rust'), + self.crate) + manifest = os.path.join(workdir, 'Cargo.toml') + prog = os.path.join(workdir, 'target', self.target, 'debug', self.crate) + + cmd = [cargo, 'init', '--bin', '--vcs', 'none', '-vv', workdir] + ret = subprocess.call(cmd, + stdout=self.b.logfile, + stderr=self.b.logfile, + env=env) + if ret != 0: + raise SystemError("Cargo init failed") + + cmd = [ + cargo, 'build', '-vv', '--target', self.target, + '--manifest-path', manifest + ] + ret = subprocess.call(cmd, + stdout=self.b.logfile, + stderr=self.b.logfile, + env=env) + if ret != 0: + raise SystemError("Cargo build failed") + + shutil.copy(prog, os.path.join(self.builddir, 'target', 'usr', 'bin')) + self.b.build() + shutil.rmtree(workdir) + + +class TestRustBin(TestRustBase): + config = \ + """ + BR2_arm=y + BR2_cortex_a9=y + BR2_ARM_ENABLE_NEON=y + BR2_ARM_ENABLE_VFP=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" + BR2_SYSTEM_DHCP="eth0" + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.11.3" + BR2_LINUX_KERNEL_DEFCONFIG="vexpress" + BR2_LINUX_KERNEL_DTS_SUPPORT=y + BR2_LINUX_KERNEL_INTREE_DTS_NAME="vexpress-v2p-ca9" + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + BR2_PACKAGE_HOST_RUSTC=y + """ + + def test_run(self): + self.build_test_prog() + self.login() + _, exit_code = self.emulator.run(self.crate) + self.assertEqual(exit_code, 0) + + +class TestRust(TestRustBase): + config = \ + """ + BR2_arm=y + BR2_cortex_a9=y + BR2_ARM_ENABLE_NEON=y + BR2_ARM_ENABLE_VFP=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" + BR2_SYSTEM_DHCP="eth0" + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.11.3" + BR2_LINUX_KERNEL_DEFCONFIG="vexpress" + BR2_LINUX_KERNEL_DTS_SUPPORT=y + BR2_LINUX_KERNEL_INTREE_DTS_NAME="vexpress-v2p-ca9" + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + BR2_PACKAGE_HOST_RUSTC=y + BR2_PACKAGE_HOST_RUST=y + """ + + def test_run(self): + self.build_test_prog() + self.login() + _, exit_code = self.emulator.run(self.crate) + self.assertEqual(exit_code, 0) diff --git a/support/testing/tests/package/test_syslog_ng.py b/support/testing/tests/package/test_syslog_ng.py new file mode 100644 index 00000000..3fb0be5f --- /dev/null +++ b/support/testing/tests/package/test_syslog_ng.py @@ -0,0 +1,38 @@ +import os + +import infra.basetest + + +class TestSyslogNg(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y + BR2_PACKAGE_SYSLOG_NG=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + cmd = "grep 'syslog-ng starting' /var/log/messages" + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + + cmd = "logger my-message && " + cmd += "sleep 1 && " + cmd += "grep my-message /var/log/messages" + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + + cmd = "syslog-ng-ctl reload && " + cmd += "sleep 1" + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + cmd = "grep -i 'syslog-ng.*warning' /var/log/messages" + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 1) diff --git a/support/testing/tests/package/test_tmux.py b/support/testing/tests/package/test_tmux.py new file mode 100644 index 00000000..b31854ca --- /dev/null +++ b/support/testing/tests/package/test_tmux.py @@ -0,0 +1,41 @@ +import os + +import infra.basetest + + +class TestTmux(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_PACKAGE_TMUX=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + cmd = "tmux -V" + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + + cmd = "tmux -C = 3.10, host and target gcc >= 5" + depends on BR2_PACKAGE_SYSTEMD_ARCH_SUPPORTS + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_USES_GLIBC || \ + !BR2_TOOLCHAIN_HAS_SSP || \ + !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10 || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_5 || \ + !BR2_HOST_GCC_AT_LEAST_5 + +config BR2_INIT_NONE + bool "None" + select BR2_PACKAGE_SKELETON_INIT_NONE if BR2_ROOTFS_SKELETON_DEFAULT + help + Buildroot will not install any init system. You will + have to provide your own, either with a new package + or with a rootfs-overlay. + +# Init systems from br2-external trees, if any +source "$BR2_BASE_DIR/.br2-external.in.init" + +endchoice + +choice + prompt "/dev management" if !BR2_INIT_SYSTEMD + default BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_DEVTMPFS + +config BR2_ROOTFS_DEVICE_CREATION_STATIC + bool "Static using device table" + +config BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_DEVTMPFS + bool "Dynamic using devtmpfs only" + +config BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV + bool "Dynamic using devtmpfs + mdev" + select BR2_PACKAGE_BUSYBOX + +config BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV + bool "Dynamic using devtmpfs + eudev" + depends on BR2_USE_WCHAR # eudev + depends on !BR2_STATIC_LIBS + depends on BR2_USE_MMU # eudev + select BR2_PACKAGE_EUDEV + +comment "eudev needs a toolchain w/ wchar, dynamic library" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS + +endchoice + +comment "/dev management using udev (from systemd)" + depends on BR2_INIT_SYSTEMD + +config BR2_ROOTFS_DEVICE_TABLE + string "Path to the permission tables" + default "system/device_table.txt" + help + Specify a space-separated list of permission table locations, + that will be passed to the makedevs utility to assign + correct owners and permissions on various files in the + target filesystem. + + See package/makedevs/README for details on the usage and + syntax of these files. + +config BR2_ROOTFS_STATIC_DEVICE_TABLE + string "Path to the device tables" + default "system/device_table_dev.txt" + depends on BR2_ROOTFS_DEVICE_CREATION_STATIC + help + Specify a space-separated list of device table locations, + that will be passed to the makedevs utility to create all + the special device files under /dev. + + See package/makedevs/README for details on the usage and + syntax of these files. + +config BR2_ROOTFS_DEVICE_TABLE_SUPPORTS_EXTENDED_ATTRIBUTES + bool "support extended attributes in device tables" + help + Support extended attributes handling in device tables + +config BR2_ROOTFS_MERGED_USR + bool "Use symlinks to /usr for /bin, /sbin and /lib" + help + If you say 'n' here, then /bin, /sbin and /lib and their + counterparts in /usr will be separate directories. This + is the historical UNIX way. In this case, /usr can be a + filesystem on a partition separate from / . + + If you say 'y' here, then /bin, /sbin and /lib will be + symlinks to their counterparts in /usr. In this case, /usr can + not be a separate filesystem. + +if BR2_ROOTFS_SKELETON_DEFAULT + +config BR2_TARGET_ENABLE_ROOT_LOGIN + bool "Enable root login with password" + default y + select BR2_PACKAGE_HOST_MKPASSWD if BR2_TARGET_GENERIC_ROOT_PASSWD != "" + help + Allow root to log in with a password. + + If not enabled, root will not be able to log in with a + password. However, if you have an ssh server and you add an + ssh key, you can still allow root to log in. Alternatively, + you can use sudo to become root. + +config BR2_TARGET_GENERIC_ROOT_PASSWD + string "Root password" + default "" + depends on BR2_TARGET_ENABLE_ROOT_LOGIN + help + Set the initial root password. + + If set to empty (the default), then no root password will be + set, and root will need no password to log in. + + If the password starts with any of $1$, $5$ or $6$, it is + considered to be already crypt-encoded with respectively md5, + sha256 or sha512. Any other value is taken to be a clear-text + value, and is crypt-encoded as per the "Passwords encoding" + scheme, above. + + Note: "$" signs in the hashed password must be doubled. For + example, if the hashed password is + "$1$longsalt$v35DIIeMo4yUfI23yditq0", then you must enter it + as "$$1$$longsalt$$v35DIIeMo4yUfI23yditq0" (this is necessary + otherwise make would attempt to interpret the $ as a variable + expansion). + + WARNING! WARNING! + The password appears as-is in the .config file, and may appear + in the build log! Avoid using a valuable password if either + the .config file or the build log may be distributed, or at + the very least use a strong cryptographic hash for your + password! + +choice + bool "/bin/sh" + default BR2_SYSTEM_BIN_SH_DASH if !BR2_PACKAGE_BUSYBOX + help + Select which shell will provide /bin/sh. + +# busybox has shells that work on noMMU +config BR2_SYSTEM_BIN_SH_BUSYBOX + bool "busybox' default shell" + depends on BR2_PACKAGE_BUSYBOX + +config BR2_SYSTEM_BIN_SH_BASH + bool "bash" + depends on BR2_USE_MMU # bash + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + select BR2_PACKAGE_BASH + +config BR2_SYSTEM_BIN_SH_DASH + bool "dash" + depends on BR2_USE_MMU # dash + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + select BR2_PACKAGE_DASH + +config BR2_SYSTEM_BIN_SH_MKSH + bool "mksh" + depends on BR2_USE_MMU # mksh + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + select BR2_PACKAGE_MKSH + +config BR2_SYSTEM_BIN_SH_ZSH + bool "zsh" + depends on BR2_USE_MMU # zsh + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + select BR2_PACKAGE_ZSH + +comment "bash, dash, mksh, zsh need BR2_PACKAGE_BUSYBOX_SHOW_OTHERS" + depends on !BR2_PACKAGE_BUSYBOX_SHOW_OTHERS && BR2_PACKAGE_BUSYBOX + +config BR2_SYSTEM_BIN_SH_NONE + bool "none" + +endchoice # /bin/sh + +config BR2_SYSTEM_BIN_SH + string + default "bash" if BR2_SYSTEM_BIN_SH_BASH + default "dash" if BR2_SYSTEM_BIN_SH_DASH + default "mksh" if BR2_SYSTEM_BIN_SH_MKSH + default "zsh" if BR2_SYSTEM_BIN_SH_ZSH + +menuconfig BR2_TARGET_GENERIC_GETTY + bool "Run a getty (login prompt) after boot" + default y + +config BR2_TARGET_GENERIC_GETTY_AUTOLOGIN + bool "all getty auto login as root after boot" + depends on BR2_INIT_BUSYBOX || BR2_INIT_SYSTEMD + default y + help + as file serial@getty.service or getty@.service + you can set ExecStart var + -a root switch -o '-p -- \\u' + you can switch to autologin + else disable autologin + when 221011 add busybox auto login support + busybox support just getty add param about -l and -n + -l ls-autologin + ls-autologin just will instead of /bin/login + and login have a param is -f + login -f root + will login be root + so ls-autologin content is login -f -root + +config BR2_TARGET_TTY0_GETTY_ENABLE + bool "enable tty0 getty" + depends on BR2_INIT_BUSYBOX || BR2_INIT_SYSTEMD + default y + help + select this function + will create getty@tty0.service in rootfs /usr/lib/systemd/system/ + just a link file which link /usr/lib/systemd/system/getty@.service + so when rootfs boot + if board have a screen, will see a screen up a getty and can operate it like serial getty + when 221011 add busybox support + busybox as init process + need add new line in /etc/inittab like a line which contain ttyS*::* + +if BR2_TARGET_GENERIC_GETTY +config BR2_TARGET_GENERIC_GETTY_PORT + string "TTY port" + default "console" + help + Specify a port to run a getty on. + +choice + prompt "Baudrate" + default BR2_TARGET_GENERIC_GETTY_BAUDRATE_KEEP + help + Select a baudrate to use. + +config BR2_TARGET_GENERIC_GETTY_BAUDRATE_KEEP + bool "keep kernel default" +config BR2_TARGET_GENERIC_GETTY_BAUDRATE_9600 + bool "9600" +config BR2_TARGET_GENERIC_GETTY_BAUDRATE_19200 + bool "19200" +config BR2_TARGET_GENERIC_GETTY_BAUDRATE_38400 + bool "38400" +config BR2_TARGET_GENERIC_GETTY_BAUDRATE_57600 + bool "57600" +config BR2_TARGET_GENERIC_GETTY_BAUDRATE_115200 + bool "115200" +endchoice + +config BR2_TARGET_GENERIC_GETTY_BAUDRATE + string + default "0" if BR2_TARGET_GENERIC_GETTY_BAUDRATE_KEEP + default "9600" if BR2_TARGET_GENERIC_GETTY_BAUDRATE_9600 + default "19200" if BR2_TARGET_GENERIC_GETTY_BAUDRATE_19200 + default "38400" if BR2_TARGET_GENERIC_GETTY_BAUDRATE_38400 + default "57600" if BR2_TARGET_GENERIC_GETTY_BAUDRATE_57600 + default "115200" if BR2_TARGET_GENERIC_GETTY_BAUDRATE_115200 + +config BR2_TARGET_GENERIC_GETTY_TERM + string "TERM environment variable" + default "vt100" + # currently observed by all but systemd + depends on !BR2_INIT_SYSTEMD + help + Specify a TERM type. + +config BR2_TARGET_GENERIC_GETTY_OPTIONS + string "other options to pass to getty" + default "" + # currently observed by all but systemd + depends on !BR2_INIT_SYSTEMD + help + Any other flags you want to pass to getty, + Refer to getty --help for details. +endif + +config BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW + bool "remount root filesystem read-write during boot" + default y + help + The root filesystem is typically mounted read-only at boot. + By default, buildroot remounts it in read-write mode early + during the boot process. + Say no here if you would rather like your root filesystem to + remain read-only. + If unsure, say Y. + +config BR2_SYSTEM_DHCP + string "Network interface to configure through DHCP" + default "" + depends on BR2_PACKAGE_BUSYBOX || BR2_PACKAGE_IFUPDOWN || \ + BR2_PACKAGE_SYSTEMD_NETWORKD || BR2_PACKAGE_NETIFRC + help + Enter here the name of the network interface (E.G. eth0) to + automatically configure through DHCP at bootup. + + If left empty, no automatic DHCP requests will take place. + + For more complicated network setups use an overlay to + overwrite /etc/network/interfaces or add a networkd + configuration file. + +comment "automatic network configuration via DHCP needs ifupdown or busybox or networkd or netifrc" + depends on !(BR2_PACKAGE_BUSYBOX || BR2_PACKAGE_IFUPDOWN || \ + BR2_PACKAGE_SYSTEMD_NETWORKD || BR2_PACKAGE_NETIFRC) + +endif # BR2_ROOTFS_SKELETON_DEFAULT + +config BR2_SYSTEM_DEFAULT_PATH + string "Set the system's default PATH" + default "/usr/bin:/usr/sbin" if BR2_ROOTFS_MERGED_USR + default "/bin:/sbin:/usr/bin:/usr/sbin" if !BR2_ROOTFS_MERGED_USR + help + Sets the system's default PATH. It is being used in + /etc/profile in the skeleton-init-common package and by some + daemons. + + The default should work in most cases. + +config BR2_ENABLE_LOCALE_PURGE + bool "Purge unwanted locales" + default y + help + Explicitly specify what locales to install on target. If N + then all locales supported by packages are installed. + +config BR2_ENABLE_LOCALE_WHITELIST + string "Locales to keep" + default "C en_US" + depends on BR2_ENABLE_LOCALE_PURGE + help + Whitespace seperated list of locales to allow on target. + Locales not listed here will be removed from the target. + See 'locale -a' on your host for a list of locales available + on your build host, or have a look in /usr/share/locale in + the target file system for available locales. + + Notice that listing a locale here doesn't guarantee that it + will be available on the target - That purely depends on the + support for that locale in the selected packages. + +config BR2_GENERATE_LOCALE + string "Generate locale data" + default "" + depends on \ + (BR2_TOOLCHAIN_BUILDROOT_UCLIBC && BR2_ENABLE_LOCALE) || \ + BR2_TOOLCHAIN_USES_GLIBC + help + Generate support for a list of locales. Locales can be + specified with or without encoding, when no encoding is + specified, UTF-8 is assumed. Examples of locales: en_US, + fr_FR.UTF-8. + +config BR2_SYSTEM_ENABLE_NLS + bool "Enable Native Language Support (NLS)" + depends on BR2_USE_WCHAR + # - glibc has built-in NLS support, but anyway doesn't + # support static linking + # - musl and uclibc support static linking, but they don't + # have built-in NLS support, which is provided by the + # libintl library from gettext. The fact that it is a + # separate library causes too many problems for static + # linking. + depends on !BR2_STATIC_LIBS + select BR2_PACKAGE_GETTEXT if !BR2_TOOLCHAIN_HAS_FULL_GETTEXT + help + This option will enable Native Language Support, which will + allow software packages to support translations. + +comment "NLS support needs a toolchain w/ wchar, dynamic library" + depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS + +config BR2_TARGET_TZ_INFO + bool "Install timezone info" + select BR2_PACKAGE_TZDATA if BR2_TOOLCHAIN_USES_GLIBC + select BR2_PACKAGE_TZDATA if BR2_TOOLCHAIN_USES_MUSL + select BR2_PACKAGE_TZ if BR2_TOOLCHAIN_USES_UCLIBC + help + Say 'y' here to install timezone info. + +if BR2_TARGET_TZ_INFO + +config BR2_TARGET_TZ_ZONELIST + string "timezone list" + default "default" + help + Space-separated list of time zones to compile. + + The value "default" includes all commonly used time zones. + Note that this set consumes around 5.5M for glibc and 2.1M for + uClibc. + + The full list is the list of files in the time zone database + source, not including the build and .tab files. + +config BR2_TARGET_LOCALTIME + string "default local time" + default "Etc/UTC" + help + The time zone to install as the default local time, expressed + as a tzdata location, such as: + Etc/UTC (the default) + GMT + Europe/Paris + America/New_York + Pacific/Wallis + ... + + Set to empty to not install a default time zone. + +endif # BR2_TARGET_TZ_INFO + +config BR2_ROOTFS_USERS_TABLES + string "Path to the users tables" + help + Specify a space-separated list of users table locations, + that will be passed to the mkusers utility to create + users on the system, with home directory, password, etc. + + See manual for details on the usage and syntax of these files. + +config BR2_ROOTFS_OVERLAY + string "Root filesystem overlay directories" + default "" + help + Specify a list of directories that are copied over the target + root filesystem after the build has finished and before it is + packed into the selected filesystem images. + + They are copied as-is into the rootfs, excluding files ending + with ~ and .git, .svn and .hg directories. + +config BR2_ROOTFS_POST_BUILD_SCRIPT + string "Custom scripts to run before creating filesystem images" + default "" + help + Specify a space-separated list of scripts to be run after the + build has finished and before Buildroot starts packing the + files into selected filesystem images. + + This gives users the opportunity to do board-specific + cleanups, add-ons and the like, so the generated files can be + used directly without further processing. + + These scripts are called with the target directory name as + first argument. Make sure the exit code of those scripts are + 0, otherwise make will stop after calling them. + +config BR2_ROOTFS_POST_FAKEROOT_SCRIPT + string "Custom scripts to run inside the fakeroot environment" + default "" + help + Specify a space-separated list of scripts to be run at the end + of the fakeroot script right before the image(s) are actually + generated. + + This gives users the opportunity to do customisations of the + content of the rootfs, which would otherwise require root + rights. + + These scripts are called with the target directory name as + first argument. The build will fail on the first scripts that + exits with a non-zero exit code. + + Note that Buildroot already provides mechanisms to customise + the content of the rootfs: + + - BR2_ROOTFS_STATIC_DEVICE_TABLE + to create arbitrary entries statically in /dev + + - BR2_ROOTFS_DEVICE_TABLE + to set arbitrary permissions as well as extended + attributes (such as capabilities) on files and + directories, + + - BR2_ROOTFS_USERS_TABLES: + to create arbitrary users and their home directories + + It is highly recommended to use those mechanisms if possible, + rather than using custom fakeroot scripts. + +config BR2_ROOTFS_POST_IMAGE_SCRIPT + string "Custom scripts to run after creating filesystem images" + default "" + help + Specify a space-separated list of scripts to be run after + the build has finished and after Buildroot has packed the + files into selected filesystem images. + + This can for example be used to call a tool building a + firmware image from different images generated by Buildroot, + or automatically extract the tarball root filesystem image + into some location exported by NFS, or any other custom + action. + + These scripts are called with the images directory name as + first argument. The script is executed from the main Buildroot + source directory as the current directory. + +config BR2_ROOTFS_POST_SCRIPT_ARGS + string "Extra arguments passed to custom scripts" + depends on BR2_ROOTFS_POST_BUILD_SCRIPT != "" \ + || BR2_ROOTFS_POST_FAKEROOT_SCRIPT != "" \ + || BR2_ROOTFS_POST_IMAGE_SCRIPT != "" + help + Pass these additional arguments to each post-build or + post-image scripts. + + Note that all the post-build and post-image scripts will be + passed the same set of arguments, you can not pass different + arguments to each script. + + Note also, as stated in their respective help text, that the + first argument to each post-build or post-image script is the + target directory / images directory. The arguments in this + option will be passed *after* those. + +config BR2_BUSYBOX_PROFILE + bool "generate /etc/profile" + depends on BR2_PACKAGE_BUSYBOX + default y + help + generate a /etc/profile + +config BR2_BUSYBOX_UBIFS_NAND_DATA_PART + bool "nand data part mount" + select BR2_PACKAGE_MTD + select BR2_PACKAGE_MTD_UBIMKVOL + select BR2_PACKAGE_MTD_UBIFORMAT + select BR2_PACKAGE_MTD_UBIDETACH + select BR2_PACKAGE_MTD_UBIATTACH + default n + help + if nand too big and scan bad block too slow + can spilt nand kernel rootfs data(about mtdparts property in cmdline) + rootfs just small and boot fast + and data part mount after system boot + +config BR2_BUSYBOX_UBIFS_NAND_DATA_PART_DELAY + bool "nand data part mount delay 5s" + depends on BR2_BUSYBOX_UBIFS_NAND_DATA_PART + default y + help + if want to run a process after boot + nand data part mount will capture nand controller + process will start slower + +config BR2_BUSYBOX_WPA_WLAN_AUTO_LINK + bool "wpa wlan auto link" + select BR2_PACKAGE_WPA_SUPPLICANT + default n + help + if select wpa and want auto link wifi + just can select this option + and you will look /root/init_shell/wpa_wlan_auto_link.sh + +config BR2_BUSYBOX_WPA_WLAN_AUTO_LINK_DELAY + bool "wpa wlan auto link delay 5s" + depends on BR2_BUSYBOX_WPA_WLAN_AUTO_LINK + default y + help + if want to run a process after boot + wifi link will start slower + +endmenu diff --git a/system/device_table.txt b/system/device_table.txt new file mode 100644 index 00000000..dc1af518 --- /dev/null +++ b/system/device_table.txt @@ -0,0 +1,21 @@ +# See package/makedevs/README for details +# +# This device table is used to assign proper ownership and permissions +# on various files. It doesn't create any device file, as it is used +# in both static device configurations (where /dev/ is static) and in +# dynamic configurations (where devtmpfs, mdev or udev are used). +# +# +/dev d 755 0 0 - - - - - +/tmp d 1777 0 0 - - - - - +/etc d 755 0 0 - - - - - +/root d 700 0 0 - - - - - +/var/www d 755 33 33 - - - - - +/etc/shadow f 600 0 0 - - - - - +/etc/passwd f 644 0 0 - - - - - +/etc/network/if-up.d d 755 0 0 - - - - - +/etc/network/if-pre-up.d d 755 0 0 - - - - - +/etc/network/if-down.d d 755 0 0 - - - - - +/etc/network/if-post-down.d d 755 0 0 - - - - - +# uncomment this to allow starting x as non-root +#/usr/X11R6/bin/Xfbdev f 4755 0 0 - - - - - diff --git a/system/device_table_dev.txt b/system/device_table_dev.txt new file mode 100644 index 00000000..4f0b6377 --- /dev/null +++ b/system/device_table_dev.txt @@ -0,0 +1,133 @@ +# See package/makedevs/README for details +# +# This device table is used only to create device files when a static +# device configuration is used (entries in /dev are static). +# +# + +# Normal system devices +/dev/mem c 640 0 0 1 1 0 0 - +/dev/kmem c 640 0 0 1 2 0 0 - +/dev/null c 666 0 0 1 3 0 0 - +/dev/zero c 666 0 0 1 5 0 0 - +/dev/random c 666 0 0 1 8 0 0 - +/dev/urandom c 666 0 0 1 9 0 0 - +/dev/ram b 640 0 0 1 1 0 0 - +/dev/ram b 640 0 0 1 0 0 1 4 +/dev/loop b 640 0 0 7 0 0 1 2 +/dev/rtc c 640 0 0 10 135 - - - +/dev/console c 666 0 0 5 1 - - - +/dev/tty c 666 0 0 5 0 - - - +/dev/tty c 666 0 0 4 0 0 1 8 +/dev/ttyp c 666 0 0 3 0 0 1 10 +/dev/ptyp c 666 0 0 2 0 0 1 10 +/dev/ptmx c 666 0 0 5 2 - - - +/dev/ttyP c 666 0 0 57 0 0 1 4 +/dev/ttyS c 666 0 0 4 64 0 1 4 +/dev/fb c 640 0 5 29 0 0 1 4 +#/dev/ttySA c 666 0 0 204 5 0 1 3 +/dev/psaux c 666 0 0 10 1 0 0 - +#/dev/ppp c 666 0 0 108 0 - - - +/dev/ttyAM c 666 0 0 204 16 0 1 3 +/dev/ttyCPM c 666 0 0 204 46 0 1 4 +/dev/ttyAMA c 666 0 0 204 64 0 1 4 +/dev/ttyBF c 666 0 0 204 64 0 1 2 +/dev/ttySAC c 666 0 0 204 64 0 1 4 +/dev/ttySC c 666 0 0 204 8 0 1 8 +/dev/ttyPSC c 666 0 0 204 148 0 1 4 +/dev/ttyUL c 666 0 0 204 187 0 1 4 +/dev/ttymxc c 666 0 0 207 16 0 1 4 +/dev/hvc c 640 0 0 229 0 0 1 4 + +# Input stuff +/dev/input d 755 0 0 - - - - - +/dev/input/mice c 640 0 0 13 63 0 0 - +/dev/input/mouse c 660 0 0 13 32 0 1 4 +/dev/input/event c 660 0 0 13 64 0 1 4 +#/dev/input/js c 660 0 0 13 0 0 1 4 + + +# MTD stuff +/dev/mtd c 640 0 0 90 0 0 2 4 +/dev/mtdblock b 640 0 0 31 0 0 1 4 + +#Tun/tap driver +/dev/net d 755 0 0 - - - - - +/dev/net/tun c 660 0 0 10 200 - - - + +# Audio stuff +#/dev/audio c 666 0 29 14 4 - - - +#/dev/audio1 c 666 0 29 14 20 - - - +#/dev/dsp c 666 0 29 14 3 - - - +#/dev/dsp1 c 666 0 29 14 19 - - - +#/dev/sndstat c 666 0 29 14 6 - - - + +# User-mode Linux stuff +#/dev/ubda b 640 0 0 98 0 0 0 - +#/dev/ubda b 640 0 0 98 1 1 1 15 + +# IDE Devices +/dev/hda b 640 0 0 3 0 0 0 - +/dev/hda b 640 0 0 3 1 1 1 15 +/dev/hdb b 640 0 0 3 64 0 0 - +/dev/hdb b 640 0 0 3 65 1 1 15 +#/dev/hdc b 640 0 0 22 0 0 0 - +#/dev/hdc b 640 0 0 22 1 1 1 15 +#/dev/hdd b 640 0 0 22 64 0 0 - +#/dev/hdd b 640 0 0 22 65 1 1 15 +#/dev/hde b 640 0 0 33 0 0 0 - +#/dev/hde b 640 0 0 33 1 1 1 15 +#/dev/hdf b 640 0 0 33 64 0 0 - +#/dev/hdf b 640 0 0 33 65 1 1 15 +#/dev/hdg b 640 0 0 34 0 0 0 - +#/dev/hdg b 640 0 0 34 1 1 1 15 +#/dev/hdh b 640 0 0 34 64 0 0 - +#/dev/hdh b 640 0 0 34 65 1 1 15 + +# SCSI Devices +/dev/sda b 640 0 0 8 0 0 0 - +/dev/sda b 640 0 0 8 1 1 1 15 +/dev/sdb b 640 0 0 8 16 0 0 - +/dev/sdb b 640 0 0 8 17 1 1 15 +#/dev/sdc b 640 0 0 8 32 0 0 - +#/dev/sdc b 640 0 0 8 33 1 1 15 +#/dev/sdd b 640 0 0 8 48 0 0 - +#/dev/sdd b 640 0 0 8 49 1 1 15 +#/dev/sde b 640 0 0 8 64 0 0 - +#/dev/sde b 640 0 0 8 65 1 1 15 +#/dev/sdf b 640 0 0 8 80 0 0 - +#/dev/sdf b 640 0 0 8 81 1 1 15 +#/dev/sdg b 640 0 0 8 96 0 0 - +#/dev/sdg b 640 0 0 8 97 1 1 15 +#/dev/sdh b 640 0 0 8 112 0 0 - +#/dev/sdh b 640 0 0 8 113 1 1 15 +#/dev/sg c 640 0 0 21 0 0 1 15 +#/dev/scd b 640 0 0 11 0 0 1 15 +#/dev/st c 640 0 0 9 0 0 1 8 +#/dev/nst c 640 0 0 9 128 0 1 8 +#/dev/st c 640 0 0 9 32 1 1 4 +#/dev/st c 640 0 0 9 64 1 1 4 +#/dev/st c 640 0 0 9 96 1 1 4 + +# USB block devices (ub driver) +/dev/uba b 640 0 0 180 0 0 0 - +/dev/uba b 640 0 0 180 1 1 1 6 +/dev/ubb b 640 0 0 180 8 0 0 - +/dev/ubb b 640 0 0 180 65 1 1 6 + +# Floppy disk devices +#/dev/fd b 640 0 0 2 0 0 1 2 +#/dev/fd0d360 b 640 0 0 2 4 0 0 - +#/dev/fd1d360 b 640 0 0 2 5 0 0 - +#/dev/fd0h1200 b 640 0 0 2 8 0 0 - +#/dev/fd1h1200 b 640 0 0 2 9 0 0 - +#/dev/fd0u1440 b 640 0 0 2 28 0 0 - +#/dev/fd1u1440 b 640 0 0 2 29 0 0 - +#/dev/fd0u2880 b 640 0 0 2 32 0 0 - +#/dev/fd1u2880 b 640 0 0 2 33 0 0 - + +# I2C device nodes +/dev/i2c- c 666 0 0 89 0 0 1 4 + +# v4l device nodes +/dev/video c 666 0 0 81 0 0 1 4 diff --git a/system/skeleton/dev/.empty b/system/skeleton/dev/.empty new file mode 100644 index 00000000..e69de29b diff --git a/system/skeleton/dev/fd b/system/skeleton/dev/fd new file mode 120000 index 00000000..10e8ab73 --- /dev/null +++ b/system/skeleton/dev/fd @@ -0,0 +1 @@ +../proc/self/fd \ No newline at end of file diff --git a/system/skeleton/dev/stderr b/system/skeleton/dev/stderr new file mode 120000 index 00000000..c67586eb --- /dev/null +++ b/system/skeleton/dev/stderr @@ -0,0 +1 @@ +../proc/self/fd/2 \ No newline at end of file diff --git a/system/skeleton/dev/stdin b/system/skeleton/dev/stdin new file mode 120000 index 00000000..2825dc0f --- /dev/null +++ b/system/skeleton/dev/stdin @@ -0,0 +1 @@ +../proc/self/fd/0 \ No newline at end of file diff --git a/system/skeleton/dev/stdout b/system/skeleton/dev/stdout new file mode 120000 index 00000000..35e0f620 --- /dev/null +++ b/system/skeleton/dev/stdout @@ -0,0 +1 @@ +../proc/self/fd/1 \ No newline at end of file diff --git a/system/skeleton/etc/group b/system/skeleton/etc/group new file mode 100644 index 00000000..6822a277 --- /dev/null +++ b/system/skeleton/etc/group @@ -0,0 +1,26 @@ +root:x:0: +daemon:x:1: +bin:x:2: +sys:x:3: +adm:x:4: +tty:x:5: +disk:x:6: +lp:x:7: +mail:x:8: +kmem:x:9: +wheel:x:10:root +cdrom:x:11: +dialout:x:18: +floppy:x:19: +video:x:28: +audio:x:29: +tape:x:32: +www-data:x:33: +operator:x:37: +utmp:x:43: +plugdev:x:46: +staff:x:50: +lock:x:54: +netdev:x:82: +users:x:100: +nobody:x:65534: diff --git a/system/skeleton/etc/hosts b/system/skeleton/etc/hosts new file mode 100644 index 00000000..ba712fe0 --- /dev/null +++ b/system/skeleton/etc/hosts @@ -0,0 +1 @@ +127.0.0.1 localhost diff --git a/system/skeleton/etc/mtab b/system/skeleton/etc/mtab new file mode 120000 index 00000000..5c4677a6 --- /dev/null +++ b/system/skeleton/etc/mtab @@ -0,0 +1 @@ +../proc/self/mounts \ No newline at end of file diff --git a/system/skeleton/etc/passwd b/system/skeleton/etc/passwd new file mode 100644 index 00000000..d8281d25 --- /dev/null +++ b/system/skeleton/etc/passwd @@ -0,0 +1,9 @@ +root:x:0:0:root:/root:/bin/sh +daemon:x:1:1:daemon:/usr/sbin:/bin/false +bin:x:2:2:bin:/bin:/bin/false +sys:x:3:3:sys:/dev:/bin/false +sync:x:4:100:sync:/bin:/bin/sync +mail:x:8:8:mail:/var/spool/mail:/bin/false +www-data:x:33:33:www-data:/var/www:/bin/false +operator:x:37:37:Operator:/var:/bin/false +nobody:x:65534:65534:nobody:/home:/bin/false diff --git a/system/skeleton/etc/profile b/system/skeleton/etc/profile new file mode 100644 index 00000000..05452770 --- /dev/null +++ b/system/skeleton/etc/profile @@ -0,0 +1,19 @@ +export PATH=@PATH@ + +if [ "$PS1" ]; then + if [ "`id -u`" -eq 0 ]; then + export PS1='# ' + else + export PS1='$ ' + fi +fi + +export EDITOR='/bin/vi' + +# Source configuration files from /etc/profile.d +for i in /etc/profile.d/*.sh ; do + if [ -r "$i" ]; then + . $i + fi +done +unset i diff --git a/system/skeleton/etc/profile.d/umask.sh b/system/skeleton/etc/profile.d/umask.sh new file mode 100644 index 00000000..8e71ad5d --- /dev/null +++ b/system/skeleton/etc/profile.d/umask.sh @@ -0,0 +1 @@ +umask 022 diff --git a/system/skeleton/etc/protocols b/system/skeleton/etc/protocols new file mode 100644 index 00000000..cfdd5adb --- /dev/null +++ b/system/skeleton/etc/protocols @@ -0,0 +1,61 @@ +# Internet (IP) protocols +# +# Updated from http://www.iana.org/assignments/protocol-numbers and other +# sources. + +ip 0 IP # internet protocol, pseudo protocol number +hopopt 0 HOPOPT # IPv6 Hop-by-Hop Option [RFC1883] +icmp 1 ICMP # internet control message protocol +igmp 2 IGMP # Internet Group Management +ggp 3 GGP # gateway-gateway protocol +ipencap 4 IP-ENCAP # IP encapsulated in IP (officially ``IP'') +st 5 ST # ST datagram mode +tcp 6 TCP # transmission control protocol +egp 8 EGP # exterior gateway protocol +igp 9 IGP # any private interior gateway (Cisco) +pup 12 PUP # PARC universal packet protocol +udp 17 UDP # user datagram protocol +hmp 20 HMP # host monitoring protocol +xns-idp 22 XNS-IDP # Xerox NS IDP +rdp 27 RDP # "reliable datagram" protocol +iso-tp4 29 ISO-TP4 # ISO Transport Protocol class 4 [RFC905] +dccp 33 DCCP # Datagram Congestion Control Prot. [RFC4340] +xtp 36 XTP # Xpress Transfer Protocol +ddp 37 DDP # Datagram Delivery Protocol +idpr-cmtp 38 IDPR-CMTP # IDPR Control Message Transport +ipv6 41 IPv6 # Internet Protocol, version 6 +ipv6-route 43 IPv6-Route # Routing Header for IPv6 +ipv6-frag 44 IPv6-Frag # Fragment Header for IPv6 +idrp 45 IDRP # Inter-Domain Routing Protocol +rsvp 46 RSVP # Reservation Protocol +gre 47 GRE # General Routing Encapsulation +esp 50 IPSEC-ESP # Encap Security Payload [RFC2406] +ah 51 IPSEC-AH # Authentication Header [RFC2402] +skip 57 SKIP # SKIP +ipv6-icmp 58 IPv6-ICMP # ICMP for IPv6 +ipv6-nonxt 59 IPv6-NoNxt # No Next Header for IPv6 +ipv6-opts 60 IPv6-Opts # Destination Options for IPv6 +rspf 73 RSPF CPHB # Radio Shortest Path First (officially CPHB) +vmtp 81 VMTP # Versatile Message Transport +eigrp 88 EIGRP # Enhanced Interior Routing Protocol (Cisco) +ospf 89 OSPFIGP # Open Shortest Path First IGP +ax.25 93 AX.25 # AX.25 frames +ipip 94 IPIP # IP-within-IP Encapsulation Protocol +etherip 97 ETHERIP # Ethernet-within-IP Encapsulation [RFC3378] +encap 98 ENCAP # Yet Another IP encapsulation [RFC1241] +# 99 # any private encryption scheme +pim 103 PIM # Protocol Independent Multicast +ipcomp 108 IPCOMP # IP Payload Compression Protocol +vrrp 112 VRRP # Virtual Router Redundancy Protocol [RFC5798] +l2tp 115 L2TP # Layer Two Tunneling Protocol [RFC2661] +isis 124 ISIS # IS-IS over IPv4 +sctp 132 SCTP # Stream Control Transmission Protocol +fc 133 FC # Fibre Channel +mobility-header 135 Mobility-Header # Mobility Support for IPv6 [RFC3775] +udplite 136 UDPLite # UDP-Lite [RFC3828] +mpls-in-ip 137 MPLS-in-IP # MPLS-in-IP [RFC4023] +manet 138 # MANET Protocols [RFC5498] +hip 139 HIP # Host Identity Protocol +shim6 140 Shim6 # Shim6 Protocol [RFC5533] +wesp 141 WESP # Wrapped Encapsulating Security Payload +rohc 142 ROHC # Robust Header Compression diff --git a/system/skeleton/etc/resolv.conf b/system/skeleton/etc/resolv.conf new file mode 120000 index 00000000..71f6f965 --- /dev/null +++ b/system/skeleton/etc/resolv.conf @@ -0,0 +1 @@ +../tmp/resolv.conf \ No newline at end of file diff --git a/system/skeleton/etc/services b/system/skeleton/etc/services new file mode 100644 index 00000000..b287b63e --- /dev/null +++ b/system/skeleton/etc/services @@ -0,0 +1,302 @@ +# /etc/services: +# $Id: services,v 1.1 2004/10/09 02:49:18 andersen Exp $ +# +# Network services, Internet style +# +# Note that it is presently the policy of IANA to assign a single well-known +# port number for both TCP and UDP; hence, most entries here have two entries +# even if the protocol doesn't support UDP operations. +# Updated from RFC 1700, ``Assigned Numbers'' (October 1994). Not all ports +# are included, only the more common ones. + +tcpmux 1/tcp # TCP port service multiplexer +echo 7/tcp +echo 7/udp +discard 9/tcp sink null +discard 9/udp sink null +systat 11/tcp users +daytime 13/tcp +daytime 13/udp +netstat 15/tcp +qotd 17/tcp quote +msp 18/tcp # message send protocol +msp 18/udp # message send protocol +chargen 19/tcp ttytst source +chargen 19/udp ttytst source +ftp-data 20/tcp +ftp 21/tcp +fsp 21/udp fspd +ssh 22/tcp # SSH Remote Login Protocol +ssh 22/udp # SSH Remote Login Protocol +telnet 23/tcp +# 24 - private +smtp 25/tcp mail +# 26 - unassigned +time 37/tcp timserver +time 37/udp timserver +rlp 39/udp resource # resource location +nameserver 42/tcp name # IEN 116 +whois 43/tcp nicname +re-mail-ck 50/tcp # Remote Mail Checking Protocol +re-mail-ck 50/udp # Remote Mail Checking Protocol +domain 53/tcp nameserver # name-domain server +domain 53/udp nameserver +mtp 57/tcp # deprecated +bootps 67/tcp # BOOTP server +bootps 67/udp +bootpc 68/tcp # BOOTP client +bootpc 68/udp +tftp 69/udp +gopher 70/tcp # Internet Gopher +gopher 70/udp +rje 77/tcp netrjs +finger 79/tcp +www 80/tcp http # WorldWideWeb HTTP +www 80/udp # HyperText Transfer Protocol +link 87/tcp ttylink +kerberos 88/tcp kerberos5 krb5 # Kerberos v5 +kerberos 88/udp kerberos5 krb5 # Kerberos v5 +supdup 95/tcp +# 100 - reserved +hostnames 101/tcp hostname # usually from sri-nic +iso-tsap 102/tcp tsap # part of ISODE. +csnet-ns 105/tcp cso-ns # also used by CSO name server +csnet-ns 105/udp cso-ns +# unfortunately the poppassd (Eudora) uses a port which has already +# been assigned to a different service. We list the poppassd as an +# alias here. This should work for programs asking for this service. +# (due to a bug in inetd the 3com-tsmux line is disabled) +#3com-tsmux 106/tcp poppassd +#3com-tsmux 106/udp poppassd +rtelnet 107/tcp # Remote Telnet +rtelnet 107/udp +pop-2 109/tcp postoffice # POP version 2 +pop-2 109/udp +pop-3 110/tcp # POP version 3 +pop-3 110/udp +sunrpc 111/tcp portmapper # RPC 4.0 portmapper TCP +sunrpc 111/udp portmapper # RPC 4.0 portmapper UDP +auth 113/tcp authentication tap ident +sftp 115/tcp +uucp-path 117/tcp +nntp 119/tcp readnews untp # USENET News Transfer Protocol +ntp 123/tcp +ntp 123/udp # Network Time Protocol +netbios-ns 137/tcp # NETBIOS Name Service +netbios-ns 137/udp +netbios-dgm 138/tcp # NETBIOS Datagram Service +netbios-dgm 138/udp +netbios-ssn 139/tcp # NETBIOS session service +netbios-ssn 139/udp +imap2 143/tcp # Interim Mail Access Proto v2 +imap2 143/udp +snmp 161/udp # Simple Net Mgmt Proto +snmp-trap 162/udp snmptrap # Traps for SNMP +cmip-man 163/tcp # ISO mgmt over IP (CMOT) +cmip-man 163/udp +cmip-agent 164/tcp +cmip-agent 164/udp +xdmcp 177/tcp # X Display Mgr. Control Proto +xdmcp 177/udp +nextstep 178/tcp NeXTStep NextStep # NeXTStep window +nextstep 178/udp NeXTStep NextStep # server +bgp 179/tcp # Border Gateway Proto. +bgp 179/udp +prospero 191/tcp # Cliff Neuman's Prospero +prospero 191/udp +irc 194/tcp # Internet Relay Chat +irc 194/udp +smux 199/tcp # SNMP Unix Multiplexer +smux 199/udp +at-rtmp 201/tcp # AppleTalk routing +at-rtmp 201/udp +at-nbp 202/tcp # AppleTalk name binding +at-nbp 202/udp +at-echo 204/tcp # AppleTalk echo +at-echo 204/udp +at-zis 206/tcp # AppleTalk zone information +at-zis 206/udp +qmtp 209/tcp # The Quick Mail Transfer Protocol +qmtp 209/udp # The Quick Mail Transfer Protocol +z3950 210/tcp wais # NISO Z39.50 database +z3950 210/udp wais +ipx 213/tcp # IPX +ipx 213/udp +imap3 220/tcp # Interactive Mail Access +imap3 220/udp # Protocol v3 +ulistserv 372/tcp # UNIX Listserv +ulistserv 372/udp +https 443/tcp # MCom +https 443/udp # MCom +snpp 444/tcp # Simple Network Paging Protocol +snpp 444/udp # Simple Network Paging Protocol +saft 487/tcp # Simple Asynchronous File Transfer +saft 487/udp # Simple Asynchronous File Transfer +npmp-local 610/tcp dqs313_qmaster # npmp-local / DQS +npmp-local 610/udp dqs313_qmaster # npmp-local / DQS +npmp-gui 611/tcp dqs313_execd # npmp-gui / DQS +npmp-gui 611/udp dqs313_execd # npmp-gui / DQS +hmmp-ind 612/tcp dqs313_intercell# HMMP Indication / DQS +hmmp-ind 612/udp dqs313_intercell# HMMP Indication / DQS +# +# UNIX specific services +# +exec 512/tcp +biff 512/udp comsat +login 513/tcp +who 513/udp whod +shell 514/tcp cmd # no passwords used +syslog 514/udp +printer 515/tcp spooler # line printer spooler +talk 517/udp +ntalk 518/udp +route 520/udp router routed # RIP +timed 525/udp timeserver +tempo 526/tcp newdate +courier 530/tcp rpc +conference 531/tcp chat +netnews 532/tcp readnews +netwall 533/udp # -for emergency broadcasts +uucp 540/tcp uucpd # uucp daemon +afpovertcp 548/tcp # AFP over TCP +afpovertcp 548/udp # AFP over TCP +remotefs 556/tcp rfs_server rfs # Brunhoff remote filesystem +klogin 543/tcp # Kerberized `rlogin' (v5) +kshell 544/tcp krcmd # Kerberized `rsh' (v5) +kerberos-adm 749/tcp # Kerberos `kadmin' (v5) +# +webster 765/tcp # Network dictionary +webster 765/udp +# +# From ``Assigned Numbers'': +# +#> The Registered Ports are not controlled by the IANA and on most systems +#> can be used by ordinary user processes or programs executed by ordinary +#> users. +# +#> Ports are used in the TCP [45,106] to name the ends of logical +#> connections which carry long term conversations. For the purpose of +#> providing services to unknown callers, a service contact port is +#> defined. This list specifies the port used by the server process as its +#> contact port. While the IANA can not control uses of these ports it +#> does register or list uses of these ports as a convienence to the +#> community. +# +nfsdstatus 1110/tcp +nfsd-keepalive 1110/udp + +ingreslock 1524/tcp +ingreslock 1524/udp +prospero-np 1525/tcp # Prospero non-privileged +prospero-np 1525/udp +datametrics 1645/tcp old-radius # datametrics / old radius entry +datametrics 1645/udp old-radius # datametrics / old radius entry +sa-msg-port 1646/tcp old-radacct # sa-msg-port / old radacct entry +sa-msg-port 1646/udp old-radacct # sa-msg-port / old radacct entry +radius 1812/tcp # Radius +radius 1812/udp # Radius +radacct 1813/tcp # Radius Accounting +radacct 1813/udp # Radius Accounting +nfsd 2049/tcp nfs +nfsd 2049/udp nfs +cvspserver 2401/tcp # CVS client/server operations +cvspserver 2401/udp # CVS client/server operations +mysql 3306/tcp # MySQL +mysql 3306/udp # MySQL +rfe 5002/tcp # Radio Free Ethernet +rfe 5002/udp # Actually uses UDP only +cfengine 5308/tcp # CFengine +cfengine 5308/udp # CFengine +bbs 7000/tcp # BBS service +# +# +# Kerberos (Project Athena/MIT) services +# Note that these are for Kerberos v4, and are unofficial. Sites running +# v4 should uncomment these and comment out the v5 entries above. +# +kerberos4 750/udp kerberos-iv kdc # Kerberos (server) udp +kerberos4 750/tcp kerberos-iv kdc # Kerberos (server) tcp +kerberos_master 751/udp # Kerberos authentication +kerberos_master 751/tcp # Kerberos authentication +passwd_server 752/udp # Kerberos passwd server +krb_prop 754/tcp # Kerberos slave propagation +krbupdate 760/tcp kreg # Kerberos registration +kpasswd 761/tcp kpwd # Kerberos "passwd" +kpop 1109/tcp # Pop with Kerberos +knetd 2053/tcp # Kerberos de-multiplexor +zephyr-srv 2102/udp # Zephyr server +zephyr-clt 2103/udp # Zephyr serv-hm connection +zephyr-hm 2104/udp # Zephyr hostmanager +eklogin 2105/tcp # Kerberos encrypted rlogin +# +# Unofficial but necessary (for NetBSD) services +# +supfilesrv 871/tcp # SUP server +supfiledbg 1127/tcp # SUP debugging +# +# Datagram Delivery Protocol services +# +rtmp 1/ddp # Routing Table Maintenance Protocol +nbp 2/ddp # Name Binding Protocol +echo 4/ddp # AppleTalk Echo Protocol +zip 6/ddp # Zone Information Protocol +# +# Services added for the Debian GNU/Linux distribution +poppassd 106/tcp # Eudora +poppassd 106/udp # Eudora +mailq 174/tcp # Mailer transport queue for Zmailer +mailq 174/tcp # Mailer transport queue for Zmailer +omirr 808/tcp omirrd # online mirror +omirr 808/udp omirrd # online mirror +rmtcfg 1236/tcp # Gracilis Packeten remote config server +xtel 1313/tcp # french minitel +coda_opcons 1355/udp # Coda opcons (Coda fs) +coda_venus 1363/udp # Coda venus (Coda fs) +coda_auth 1357/udp # Coda auth (Coda fs) +coda_udpsrv 1359/udp # Coda udpsrv (Coda fs) +coda_filesrv 1361/udp # Coda filesrv (Coda fs) +codacon 1423/tcp venus.cmu # Coda Console (Coda fs) +coda_aux1 1431/tcp # coda auxiliary service (Coda fs) +coda_aux1 1431/udp # coda auxiliary service (Coda fs) +coda_aux2 1433/tcp # coda auxiliary service (Coda fs) +coda_aux2 1433/udp # coda auxiliary service (Coda fs) +coda_aux3 1435/tcp # coda auxiliary service (Coda fs) +coda_aux3 1435/udp # coda auxiliary service (Coda fs) +cfinger 2003/tcp # GNU Finger +afbackup 2988/tcp # Afbackup system +afbackup 2988/udp # Afbackup system +icp 3130/tcp # Internet Cache Protocol (Squid) +icp 3130/udp # Internet Cache Protocol (Squid) +postgres 5432/tcp # POSTGRES +postgres 5432/udp # POSTGRES +fax 4557/tcp # FAX transmission service (old) +hylafax 4559/tcp # HylaFAX client-server protocol (new) +noclog 5354/tcp # noclogd with TCP (nocol) +noclog 5354/udp # noclogd with UDP (nocol) +hostmon 5355/tcp # hostmon uses TCP (nocol) +hostmon 5355/udp # hostmon uses TCP (nocol) +ircd 6667/tcp # Internet Relay Chat +ircd 6667/udp # Internet Relay Chat +webcache 8080/tcp # WWW caching service +webcache 8080/udp # WWW caching service +tproxy 8081/tcp # Transparent Proxy +tproxy 8081/udp # Transparent Proxy +mandelspawn 9359/udp mandelbrot # network mandelbrot +amanda 10080/udp # amanda backup services +amandaidx 10082/tcp # amanda backup services +amidxtape 10083/tcp # amanda backup services +isdnlog 20011/tcp # isdn logging system +isdnlog 20011/udp # isdn logging system +vboxd 20012/tcp # voice box system +vboxd 20012/udp # voice box system +binkp 24554/tcp # Binkley +binkp 24554/udp # Binkley +asp 27374/tcp # Address Search Protocol +asp 27374/udp # Address Search Protocol +tfido 60177/tcp # Ifmail +tfido 60177/udp # Ifmail +fido 60179/tcp # Ifmail +fido 60179/udp # Ifmail + +# Local services + diff --git a/system/skeleton/etc/shadow b/system/skeleton/etc/shadow new file mode 100644 index 00000000..37de977c --- /dev/null +++ b/system/skeleton/etc/shadow @@ -0,0 +1,9 @@ +root:::::::: +daemon:*::::::: +bin:*::::::: +sys:*::::::: +sync:*::::::: +mail:*::::::: +www-data:*::::::: +operator:*::::::: +nobody:*::::::: diff --git a/system/skeleton/media/.empty b/system/skeleton/media/.empty new file mode 100644 index 00000000..e69de29b diff --git a/system/skeleton/mnt/.empty b/system/skeleton/mnt/.empty new file mode 100644 index 00000000..e69de29b diff --git a/system/skeleton/opt/.empty b/system/skeleton/opt/.empty new file mode 100644 index 00000000..e69de29b diff --git a/system/skeleton/proc/.empty b/system/skeleton/proc/.empty new file mode 100644 index 00000000..e69de29b diff --git a/system/skeleton/root/.empty b/system/skeleton/root/.empty new file mode 100644 index 00000000..e69de29b diff --git a/system/skeleton/run/.empty b/system/skeleton/run/.empty new file mode 100644 index 00000000..e69de29b diff --git a/system/skeleton/sys/.empty b/system/skeleton/sys/.empty new file mode 100644 index 00000000..e69de29b diff --git a/system/skeleton/tmp/.empty b/system/skeleton/tmp/.empty new file mode 100644 index 00000000..e69de29b diff --git a/system/skeleton/usr/bin/.empty b/system/skeleton/usr/bin/.empty new file mode 100644 index 00000000..e69de29b diff --git a/system/skeleton/usr/lib/.empty b/system/skeleton/usr/lib/.empty new file mode 100644 index 00000000..e69de29b diff --git a/system/skeleton/usr/sbin/.empty b/system/skeleton/usr/sbin/.empty new file mode 100644 index 00000000..e69de29b diff --git a/system/system.mk b/system/system.mk new file mode 100644 index 00000000..62d6cb6f --- /dev/null +++ b/system/system.mk @@ -0,0 +1,102 @@ +################################################################################ +# +# system-related variables and macros +# +################################################################################ + +# This file exists to define variables and macros that pertain to the system +# settings, like rsyncing a directory for skeletons, or the /lib vs. /usr/lib +# symlink handling. +# +# Some variables may be used as conditions in Makefile code, so they must be +# defined properly before they are used; this file is included early, before +# any package is. + +# - SYSTEM_USR_SYMLINKS_OR_DIRS +# create /lib, /bin and /sbin, either as directories or as symlinks to +# their /usr conterparts +# +# - SYSTEM_RSYNC +# rsync $(1) to $(2), with proper exclusions and rights +# +# - SYSTEM_LIB_SYMLINK +# create the appropriate /lib{32,64} symlinks +# +# - SYSTEM_GETTY_PORT +# - SYSTEM_GETTY_BAUDRATE +# - SYSTEM_GETTY_TERM +# - SYSTEM_GETTY_OPTIONS +# the un-quoted getty setting +# +# - SYSTEM_REMOUNT_ROOT_INITTAB +# set inittab to remount root read-write or read-only +# + +# This function handles the merged or non-merged /usr cases +ifeq ($(BR2_ROOTFS_MERGED_USR),y) +define SYSTEM_USR_SYMLINKS_OR_DIRS + ln -snf usr/bin $(1)/bin + ln -snf usr/sbin $(1)/sbin + ln -snf usr/lib $(1)/lib +endef +else +define SYSTEM_USR_SYMLINKS_OR_DIRS + $(INSTALL) -d -m 0755 $(1)/bin + $(INSTALL) -d -m 0755 $(1)/sbin + $(INSTALL) -d -m 0755 $(1)/lib +endef +endif + +# This function rsyncs the skeleton directory in $(1) to the destination +# in $(2), which should be either $(TARTGET_DIR) or $(STAGING_DIR) +define SYSTEM_RSYNC + rsync -a --ignore-times $(RSYNC_VCS_EXCLUSIONS) \ + --chmod=u=rwX,go=rX --exclude .empty --exclude '*~' \ + $(1)/ $(2)/ +endef + +# Make a symlink lib32->lib or lib64->lib as appropriate. +# MIPS64/n32 requires lib32 even though it's a 64-bit arch. However, since gcc +# 5.1.0 internal compiler paths in sysroot are relative to lib64, so we must +# create both. +# $(1): base dir (either staging or target) +ifeq ($(BR2_MIPS_NABI32),y) +define SYSTEM_LIB_SYMLINK + ln -snf lib $(1)/lib64 + ln -snf lib $(1)/usr/lib64 + ln -snf lib $(1)/lib32 + ln -snf lib $(1)/usr/lib32 +endef +else ifeq ($(BR2_ARCH_IS_64),y) +define SYSTEM_LIB_SYMLINK + ln -snf lib $(1)/lib64 + ln -snf lib $(1)/usr/lib64 +endef +else +define SYSTEM_LIB_SYMLINK + ln -snf lib $(1)/lib32 + ln -snf lib $(1)/usr/lib32 +endef +endif + +SYSTEM_GETTY_PORT = $(call qstrip,$(BR2_TARGET_GENERIC_GETTY_PORT)) +SYSTEM_GETTY_AUTOLOGIN = $(call qstrip,$(BR2_TARGET_GENERIC_GETTY_AUTOLOGIN)) +SYSTEM_GETTY_BAUDRATE = $(call qstrip,$(BR2_TARGET_GENERIC_GETTY_BAUDRATE)) +SYSTEM_GETTY_TERM = $(call qstrip,$(BR2_TARGET_GENERIC_GETTY_TERM)) +SYSTEM_GETTY_OPTIONS = $(call qstrip,$(BR2_TARGET_GENERIC_GETTY_OPTIONS)) + +ifeq ($(BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW),y) +# Find commented line, if any, and remove leading '#'s +define SYSTEM_REMOUNT_ROOT_INITTAB + $(SED) '/^#.*-o remount,rw \/$$/s~^#\+~~' $(TARGET_DIR)/etc/inittab +endef +else +# Find uncommented line, if any, and add a leading '#' +define SYSTEM_REMOUNT_ROOT_INITTAB + $(SED) '/^[^#].*-o remount,rw \/$$/s~^~#~' $(TARGET_DIR)/etc/inittab +endef +endif + +ifeq ($(BR_BUILDING)$(BR2_SYSTEM_DEFAULT_PATH),y"") +$(error BR2_SYSTEM_DEFAULT_PATH can't be empty) +endif diff --git a/toolchain/Config.in b/toolchain/Config.in new file mode 100644 index 00000000..9dafa173 --- /dev/null +++ b/toolchain/Config.in @@ -0,0 +1,758 @@ +menu "Toolchain" + +# Invisible option that makes sure the toolchain package always gets +# built +config BR2_TOOLCHAIN + bool + default y + +# Should be selected for glibc or eglibc +config BR2_TOOLCHAIN_USES_GLIBC + bool + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_TOOLCHAIN_HAS_FULL_GETTEXT + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_HAS_UCONTEXT + select BR2_TOOLCHAIN_SUPPORTS_PIE + +config BR2_TOOLCHAIN_USES_UCLIBC + bool + # ucontext is only available for a subset of the supported + # architectures + select BR2_TOOLCHAIN_HAS_UCONTEXT if BR2_ARM_CPU_HAS_ARM || BR2_i386 \ + || BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el \ + || BR2_sparc || BR2_x86_64 + select BR2_TOOLCHAIN_SUPPORTS_PIE if !BR2_m68k && !BR2_microblaze && !BR2_STATIC_LIBS + +config BR2_TOOLCHAIN_USES_MUSL + bool + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_HAS_UCONTEXT + select BR2_TOOLCHAIN_SUPPORTS_PIE if !BR2_STATIC_LIBS + +choice + prompt "Toolchain type" + help + Select whether to use the toolchain provided by buildroot + or an external toolchain. + + Some vendors provide toolchains in binary form, some in + source form. + +config BR2_TOOLCHAIN_BUILDROOT + bool "Buildroot toolchain" + depends on BR2_ARCH_HAS_TOOLCHAIN_BUILDROOT + +config BR2_TOOLCHAIN_EXTERNAL + bool "External toolchain" + help + Select if you want to use an existing cross-compiling + toolchain. Buildroot can either download automatically a + toolchain, or use an already installed toolchain. + +endchoice + +source "toolchain/toolchain-buildroot/Config.in" +source "toolchain/toolchain-external/Config.in" + +# Generic toolchain options + +# we want gdb config in the middle of both source and external +# toolchains, but mconf won't let us source the same file twice, +# so put it here instead +source "package/gdb/Config.in.host" + +comment "Toolchain Generic Options" + +# https://sourceware.org/bugzilla/show_bug.cgi?id=21464 +# Affect toolchains built with binutils 2.31.1, still not fixed. +config BR2_TOOLCHAIN_HAS_BINUTILS_BUG_21464 + bool + default y if BR2_or1k + +# https://sourceware.org/bugzilla/show_bug.cgi?id=27597 +# Affect toolchains built with binutils 2.36.1, still not fixed. +config BR2_TOOLCHAIN_HAS_BINUTILS_BUG_27597 + bool + default y if BR2_nios2 + +# Atomic types can be: +# - never lock-free +# - sometimes lock-free +# - always lock-free +# see https://en.cppreference.com/w/c/atomic/ATOMIC_LOCK_FREE_consts +# +# On most architectures, gcc provides "always lock-free" atomic types, +# but a few architectures are limited to "sometimes lock-free" +# types. This hidden option allows to know if the architecture +# provides "always lock-free" atomic types. +config BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS + bool + default y + depends on !BR2_nios2 + depends on !BR2_ARM_CPU_ARMV4 + depends on !BR2_ARM_CPU_ARMV5 + depends on !BR2_sparc_v8 + depends on !BR2_m68k_cf5208 + +# GCC uses thunk functions to adjust the 'this' pointer when calling +# C++ member functions in classes derived with multiple inheritance. +# Generation of thunk functions requires support from the compiler +# back end. In the absence of that support target-independent code +# in the C++ front end is used to generate thunk functions, but it +# does not support vararg functions. +# or1k will support it in the gcc mainline starting with gcc-9. +config BR2_TOOLCHAIN_SUPPORTS_VARIADIC_MI_THUNK + bool + default y + depends on !BR2_or1k + depends on !BR2_xtensa + +# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63261. This bug no +# longer exists in gcc 8.x. +config BR2_TOOLCHAIN_HAS_GCC_BUG_63261 + bool + default y if BR2_microblaze + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_8 + +# Prior to gcc 7.x, exception_ptr, nested_exception and future from +# libstdc++ would only be provided on architectures that support +# always lock-free atomic ints. See +# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64735. This issue has +# been removed in GCC 7.x, where exception propagation is now +# supported without lock-free atomic int. +config BR2_TOOLCHAIN_HAS_GCC_BUG_64735 + bool + default y if !BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS && \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_7 + +# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68485. This bug still +# exists in gcc 9.x +config BR2_TOOLCHAIN_HAS_GCC_BUG_68485 + bool + default y if BR2_microblaze + +# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85180. This bug no +# longer exists in gcc 8.x. +config BR2_TOOLCHAIN_HAS_GCC_BUG_85180 + bool + default y if BR2_microblaze + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_8 + +# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85862 +# An infinite loop exists in the find_base_term() logic of 6.x +# on microblaze. http://autobuild.buildroot.net/results/158e8ebb39713e1b436a5cc1a1916f46c30694df/ +config BR2_TOOLCHAIN_HAS_GCC_BUG_85862 + bool + default y if BR2_microblaze + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_7 + +# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90620 +# ICE: in do_output_reload, at reload1.c:7978 on microblaze. +# This bug no longer exists in gcc 10.x +config BR2_TOOLCHAIN_HAS_GCC_BUG_90620 + bool + default y if BR2_microblaze + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_10 + +# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93847 +# ICE: compiler error: Segmentation fault on Nios II. This bug +# no longer exists in gcc 9.x. +config BR2_TOOLCHAIN_HAS_GCC_BUG_93847 + bool + default y if BR2_nios2 && !BR2_TOOLCHAIN_GCC_AT_LEAST_9 + +# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99410 +# Error: branch offset out of range on Nios II. This bug +# no longer exists in gcc >= 8.x. +config BR2_TOOLCHAIN_HAS_GCC_BUG_99140 + bool + default y if BR2_nios2 && !BR2_TOOLCHAIN_GCC_AT_LEAST_8 + +# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101737 +# ICE: SH4 -Os causes internal compiler error. This bug +# still exists in gcc = 11.1.0 +config BR2_TOOLCHAIN_HAS_GCC_BUG_101737 + bool + default y if BR2_sh4 + +config BR2_TOOLCHAIN_HAS_NATIVE_RPC + bool + +config BR2_USE_WCHAR + bool + +config BR2_ENABLE_LOCALE + bool + +config BR2_INSTALL_LIBSTDCPP + bool + +config BR2_TOOLCHAIN_HAS_DLANG + bool + +config BR2_TOOLCHAIN_HAS_FORTRAN + bool + +config BR2_TOOLCHAIN_HAS_THREADS + bool + +config BR2_TOOLCHAIN_HAS_THREADS_DEBUG + bool + +config BR2_TOOLCHAIN_HAS_THREADS_NPTL + bool + +config BR2_TOOLCHAIN_HAS_SSP + bool + +config BR2_TOOLCHAIN_HAS_SSP_STRONG + bool + default y if BR2_TOOLCHAIN_HAS_SSP && BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + +config BR2_TOOLCHAIN_HAS_UCONTEXT + bool + +config BR2_TOOLCHAIN_HAS_OPENMP + bool + +config BR2_TOOLCHAIN_SUPPORTS_PIE + bool + +config BR2_TOOLCHAIN_GLIBC_GCONV_LIBS_COPY + bool "Copy gconv libraries" + depends on BR2_TOOLCHAIN_USES_GLIBC + help + The gconv libraries are used to convert between different + character sets (charsets). + + Say 'y' if you need to store and/or display different + charsets. + +config BR2_TOOLCHAIN_GLIBC_GCONV_LIBS_LIST + string "Gconv libraries to copy" + depends on BR2_TOOLCHAIN_GLIBC_GCONV_LIBS_COPY + help + Set to the list of gconv libraries to copy. + Leave empty to copy all gconv libraries. + + Specify only the basename of the libraries, leave + out the .so extension. Eg.: + IBM850 ISO8859-15 UNICODE + + Note: the full set of gconv libs are ~8MiB (on ARM). + +config BR2_TOOLCHAIN_EXTRA_LIBS + string "Extra toolchain libraries to be copied to target" + default BR2_TOOLCHAIN_EXTRA_EXTERNAL_LIBS if BR2_TOOLCHAIN_EXTRA_EXTERNAL_LIBS != "" # legacy + depends on !BR2_STATIC_LIBS + help + If your toolchain provides extra libraries that need to be + copied to the target filesystem, enter them here, separated + by spaces. The library should not include a suffix or any + type of pre/post wildcard. + + Examples where this can be useful is for adding debug + libraries to the target like the GCC libsanitizer. + e.g. "libasan liblsan libtsan libubsan" + +# This boolean is true if the toolchain provides a built-in full +# featured gettext implementation (glibc), and false if only a stub +# gettext implementation is provided (uclibc, musl) +config BR2_TOOLCHAIN_HAS_FULL_GETTEXT + bool + +config BR2_USE_MMU + bool "Enable MMU support" if BR2_ARCH_HAS_MMU_OPTIONAL + default y if BR2_ARCH_HAS_MMU_OPTIONAL || BR2_ARCH_HAS_MMU_MANDATORY + help + If your target has a MMU, you should say Y here. If you + are unsure, just say Y. + +config BR2_TARGET_OPTIMIZATION + string "Target Optimizations" + default "" + help + Optimizations to use when building for the target host. + NOTE: gcc optimization level is defined in build options. + +config BR2_TARGET_LDFLAGS + string "Target linker options" + help + Extra options to pass to the linker when building for the + target. + + Note that options with a '$' sign (eg. + -Wl,-rpath='$ORIGIN/../lib') are not supported. + +config BR2_ECLIPSE_REGISTER + bool "Register toolchain within Eclipse Buildroot plug-in" + help + This options tells Buildroot to generate the necessary + configuration files to make your toolchain appear within + Eclipse, through the Eclipse Buildroot plugin. + +# Options for packages to depend on, if they require at least a +# specific version of the kernel headers. +# Toolchains should choose the adequate option (ie. the highest +# version, not all of them). +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 + bool + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_1 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_1 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_3 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_3 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_5 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_6 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_5 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_6 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_9 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_9 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_11 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_11 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_14 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_14 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_16 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_16 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_18 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_19 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_18 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_19 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_1 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_2 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_1 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_3 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_2 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_3 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_6 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_7 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_6 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_8 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_7 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_8 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_10 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_11 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_10 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_12 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_11 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_13 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_12 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_13 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_15 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_16 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_15 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_17 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_16 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_18 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_17 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_18 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_20 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_0 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_20 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_1 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_0 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_2 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_1 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_3 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_2 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_3 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_5 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_6 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_5 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_7 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_6 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_8 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_7 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_9 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_8 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_9 + select BR2_TOOLCHAIN_HEADERS_LATEST + +# This should be selected by the latest version, above, to indicate that +# Buildroot does not know of more recent headers than the ones selected. +# This allows using toolchains with headers more recent than Buildroot +# knows about, while still enforcing strict check for older headers. +config BR2_TOOLCHAIN_HEADERS_LATEST + bool + +# This order guarantees that the highest version is set, as kconfig +# stops affecting a value on the first matching default. +config BR2_TOOLCHAIN_HEADERS_AT_LEAST + string + default "5.10" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 + default "5.9" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_9 + default "5.8" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_8 + default "5.7" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_7 + default "5.6" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_6 + default "5.5" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_5 + default "5.4" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + default "5.3" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_3 + default "5.2" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_2 + default "5.1" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_1 + default "5.0" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_0 + default "4.20" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_20 + default "4.19" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19 + default "4.18" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_18 + default "4.17" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_17 + default "4.16" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_16 + default "4.15" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_15 + default "4.14" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 + default "4.13" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_13 + default "4.12" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_12 + default "4.11" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_11 + default "4.10" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_10 + default "4.9" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + default "4.8" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_8 + default "4.7" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_7 + default "4.6" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_6 + default "4.5" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5 + default "4.4" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4 + default "4.3" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_3 + default "4.2" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_2 + default "4.1" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_1 + default "4.0" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0 + default "3.19" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_19 + default "3.18" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_18 + default "3.17" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17 + default "3.16" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_16 + default "3.15" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15 + default "3.14" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_14 + default "3.13" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13 + default "3.12" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 + default "3.11" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_11 + default "3.10" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10 + default "3.9" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_9 + default "3.8" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8 + default "3.7" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 + default "3.6" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_6 + default "3.5" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_5 + default "3.4" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 + default "3.3" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_3 + default "3.2" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2 + default "3.1" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_1 + default "3.0" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 + default "2.6" + +config BR2_TOOLCHAIN_GCC_AT_LEAST_4_3 + bool + +config BR2_TOOLCHAIN_GCC_AT_LEAST_4_4 + bool + select BR2_TOOLCHAIN_GCC_AT_LEAST_4_3 + +config BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 + bool + select BR2_TOOLCHAIN_GCC_AT_LEAST_4_4 + +config BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 + bool + select BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 + +config BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 + bool + select BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 + +config BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 + bool + select BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 + +config BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + bool + select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 + +config BR2_TOOLCHAIN_GCC_AT_LEAST_5 + bool + select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + +config BR2_TOOLCHAIN_GCC_AT_LEAST_6 + bool + select BR2_TOOLCHAIN_GCC_AT_LEAST_5 + +config BR2_TOOLCHAIN_GCC_AT_LEAST_7 + bool + select BR2_TOOLCHAIN_GCC_AT_LEAST_6 + +config BR2_TOOLCHAIN_GCC_AT_LEAST_8 + bool + select BR2_TOOLCHAIN_GCC_AT_LEAST_7 + +config BR2_TOOLCHAIN_GCC_AT_LEAST_9 + bool + select BR2_TOOLCHAIN_GCC_AT_LEAST_8 + +config BR2_TOOLCHAIN_GCC_AT_LEAST_10 + bool + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + +# This order guarantees that the highest version is set, as kconfig +# stops affecting a value on the first matching default. +config BR2_TOOLCHAIN_GCC_AT_LEAST + string + default "10" if BR2_TOOLCHAIN_GCC_AT_LEAST_10 + default "9" if BR2_TOOLCHAIN_GCC_AT_LEAST_9 + default "8" if BR2_TOOLCHAIN_GCC_AT_LEAST_8 + default "7" if BR2_TOOLCHAIN_GCC_AT_LEAST_7 + default "6" if BR2_TOOLCHAIN_GCC_AT_LEAST_6 + default "5" if BR2_TOOLCHAIN_GCC_AT_LEAST_5 + default "4.9" if BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + default "4.8" if BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 + default "4.7" if BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 + default "4.6" if BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 + default "4.5" if BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 + default "4.4" if BR2_TOOLCHAIN_GCC_AT_LEAST_4_4 + default "4.3" if BR2_TOOLCHAIN_GCC_AT_LEAST_4_3 + +config BR2_TOOLCHAIN_HAS_MNAN_OPTION + bool + default y if BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + +config BR2_TOOLCHAIN_HAS_SYNC_1 + bool + default y + depends on !BR2_m68k_cf + depends on !BR2_microblaze + depends on !BR2_sparc + depends on !(BR2_arc && !BR2_ARC_ATOMIC_EXT) + +config BR2_TOOLCHAIN_HAS_SYNC_2 + bool + default y if BR2_TOOLCHAIN_HAS_SYNC_1 + +config BR2_TOOLCHAIN_HAS_SYNC_4 + bool + default y + depends on !BR2_m68k_cf + depends on !BR2_sparc + depends on !(BR2_arc && !BR2_ARC_ATOMIC_EXT) + +# The availability of __sync for 8-byte types on ARM is somewhat +# complicated: +# +# - It appeared in gcc starting with gcc 4.7. +# +# - On ARMv7, there is no problem, it can be directly implemented in +# userspace. +# +# - On < ARMv7, it requires help from the kernel. Unfortunately, the +# libgcc code implementing 8-byte __sync with the help from the +# kernel calls __write() when a failure occurs, which is a function +# internal to glibc, not available in uClibc and musl. This means +# that the 8-byte __sync operations are not available on < ARMv7 +# with uClibc and musl. This problem was fixed as part of gcc +# PR68059, which was backported to the gcc 5 branch, but isn't yet +# part of any gcc 5.x release. +# +config BR2_TOOLCHAIN_ARM_HAS_SYNC_8 + bool + default y + depends on BR2_arm || BR2_armeb + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 + depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_ARM_CPU_ARMV7A + +# 8-byte intrinsics available on most x86 CPUs, except a few old ones +config BR2_TOOLCHAIN_X86_HAS_SYNC_8 + bool + default y + depends on BR2_i386 + depends on !BR2_x86_i486 + depends on !BR2_x86_c3 + depends on !BR2_x86_winchip_c6 + depends on !BR2_x86_winchip2 + +# 8-byte intrinsics available: +# - On all 64 bits architecture +# - On a certain combinations of ARM platforms +# - On certain x86 32 bits CPUs +config BR2_TOOLCHAIN_HAS_SYNC_8 + bool + default y if BR2_ARCH_IS_64 + default y if BR2_TOOLCHAIN_ARM_HAS_SYNC_8 + default y if BR2_TOOLCHAIN_X86_HAS_SYNC_8 + +# libatomic is available since gcc 4.8, when thread support is +# enabled. Also, libatomic doesn't recognize "uclinux" as a valid OS +# part of the tuple, and is therefore not build on uclinux targets, +# which is why BR2_BINFMT_FLAT configurations are excluded. +config BR2_TOOLCHAIN_HAS_LIBATOMIC + bool + default y if BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 && \ + !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64 && \ + BR2_TOOLCHAIN_HAS_THREADS && \ + !BR2_BINFMT_FLAT + +# __atomic intrinsics are available: +# - with gcc 4.8, either through built-ins or libatomic, on all +# architectures. Since we don't want to separate the cases where +# libatomic is needed vs. not needed, we simplify thing and only +# support situations where libatomic is available, even if on some +# architectures libatomic is not strictly needed as all __atomic +# intrinsics might be built-in. The only case where libatomic is +# missing entirely is when the toolchain does not have support for +# threads. However, a package that does not need threads but still +# uses atomics is quite a corner case, which does not warrant the +# added complexity. +# - with gcc 4.7, libatomic did not exist, so only built-ins are +# available. This means that __atomic can only be used in a subset +# of the architectures +config BR2_TOOLCHAIN_HAS_ATOMIC + bool + default y if BR2_TOOLCHAIN_HAS_LIBATOMIC + default y if BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 && BR2_arm + default y if BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 && BR2_armeb + default y if BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 && BR2_xtensa + default y if BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 && BR2_ARCH_IS_64 + +# - libquadmath is not needed/available on all architectures (but gcc +# correctly handles this already). +# - At least, libquadmath is available on: +# - i*86 +# - x86_64 +# - When available, libquadmath requires wchar support. +config BR2_TOOLCHAIN_HAS_LIBQUADMATH + bool + default y if BR2_i386 || BR2_x86_64 + +endmenu diff --git a/toolchain/helpers.mk b/toolchain/helpers.mk new file mode 100644 index 00000000..17bc159f --- /dev/null +++ b/toolchain/helpers.mk @@ -0,0 +1,532 @@ +# This Makefile fragment declares toolchain related helper functions. + +# The copy_toolchain_lib_root function copies a toolchain library and +# its symbolic links from the sysroot directory to the target +# directory. Note that this function is used both by the external +# toolchain logic, and the glibc package, so care must be taken when +# changing this function. +# +# $1: library name pattern (can include glob wildcards) +# +copy_toolchain_lib_root = \ + LIBPATTERN="$(strip $1)"; \ + LIBPATHS=`find $(STAGING_DIR)/ -name "$${LIBPATTERN}" 2>/dev/null` ; \ + for LIBPATH in $${LIBPATHS} ; do \ + while true ; do \ + LIBNAME=`basename $${LIBPATH}`; \ + DESTDIR=`echo $${LIBPATH} | sed "s,^$(STAGING_DIR)/,," | xargs dirname` ; \ + mkdir -p $(TARGET_DIR)/$${DESTDIR}; \ + rm -fr $(TARGET_DIR)/$${DESTDIR}/$${LIBNAME}; \ + if test -h $${LIBPATH} ; then \ + cp -d $${LIBPATH} $(TARGET_DIR)/$${DESTDIR}/$${LIBNAME}; \ + LIBPATH="`readlink -f $${LIBPATH}`"; \ + elif test -f $${LIBPATH}; then \ + $(INSTALL) -D -m0755 $${LIBPATH} $(TARGET_DIR)/$${DESTDIR}/$${LIBNAME}; \ + break ; \ + else \ + exit -1; \ + fi; \ + done; \ + done + +# +# Copy the full external toolchain sysroot directory to the staging +# dir. The operation of this function is rendered a little bit +# complicated by the support for multilib toolchains. +# +# We start by copying etc, 'lib', sbin, usr and usr/'lib' from the +# sysroot of the selected architecture variant (as pointed to by +# ARCH_SYSROOT_DIR). This allows to import into the staging directory +# the C library and companion libraries for the correct architecture +# variant. 'lib' may not be literally 'lib' but could be something else, +# e.g. lib32-fp (as determined by ARCH_LIB_DIR) and we only want to copy +# that lib directory and no other. When copying usr, we therefore need +# to be extra careful not to include usr/lib* but we _do_ want to +# include usr/libexec. +# We are selective in the directories we copy since other directories +# might exist for other architecture variants (on Codesourcery +# toolchain, the sysroot for the default architecture variant contains +# the armv4t and thumb2 subdirectories, which are the sysroot for the +# corresponding architecture variants), and we don't want to import +# them. +# +# If ARCH_LIB_DIR is not a singular directory component, e.g. +# 'lib32/octeon2', then symbolic links in ARCH_LIB_DIR and +# usr/ARCH_LIB_DIR may be broken because Buildroot will flatten the +# directory structure (e.g. lib32/octeon2/foo is actually stored in +# lib/foo). This is only relevant for links that contain one or more ../ +# components, as links to the current directory are always fine. +# We need to fix the broken links by removing the right amount of ../ +# dots from the link destination. +# Once the link destination is valid again, it can be simplified to +# remove the dependency on intermediate directory symlinks. +# +# It is possible that ARCH_LIB_DIR does not contain the dynamic loader +# (ld*.so or similar) because it (or the main symlink to it) normally +# resides in /lib while ARCH_LIB_DIR may be something else (e.g. lib64, +# lib/, ...). Therefore, copy the dynamic loader separately. +# +# Then, if the selected architecture variant is not the default one +# (i.e, if SYSROOT_DIR != ARCH_SYSROOT_DIR), then we : +# +# * Import the header files from the default architecture +# variant. Header files are typically shared between the sysroots +# for the different architecture variants. If we use the +# non-default one, header files were not copied by the previous +# step, so we copy them here from the sysroot of the default +# architecture variant. +# +# * Create a symbolic link that matches the name of the subdirectory +# for the architecture variant in the original sysroot. This is +# required as the compiler will by default look in +# sysroot_dir/arch_variant/ for libraries and headers, when the +# non-default architecture variant is used. Without this, the +# compiler fails to find libraries and headers. +# +# Some toolchains (i.e Linaro binary toolchains) store support +# libraries (libstdc++, libgcc_s) outside of the sysroot, so we simply +# copy all the libraries from the "support lib directory" into our +# sysroot. +# +# Note that the 'locale' directories are not copied. They are huge +# (400+MB) in CodeSourcery toolchains, and they are not really useful. +# +# $1: main sysroot directory of the toolchain +# $2: arch specific sysroot directory of the toolchain +# $3: arch specific subdirectory in the sysroot +# $4: directory of libraries ('lib', 'lib32' or 'lib64') +# $5: support lib directories (for toolchains storing libgcc_s, +# libstdc++ and other gcc support libraries outside of the +# sysroot) +copy_toolchain_sysroot = \ + SYSROOT_DIR="$(strip $1)"; \ + ARCH_SYSROOT_DIR="$(strip $2)"; \ + ARCH_SUBDIR="$(strip $3)"; \ + ARCH_LIB_DIR="$(strip $4)" ; \ + SUPPORT_LIB_DIR="$(strip $5)" ; \ + for i in etc $${ARCH_LIB_DIR} sbin usr usr/$${ARCH_LIB_DIR}; do \ + if [ ! -d $${ARCH_SYSROOT_DIR}/$$i ] ; then \ + continue ; \ + fi ; \ + if [ "$$i" = "usr" ]; then \ + rsync -au --chmod=u=rwX,go=rX --exclude 'locale/' \ + --include '/libexec*/' --exclude '/lib*/' \ + $${ARCH_SYSROOT_DIR}/$$i/ $(STAGING_DIR)/$$i/ ; \ + else \ + rsync -au --chmod=u=rwX,go=rX --exclude 'locale/' \ + $${ARCH_SYSROOT_DIR}/$$i/ $(STAGING_DIR)/$$i/ ; \ + fi ; \ + done ; \ + for link in $$(find $(STAGING_DIR) -type l); do \ + target=$$(readlink $${link}) ; \ + if [ "$${target}" == "$${target$(SHARP_SIGN)/}" ] ; then \ + continue ; \ + fi ; \ + relpath="$(call relpath_prefix,$${target$(SHARP_SIGN)/})" ; \ + echo "Fixing symlink $${link} from $${target} to $${relpath}$${target$(SHARP_SIGN)/}" ; \ + ln -sf $${relpath}$${target$(SHARP_SIGN)/} $${link} ; \ + done ; \ + relpath="$(call relpath_prefix,$${ARCH_LIB_DIR})" ; \ + if [ "$${relpath}" != "" ]; then \ + for i in $$(find -H $(STAGING_DIR)/$${ARCH_LIB_DIR} $(STAGING_DIR)/usr/$${ARCH_LIB_DIR} -type l -xtype l); do \ + LINKTARGET=`readlink $$i` ; \ + NEWLINKTARGET=$${LINKTARGET\#$$relpath} ; \ + ln -sf $${NEWLINKTARGET} $$i ; \ + $(call simplify_symlink,$$i,$(STAGING_DIR)) ; \ + done ; \ + fi ; \ + if [ ! -e $(STAGING_DIR)/lib/ld*.so.* ]; then \ + if [ -e $${ARCH_SYSROOT_DIR}/lib/ld*.so.* ]; then \ + cp -a $${ARCH_SYSROOT_DIR}/lib/ld*.so.* $(STAGING_DIR)/lib/ ; \ + fi ; \ + fi ; \ + if [ `readlink -f $${SYSROOT_DIR}` != `readlink -f $${ARCH_SYSROOT_DIR}` ] ; then \ + if [ ! -d $${ARCH_SYSROOT_DIR}/usr/include ] ; then \ + cp -a $${SYSROOT_DIR}/usr/include $(STAGING_DIR)/usr ; \ + fi ; \ + mkdir -p `dirname $(STAGING_DIR)/$${ARCH_SUBDIR}` ; \ + relpath="$(call relpath_prefix,$${ARCH_SUBDIR})./" ; \ + ln -s $${relpath} $(STAGING_DIR)/$${ARCH_SUBDIR} ; \ + echo "Symlinking $(STAGING_DIR)/$${ARCH_SUBDIR} -> $${relpath}" ; \ + fi ; \ + if test -n "$${SUPPORT_LIB_DIR}" ; then \ + cp -a $${SUPPORT_LIB_DIR}/* $(STAGING_DIR)/lib/ ; \ + fi ; \ + find $(STAGING_DIR) -type d | xargs chmod 755 + +# +# Check the specified kernel headers version actually matches the +# version in the toolchain. +# +# $1: build directory +# $2: sysroot directory +# $3: kernel version string, in the form: X.Y +# $4: test to do for the latest kernel version, 'strict' or 'loose' +# always 'strict' if this is not the latest version. +# +check_kernel_headers_version = \ + if ! support/scripts/check-kernel-headers.sh $(1) $(2) $(3) \ + $(if $(BR2_TOOLCHAIN_HEADERS_LATEST),$(4),strict); \ + then \ + exit 1; \ + fi + +# +# Check the specific gcc version actually matches the version in the +# toolchain +# +# $1: path to gcc +# $2: expected gcc version +# +check_gcc_version = \ + expected_version="$(strip $2)" ; \ + if [ -z "$${expected_version}" ]; then \ + exit 0 ; \ + fi; \ + real_version=`$(1) -dumpversion` ; \ + if [[ ! "$${real_version}." =~ ^$${expected_version}\. ]] ; then \ + printf "Incorrect selection of gcc version: expected %s.x, got %s\n" \ + "$${expected_version}" "$${real_version}" ; \ + exit 1 ; \ + fi + +# +# Check the availability of a particular glibc feature. This function +# is used to check toolchain options that are always supported by +# glibc, so we simply check that the corresponding option is properly +# enabled. +# +# $1: Buildroot option name +# $2: feature description +# +check_glibc_feature = \ + if [ "$($(1))" != "y" ] ; then \ + echo "$(2) available in C library, please enable $(1)" ; \ + exit 1 ; \ + fi + +# +# Check the availability of RPC support in a glibc toolchain +# +# $1: sysroot directory +# +check_glibc_rpc_feature = \ + IS_IN_LIBC=`test -f $(1)/usr/include/rpc/rpc.h && echo y` ; \ + if [ "$(BR2_TOOLCHAIN_HAS_NATIVE_RPC)" != "y" -a "$${IS_IN_LIBC}" = "y" ] ; then \ + echo "RPC support available in C library, please enable BR2_TOOLCHAIN_EXTERNAL_INET_RPC" ; \ + exit 1 ; \ + fi ; \ + if [ "$(BR2_TOOLCHAIN_HAS_NATIVE_RPC)" = "y" -a "$${IS_IN_LIBC}" != "y" ] ; then \ + echo "RPC support not available in C library, please disable BR2_TOOLCHAIN_EXTERNAL_INET_RPC" ; \ + exit 1 ; \ + fi + +# +# Check the correctness of a glibc external toolchain configuration. +# 1. Check that the C library selected in Buildroot matches the one +# of the external toolchain +# 2. Check that all the C library-related features are enabled in the +# config, since glibc always supports all of them +# +# $1: sysroot directory +# +check_glibc = \ + SYSROOT_DIR="$(strip $1)"; \ + if test `find -L $${SYSROOT_DIR}/ -maxdepth 2 -name 'ld-linux*.so.*' -o -name 'ld.so.*' -o -name 'ld64.so.*' | wc -l` -eq 0 ; then \ + echo "Incorrect selection of the C library"; \ + exit -1; \ + fi; \ + $(call check_glibc_feature,BR2_USE_MMU,MMU support) ;\ + $(call check_glibc_rpc_feature,$${SYSROOT_DIR}) + +# +# Check that the selected C library really is musl +# +# $1: cross-gcc path +# $2: cross-readelf path +check_musl = \ + __CROSS_CC=$(strip $1) ; \ + libc_a_path=`$${__CROSS_CC} -print-file-name=libc.a` ; \ + if ! strings $${libc_a_path} | grep -q MUSL_LOCPATH ; then \ + echo "Incorrect selection of the C library" ; \ + exit -1; \ + fi + +# +# Check the conformity of Buildroot configuration with regard to the +# uClibc configuration of the external toolchain, for a particular +# feature. +# +# If 'Buildroot option name' ($2) is empty it means the uClibc option +# is mandatory. +# +# $1: uClibc macro name +# $2: Buildroot option name +# $3: uClibc config file +# $4: feature description +# +check_uclibc_feature = \ + IS_IN_LIBC=`grep -q "\#define $(1) 1" $(3) && echo y` ; \ + if [ -z "$(2)" ] ; then \ + if [ "$${IS_IN_LIBC}" != "y" ] ; then \ + echo "$(4) not available in C library, toolchain unsuitable for Buildroot" ; \ + exit 1 ; \ + fi ; \ + else \ + if [ "$($(2))" != "y" -a "$${IS_IN_LIBC}" = "y" ] ; then \ + echo "$(4) available in C library, please enable $(2)" ; \ + exit 1 ; \ + fi ; \ + if [ "$($(2))" = "y" -a "$${IS_IN_LIBC}" != "y" ] ; then \ + echo "$(4) not available in C library, please disable $(2)" ; \ + exit 1 ; \ + fi ; \ + fi + +# +# Check the correctness of a uclibc external toolchain configuration +# 1. Check that the C library selected in Buildroot matches the one +# of the external toolchain +# 2. Check that the features enabled in the Buildroot configuration +# match the features available in the uClibc of the external +# toolchain +# +# $1: sysroot directory +# +check_uclibc = \ + SYSROOT_DIR="$(strip $1)"; \ + if ! test -f $${SYSROOT_DIR}/usr/include/bits/uClibc_config.h ; then \ + echo "Incorrect selection of the C library"; \ + exit -1; \ + fi; \ + UCLIBC_CONFIG_FILE=$${SYSROOT_DIR}/usr/include/bits/uClibc_config.h ; \ + $(call check_uclibc_feature,__ARCH_USE_MMU__,BR2_USE_MMU,$${UCLIBC_CONFIG_FILE},MMU support) ;\ + $(call check_uclibc_feature,__UCLIBC_HAS_LFS__,,$${UCLIBC_CONFIG_FILE},Large file support) ;\ + $(call check_uclibc_feature,__UCLIBC_HAS_IPV6__,,$${UCLIBC_CONFIG_FILE},IPv6 support) ;\ + $(call check_uclibc_feature,__UCLIBC_HAS_RPC__,BR2_TOOLCHAIN_HAS_NATIVE_RPC,$${UCLIBC_CONFIG_FILE},RPC support) ;\ + $(call check_uclibc_feature,__UCLIBC_HAS_LOCALE__,BR2_ENABLE_LOCALE,$${UCLIBC_CONFIG_FILE},Locale support) ;\ + $(call check_uclibc_feature,__UCLIBC_HAS_WCHAR__,BR2_USE_WCHAR,$${UCLIBC_CONFIG_FILE},Wide char support) ;\ + $(call check_uclibc_feature,__UCLIBC_HAS_THREADS__,BR2_TOOLCHAIN_HAS_THREADS,$${UCLIBC_CONFIG_FILE},Thread support) ;\ + $(call check_uclibc_feature,__PTHREADS_DEBUG_SUPPORT__,BR2_TOOLCHAIN_HAS_THREADS_DEBUG,$${UCLIBC_CONFIG_FILE},Thread debugging support) ;\ + $(call check_uclibc_feature,__UCLIBC_HAS_THREADS_NATIVE__,BR2_TOOLCHAIN_HAS_THREADS_NPTL,$${UCLIBC_CONFIG_FILE},NPTL thread support) + +# +# Check that the Buildroot configuration of the ABI matches the +# configuration of the external toolchain. +# +# $1: cross-gcc path +# $2: cross-readelf path +# +check_arm_abi = \ + __CROSS_CC=$(strip $1) ; \ + EXT_TOOLCHAIN_TARGET=`LANG=C $${__CROSS_CC} -v 2>&1 | grep ^Target | cut -f2 -d ' '` ; \ + if ! echo $${EXT_TOOLCHAIN_TARGET} | grep -qE 'eabi(hf)?$$' ; then \ + echo "External toolchain uses the unsuported OABI" ; \ + exit 1 ; \ + fi ; \ + if ! echo 'int main(void) {}' | $${__CROSS_CC} -x c -o $(BUILD_DIR)/.br-toolchain-test.tmp - ; then \ + rm -f $(BUILD_DIR)/.br-toolchain-test.tmp*; \ + abistr_$(BR2_ARM_EABI)='EABI'; \ + abistr_$(BR2_ARM_EABIHF)='EABIhf'; \ + echo "Incorrect ABI setting: $${abistr_y} selected, but toolchain is incompatible"; \ + exit 1 ; \ + fi ; \ + rm -f $(BUILD_DIR)/.br-toolchain-test.tmp* + +# +# Check that the external toolchain supports C++ +# +# $1: cross-g++ path +# +check_cplusplus = \ + __CROSS_CXX=$(strip $1) ; \ + $${__CROSS_CXX} -v > /dev/null 2>&1 ; \ + if test $$? -ne 0 ; then \ + echo "C++ support is selected but is not available in external toolchain" ; \ + exit 1 ; \ + fi + +# +# +# Check that the external toolchain supports D language +# +# $1: cross-gdc path +# +check_dlang = \ + __CROSS_GDC=$(strip $1) ; \ + __o=$(BUILD_DIR)/.br-toolchain-test-dlang.tmp ; \ + printf 'import std.stdio;\nvoid main() { writeln("Hello World!"); }\n' | \ + $${__CROSS_GDC} -x d -o $${__o} - ; \ + if test $$? -ne 0 ; then \ + rm -f $${__o}* ; \ + echo "D language support is selected but is not available in external toolchain" ; \ + exit 1 ; \ + fi ; \ + rm -f $${__o}* \ + +# +# +# Check that the external toolchain supports Fortran +# +# $1: cross-gfortran path +# +check_fortran = \ + __CROSS_FC=$(strip $1) ; \ + __o=$(BUILD_DIR)/.br-toolchain-test-fortran.tmp ; \ + printf 'program hello\n\tprint *, "Hello Fortran!\\n"\nend program hello\n' | \ + $${__CROSS_FC} -x f95 -o $${__o} - ; \ + if test $$? -ne 0 ; then \ + rm -f $${__o}* ; \ + echo "Fortran support is selected but is not available in external toolchain" ; \ + exit 1 ; \ + fi ; \ + rm -f $${__o}* \ + +# +# +# Check that the external toolchain supports OpenMP +# +# $1: cross-gcc path +# +check_openmp = \ + __CROSS_CC=$(strip $1) ; \ + __o=$(BUILD_DIR)/.br-toolchain-test-openmp.tmp ; \ + printf '\#include \nint main(void) { return omp_get_thread_num(); }' | \ + $${__CROSS_CC} -fopenmp -x c -o $${__o} - ; \ + if test $$? -ne 0 ; then \ + rm -f $${__o}* ; \ + echo "OpenMP support is selected but is not available in external toolchain"; \ + exit 1 ; \ + fi ; \ + rm -f $${__o}* \ + +# +# Check that the cross-compiler given in the configuration exists +# +# $1: cross-gcc path +# +check_cross_compiler_exists = \ + __CROSS_CC=$(strip $1) ; \ + $${__CROSS_CC} -v > /dev/null 2>&1 ; \ + if test $$? -ne 0 ; then \ + echo "Cannot execute cross-compiler '$${__CROSS_CC}'" ; \ + exit 1 ; \ + fi + +# +# Check for toolchains known not to work with Buildroot. +# - For the Angstrom toolchains, we check by looking at the vendor part of +# the host tuple. +# - Exclude distro-class toolchains which are not relocatable. +# - Exclude broken toolchains which return "libc.a" with -print-file-name. +# - Exclude toolchains which doesn't support --sysroot option. +# +# $1: cross-gcc path +# +check_unusable_toolchain = \ + __CROSS_CC=$(strip $1) ; \ + vendor=`$${__CROSS_CC} -dumpmachine | cut -f2 -d'-'` ; \ + if test "$${vendor}" = "angstrom" ; then \ + echo "Angstrom toolchains are not pure toolchains: they contain" ; \ + echo "many other libraries than just the C library, which makes" ; \ + echo "them unsuitable as external toolchains for build systems" ; \ + echo "such as Buildroot." ; \ + exit 1 ; \ + fi; \ + with_sysroot=`$${__CROSS_CC} -v 2>&1 |sed -r -e '/.* --with-sysroot=([^[:space:]]+)[[:space:]].*/!d; s//\1/'`; \ + if test "$${with_sysroot}" = "/" ; then \ + echo "Distribution toolchains are unsuitable for use by Buildroot," ; \ + echo "as they were configured in a way that makes them non-relocatable,"; \ + echo "and contain a lot of pre-built libraries that would conflict with"; \ + echo "the ones Buildroot wants to build."; \ + exit 1; \ + fi; \ + libc_a_path=`$${__CROSS_CC} -print-file-name=libc.a` ; \ + if test "$${libc_a_path}" = "libc.a" ; then \ + echo "Unable to detect the toolchain sysroot, Buildroot cannot use this toolchain." ; \ + exit 1 ; \ + fi ; \ + sysroot_dir="$(call toolchain_find_sysroot,$${__CROSS_CC})" ; \ + if test -z "$${sysroot_dir}" ; then \ + echo "External toolchain doesn't support --sysroot. Cannot use." ; \ + exit 1 ; \ + fi + +# +# Check if the toolchain has SSP (stack smashing protector) support +# +# $1: cross-gcc path +# $2: gcc ssp option +# +check_toolchain_ssp = \ + __CROSS_CC=$(strip $1) ; \ + __HAS_SSP=`echo 'void main(){}' | $${__CROSS_CC} -Werror -fstack-protector -x c - -o $(BUILD_DIR)/.br-toolchain-test.tmp >/dev/null 2>&1 && echo y` ; \ + if [ "$(BR2_TOOLCHAIN_HAS_SSP)" != "y" -a "$${__HAS_SSP}" = "y" ] ; then \ + echo "SSP support available in this toolchain, please enable BR2_TOOLCHAIN_EXTERNAL_HAS_SSP" ; \ + exit 1 ; \ + fi ; \ + if [ "$(BR2_TOOLCHAIN_HAS_SSP)" = "y" -a "$${__HAS_SSP}" != "y" ] ; then \ + echo "SSP support not available in this toolchain, please disable BR2_TOOLCHAIN_EXTERNAL_HAS_SSP" ; \ + exit 1 ; \ + fi ; \ + __SSP_OPTION=$(2); \ + if [ -n "$${__SSP_OPTION}" ] ; then \ + if ! echo 'void main(){}' | $${__CROSS_CC} -Werror $${__SSP_OPTION} -x c - -o $(BUILD_DIR)/.br-toolchain-test.tmp >/dev/null 2>&1 ; then \ + echo "SSP option $${__SSP_OPTION} not available in this toolchain, please select another SSP level" ; \ + exit 1 ; \ + fi; \ + fi; \ + rm -f $(BUILD_DIR)/.br-toolchain-test.tmp* + +# +# Generate gdbinit file for use with Buildroot +# +gen_gdbinit_file = \ + mkdir -p $(STAGING_DIR)/usr/share/buildroot/ ; \ + echo "set sysroot $(STAGING_DIR)" > $(STAGING_DIR)/usr/share/buildroot/gdbinit + +# Given a path, determine the relative prefix (../) needed to return to the +# root level. Note that the last component is treated as a file component; use a +# trailing slash to force treating it as a directory. Examples: +# relpath_prefix(lib32) = "" +# relpath_prefix(lib32/octeon2) = "../" +# relpath_prefix(lib32/octeon2/) = "../../" +# +# $1: input path +define relpath_prefix +$$( \ + prefix="" ; \ + nbslashs=`printf $1 | sed 's%[^/]%%g' | wc -c` ; \ + for slash in `seq 1 $${nbslashs}` ; do \ + prefix=$${prefix}"../" ; \ + done ; \ + printf "$$prefix" ; \ +) +endef + +# Replace the destination of a symbolic link with a simpler version +# For example, +# usr/lib/libfoo.so -> ../../lib32/libfoo.so.1 +# becomes +# usr/lib/libfoo.so -> ../../lib/libfoo.so.1 +# since 'lib32' is a symlink to 'lib'. +# +# Likewise, +# usr/lib/octeon2/libbar.so -> ../../../lib32/octeon2/libbar.so.1 +# becomes +# usr/lib/octeon2/libbar.so -> ../../lib/libbar.so.1 +# assuming lib32->lib and lib/octeon2->lib. +# +# $1: symlink +# $2: base path +define simplify_symlink +( \ + FULL_SRC="$$(readlink -f $$(dirname $1))/$$(basename $1)" ; \ + FULL_DEST="$$(readlink -f $1)" ; \ + FULL_BASE="$$(readlink -f $2)" ; \ + REL_SRC="$${FULL_SRC#$${FULL_BASE}/}" ; \ + REL_DEST="$${FULL_DEST#$${FULL_BASE}/}" ; \ + DOTS="$(call relpath_prefix,$${REL_SRC})" ; \ + ln -sf "$${DOTS}$${REL_DEST}" "$${FULL_SRC}" ; \ +) +endef diff --git a/toolchain/toolchain-buildroot/Config.in b/toolchain/toolchain-buildroot/Config.in new file mode 100644 index 00000000..4004c0ed --- /dev/null +++ b/toolchain/toolchain-buildroot/Config.in @@ -0,0 +1,117 @@ +# Config entries for internal toolchain backend + +if BR2_TOOLCHAIN_BUILDROOT + +comment "Toolchain Buildroot Options" + +config BR2_TOOLCHAIN_BUILDROOT_VENDOR + string "custom toolchain vendor name" + default "buildroot" + help + This option allows to customize the "vendor" part of the + toolchain tuple, where the toolchain tuple has the form + ---. The default value, "buildroot", + is fine for most cases, except in very specific situations + where gcc might make different decisions based on the vendor + part of the tuple. The value "unknown" is not allowed, as the + cross-compiling toolchain might then be confused with the + native toolchain when the target and host architecture are + identical. The value can not be empty either. + + If you're not sure, just leave the default "buildroot" value. + +choice + prompt "C library" + default BR2_TOOLCHAIN_BUILDROOT_UCLIBC + default BR2_TOOLCHAIN_BUILDROOT_GLIBC if BR2_powerpc64 + +config BR2_TOOLCHAIN_BUILDROOT_UCLIBC + bool "uClibc-ng" + depends on BR2_aarch64 || BR2_aarch64_be || BR2_arcle || BR2_arceb || \ + BR2_arm || BR2_armeb || \ + BR2_i386 || BR2_m68k || BR2_microblaze || \ + BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el || \ + BR2_or1k || BR2_powerpc || BR2_RISCV_64 || BR2_sh2a || \ + BR2_sh4 || BR2_sh4eb || BR2_sparc || BR2_xtensa || \ + BR2_x86_64 + select BR2_TOOLCHAIN_USES_UCLIBC + help + This option selects uClibc-ng as the C library for the + cross-compilation toolchain. + + http://uclibc-ng.org + +config BR2_TOOLCHAIN_BUILDROOT_GLIBC + bool "glibc" + depends on BR2_arm || BR2_armeb || BR2_aarch64 || \ + BR2_aarch64_be || BR2_i386 || BR2_mips || \ + BR2_mipsel || BR2_mips64 || BR2_mips64el|| \ + BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le || \ + BR2_riscv || BR2_s390x || BR2_sh || \ + BR2_sparc64 || BR2_x86_64 || BR2_microblaze || \ + BR2_nios2 || (BR2_arc && BR2_ARC_ATOMIC_EXT) || BR2_csky + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2 + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10 || !BR2_powerpc64le + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5 || !BR2_MIPS_NAN_2008 + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_0 || !BR2_RISCV_64 + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_1 || !BR2_arc + depends on !BR2_powerpc_SPE + depends on BR2_RISCV_ISA_RVA || !BR2_riscv + select BR2_TOOLCHAIN_USES_GLIBC + help + This option selects glibc as the C library for the + cross-compilation toolchain. + + http://www.gnu.org/software/libc/ + +comment "glibc needs a toolchain w/ dynamic library, kernel headers >= 3.2" + depends on BR2_USE_MMU + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2 + +# glibc >= 2.26 require kernel headers >= 3.10 on powerpc64le. +comment "glibc on powerpc64le needs a toolchain w/ headers >= 3.10" + depends on BR2_powerpc64le + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10 + +# Support for MIPS NAN2008 needs headers >= 4.5 +comment "glibc on MIPS w/ NAN2008 needs a toolchain w/ headers >= 4.5" + depends on BR2_MIPS_NAN_2008 + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5 + +config BR2_TOOLCHAIN_BUILDROOT_MUSL + bool "musl" + depends on BR2_aarch64 || BR2_arm || BR2_armeb || BR2_i386 || \ + BR2_microblaze || BR2_mips || BR2_mipsel || BR2_mips64 || \ + BR2_mips64el || BR2_or1k || BR2_powerpc || BR2_powerpc64 || \ + BR2_powerpc64le || BR2_RISCV_64 || BR2_sh || BR2_x86_64 + depends on !BR2_powerpc_SPE # not supported, build breaks + depends on !(BR2_powerpc64 || BR2_powerpc64le) || BR2_POWERPC_CPU_HAS_ALTIVEC + # sh2 nommu is supported by musl, but we don't have support + # for it in Buildroot. + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_USES_MUSL + help + This option selects musl as the C library for the + cross-compilation toolchain. + + https://www.musl-libc.org/ + +endchoice + +config BR2_TOOLCHAIN_BUILDROOT_LIBC + string + default "uclibc" if BR2_TOOLCHAIN_BUILDROOT_UCLIBC + default "glibc" if BR2_TOOLCHAIN_BUILDROOT_GLIBC + default "musl" if BR2_TOOLCHAIN_BUILDROOT_MUSL + +source "package/linux-headers/Config.in.host" +source "package/linux-headers/Config.in" +source "package/musl/Config.in" +source "package/uclibc/Config.in" +source "package/glibc/Config.in" +source "package/binutils/Config.in.host" +source "package/gcc/Config.in.host" +source "package/elf2flt/Config.in.host" +endif diff --git a/toolchain/toolchain-buildroot/toolchain-buildroot.mk b/toolchain/toolchain-buildroot/toolchain-buildroot.mk new file mode 100644 index 00000000..b30cc332 --- /dev/null +++ b/toolchain/toolchain-buildroot/toolchain-buildroot.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# toolchain-buildroot +# +################################################################################ + +BR_LIBC = $(call qstrip,$(BR2_TOOLCHAIN_BUILDROOT_LIBC)) + +# Triggering the build of the host-gcc-final will automatically do the +# build of binutils, uClibc, kernel headers and all the intermediate +# gcc steps. + +TOOLCHAIN_BUILDROOT_DEPENDENCIES = host-gcc-final + +TOOLCHAIN_BUILDROOT_ADD_TOOLCHAIN_DEPENDENCY = NO + +$(eval $(virtual-package)) diff --git a/toolchain/toolchain-external/Config.in b/toolchain/toolchain-external/Config.in new file mode 100644 index 00000000..2177e6a6 --- /dev/null +++ b/toolchain/toolchain-external/Config.in @@ -0,0 +1,165 @@ +if BR2_TOOLCHAIN_EXTERNAL + +comment "Toolchain External Options" + +choice + prompt "Toolchain" + +comment "glibc toolchains only available with shared lib support" + depends on BR2_STATIC_LIBS + +# Kept toolchains sorted by architecture in order to use some toolchain +# as default choice + +# Aarch64 (use ARM toolchain by default) +source "toolchain/toolchain-external/toolchain-external-arm-aarch64/Config.in" +source "toolchain/toolchain-external/toolchain-external-linaro-aarch64/Config.in" +source "toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/Config.in" + +# Aarch64 big-endian +source "toolchain/toolchain-external/toolchain-external-arm-aarch64-be/Config.in" +source "toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in" + +# ARC +source "toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in" + +# Andes +source "toolchain/toolchain-external/toolchain-external-andes-nds32/Config.in" + +# ARM (use ARM toolchain by default) +source "toolchain/toolchain-external/toolchain-external-arm-arm/Config.in" +source "toolchain/toolchain-external/toolchain-external-linaro-arm/Config.in" +source "toolchain/toolchain-external/toolchain-external-codesourcery-arm/Config.in" + +# ARM big-endian +source "toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in" + +# MIPS (use codesourcery toolchain by default) +source "toolchain/toolchain-external/toolchain-external-codesourcery-mips/Config.in" +source "toolchain/toolchain-external/toolchain-external-codescape-img-mips/Config.in" +source "toolchain/toolchain-external/toolchain-external-codescape-mti-mips/Config.in" + +# NIOSII +source "toolchain/toolchain-external/toolchain-external-codesourcery-niosII/Config.in" + +# Bootlin toolchains, available for virtually all architectures +source "toolchain/toolchain-external/toolchain-external-bootlin/Config.in" + +# Kept last, so it remains the non-default choice, unless there isn't +# any available toolchain profile for the currently selected +# architecture, but before toolchains from br2-external trees. +source "toolchain/toolchain-external/toolchain-external-custom/Config.in" + +# Toolchains from br2-external trees, if any +source "$BR2_BASE_DIR/.br2-external.in.toolchains" + +endchoice + +choice + prompt "Toolchain origin" + # Keep compatibility with old defconfig files that are using + # custom toolchains, and which are therefore assuming that + # "preinstalled" in the default choice. + default BR2_TOOLCHAIN_EXTERNAL_PREINSTALLED if BR2_TOOLCHAIN_EXTERNAL_CUSTOM + +config BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD + bool "Toolchain to be downloaded and installed" + help + Select this option if you want Buildroot to download and + install the toolchain. If you have selected a custom + toolchain, specify the URL in BR2_TOOLCHAIN_EXTERNAL_URL. + +config BR2_TOOLCHAIN_EXTERNAL_PREINSTALLED + bool "Pre-installed toolchain" + help + Select this option if you want to use a pre-installed + toolchain. Specify the path to this toolchain in + BR2_TOOLCHAIN_EXTERNAL_PATH. + +endchoice + +config BR2_TOOLCHAIN_EXTERNAL_PATH + string "Toolchain path" + default "" + depends on BR2_TOOLCHAIN_EXTERNAL_PREINSTALLED + help + Path to where the external toolchain is installed. The + compiler itself is expected to be in the "bin" subdirectory + of this path. + + If empty, the compiler will be searched in $PATH. + +config BR2_TOOLCHAIN_EXTERNAL_GLIBC + bool + select BR2_TOOLCHAIN_USES_GLIBC + +config BR2_TOOLCHAIN_EXTERNAL_UCLIBC + bool + select BR2_TOOLCHAIN_USES_UCLIBC + +config BR2_TOOLCHAIN_EXTERNAL_MUSL + bool + select BR2_TOOLCHAIN_USES_MUSL + # Compatibility headers: cdefs.h, queue.h + select BR2_PACKAGE_MUSL_COMPAT_HEADERS + +# Make sure the virtual-package infra checks the provider +config BR2_PACKAGE_HAS_TOOLCHAIN_EXTERNAL + bool + default y + +config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL + string + +config BR2_TOOLCHAIN_EXTERNAL_PREFIX + string + +# Kept toolchains sorted as in the choice above +# The toolchain Config.in.options must define +# BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL and BR2_TOOLCHAIN_EXTERNAL_PREFIX + +# Aarch64 +source "toolchain/toolchain-external/toolchain-external-arm-aarch64/Config.in.options" +source "toolchain/toolchain-external/toolchain-external-linaro-aarch64/Config.in.options" +source "toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/Config.in.options" + +# Aarch64 big-endian +source "toolchain/toolchain-external/toolchain-external-arm-aarch64-be/Config.in.options" +source "toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in.options" + +# ARC +source "toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in.options" + +# Andes +source "toolchain/toolchain-external/toolchain-external-andes-nds32/Config.in.options" + +# ARM +source "toolchain/toolchain-external/toolchain-external-arm-arm/Config.in.options" +source "toolchain/toolchain-external/toolchain-external-linaro-arm/Config.in.options" +source "toolchain/toolchain-external/toolchain-external-codesourcery-arm/Config.in.options" + +# ARM big-endian +source "toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in.options" + +# MIPS +source "toolchain/toolchain-external/toolchain-external-codesourcery-mips/Config.in.options" +source "toolchain/toolchain-external/toolchain-external-codescape-img-mips/Config.in.options" +source "toolchain/toolchain-external/toolchain-external-codescape-mti-mips/Config.in.options" + +# NIOSII +source "toolchain/toolchain-external/toolchain-external-codesourcery-niosII/Config.in.options" + +# Bootlin toolchains +source "toolchain/toolchain-external/toolchain-external-bootlin/Config.in.options" + +# Custom toolchains +source "toolchain/toolchain-external/toolchain-external-custom/Config.in.options" + +config BR2_TOOLCHAIN_EXTERNAL_GDB_SERVER_COPY + bool "Copy gdb server to the Target" + depends on BR2_TOOLCHAIN_EXTERNAL + help + Copy the gdbserver provided by the external toolchain to the + target. + +endif # BR2_TOOLCHAIN_EXTERNAL diff --git a/toolchain/toolchain-external/pkg-toolchain-external.mk b/toolchain/toolchain-external/pkg-toolchain-external.mk new file mode 100644 index 00000000..6d91cb5d --- /dev/null +++ b/toolchain/toolchain-external/pkg-toolchain-external.mk @@ -0,0 +1,611 @@ +################################################################################ +# External toolchain package infrastructure +# +# This package infrastructure implements the support for external +# toolchains, i.e toolchains that are available pre-built, ready to +# use. Such toolchain may either be readily available on the Web +# (Linaro, Sourcery CodeBench, from processor vendors) or may be built +# with tools like Crosstool-NG or Buildroot itself. So far, we have +# tested this with: +# +# * Toolchains generated by Crosstool-NG +# * Toolchains generated by Buildroot +# * Toolchains provided by Linaro for the ARM and AArch64 +# architectures +# * Sourcery CodeBench toolchains (from Mentor Graphics) for the ARM, +# MIPS, PowerPC, x86_64 and NIOS 2 architectures. For the MIPS +# toolchain, the -muclibc variant isn't supported yet, only the +# default glibc-based variant is. +# * Synopsys DesignWare toolchains for ARC cores +# +# The basic principle is the following +# +# 1. If the toolchain is not pre-installed, download and extract it +# in $(TOOLCHAIN_EXTERNAL_INSTALL_DIR). Otherwise, +# $(TOOLCHAIN_EXTERNAL_INSTALL_DIR) points to were the toolchain has +# already been installed by the user. +# +# 2. For all external toolchains, perform some checks on the +# conformity between the toolchain configuration described in the +# Buildroot menuconfig system, and the real configuration of the +# external toolchain. This is for example important to make sure that +# the Buildroot configuration system knows whether the toolchain +# supports RPC, IPv6, locales, large files, etc. Unfortunately, these +# things cannot be detected automatically, since the value of these +# options (such as BR2_TOOLCHAIN_HAS_NATIVE_RPC) are needed at +# configuration time because these options are used as dependencies +# for other options. And at configuration time, we are not able to +# retrieve the external toolchain configuration. +# +# 3. Copy the libraries needed at runtime to the target directory, +# $(TARGET_DIR). Obviously, things such as the C library, the dynamic +# loader and a few other utility libraries are needed if dynamic +# applications are to be executed on the target system. +# +# 4. Copy the libraries and headers to the staging directory. This +# will allow all further calls to gcc to be made using --sysroot +# $(STAGING_DIR), which greatly simplifies the compilation of the +# packages when using external toolchains. So in the end, only the +# cross-compiler binaries remains external, all libraries and headers +# are imported into the Buildroot tree. +# +# 5. Build a toolchain wrapper which executes the external toolchain +# with a number of arguments (sysroot/march/mtune/..) hardcoded, +# so we're sure the correct configuration is always used and the +# toolchain behaves similar to an internal toolchain. +# This toolchain wrapper and symlinks are installed into +# $(HOST_DIR)/bin like for the internal toolchains, and the rest +# of Buildroot is handled identical for the 2 toolchain types. +################################################################################ + +# +# Definitions of where the toolchain can be found +# + +TOOLCHAIN_EXTERNAL_PREFIX = $(call qstrip,$(BR2_TOOLCHAIN_EXTERNAL_PREFIX)) +TOOLCHAIN_EXTERNAL_DOWNLOAD_INSTALL_DIR = $(HOST_DIR)/opt/ext-toolchain + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD),y) +TOOLCHAIN_EXTERNAL_INSTALL_DIR = $(TOOLCHAIN_EXTERNAL_DOWNLOAD_INSTALL_DIR) +else +TOOLCHAIN_EXTERNAL_INSTALL_DIR = $(call qstrip,$(BR2_TOOLCHAIN_EXTERNAL_PATH)) +endif + +ifeq ($(TOOLCHAIN_EXTERNAL_INSTALL_DIR),) +ifneq ($(TOOLCHAIN_EXTERNAL_PREFIX),) +# if no path set, figure it out from path +TOOLCHAIN_EXTERNAL_BIN := $(dir $(shell which $(TOOLCHAIN_EXTERNAL_PREFIX)-gcc)) +endif +else +TOOLCHAIN_EXTERNAL_REL_BIN_PATH = $(call qstrip,$(BR2_TOOLCHAIN_EXTERNAL_REL_BIN_PATH)) +ifeq ($(TOOLCHAIN_EXTERNAL_REL_BIN_PATH),) +TOOLCHAIN_EXTERNAL_REL_BIN_PATH = bin +endif +TOOLCHAIN_EXTERNAL_BIN = $(TOOLCHAIN_EXTERNAL_INSTALL_DIR)/$(TOOLCHAIN_EXTERNAL_REL_BIN_PATH) +endif + +# If this is a buildroot toolchain, it already has a wrapper which we want to +# bypass. Since this is only evaluated after it has been extracted, we can use +# $(wildcard ...) here. +TOOLCHAIN_EXTERNAL_SUFFIX = \ + $(if $(wildcard $(TOOLCHAIN_EXTERNAL_BIN)/*.br_real),.br_real) + +TOOLCHAIN_EXTERNAL_CROSS = $(TOOLCHAIN_EXTERNAL_BIN)/$(TOOLCHAIN_EXTERNAL_PREFIX)- +TOOLCHAIN_EXTERNAL_CC = $(TOOLCHAIN_EXTERNAL_CROSS)gcc$(TOOLCHAIN_EXTERNAL_SUFFIX) +TOOLCHAIN_EXTERNAL_CXX = $(TOOLCHAIN_EXTERNAL_CROSS)g++$(TOOLCHAIN_EXTERNAL_SUFFIX) +TOOLCHAIN_EXTERNAL_GDC = $(TOOLCHAIN_EXTERNAL_CROSS)gdc$(TOOLCHAIN_EXTERNAL_SUFFIX) +TOOLCHAIN_EXTERNAL_FC = $(TOOLCHAIN_EXTERNAL_CROSS)gfortran$(TOOLCHAIN_EXTERNAL_SUFFIX) +TOOLCHAIN_EXTERNAL_READELF = $(TOOLCHAIN_EXTERNAL_CROSS)readelf + +# Normal handling of downloaded toolchain tarball extraction. +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD),y) +# As a regular package, the toolchain gets extracted in $(@D), but +# since it's actually a fairly special package, we need it to be moved +# into TOOLCHAIN_EXTERNAL_DOWNLOAD_INSTALL_DIR. +define TOOLCHAIN_EXTERNAL_MOVE + rm -rf $(TOOLCHAIN_EXTERNAL_DOWNLOAD_INSTALL_DIR) + mkdir -p $(TOOLCHAIN_EXTERNAL_DOWNLOAD_INSTALL_DIR) + mv $(@D)/* $(TOOLCHAIN_EXTERNAL_DOWNLOAD_INSTALL_DIR)/ +endef +endif + +# +# Definitions of the list of libraries that should be copied to the target. +# + +TOOLCHAIN_EXTERNAL_LIBS += ld*.so.* libgcc_s.so.* libatomic.so.* + +ifneq ($(BR2_SSP_NONE),y) +TOOLCHAIN_EXTERNAL_LIBS += libssp.so.* +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_GLIBC)$(BR2_TOOLCHAIN_EXTERNAL_UCLIBC),y) +TOOLCHAIN_EXTERNAL_LIBS += libc.so.* libcrypt.so.* libdl.so.* libm.so.* libnsl.so.* libresolv.so.* librt.so.* libutil.so.* +ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y) +TOOLCHAIN_EXTERNAL_LIBS += libpthread.so.* +ifneq ($(BR2_PACKAGE_GDB)$(BR2_TOOLCHAIN_EXTERNAL_GDB_SERVER_COPY),) +TOOLCHAIN_EXTERNAL_LIBS += libthread_db.so.* +endif # gdbserver +endif # ! no threads +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_GLIBC),y) +TOOLCHAIN_EXTERNAL_LIBS += libnss_files.so.* libnss_dns.so.* libmvec.so.* libanl.so.* +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_MUSL),y) +TOOLCHAIN_EXTERNAL_LIBS += libc.so +endif + +ifeq ($(BR2_INSTALL_LIBSTDCPP),y) +TOOLCHAIN_EXTERNAL_LIBS += libstdc++.so.* +endif + +ifeq ($(BR2_TOOLCHAIN_HAS_FORTRAN),y) +TOOLCHAIN_EXTERNAL_LIBS += libgfortran.so.* +# fortran needs quadmath on x86 and x86_64 +ifeq ($(BR2_TOOLCHAIN_HAS_LIBQUADMATH),y) +TOOLCHAIN_EXTERNAL_LIBS += libquadmath.so* +endif +endif + +ifeq ($(BR2_TOOLCHAIN_HAS_OPENMP),y) +TOOLCHAIN_EXTERNAL_LIBS += libgomp.so.* +endif + +ifeq ($(BR2_TOOLCHAIN_HAS_DLANG),y) +TOOLCHAIN_EXTERNAL_LIBS += libgdruntime.so* libgphobos.so* +endif + +TOOLCHAIN_EXTERNAL_LIBS += $(addsuffix .so*,$(call qstrip,$(BR2_TOOLCHAIN_EXTRA_LIBS))) + + +# +# Definition of the CFLAGS to use with the external toolchain, as well as the +# common toolchain wrapper build arguments +# + +# march/mtune/floating point mode needs to be passed to the external toolchain +# to select the right multilib variant +ifeq ($(BR2_x86_64),y) +TOOLCHAIN_EXTERNAL_CFLAGS += -m64 +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_64 +endif +ifneq ($(GCC_TARGET_ARCH),) +TOOLCHAIN_EXTERNAL_CFLAGS += -march=$(GCC_TARGET_ARCH) +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_ARCH='"$(GCC_TARGET_ARCH)"' +endif +ifneq ($(GCC_TARGET_CPU),) +TOOLCHAIN_EXTERNAL_CFLAGS += -mcpu=$(GCC_TARGET_CPU) +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_CPU='"$(GCC_TARGET_CPU)"' +endif +ifneq ($(GCC_TARGET_ABI),) +TOOLCHAIN_EXTERNAL_CFLAGS += -mabi=$(GCC_TARGET_ABI) +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_ABI='"$(GCC_TARGET_ABI)"' +endif +ifeq ($(BR2_TOOLCHAIN_HAS_MNAN_OPTION),y) +ifneq ($(GCC_TARGET_NAN),) +TOOLCHAIN_EXTERNAL_CFLAGS += -mnan=$(GCC_TARGET_NAN) +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_NAN='"$(GCC_TARGET_NAN)"' +endif +endif +ifneq ($(GCC_TARGET_FP32_MODE),) +TOOLCHAIN_EXTERNAL_CFLAGS += -mfp$(GCC_TARGET_FP32_MODE) +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_FP32_MODE='"$(GCC_TARGET_FP32_MODE)"' +endif +ifneq ($(GCC_TARGET_FPU),) +TOOLCHAIN_EXTERNAL_CFLAGS += -mfpu=$(GCC_TARGET_FPU) +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_FPU='"$(GCC_TARGET_FPU)"' +endif +ifneq ($(GCC_TARGET_FLOAT_ABI),) +TOOLCHAIN_EXTERNAL_CFLAGS += -mfloat-abi=$(GCC_TARGET_FLOAT_ABI) +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_FLOAT_ABI='"$(GCC_TARGET_FLOAT_ABI)"' +endif +ifneq ($(GCC_TARGET_MODE),) +TOOLCHAIN_EXTERNAL_CFLAGS += -m$(GCC_TARGET_MODE) +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_MODE='"$(GCC_TARGET_MODE)"' +endif +ifeq ($(BR2_BINFMT_FLAT),y) +TOOLCHAIN_EXTERNAL_CFLAGS += -Wl,-elf2flt +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_BINFMT_FLAT +endif +ifeq ($(BR2_mipsel)$(BR2_mips64el),y) +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_MIPS_TARGET_LITTLE_ENDIAN +TOOLCHAIN_EXTERNAL_CFLAGS += -EL +endif +ifeq ($(BR2_mips)$(BR2_mips64),y) +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_MIPS_TARGET_BIG_ENDIAN +TOOLCHAIN_EXTERNAL_CFLAGS += -EB +endif +ifeq ($(BR2_arceb),y) +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_ARC_TARGET_BIG_ENDIAN +TOOLCHAIN_EXTERNAL_CFLAGS += -EB +endif + +TOOLCHAIN_EXTERNAL_CFLAGS += $(call qstrip,$(BR2_TARGET_OPTIMIZATION)) + +ifeq ($(BR2_SOFT_FLOAT),y) +TOOLCHAIN_EXTERNAL_CFLAGS += -msoft-float +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_SOFTFLOAT=1 +endif + +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += \ + -DBR_CROSS_PATH_SUFFIX='"$(TOOLCHAIN_EXTERNAL_SUFFIX)"' + +ifeq ($(filter $(HOST_DIR)/%,$(TOOLCHAIN_EXTERNAL_BIN)),) +# TOOLCHAIN_EXTERNAL_BIN points outside HOST_DIR => absolute path +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += \ + -DBR_CROSS_PATH_ABS='"$(TOOLCHAIN_EXTERNAL_BIN)"' +else +# TOOLCHAIN_EXTERNAL_BIN points inside HOST_DIR => relative path +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += \ + -DBR_CROSS_PATH_REL='"$(TOOLCHAIN_EXTERNAL_BIN:$(HOST_DIR)/%=%)"' +endif + + +# +# The following functions creates the symbolic links needed to get the +# cross-compilation tools visible in $(HOST_DIR)/bin. Some of +# links are done directly to the corresponding tool in the external +# toolchain installation directory, while some other links are done to +# the toolchain wrapper (preprocessor, C, C++ and Fortran compiler) +# +# We skip gdb symlink when we are building our own gdb to prevent two +# gdb's in $(HOST_DIR)/bin. +# +# The LTO support in gcc creates wrappers for ar, ranlib and nm which load +# the lto plugin. These wrappers are called *-gcc-ar, *-gcc-ranlib, and +# *-gcc-nm and should be used instead of the real programs when -flto is +# used. However, we should not add the toolchain wrapper for them, and they +# match the *cc-* pattern. Therefore, an additional case is added for *-ar, +# *-ranlib and *-nm. +define TOOLCHAIN_EXTERNAL_INSTALL_WRAPPER + $(Q)cd $(HOST_DIR)/bin; \ + for i in $(TOOLCHAIN_EXTERNAL_CROSS)*; do \ + base=$${i##*/}; \ + case "$$base" in \ + *-ar|*-ranlib|*-nm) \ + ln -sf $$(echo $$i | sed 's%^$(HOST_DIR)%..%') .; \ + ;; \ + *cc|*cc-*|*++|*++-*|*cpp|*-gfortran|*-gdc) \ + ln -sf toolchain-wrapper $$base; \ + ;; \ + *gdb|*gdbtui) \ + if test "$(BR2_PACKAGE_HOST_GDB)" != "y"; then \ + ln -sf $$(echo $$i | sed 's%^$(HOST_DIR)%..%') .; \ + fi \ + ;; \ + *) \ + ln -sf $$(echo $$i | sed 's%^$(HOST_DIR)%..%') .; \ + ;; \ + esac; \ + done +endef + + +# Various utility functions used by the external toolchain package +# infrastructure. Those functions are mainly responsible for: +# +# - installation the toolchain libraries to $(TARGET_DIR) +# - copying the toolchain sysroot to $(STAGING_DIR) +# - installing a gdbinit file +# +# Details about sysroot directory selection. +# +# To find the sysroot directory, we use the trick of looking for the +# 'libc.a' file with the -print-file-name gcc option, and then +# mangling the path to find the base directory of the sysroot. +# +# Note that we do not use the -print-sysroot option, because it is +# only available since gcc 4.4.x, and we only recently dropped support +# for 4.2.x and 4.3.x. +# +# When doing this, we don't pass any option to gcc that could select a +# multilib variant (such as -march) as we want the "main" sysroot, +# which contains all variants of the C library in the case of multilib +# toolchains. We use the TARGET_CC_NO_SYSROOT variable, which is the +# path of the cross-compiler, without the --sysroot=$(STAGING_DIR), +# since what we want to find is the location of the original toolchain +# sysroot. This "main" sysroot directory is stored in SYSROOT_DIR. +# +# Then, multilib toolchains are a little bit more complicated, since +# they in fact have multiple sysroots, one for each variant supported +# by the toolchain. So we need to find the particular sysroot we're +# interested in. +# +# To do so, we ask the compiler where its sysroot is by passing all +# flags (including -march and al.), except the --sysroot flag since we +# want to the compiler to tell us where its original sysroot +# is. ARCH_SUBDIR will contain the subdirectory, in the main +# SYSROOT_DIR, that corresponds to the selected architecture +# variant. ARCH_SYSROOT_DIR will contain the full path to this +# location. +# +# One might wonder why we don't just bother with ARCH_SYSROOT_DIR. The +# fact is that in multilib toolchains, the header files are often only +# present in the main sysroot, and only the libraries are available in +# each variant-specific sysroot directory. + + +# toolchain_find_sysroot returns the sysroot location for the given +# compiler + flags. We need to handle cases where libc.a is in: +# +# - lib/ +# - usr/lib/ +# - lib32/ +# - lib64/ +# - lib32-fp/ (Cavium toolchain) +# - lib64-fp/ (Cavium toolchain) +# - usr/lib// (Linaro toolchain) +# +# And variations on these. +define toolchain_find_sysroot +$$(printf $(call toolchain_find_libc_a,$(1)) | sed -r -e 's:/(usr/)?lib(32|64)?([^/]*)?/([^/]*/)?libc\.a:/:') +endef + +# Returns the lib subdirectory for the given compiler + flags (i.e +# typically lib32 or lib64 for some toolchains) +define toolchain_find_libdir +$$(printf $(call toolchain_find_libc_a,$(1)) | sed -r -e 's:.*/(usr/)?(lib(32|64)?([^/]*)?(/[^/]*)?)/libc.a:\2:') +endef + +# Returns the location of the libc.a file for the given compiler + flags +define toolchain_find_libc_a +$$(readlink -f $$(LANG=C $(1) -print-file-name=libc.a)) +endef + +# Integration of the toolchain into Buildroot: find the main sysroot +# and the variant-specific sysroot, then copy the needed libraries to +# the $(TARGET_DIR) and copy the whole sysroot (libraries and headers) +# to $(STAGING_DIR). +# +# Variables are defined as follows: +# +# SYSROOT_DIR: the main sysroot directory, deduced from the location of +# the libc.a file in the default multilib variant, by +# removing the usr/lib[32|64]/libc.a part of the path. +# Ex: /x-tools/mips-2011.03/mips-linux-gnu/libc/ +# +# ARCH_SYSROOT_DIR: the sysroot of the selected multilib variant, +# deduced from the location of the libc.a file in the +# selected multilib variant (taking into account the +# CFLAGS), by removing usr/lib[32|64]/libc.a at the end +# of the path. +# Ex: /x-tools/mips-2011.03/mips-linux-gnu/libc/mips16/soft-float/el/ +# +# ARCH_LIB_DIR: 'lib', 'lib32' or 'lib64' depending on where libraries +# are stored. Deduced from the location of the libc.a file +# in the selected multilib variant, by looking at +# usr/lib??/libc.a. +# Ex: lib +# +# ARCH_SUBDIR: the relative location of the sysroot of the selected +# multilib variant compared to the main sysroot. +# Ex: mips16/soft-float/el +# +# SUPPORT_LIB_DIR: some toolchains, such as recent Linaro toolchains, +# store GCC support libraries (libstdc++, +# libgcc_s, etc.) outside of the sysroot. In +# this case, SUPPORT_LIB_DIR is set to a +# non-empty value, and points to the directory +# where these support libraries are +# available. Those libraries will be copied to +# our sysroot, and the directory will also be +# considered when searching libraries for copy +# to the target filesystem. +# +# Please be very careful to check the major toolchain sources: +# Buildroot, Crosstool-NG, CodeSourcery and Linaro +# before doing any modification on the below logic. + +ifeq ($(BR2_STATIC_LIBS),) +define TOOLCHAIN_EXTERNAL_INSTALL_TARGET_LIBS + $(Q)$(call MESSAGE,"Copying external toolchain libraries to target...") + $(Q)for libpattern in $(TOOLCHAIN_EXTERNAL_LIBS); do \ + $(call copy_toolchain_lib_root,$$libpattern); \ + done +endef +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_GDB_SERVER_COPY),y) +define TOOLCHAIN_EXTERNAL_INSTALL_TARGET_GDBSERVER + $(Q)$(call MESSAGE,"Copying gdbserver") + $(Q)ARCH_SYSROOT_DIR="$(call toolchain_find_sysroot,$(TOOLCHAIN_EXTERNAL_CC) $(TOOLCHAIN_EXTERNAL_CFLAGS))" ; \ + ARCH_LIB_DIR="$(call toolchain_find_libdir,$(TOOLCHAIN_EXTERNAL_CC) $(TOOLCHAIN_EXTERNAL_CFLAGS))" ; \ + gdbserver_found=0 ; \ + for d in $${ARCH_SYSROOT_DIR}/usr \ + $${ARCH_SYSROOT_DIR}/../debug-root/usr \ + $${ARCH_SYSROOT_DIR}/usr/$${ARCH_LIB_DIR} \ + $(TOOLCHAIN_EXTERNAL_INSTALL_DIR); do \ + if test -f $${d}/bin/gdbserver ; then \ + install -m 0755 -D $${d}/bin/gdbserver $(TARGET_DIR)/usr/bin/gdbserver ; \ + gdbserver_found=1 ; \ + break ; \ + fi ; \ + done ; \ + if [ $${gdbserver_found} -eq 0 ] ; then \ + echo "Could not find gdbserver in external toolchain" ; \ + exit 1 ; \ + fi +endef +endif + +define TOOLCHAIN_EXTERNAL_INSTALL_SYSROOT_LIBS + $(Q)SYSROOT_DIR="$(call toolchain_find_sysroot,$(TOOLCHAIN_EXTERNAL_CC))" ; \ + ARCH_SYSROOT_DIR="$(call toolchain_find_sysroot,$(TOOLCHAIN_EXTERNAL_CC) $(TOOLCHAIN_EXTERNAL_CFLAGS))" ; \ + ARCH_LIB_DIR="$(call toolchain_find_libdir,$(TOOLCHAIN_EXTERNAL_CC) $(TOOLCHAIN_EXTERNAL_CFLAGS))" ; \ + SUPPORT_LIB_DIR="" ; \ + if test `find $${ARCH_SYSROOT_DIR} -name 'libstdc++.a' | wc -l` -eq 0 ; then \ + LIBSTDCPP_A_LOCATION=$$(LANG=C $(TOOLCHAIN_EXTERNAL_CC) $(TOOLCHAIN_EXTERNAL_CFLAGS) -print-file-name=libstdc++.a) ; \ + if [ -e "$${LIBSTDCPP_A_LOCATION}" ]; then \ + SUPPORT_LIB_DIR=`readlink -f $${LIBSTDCPP_A_LOCATION} | sed -r -e 's:libstdc\+\+\.a::'` ; \ + fi ; \ + fi ; \ + if [ "$${SYSROOT_DIR}" == "$${ARCH_SYSROOT_DIR}" ] ; then \ + ARCH_SUBDIR="" ; \ + elif [ "`dirname $${ARCH_SYSROOT_DIR}`" = "`dirname $${SYSROOT_DIR}`" ] ; then \ + SYSROOT_DIR_DIRNAME=`dirname $${SYSROOT_DIR}`/ ; \ + ARCH_SUBDIR=`echo $${ARCH_SYSROOT_DIR} | sed -r -e "s:^$${SYSROOT_DIR_DIRNAME}(.*)/$$:\1:"` ; \ + else \ + ARCH_SUBDIR=`echo $${ARCH_SYSROOT_DIR} | sed -r -e "s:^$${SYSROOT_DIR}(.*)/$$:\1:"` ; \ + fi ; \ + $(call MESSAGE,"Copying external toolchain sysroot to staging...") ; \ + $(call copy_toolchain_sysroot,$${SYSROOT_DIR},$${ARCH_SYSROOT_DIR},$${ARCH_SUBDIR},$${ARCH_LIB_DIR},$${SUPPORT_LIB_DIR}) +endef + +# Create a symlink from (usr/)$(ARCH_LIB_DIR) to lib. +# Note: the skeleton package additionally creates lib32->lib or lib64->lib +# (as appropriate) +# +# $1: destination directory (TARGET_DIR / STAGING_DIR) +create_lib_symlinks = \ + $(Q)DESTDIR="$(strip $1)" ; \ + ARCH_LIB_DIR="$(call toolchain_find_libdir,$(TOOLCHAIN_EXTERNAL_CC) $(TOOLCHAIN_EXTERNAL_CFLAGS))" ; \ + if [ ! -e "$${DESTDIR}/$${ARCH_LIB_DIR}" -a ! -e "$${DESTDIR}/usr/$${ARCH_LIB_DIR}" ]; then \ + relpath="$(call relpath_prefix,$${ARCH_LIB_DIR})" ; \ + ln -snf $${relpath}lib "$${DESTDIR}/$${ARCH_LIB_DIR}" ; \ + ln -snf $${relpath}lib "$${DESTDIR}/usr/$${ARCH_LIB_DIR}" ; \ + fi + +define TOOLCHAIN_EXTERNAL_CREATE_STAGING_LIB_SYMLINK + $(call create_lib_symlinks,$(STAGING_DIR)) +endef + +define TOOLCHAIN_EXTERNAL_CREATE_TARGET_LIB_SYMLINK + $(call create_lib_symlinks,$(TARGET_DIR)) +endef + +# +# Generate gdbinit file for use with Buildroot +# +define TOOLCHAIN_EXTERNAL_INSTALL_GDBINIT + $(Q)if test -f $(TARGET_CROSS)gdb ; then \ + $(call MESSAGE,"Installing gdbinit"); \ + $(gen_gdbinit_file); \ + fi +endef + +# uClibc-ng dynamic loader is called ld-uClibc.so.1, but gcc is not +# patched specifically for uClibc-ng, so it continues to generate +# binaries that expect the dynamic loader to be named ld-uClibc.so.0, +# like with the original uClibc. Therefore, we create an additional +# symbolic link to make uClibc-ng systems work properly. +define TOOLCHAIN_EXTERNAL_FIXUP_UCLIBCNG_LDSO + $(Q)if test -e $(TARGET_DIR)/lib/ld-uClibc.so.1; then \ + ln -sf ld-uClibc.so.1 $(TARGET_DIR)/lib/ld-uClibc.so.0 ; \ + fi + $(Q)if test -e $(TARGET_DIR)/lib/ld64-uClibc.so.1; then \ + ln -sf ld64-uClibc.so.1 $(TARGET_DIR)/lib/ld64-uClibc.so.0 ; \ + fi +endef + +define TOOLCHAIN_EXTERNAL_INSTALL_TARGET_LDD + $(Q)if test -f $(STAGING_DIR)/usr/bin/ldd ; then \ + $(INSTALL) -D $(STAGING_DIR)/usr/bin/ldd $(TARGET_DIR)/usr/bin/ldd ; \ + $(SED) 's:.*/bin/bash:#!/bin/sh:' $(TARGET_DIR)/usr/bin/ldd ; \ + fi +endef + +################################################################################ +# inner-toolchain-external-package -- defines the generic installation rules +# for external toolchain packages +# +# argument 1 is the lowercase package name +# argument 2 is the uppercase package name, including a HOST_ prefix +# for host packages +# argument 3 is the uppercase package name, without the HOST_ prefix +# for host packages +# argument 4 is the type (target or host) +################################################################################ +define inner-toolchain-external-package + +$(2)_INSTALL_STAGING = YES +$(2)_ADD_TOOLCHAIN_DEPENDENCY = NO + +# In fact, we don't need to download the toolchain, since it is already +# available on the system, so force the site and source to be empty so +# that nothing will be downloaded/extracted. +ifeq ($$(BR2_TOOLCHAIN_EXTERNAL_PREINSTALLED),y) +$(2)_SITE = +$(2)_SOURCE = +endif + +ifeq ($$(BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD),y) +$(2)_EXCLUDES = usr/lib/locale/* + +$(2)_POST_EXTRACT_HOOKS += \ + TOOLCHAIN_EXTERNAL_MOVE +endif + +# Checks for an already installed toolchain: check the toolchain +# location, check that it is usable, and then verify that it +# matches the configuration provided in Buildroot: ABI, C++ support, +# kernel headers version, type of C library and all C library features. +define $(2)_CONFIGURE_CMDS + $$(Q)$$(call check_cross_compiler_exists,$$(TOOLCHAIN_EXTERNAL_CC)) + $$(Q)$$(call check_unusable_toolchain,$$(TOOLCHAIN_EXTERNAL_CC)) + $$(Q)SYSROOT_DIR="$$(call toolchain_find_sysroot,$$(TOOLCHAIN_EXTERNAL_CC))" ; \ + $$(call check_kernel_headers_version,\ + $$(BUILD_DIR),\ + $$(call toolchain_find_sysroot,$$(TOOLCHAIN_EXTERNAL_CC)),\ + $$(call qstrip,$$(BR2_TOOLCHAIN_HEADERS_AT_LEAST)),\ + $$(if $$(BR2_TOOLCHAIN_EXTERNAL_CUSTOM),loose,strict)); \ + $$(call check_gcc_version,$$(TOOLCHAIN_EXTERNAL_CC),\ + $$(call qstrip,$$(BR2_TOOLCHAIN_GCC_AT_LEAST))); \ + if test "$$(BR2_arm)" = "y" ; then \ + $$(call check_arm_abi,\ + "$$(TOOLCHAIN_EXTERNAL_CC) $$(TOOLCHAIN_EXTERNAL_CFLAGS)") ; \ + fi ; \ + if test "$$(BR2_INSTALL_LIBSTDCPP)" = "y" ; then \ + $$(call check_cplusplus,$$(TOOLCHAIN_EXTERNAL_CXX)) ; \ + fi ; \ + if test "$$(BR2_TOOLCHAIN_HAS_DLANG)" = "y" ; then \ + $$(call check_dlang,$$(TOOLCHAIN_EXTERNAL_GDC)) ; \ + fi ; \ + if test "$$(BR2_TOOLCHAIN_HAS_FORTRAN)" = "y" ; then \ + $$(call check_fortran,$$(TOOLCHAIN_EXTERNAL_FC)) ; \ + fi ; \ + if test "$$(BR2_TOOLCHAIN_HAS_OPENMP)" = "y" ; then \ + $$(call check_openmp,$$(TOOLCHAIN_EXTERNAL_CC)) ; \ + fi ; \ + if test "$$(BR2_TOOLCHAIN_EXTERNAL_UCLIBC)" = "y" ; then \ + $$(call check_uclibc,$$$${SYSROOT_DIR}) ; \ + elif test "$$(BR2_TOOLCHAIN_EXTERNAL_MUSL)" = "y" ; then \ + $$(call check_musl,\ + "$$(TOOLCHAIN_EXTERNAL_CC) $$(TOOLCHAIN_EXTERNAL_CFLAGS)") ; \ + else \ + $$(call check_glibc,$$$${SYSROOT_DIR}) ; \ + fi + $$(Q)$$(call check_toolchain_ssp,$$(TOOLCHAIN_EXTERNAL_CC),$(BR2_SSP_OPTION)) +endef + +$(2)_TOOLCHAIN_WRAPPER_ARGS += $$(TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS) + +$(2)_BUILD_CMDS = $$(TOOLCHAIN_WRAPPER_BUILD) + +define $(2)_INSTALL_STAGING_CMDS + $$(TOOLCHAIN_WRAPPER_INSTALL) + $$(TOOLCHAIN_EXTERNAL_CREATE_STAGING_LIB_SYMLINK) + $$(TOOLCHAIN_EXTERNAL_INSTALL_SYSROOT_LIBS) + $$(TOOLCHAIN_EXTERNAL_INSTALL_WRAPPER) + $$(TOOLCHAIN_EXTERNAL_INSTALL_GDBINIT) +endef + +# Even though we're installing things in both the staging, the host +# and the target directory, we do everything within the +# install-staging step, arbitrarily. +define $(2)_INSTALL_TARGET_CMDS + $$(TOOLCHAIN_EXTERNAL_CREATE_TARGET_LIB_SYMLINK) + $$(TOOLCHAIN_EXTERNAL_INSTALL_TARGET_LIBS) + $$(TOOLCHAIN_EXTERNAL_INSTALL_TARGET_GDBSERVER) + $$(TOOLCHAIN_EXTERNAL_FIXUP_UCLIBCNG_LDSO) + $$(TOOLCHAIN_EXTERNAL_INSTALL_TARGET_LDD) +endef + +# Call the generic package infrastructure to generate the necessary +# make targets +$(call inner-generic-package,$(1),$(2),$(3),$(4)) + +endef + +toolchain-external-package = $(call inner-toolchain-external-package,$(pkgname),$(call UPPERCASE,$(pkgname)),$(call UPPERCASE,$(pkgname)),target) diff --git a/toolchain/toolchain-external/toolchain-external-andes-nds32/Config.in b/toolchain/toolchain-external/toolchain-external-andes-nds32/Config.in new file mode 100644 index 00000000..9c937b8c --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-andes-nds32/Config.in @@ -0,0 +1,15 @@ +config BR2_TOOLCHAIN_EXTERNAL_ANDES_NDS32 + bool "Andes nds32" + depends on BR2_nds32 + depends on !BR2_STATIC_LIBS + depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + select BR2_HOSTARCH_NEEDS_IA32_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_8 + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_17 + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + select BR2_TOOLCHAIN_HAS_SSP + help + nds32 toolchain for the nds32 architecture. It uses GCC + 8.2.1, GDB 8.1.1, glibc 2.28, Binutils 2.30. It generates + code that runs on ae3xx platform diff --git a/toolchain/toolchain-external/toolchain-external-andes-nds32/Config.in.options b/toolchain/toolchain-external/toolchain-external-andes-nds32/Config.in.options new file mode 100644 index 00000000..7d11ae20 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-andes-nds32/Config.in.options @@ -0,0 +1,9 @@ +if BR2_TOOLCHAIN_EXTERNAL_ANDES_NDS32 + +config BR2_TOOLCHAIN_EXTERNAL_PREFIX + default "nds32le-linux" + +config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL + default "toolchain-external-andes-nds32" + +endif diff --git a/toolchain/toolchain-external/toolchain-external-andes-nds32/toolchain-external-andes-nds32.hash b/toolchain/toolchain-external/toolchain-external-andes-nds32/toolchain-external-andes-nds32.hash new file mode 100644 index 00000000..4314bb1f --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-andes-nds32/toolchain-external-andes-nds32.hash @@ -0,0 +1,2 @@ +# From https://github.com/vincentzwc/prebuilt-nds32-toolchain/releases/download/20180521/nds32le-linux-glibc-v3-upstream.tar.gz +sha256 6050601df85ad93a4c211c1d57ed3773edb62aa505f7e07d7d555652e83af2cc nds32le-linux-glibc-v3-upstream.tar.gz diff --git a/toolchain/toolchain-external/toolchain-external-andes-nds32/toolchain-external-andes-nds32.mk b/toolchain/toolchain-external/toolchain-external-andes-nds32/toolchain-external-andes-nds32.mk new file mode 100644 index 00000000..fa29490b --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-andes-nds32/toolchain-external-andes-nds32.mk @@ -0,0 +1,10 @@ +################################################################################ +# +# toolchain-external-andes-nds32 +# +################################################################################ + +TOOLCHAIN_EXTERNAL_ANDES_NDS32_SITE = https://github.com/vincentzwc/prebuilt-nds32-toolchain/releases/download/20180521 +TOOLCHAIN_EXTERNAL_ANDES_NDS32_SOURCE = nds32le-linux-glibc-v3-upstream.tar.gz + +$(eval $(toolchain-external-package)) diff --git a/toolchain/toolchain-external/toolchain-external-arm-aarch64-be/Config.in b/toolchain/toolchain-external/toolchain-external-arm-aarch64-be/Config.in new file mode 100644 index 00000000..bbd6a070 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-arm-aarch64-be/Config.in @@ -0,0 +1,20 @@ +config BR2_TOOLCHAIN_EXTERNAL_ARM_AARCH64_BE + bool "Arm AArch64 BE 2020.11" + depends on BR2_aarch64_be + depends on BR2_HOSTARCH = "x86_64" + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_SSP + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_20 + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP + help + Arm toolchain for the AArch64 Big Endian architecture. + + This is the same toolchain that was previously distributed by + Linaro. + + https://developer.arm.com/open-source/gnu-toolchain diff --git a/toolchain/toolchain-external/toolchain-external-arm-aarch64-be/Config.in.options b/toolchain/toolchain-external/toolchain-external-arm-aarch64-be/Config.in.options new file mode 100644 index 00000000..745af8a2 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-arm-aarch64-be/Config.in.options @@ -0,0 +1,9 @@ +if BR2_TOOLCHAIN_EXTERNAL_ARM_AARCH64_BE + +config BR2_TOOLCHAIN_EXTERNAL_PREFIX + default "aarch64_be-none-linux-gnu" + +config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL + default "toolchain-external-arm-aarch64-be" + +endif diff --git a/toolchain/toolchain-external/toolchain-external-arm-aarch64-be/toolchain-external-arm-aarch64-be.hash b/toolchain/toolchain-external/toolchain-external-arm-aarch64-be/toolchain-external-arm-aarch64-be.hash new file mode 100644 index 00000000..8e67a965 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-arm-aarch64-be/toolchain-external-arm-aarch64-be.hash @@ -0,0 +1,4 @@ +# From https://developer.arm.com/-/media/Files/downloads/gnu-a/10.2-2020.11/binrel/gcc-arm-10.2-2020.11-x86_64-aarch64_be-none-linux-gnu.tar.xz.asc +md5 5da75bca337de5adade5b339709f8b16 gcc-arm-10.2-2020.11-x86_64-aarch64_be-none-linux-gnu.tar.xz +# locally calculated +sha256 78a472aeb80f6ff56bfdef57ce165b233bac4af7aa2e12f454900518a30ddf20 gcc-arm-10.2-2020.11-x86_64-aarch64_be-none-linux-gnu.tar.xz diff --git a/toolchain/toolchain-external/toolchain-external-arm-aarch64-be/toolchain-external-arm-aarch64-be.mk b/toolchain/toolchain-external/toolchain-external-arm-aarch64-be/toolchain-external-arm-aarch64-be.mk new file mode 100644 index 00000000..384fc2ef --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-arm-aarch64-be/toolchain-external-arm-aarch64-be.mk @@ -0,0 +1,12 @@ +################################################################################ +# +# toolchain-external-arm-aarch64-be +# +################################################################################ + +TOOLCHAIN_EXTERNAL_ARM_AARCH64_BE_VERSION = 2020.11 +TOOLCHAIN_EXTERNAL_ARM_AARCH64_BE_SITE = https://developer.arm.com/-/media/Files/downloads/gnu-a/10.2-$(TOOLCHAIN_EXTERNAL_ARM_AARCH64_BE_VERSION)/binrel + +TOOLCHAIN_EXTERNAL_ARM_AARCH64_BE_SOURCE = gcc-arm-10.2-$(TOOLCHAIN_EXTERNAL_ARM_AARCH64_BE_VERSION)-x86_64-aarch64_be-none-linux-gnu.tar.xz + +$(eval $(toolchain-external-package)) diff --git a/toolchain/toolchain-external/toolchain-external-arm-aarch64/Config.in b/toolchain/toolchain-external/toolchain-external-arm-aarch64/Config.in new file mode 100644 index 00000000..b6062846 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-arm-aarch64/Config.in @@ -0,0 +1,20 @@ +config BR2_TOOLCHAIN_EXTERNAL_ARM_AARCH64 + bool "Arm AArch64 2020.11" + depends on BR2_aarch64 + depends on BR2_HOSTARCH = "x86_64" + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_SSP + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_20 + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP + help + Arm toolchain for the AArch64 architecture. + + This is the same toolchain that was previously distributed by + Linaro. + + https://developer.arm.com/open-source/gnu-toolchain diff --git a/toolchain/toolchain-external/toolchain-external-arm-aarch64/Config.in.options b/toolchain/toolchain-external/toolchain-external-arm-aarch64/Config.in.options new file mode 100644 index 00000000..dcc38a6a --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-arm-aarch64/Config.in.options @@ -0,0 +1,9 @@ +if BR2_TOOLCHAIN_EXTERNAL_ARM_AARCH64 + +config BR2_TOOLCHAIN_EXTERNAL_PREFIX + default "aarch64-none-linux-gnu" + +config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL + default "toolchain-external-arm-aarch64" + +endif diff --git a/toolchain/toolchain-external/toolchain-external-arm-aarch64/toolchain-external-arm-aarch64.hash b/toolchain/toolchain-external/toolchain-external-arm-aarch64/toolchain-external-arm-aarch64.hash new file mode 100644 index 00000000..90abe56d --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-arm-aarch64/toolchain-external-arm-aarch64.hash @@ -0,0 +1,4 @@ +# From https://developer.arm.com/-/media/Files/downloads/gnu-a/10.2-2020.11/binrel/gcc-arm-10.2-2020.11-x86_64-aarch64-none-linux-gnu.tar.xz.asc +md5 d6e6676d31c51405ae0fc7687ef0a224 gcc-arm-10.2-2020.11-x86_64-aarch64-none-linux-gnu.tar.xz +# locally calculated +sha256 fe7f72330216612de44891ebe5e228eed7c0c051ac090c395b2b33115c6f5408 gcc-arm-10.2-2020.11-x86_64-aarch64-none-linux-gnu.tar.xz diff --git a/toolchain/toolchain-external/toolchain-external-arm-aarch64/toolchain-external-arm-aarch64.mk b/toolchain/toolchain-external/toolchain-external-arm-aarch64/toolchain-external-arm-aarch64.mk new file mode 100644 index 00000000..583e4a76 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-arm-aarch64/toolchain-external-arm-aarch64.mk @@ -0,0 +1,12 @@ +################################################################################ +# +# toolchain-external-arm-aarch64 +# +################################################################################ + +TOOLCHAIN_EXTERNAL_ARM_AARCH64_VERSION = 2020.11 +TOOLCHAIN_EXTERNAL_ARM_AARCH64_SITE = https://developer.arm.com/-/media/Files/downloads/gnu-a/10.2-$(TOOLCHAIN_EXTERNAL_ARM_AARCH64_VERSION)/binrel + +TOOLCHAIN_EXTERNAL_ARM_AARCH64_SOURCE = gcc-arm-10.2-$(TOOLCHAIN_EXTERNAL_ARM_AARCH64_VERSION)-x86_64-aarch64-none-linux-gnu.tar.xz + +$(eval $(toolchain-external-package)) diff --git a/toolchain/toolchain-external/toolchain-external-arm-arm/Config.in b/toolchain/toolchain-external/toolchain-external-arm-arm/Config.in new file mode 100644 index 00000000..e3bac38b --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-arm-arm/Config.in @@ -0,0 +1,32 @@ +comment "Arm toolchains available for Cortex-A with NEON + EABIhf" + depends on BR2_arm + depends on !BR2_ARM_CPU_ARMV7A || !BR2_ARM_EABIHF || !BR2_ARM_CPU_HAS_NEON + depends on !BR2_STATIC_LIBS + +config BR2_TOOLCHAIN_EXTERNAL_ARM_ARM + bool "Arm ARM 2020.11" + depends on BR2_arm + depends on BR2_ARM_CPU_ARMV7A || BR2_ARM_CPU_ARMV8A + depends on BR2_ARM_CPU_HAS_NEON + depends on BR2_HOSTARCH = "x86_64" + depends on BR2_ARM_EABIHF + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_20 + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP + help + Arm toolchain for the ARM architecture. It uses GCC 10.2, + GDB 10.1, glibc 2.31, Binutils 2.35.1. It generates code + that runs on all Cortex-A profile devices. The code + generated uses the hard floating point calling convention, + and uses the NEON FPU instructions. + + This is the same toolchain that was previously distributed by + Linaro. + + https://developer.arm.com/open-source/gnu-toolchain diff --git a/toolchain/toolchain-external/toolchain-external-arm-arm/Config.in.options b/toolchain/toolchain-external/toolchain-external-arm-arm/Config.in.options new file mode 100644 index 00000000..f2ce0f45 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-arm-arm/Config.in.options @@ -0,0 +1,9 @@ +if BR2_TOOLCHAIN_EXTERNAL_ARM_ARM + +config BR2_TOOLCHAIN_EXTERNAL_PREFIX + default "arm-none-linux-gnueabihf" + +config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL + default "toolchain-external-arm-arm" + +endif diff --git a/toolchain/toolchain-external/toolchain-external-arm-arm/toolchain-external-arm-arm.hash b/toolchain/toolchain-external/toolchain-external-arm-arm/toolchain-external-arm-arm.hash new file mode 100644 index 00000000..a46ed4e4 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-arm-arm/toolchain-external-arm-arm.hash @@ -0,0 +1,4 @@ +# From https://developer.arm.com/-/media/Files/downloads/gnu-a/10.2-2020.11/binrel/gcc-arm-10.2-2020.11-x86_64-arm-none-linux-gnueabihf.tar.xz.asc +md5 14f706db78cfb43aafed9056174572b0 gcc-arm-10.2-2020.11-x86_64-arm-none-linux-gnueabihf.tar.xz +# locally calculated +sha256 102825ae56c9e00142d06f35d2bdd3299edb6060e84a275a25b095e66fd3fc2a gcc-arm-10.2-2020.11-x86_64-arm-none-linux-gnueabihf.tar.xz diff --git a/toolchain/toolchain-external/toolchain-external-arm-arm/toolchain-external-arm-arm.mk b/toolchain/toolchain-external/toolchain-external-arm-arm/toolchain-external-arm-arm.mk new file mode 100644 index 00000000..88b6ae34 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-arm-arm/toolchain-external-arm-arm.mk @@ -0,0 +1,12 @@ +################################################################################ +# +# toolchain-external-arm-arm +# +################################################################################ + +TOOLCHAIN_EXTERNAL_ARM_ARM_VERSION = 2020.11 +TOOLCHAIN_EXTERNAL_ARM_ARM_SITE = https://developer.arm.com/-/media/Files/downloads/gnu-a/10.2-$(TOOLCHAIN_EXTERNAL_ARM_ARM_VERSION)/binrel + +TOOLCHAIN_EXTERNAL_ARM_ARM_SOURCE = gcc-arm-10.2-$(TOOLCHAIN_EXTERNAL_ARM_ARM_VERSION)-x86_64-arm-none-linux-gnueabihf.tar.xz + +$(eval $(toolchain-external-package)) diff --git a/toolchain/toolchain-external/toolchain-external-bootlin/Config.in b/toolchain/toolchain-external/toolchain-external-bootlin/Config.in new file mode 100644 index 00000000..6552da9a --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-bootlin/Config.in @@ -0,0 +1,9 @@ +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN + bool "Bootlin toolchains" + depends on BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCH_SUPPORTS + depends on BR2_HOSTARCH = "x86_64" + help + Bootlin toolchains are built using Buildroot for a large + number of architectures and C libraries configurations. + + https://toolchains.bootlin.com diff --git a/toolchain/toolchain-external/toolchain-external-bootlin/Config.in.options b/toolchain/toolchain-external/toolchain-external-bootlin/Config.in.options new file mode 100644 index 00000000..61ead9b8 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-bootlin/Config.in.options @@ -0,0 +1,4303 @@ +# This file was auto-generated by support/scripts/gen-bootlin-toolchains +# Do not edit +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCH_SUPPORTS + bool + default y if BR2_aarch64 + default y if BR2_aarch64_be + default y if BR2_arcle && BR2_arc750d + default y if BR2_arcle && BR2_archs38 + default y if BR2_ARM_CPU_ARMV5 && BR2_ARM_EABI + default y if BR2_ARM_CPU_ARMV6 && BR2_ARM_EABIHF + default y if BR2_ARM_CPU_ARMV7A && BR2_ARM_EABIHF + default y if BR2_ARM_CPU_ARMV7M + default y if BR2_m68k_m68k + default y if BR2_m68k_cf + default y if BR2_microblazebe + default y if BR2_microblazeel + default y if BR2_mips && BR2_mips_32 && !BR2_MIPS_SOFT_FLOAT + default y if BR2_mipsel && BR2_mips_32 && !BR2_MIPS_SOFT_FLOAT + default y if BR2_mipsel && BR2_mips_32r5 && !BR2_MIPS_SOFT_FLOAT + default y if BR2_mipsel && BR2_mips_32r6 && !BR2_MIPS_SOFT_FLOAT + default y if BR2_mips64 && BR2_mips_64 && !BR2_MIPS_SOFT_FLOAT + default y if BR2_mips64 && BR2_mips_64 && BR2_MIPS_NABI32 && !BR2_MIPS_SOFT_FLOAT + default y if BR2_mips64el && BR2_mips_64 && BR2_MIPS_NABI32 && !BR2_MIPS_SOFT_FLOAT + default y if BR2_mips64el && BR2_mips_64r6 && BR2_MIPS_NABI32 && !BR2_MIPS_SOFT_FLOAT + default y if BR2_nios2 + default y if BR2_or1k + default y if BR2_powerpc && BR2_powerpc_440fp + default y if BR2_powerpc && BR2_powerpc_e300c3 + default y if BR2_powerpc && BR2_powerpc_e500mc + default y if BR2_powerpc64 && BR2_powerpc_e5500 + default y if BR2_powerpc64 && BR2_powerpc_e6500 + default y if BR2_powerpc64 && BR2_powerpc_power8 + default y if BR2_powerpc64le && BR2_powerpc_power8 + default y if BR2_riscv && BR2_riscv_g && BR2_RISCV_32 && BR2_RISCV_ABI_ILP32D + default y if BR2_riscv && BR2_riscv_g && BR2_RISCV_64 && BR2_RISCV_ABI_LP64 + default y if BR2_sh && BR2_sh4 + default y if BR2_sh && BR2_sh4aeb + default y if BR2_sparc64 && BR2_sparc_v9 + default y if BR2_sparc && BR2_sparc_v8 + default y if BR2_x86_64 && BR2_X86_CPU_HAS_MMX && BR2_X86_CPU_HAS_SSE && BR2_X86_CPU_HAS_SSE2 && BR2_X86_CPU_HAS_SSE3 && BR2_X86_CPU_HAS_SSSE3 && BR2_X86_CPU_HAS_SSE4 && BR2_X86_CPU_HAS_SSE42 + default y if BR2_i386 && BR2_X86_CPU_HAS_MMX && BR2_X86_CPU_HAS_SSE && BR2_X86_CPU_HAS_SSE2 && BR2_X86_CPU_HAS_SSE3 && BR2_X86_CPU_HAS_SSSE3 + default y if BR2_i386 && !BR2_x86_i486 && !BR2_x86_i586 && !BR2_x86_x1000 + default y if BR2_xtensa && BR2_XTENSA_CUSTOM && BR2_XTENSA_LITTLE_ENDIAN + +if BR2_TOOLCHAIN_EXTERNAL_BOOTLIN + +config BR2_TOOLCHAIN_EXTERNAL_PREFIX + default "$(ARCH)-linux" + +config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL + default "toolchain-external-bootlin" + +choice + prompt "Bootlin toolchain variant" +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_GLIBC_BLEEDING_EDGE + bool "aarch64 glibc bleeding-edge 2020.08-1" + depends on BR2_aarch64 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the aarch64 architecture, using the + glibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_GLIBC_STABLE + bool "aarch64 glibc stable 2020.08-1" + depends on BR2_aarch64 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the aarch64 architecture, using the + glibc C library. This is a stable version, which means it + is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_MUSL_BLEEDING_EDGE + bool "aarch64 musl bleeding-edge 2020.08-1" + depends on BR2_aarch64 + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the aarch64 architecture, using the + musl C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_MUSL_STABLE + bool "aarch64 musl stable 2020.08-1" + depends on BR2_aarch64 + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the aarch64 architecture, using the + musl C library. This is a stable version, which means it is + using stable and proven versions of gcc, gdb and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_UCLIBC_BLEEDING_EDGE + bool "aarch64 uclibc bleeding-edge 2020.08-1" + depends on BR2_aarch64 + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the aarch64 architecture, using the + uclibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_UCLIBC_STABLE + bool "aarch64 uclibc stable 2020.08-1" + depends on BR2_aarch64 + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the aarch64 architecture, using the + uclibc C library. This is a stable version, which means it + is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_GLIBC_BLEEDING_EDGE + bool "aarch64be glibc bleeding-edge 2020.08-1" + depends on BR2_aarch64_be + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the aarch64be architecture, using the + glibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_GLIBC_STABLE + bool "aarch64be glibc stable 2020.08-1" + depends on BR2_aarch64_be + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the aarch64be architecture, using the + glibc C library. This is a stable version, which means it + is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_UCLIBC_BLEEDING_EDGE + bool "aarch64be uclibc bleeding-edge 2020.08-1" + depends on BR2_aarch64_be + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the aarch64be architecture, using the + uclibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_UCLIBC_STABLE + bool "aarch64be uclibc stable 2020.08-1" + depends on BR2_aarch64_be + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the aarch64be architecture, using the + uclibc C library. This is a stable version, which means it + is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_750D_UCLIBC_BLEEDING_EDGE + bool "arcle-750d uclibc bleeding-edge 2020.08-1" + depends on BR2_arcle + depends on BR2_arc750d + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the arcle-750d architecture, using + the uclibc C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_750D_UCLIBC_STABLE + bool "arcle-750d uclibc stable 2020.08-1" + depends on BR2_arcle + depends on BR2_arc750d + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the arcle-750d architecture, using + the uclibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_HS38_GLIBC_BLEEDING_EDGE + bool "arcle-hs38 glibc bleeding-edge 2020.08-1" + depends on BR2_arcle + depends on BR2_archs38 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the arcle-hs38 architecture, using + the glibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_HS38_GLIBC_STABLE + bool "arcle-hs38 glibc stable 2020.08-1" + depends on BR2_arcle + depends on BR2_archs38 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the arcle-hs38 architecture, using + the glibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_HS38_UCLIBC_BLEEDING_EDGE + bool "arcle-hs38 uclibc bleeding-edge 2020.08-1" + depends on BR2_arcle + depends on BR2_archs38 + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the arcle-hs38 architecture, using + the uclibc C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_HS38_UCLIBC_STABLE + bool "arcle-hs38 uclibc stable 2020.08-1" + depends on BR2_arcle + depends on BR2_archs38 + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the arcle-hs38 architecture, using + the uclibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_BLEEDING_EDGE + bool "armv5-eabi glibc bleeding-edge 2020.08-1" + depends on BR2_ARM_CPU_ARMV5 + depends on BR2_ARM_EABI + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the armv5-eabi architecture, using + the glibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE + bool "armv5-eabi glibc stable 2020.08-1" + depends on BR2_ARM_CPU_ARMV5 + depends on BR2_ARM_EABI + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the armv5-eabi architecture, using + the glibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_MUSL_BLEEDING_EDGE + bool "armv5-eabi musl bleeding-edge 2020.08-1" + depends on BR2_ARM_CPU_ARMV5 + depends on BR2_ARM_EABI + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the armv5-eabi architecture, using + the musl C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_MUSL_STABLE + bool "armv5-eabi musl stable 2020.08-1" + depends on BR2_ARM_CPU_ARMV5 + depends on BR2_ARM_EABI + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the armv5-eabi architecture, using + the musl C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_UCLIBC_BLEEDING_EDGE + bool "armv5-eabi uclibc bleeding-edge 2020.08-1" + depends on BR2_ARM_CPU_ARMV5 + depends on BR2_ARM_EABI + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the armv5-eabi architecture, using + the uclibc C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_UCLIBC_STABLE + bool "armv5-eabi uclibc stable 2020.08-1" + depends on BR2_ARM_CPU_ARMV5 + depends on BR2_ARM_EABI + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the armv5-eabi architecture, using + the uclibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_GLIBC_BLEEDING_EDGE + bool "armv6-eabihf glibc bleeding-edge 2020.08-1" + depends on BR2_ARM_CPU_ARMV6 + depends on BR2_ARM_EABIHF + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the armv6-eabihf architecture, using + the glibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_GLIBC_STABLE + bool "armv6-eabihf glibc stable 2020.08-1" + depends on BR2_ARM_CPU_ARMV6 + depends on BR2_ARM_EABIHF + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the armv6-eabihf architecture, using + the glibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_MUSL_BLEEDING_EDGE + bool "armv6-eabihf musl bleeding-edge 2020.08-1" + depends on BR2_ARM_CPU_ARMV6 + depends on BR2_ARM_EABIHF + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the armv6-eabihf architecture, using + the musl C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_MUSL_STABLE + bool "armv6-eabihf musl stable 2020.08-1" + depends on BR2_ARM_CPU_ARMV6 + depends on BR2_ARM_EABIHF + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the armv6-eabihf architecture, using + the musl C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_UCLIBC_BLEEDING_EDGE + bool "armv6-eabihf uclibc bleeding-edge 2020.08-1" + depends on BR2_ARM_CPU_ARMV6 + depends on BR2_ARM_EABIHF + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the armv6-eabihf architecture, using + the uclibc C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_UCLIBC_STABLE + bool "armv6-eabihf uclibc stable 2020.08-1" + depends on BR2_ARM_CPU_ARMV6 + depends on BR2_ARM_EABIHF + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the armv6-eabihf architecture, using + the uclibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_GLIBC_BLEEDING_EDGE + bool "armv7-eabihf glibc bleeding-edge 2020.08-1" + depends on BR2_ARM_CPU_ARMV7A + depends on BR2_ARM_EABIHF + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the armv7-eabihf architecture, using + the glibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_GLIBC_STABLE + bool "armv7-eabihf glibc stable 2020.08-1" + depends on BR2_ARM_CPU_ARMV7A + depends on BR2_ARM_EABIHF + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the armv7-eabihf architecture, using + the glibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_MUSL_BLEEDING_EDGE + bool "armv7-eabihf musl bleeding-edge 2020.08-1" + depends on BR2_ARM_CPU_ARMV7A + depends on BR2_ARM_EABIHF + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the armv7-eabihf architecture, using + the musl C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_MUSL_STABLE + bool "armv7-eabihf musl stable 2020.08-1" + depends on BR2_ARM_CPU_ARMV7A + depends on BR2_ARM_EABIHF + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the armv7-eabihf architecture, using + the musl C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_UCLIBC_BLEEDING_EDGE + bool "armv7-eabihf uclibc bleeding-edge 2020.08-1" + depends on BR2_ARM_CPU_ARMV7A + depends on BR2_ARM_EABIHF + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the armv7-eabihf architecture, using + the uclibc C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_UCLIBC_STABLE + bool "armv7-eabihf uclibc stable 2020.08-1" + depends on BR2_ARM_CPU_ARMV7A + depends on BR2_ARM_EABIHF + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the armv7-eabihf architecture, using + the uclibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7M_UCLIBC_BLEEDING_EDGE + bool "armv7m uclibc bleeding-edge 2020.08-1" + depends on BR2_ARM_CPU_ARMV7M + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the armv7m architecture, using the + uclibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7M_UCLIBC_STABLE + bool "armv7m uclibc stable 2020.08-1" + depends on BR2_ARM_CPU_ARMV7M + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the armv7m architecture, using the + uclibc C library. This is a stable version, which means it + is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_M68K_68XXX_UCLIBC_BLEEDING_EDGE + bool "m68k-68xxx uclibc bleeding-edge 2020.08-1" + depends on BR2_m68k_m68k + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the m68k-68xxx architecture, using + the uclibc C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_M68K_68XXX_UCLIBC_STABLE + bool "m68k-68xxx uclibc stable 2020.08-1" + depends on BR2_m68k_m68k + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the m68k-68xxx architecture, using + the uclibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_M68K_COLDFIRE_UCLIBC_BLEEDING_EDGE + bool "m68k-coldfire uclibc bleeding-edge 2020.08-1" + depends on BR2_m68k_cf + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the m68k-coldfire architecture, using + the uclibc C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_M68K_COLDFIRE_UCLIBC_STABLE + bool "m68k-coldfire uclibc stable 2020.08-1" + depends on BR2_m68k_cf + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the m68k-coldfire architecture, using + the uclibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_GLIBC_BLEEDING_EDGE + bool "microblazebe glibc bleeding-edge 2020.08-1" + depends on BR2_microblazebe + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the microblazebe architecture, using + the glibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_GLIBC_STABLE + bool "microblazebe glibc stable 2020.08-1" + depends on BR2_microblazebe + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the microblazebe architecture, using + the glibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_MUSL_BLEEDING_EDGE + bool "microblazebe musl bleeding-edge 2020.08-1" + depends on BR2_microblazebe + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the microblazebe architecture, using + the musl C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_MUSL_STABLE + bool "microblazebe musl stable 2020.08-1" + depends on BR2_microblazebe + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the microblazebe architecture, using + the musl C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_UCLIBC_BLEEDING_EDGE + bool "microblazebe uclibc bleeding-edge 2020.08-1" + depends on BR2_microblazebe + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the microblazebe architecture, using + the uclibc C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_UCLIBC_STABLE + bool "microblazebe uclibc stable 2020.08-1" + depends on BR2_microblazebe + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the microblazebe architecture, using + the uclibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_GLIBC_BLEEDING_EDGE + bool "microblazeel glibc bleeding-edge 2020.08-1" + depends on BR2_microblazeel + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the microblazeel architecture, using + the glibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_GLIBC_STABLE + bool "microblazeel glibc stable 2020.08-1" + depends on BR2_microblazeel + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the microblazeel architecture, using + the glibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_MUSL_BLEEDING_EDGE + bool "microblazeel musl bleeding-edge 2020.08-1" + depends on BR2_microblazeel + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the microblazeel architecture, using + the musl C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_MUSL_STABLE + bool "microblazeel musl stable 2020.08-1" + depends on BR2_microblazeel + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the microblazeel architecture, using + the musl C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_UCLIBC_BLEEDING_EDGE + bool "microblazeel uclibc bleeding-edge 2020.08-1" + depends on BR2_microblazeel + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the microblazeel architecture, using + the uclibc C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_UCLIBC_STABLE + bool "microblazeel uclibc stable 2020.08-1" + depends on BR2_microblazeel + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the microblazeel architecture, using + the uclibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_GLIBC_BLEEDING_EDGE + bool "mips32 glibc bleeding-edge 2020.08-1" + depends on BR2_mips + depends on BR2_mips_32 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the mips32 architecture, using the + glibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_GLIBC_STABLE + bool "mips32 glibc stable 2020.08-1" + depends on BR2_mips + depends on BR2_mips_32 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the mips32 architecture, using the + glibc C library. This is a stable version, which means it + is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_MUSL_BLEEDING_EDGE + bool "mips32 musl bleeding-edge 2020.08-1" + depends on BR2_mips + depends on BR2_mips_32 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the mips32 architecture, using the + musl C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_MUSL_STABLE + bool "mips32 musl stable 2020.08-1" + depends on BR2_mips + depends on BR2_mips_32 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the mips32 architecture, using the + musl C library. This is a stable version, which means it is + using stable and proven versions of gcc, gdb and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_UCLIBC_BLEEDING_EDGE + bool "mips32 uclibc bleeding-edge 2020.08-1" + depends on BR2_mips + depends on BR2_mips_32 + depends on !BR2_MIPS_SOFT_FLOAT + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the mips32 architecture, using the + uclibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_UCLIBC_STABLE + bool "mips32 uclibc stable 2020.08-1" + depends on BR2_mips + depends on BR2_mips_32 + depends on !BR2_MIPS_SOFT_FLOAT + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the mips32 architecture, using the + uclibc C library. This is a stable version, which means it + is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_GLIBC_BLEEDING_EDGE + bool "mips32el glibc bleeding-edge 2020.08-1" + depends on BR2_mipsel + depends on BR2_mips_32 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the mips32el architecture, using the + glibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_GLIBC_STABLE + bool "mips32el glibc stable 2020.08-1" + depends on BR2_mipsel + depends on BR2_mips_32 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the mips32el architecture, using the + glibc C library. This is a stable version, which means it + is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_MUSL_BLEEDING_EDGE + bool "mips32el musl bleeding-edge 2020.08-1" + depends on BR2_mipsel + depends on BR2_mips_32 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the mips32el architecture, using the + musl C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_MUSL_STABLE + bool "mips32el musl stable 2020.08-1" + depends on BR2_mipsel + depends on BR2_mips_32 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the mips32el architecture, using the + musl C library. This is a stable version, which means it is + using stable and proven versions of gcc, gdb and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_UCLIBC_BLEEDING_EDGE + bool "mips32el uclibc bleeding-edge 2020.08-1" + depends on BR2_mipsel + depends on BR2_mips_32 + depends on !BR2_MIPS_SOFT_FLOAT + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the mips32el architecture, using the + uclibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_UCLIBC_STABLE + bool "mips32el uclibc stable 2020.08-1" + depends on BR2_mipsel + depends on BR2_mips_32 + depends on !BR2_MIPS_SOFT_FLOAT + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the mips32el architecture, using the + uclibc C library. This is a stable version, which means it + is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_GLIBC_BLEEDING_EDGE + bool "mips32r5el glibc bleeding-edge 2020.08-1" + depends on BR2_mipsel + depends on BR2_mips_32r5 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the mips32r5el architecture, using + the glibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_GLIBC_STABLE + bool "mips32r5el glibc stable 2020.08-1" + depends on BR2_mipsel + depends on BR2_mips_32r5 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the mips32r5el architecture, using + the glibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_MUSL_BLEEDING_EDGE + bool "mips32r5el musl bleeding-edge 2020.08-1" + depends on BR2_mipsel + depends on BR2_mips_32r5 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the mips32r5el architecture, using + the musl C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_MUSL_STABLE + bool "mips32r5el musl stable 2020.08-1" + depends on BR2_mipsel + depends on BR2_mips_32r5 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the mips32r5el architecture, using + the musl C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_UCLIBC_BLEEDING_EDGE + bool "mips32r5el uclibc bleeding-edge 2020.08-1" + depends on BR2_mipsel + depends on BR2_mips_32r5 + depends on !BR2_MIPS_SOFT_FLOAT + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the mips32r5el architecture, using + the uclibc C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_UCLIBC_STABLE + bool "mips32r5el uclibc stable 2020.08-1" + depends on BR2_mipsel + depends on BR2_mips_32r5 + depends on !BR2_MIPS_SOFT_FLOAT + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the mips32r5el architecture, using + the uclibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_GLIBC_BLEEDING_EDGE + bool "mips32r6el glibc bleeding-edge 2020.08-1" + depends on BR2_mipsel + depends on BR2_mips_32r6 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the mips32r6el architecture, using + the glibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_GLIBC_STABLE + bool "mips32r6el glibc stable 2020.08-1" + depends on BR2_mipsel + depends on BR2_mips_32r6 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the mips32r6el architecture, using + the glibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_MUSL_BLEEDING_EDGE + bool "mips32r6el musl bleeding-edge 2020.08-1" + depends on BR2_mipsel + depends on BR2_mips_32r6 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the mips32r6el architecture, using + the musl C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_MUSL_STABLE + bool "mips32r6el musl stable 2020.08-1" + depends on BR2_mipsel + depends on BR2_mips_32r6 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the mips32r6el architecture, using + the musl C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_UCLIBC_BLEEDING_EDGE + bool "mips32r6el uclibc bleeding-edge 2020.08-1" + depends on BR2_mipsel + depends on BR2_mips_32r6 + depends on !BR2_MIPS_SOFT_FLOAT + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the mips32r6el architecture, using + the uclibc C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_UCLIBC_STABLE + bool "mips32r6el uclibc stable 2020.08-1" + depends on BR2_mipsel + depends on BR2_mips_32r6 + depends on !BR2_MIPS_SOFT_FLOAT + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the mips32r6el architecture, using + the uclibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_GLIBC_BLEEDING_EDGE + bool "mips64-n32 glibc bleeding-edge 2020.08-1" + depends on BR2_mips64 + depends on BR2_mips_64 + depends on BR2_MIPS_NABI32 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the mips64-n32 architecture, using + the glibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_GLIBC_STABLE + bool "mips64-n32 glibc stable 2020.08-1" + depends on BR2_mips64 + depends on BR2_mips_64 + depends on BR2_MIPS_NABI32 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the mips64-n32 architecture, using + the glibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_MUSL_BLEEDING_EDGE + bool "mips64-n32 musl bleeding-edge 2020.08-1" + depends on BR2_mips64 + depends on BR2_mips_64 + depends on BR2_MIPS_NABI32 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the mips64-n32 architecture, using + the musl C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_MUSL_STABLE + bool "mips64-n32 musl stable 2020.08-1" + depends on BR2_mips64 + depends on BR2_mips_64 + depends on BR2_MIPS_NABI32 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the mips64-n32 architecture, using + the musl C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_UCLIBC_BLEEDING_EDGE + bool "mips64-n32 uclibc bleeding-edge 2020.08-1" + depends on BR2_mips64 + depends on BR2_mips_64 + depends on BR2_MIPS_NABI32 + depends on !BR2_MIPS_SOFT_FLOAT + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the mips64-n32 architecture, using + the uclibc C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_UCLIBC_STABLE + bool "mips64-n32 uclibc stable 2020.08-1" + depends on BR2_mips64 + depends on BR2_mips_64 + depends on BR2_MIPS_NABI32 + depends on !BR2_MIPS_SOFT_FLOAT + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the mips64-n32 architecture, using + the uclibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_GLIBC_BLEEDING_EDGE + bool "mips64el-n32 glibc bleeding-edge 2020.08-1" + depends on BR2_mips64el + depends on BR2_mips_64 + depends on BR2_MIPS_NABI32 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the mips64el-n32 architecture, using + the glibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_GLIBC_STABLE + bool "mips64el-n32 glibc stable 2020.08-1" + depends on BR2_mips64el + depends on BR2_mips_64 + depends on BR2_MIPS_NABI32 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the mips64el-n32 architecture, using + the glibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_MUSL_BLEEDING_EDGE + bool "mips64el-n32 musl bleeding-edge 2020.08-1" + depends on BR2_mips64el + depends on BR2_mips_64 + depends on BR2_MIPS_NABI32 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the mips64el-n32 architecture, using + the musl C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_MUSL_STABLE + bool "mips64el-n32 musl stable 2020.08-1" + depends on BR2_mips64el + depends on BR2_mips_64 + depends on BR2_MIPS_NABI32 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the mips64el-n32 architecture, using + the musl C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_UCLIBC_BLEEDING_EDGE + bool "mips64el-n32 uclibc bleeding-edge 2020.08-1" + depends on BR2_mips64el + depends on BR2_mips_64 + depends on BR2_MIPS_NABI32 + depends on !BR2_MIPS_SOFT_FLOAT + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the mips64el-n32 architecture, using + the uclibc C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_UCLIBC_STABLE + bool "mips64el-n32 uclibc stable 2020.08-1" + depends on BR2_mips64el + depends on BR2_mips_64 + depends on BR2_MIPS_NABI32 + depends on !BR2_MIPS_SOFT_FLOAT + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the mips64el-n32 architecture, using + the uclibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_GLIBC_BLEEDING_EDGE + bool "mips64r6el-n32 glibc bleeding-edge 2020.08-1" + depends on BR2_mips64el + depends on BR2_mips_64r6 + depends on BR2_MIPS_NABI32 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the mips64r6el-n32 architecture, + using the glibc C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_GLIBC_STABLE + bool "mips64r6el-n32 glibc stable 2020.08-1" + depends on BR2_mips64el + depends on BR2_mips_64r6 + depends on BR2_MIPS_NABI32 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the mips64r6el-n32 architecture, + using the glibc C library. This is a stable version, which + means it is using stable and proven versions of gcc, gdb + and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_MUSL_BLEEDING_EDGE + bool "mips64r6el-n32 musl bleeding-edge 2020.08-1" + depends on BR2_mips64el + depends on BR2_mips_64r6 + depends on BR2_MIPS_NABI32 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the mips64r6el-n32 architecture, + using the musl C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_MUSL_STABLE + bool "mips64r6el-n32 musl stable 2020.08-1" + depends on BR2_mips64el + depends on BR2_mips_64r6 + depends on BR2_MIPS_NABI32 + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the mips64r6el-n32 architecture, + using the musl C library. This is a stable version, which + means it is using stable and proven versions of gcc, gdb + and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_UCLIBC_BLEEDING_EDGE + bool "mips64r6el-n32 uclibc bleeding-edge 2020.08-1" + depends on BR2_mips64el + depends on BR2_mips_64r6 + depends on BR2_MIPS_NABI32 + depends on !BR2_MIPS_SOFT_FLOAT + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the mips64r6el-n32 architecture, + using the uclibc C library. This is a bleeding-edge + version, which means it is using the latest versions of + gcc, gdb and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_UCLIBC_STABLE + bool "mips64r6el-n32 uclibc stable 2020.08-1" + depends on BR2_mips64el + depends on BR2_mips_64r6 + depends on BR2_MIPS_NABI32 + depends on !BR2_MIPS_SOFT_FLOAT + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the mips64r6el-n32 architecture, + using the uclibc C library. This is a stable version, which + means it is using stable and proven versions of gcc, gdb + and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_NIOS2_GLIBC_BLEEDING_EDGE + bool "nios2 glibc bleeding-edge 2020.08-1" + depends on BR2_nios2 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the nios2 architecture, using the + glibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_NIOS2_GLIBC_STABLE + bool "nios2 glibc stable 2020.08-1" + depends on BR2_nios2 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the nios2 architecture, using the + glibc C library. This is a stable version, which means it + is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_MUSL_BLEEDING_EDGE + bool "openrisc musl bleeding-edge 2020.08-1" + depends on BR2_or1k + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the openrisc architecture, using the + musl C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_MUSL_STABLE + bool "openrisc musl stable 2020.08-1" + depends on BR2_or1k + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the openrisc architecture, using the + musl C library. This is a stable version, which means it is + using stable and proven versions of gcc, gdb and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_UCLIBC_BLEEDING_EDGE + bool "openrisc uclibc bleeding-edge 2020.08-1" + depends on BR2_or1k + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the openrisc architecture, using the + uclibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_UCLIBC_STABLE + bool "openrisc uclibc stable 2020.08-1" + depends on BR2_or1k + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the openrisc architecture, using the + uclibc C library. This is a stable version, which means it + is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_GLIBC_BLEEDING_EDGE + bool "powerpc-440fp glibc bleeding-edge 2020.08-2" + depends on BR2_powerpc + depends on BR2_powerpc_440fp + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + help + Bootlin toolchain for the powerpc-440fp architecture, using + the glibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_GLIBC_STABLE + bool "powerpc-440fp glibc stable 2020.08-2" + depends on BR2_powerpc + depends on BR2_powerpc_440fp + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + help + Bootlin toolchain for the powerpc-440fp architecture, using + the glibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_MUSL_BLEEDING_EDGE + bool "powerpc-440fp musl bleeding-edge 2020.08-2" + depends on BR2_powerpc + depends on BR2_powerpc_440fp + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the powerpc-440fp architecture, using + the musl C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_MUSL_STABLE + bool "powerpc-440fp musl stable 2020.08-2" + depends on BR2_powerpc + depends on BR2_powerpc_440fp + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the powerpc-440fp architecture, using + the musl C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_UCLIBC_BLEEDING_EDGE + bool "powerpc-440fp uclibc bleeding-edge 2020.08-2" + depends on BR2_powerpc + depends on BR2_powerpc_440fp + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the powerpc-440fp architecture, using + the uclibc C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_UCLIBC_STABLE + bool "powerpc-440fp uclibc stable 2020.08-2" + depends on BR2_powerpc + depends on BR2_powerpc_440fp + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the powerpc-440fp architecture, using + the uclibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_GLIBC_BLEEDING_EDGE + bool "powerpc-e300c3 glibc bleeding-edge 2020.08-1" + depends on BR2_powerpc + depends on BR2_powerpc_e300c3 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the powerpc-e300c3 architecture, + using the glibc C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_GLIBC_STABLE + bool "powerpc-e300c3 glibc stable 2020.08-1" + depends on BR2_powerpc + depends on BR2_powerpc_e300c3 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the powerpc-e300c3 architecture, + using the glibc C library. This is a stable version, which + means it is using stable and proven versions of gcc, gdb + and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_MUSL_BLEEDING_EDGE + bool "powerpc-e300c3 musl bleeding-edge 2020.08-1" + depends on BR2_powerpc + depends on BR2_powerpc_e300c3 + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the powerpc-e300c3 architecture, + using the musl C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_MUSL_STABLE + bool "powerpc-e300c3 musl stable 2020.08-1" + depends on BR2_powerpc + depends on BR2_powerpc_e300c3 + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the powerpc-e300c3 architecture, + using the musl C library. This is a stable version, which + means it is using stable and proven versions of gcc, gdb + and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_UCLIBC_BLEEDING_EDGE + bool "powerpc-e300c3 uclibc bleeding-edge 2020.08-1" + depends on BR2_powerpc + depends on BR2_powerpc_e300c3 + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the powerpc-e300c3 architecture, + using the uclibc C library. This is a bleeding-edge + version, which means it is using the latest versions of + gcc, gdb and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_UCLIBC_STABLE + bool "powerpc-e300c3 uclibc stable 2020.08-1" + depends on BR2_powerpc + depends on BR2_powerpc_e300c3 + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the powerpc-e300c3 architecture, + using the uclibc C library. This is a stable version, which + means it is using stable and proven versions of gcc, gdb + and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_GLIBC_BLEEDING_EDGE + bool "powerpc-e500mc glibc bleeding-edge 2020.08-1" + depends on BR2_powerpc + depends on BR2_powerpc_e500mc + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the powerpc-e500mc architecture, + using the glibc C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_GLIBC_STABLE + bool "powerpc-e500mc glibc stable 2020.08-1" + depends on BR2_powerpc + depends on BR2_powerpc_e500mc + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the powerpc-e500mc architecture, + using the glibc C library. This is a stable version, which + means it is using stable and proven versions of gcc, gdb + and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_MUSL_BLEEDING_EDGE + bool "powerpc-e500mc musl bleeding-edge 2020.08-1" + depends on BR2_powerpc + depends on BR2_powerpc_e500mc + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the powerpc-e500mc architecture, + using the musl C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_MUSL_STABLE + bool "powerpc-e500mc musl stable 2020.08-1" + depends on BR2_powerpc + depends on BR2_powerpc_e500mc + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the powerpc-e500mc architecture, + using the musl C library. This is a stable version, which + means it is using stable and proven versions of gcc, gdb + and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_UCLIBC_BLEEDING_EDGE + bool "powerpc-e500mc uclibc bleeding-edge 2020.08-1" + depends on BR2_powerpc + depends on BR2_powerpc_e500mc + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the powerpc-e500mc architecture, + using the uclibc C library. This is a bleeding-edge + version, which means it is using the latest versions of + gcc, gdb and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_UCLIBC_STABLE + bool "powerpc-e500mc uclibc stable 2020.08-1" + depends on BR2_powerpc + depends on BR2_powerpc_e500mc + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the powerpc-e500mc architecture, + using the uclibc C library. This is a stable version, which + means it is using stable and proven versions of gcc, gdb + and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E5500_GLIBC_BLEEDING_EDGE + bool "powerpc64-e5500 glibc bleeding-edge 2020.08-1" + depends on BR2_powerpc64 + depends on BR2_powerpc_e5500 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the powerpc64-e5500 architecture, + using the glibc C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E5500_GLIBC_STABLE + bool "powerpc64-e5500 glibc stable 2020.08-1" + depends on BR2_powerpc64 + depends on BR2_powerpc_e5500 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the powerpc64-e5500 architecture, + using the glibc C library. This is a stable version, which + means it is using stable and proven versions of gcc, gdb + and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E6500_GLIBC_BLEEDING_EDGE + bool "powerpc64-e6500 glibc bleeding-edge 2020.08-1" + depends on BR2_powerpc64 + depends on BR2_powerpc_e6500 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the powerpc64-e6500 architecture, + using the glibc C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E6500_GLIBC_STABLE + bool "powerpc64-e6500 glibc stable 2020.08-1" + depends on BR2_powerpc64 + depends on BR2_powerpc_e6500 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the powerpc64-e6500 architecture, + using the glibc C library. This is a stable version, which + means it is using stable and proven versions of gcc, gdb + and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E6500_MUSL_BLEEDING_EDGE + bool "powerpc64-e6500 musl bleeding-edge 2020.08-1" + depends on BR2_powerpc64 + depends on BR2_powerpc_e6500 + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the powerpc64-e6500 architecture, + using the musl C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E6500_MUSL_STABLE + bool "powerpc64-e6500 musl stable 2020.08-1" + depends on BR2_powerpc64 + depends on BR2_powerpc_e6500 + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the powerpc64-e6500 architecture, + using the musl C library. This is a stable version, which + means it is using stable and proven versions of gcc, gdb + and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_POWER8_GLIBC_BLEEDING_EDGE + bool "powerpc64-power8 glibc bleeding-edge 2020.08-1" + depends on BR2_powerpc64 + depends on BR2_powerpc_power8 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the powerpc64-power8 architecture, + using the glibc C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_POWER8_GLIBC_STABLE + bool "powerpc64-power8 glibc stable 2020.08-1" + depends on BR2_powerpc64 + depends on BR2_powerpc_power8 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the powerpc64-power8 architecture, + using the glibc C library. This is a stable version, which + means it is using stable and proven versions of gcc, gdb + and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_POWER8_MUSL_BLEEDING_EDGE + bool "powerpc64-power8 musl bleeding-edge 2020.08-1" + depends on BR2_powerpc64 + depends on BR2_powerpc_power8 + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the powerpc64-power8 architecture, + using the musl C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_POWER8_MUSL_STABLE + bool "powerpc64-power8 musl stable 2020.08-1" + depends on BR2_powerpc64 + depends on BR2_powerpc_power8 + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the powerpc64-power8 architecture, + using the musl C library. This is a stable version, which + means it is using stable and proven versions of gcc, gdb + and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64LE_POWER8_GLIBC_BLEEDING_EDGE + bool "powerpc64le-power8 glibc bleeding-edge 2020.08-1" + depends on BR2_powerpc64le + depends on BR2_powerpc_power8 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the powerpc64le-power8 architecture, + using the glibc C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64LE_POWER8_GLIBC_STABLE + bool "powerpc64le-power8 glibc stable 2020.08-1" + depends on BR2_powerpc64le + depends on BR2_powerpc_power8 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the powerpc64le-power8 architecture, + using the glibc C library. This is a stable version, which + means it is using stable and proven versions of gcc, gdb + and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64LE_POWER8_MUSL_BLEEDING_EDGE + bool "powerpc64le-power8 musl bleeding-edge 2020.08-1" + depends on BR2_powerpc64le + depends on BR2_powerpc_power8 + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the powerpc64le-power8 architecture, + using the musl C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64LE_POWER8_MUSL_STABLE + bool "powerpc64le-power8 musl stable 2020.08-1" + depends on BR2_powerpc64le + depends on BR2_powerpc_power8 + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the powerpc64le-power8 architecture, + using the musl C library. This is a stable version, which + means it is using stable and proven versions of gcc, gdb + and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV32_ILP32D_GLIBC_BLEEDING_EDGE + bool "riscv32-ilp32d glibc bleeding-edge 2020.08-1" + depends on BR2_riscv + depends on BR2_riscv_g + depends on BR2_RISCV_32 + depends on BR2_RISCV_ABI_ILP32D + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + help + Bootlin toolchain for the riscv32-ilp32d architecture, + using the glibc C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV64_GLIBC_BLEEDING_EDGE + bool "riscv64 glibc bleeding-edge 2020.08-1" + depends on BR2_riscv + depends on BR2_riscv_g + depends on BR2_RISCV_64 + depends on BR2_RISCV_ABI_LP64 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the riscv64 architecture, using the + glibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV64_MUSL_BLEEDING_EDGE + bool "riscv64 musl bleeding-edge 2020.08-1" + depends on BR2_riscv + depends on BR2_riscv_g + depends on BR2_RISCV_64 + depends on BR2_RISCV_ABI_LP64 + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the riscv64 architecture, using the + musl C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_GLIBC_BLEEDING_EDGE + bool "sh-sh4 glibc bleeding-edge 2020.08-1" + depends on BR2_sh + depends on BR2_sh4 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the sh-sh4 architecture, using the + glibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_GLIBC_STABLE + bool "sh-sh4 glibc stable 2020.08-1" + depends on BR2_sh + depends on BR2_sh4 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the sh-sh4 architecture, using the + glibc C library. This is a stable version, which means it + is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_MUSL_BLEEDING_EDGE + bool "sh-sh4 musl bleeding-edge 2020.08-1" + depends on BR2_sh + depends on BR2_sh4 + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the sh-sh4 architecture, using the + musl C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_MUSL_STABLE + bool "sh-sh4 musl stable 2020.08-1" + depends on BR2_sh + depends on BR2_sh4 + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the sh-sh4 architecture, using the + musl C library. This is a stable version, which means it is + using stable and proven versions of gcc, gdb and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_UCLIBC_BLEEDING_EDGE + bool "sh-sh4 uclibc bleeding-edge 2020.08-1" + depends on BR2_sh + depends on BR2_sh4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the sh-sh4 architecture, using the + uclibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_UCLIBC_STABLE + bool "sh-sh4 uclibc stable 2020.08-1" + depends on BR2_sh + depends on BR2_sh4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the sh-sh4 architecture, using the + uclibc C library. This is a stable version, which means it + is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4AEB_GLIBC_BLEEDING_EDGE + bool "sh-sh4aeb glibc bleeding-edge 2020.08-1" + depends on BR2_sh + depends on BR2_sh4aeb + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the sh-sh4aeb architecture, using the + glibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4AEB_GLIBC_STABLE + bool "sh-sh4aeb glibc stable 2020.08-1" + depends on BR2_sh + depends on BR2_sh4aeb + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the sh-sh4aeb architecture, using the + glibc C library. This is a stable version, which means it + is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4AEB_MUSL_BLEEDING_EDGE + bool "sh-sh4aeb musl bleeding-edge 2020.08-1" + depends on BR2_sh + depends on BR2_sh4aeb + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the sh-sh4aeb architecture, using the + musl C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4AEB_MUSL_STABLE + bool "sh-sh4aeb musl stable 2020.08-1" + depends on BR2_sh + depends on BR2_sh4aeb + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the sh-sh4aeb architecture, using the + musl C library. This is a stable version, which means it is + using stable and proven versions of gcc, gdb and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SPARC64_GLIBC_BLEEDING_EDGE + bool "sparc64 glibc bleeding-edge 2020.08-1" + depends on BR2_sparc64 + depends on BR2_sparc_v9 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the sparc64 architecture, using the + glibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SPARC64_GLIBC_STABLE + bool "sparc64 glibc stable 2020.08-1" + depends on BR2_sparc64 + depends on BR2_sparc_v9 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the sparc64 architecture, using the + glibc C library. This is a stable version, which means it + is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SPARCV8_UCLIBC_BLEEDING_EDGE + bool "sparcv8 uclibc bleeding-edge 2020.08-1" + depends on BR2_sparc + depends on BR2_sparc_v8 + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the sparcv8 architecture, using the + uclibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SPARCV8_UCLIBC_STABLE + bool "sparcv8 uclibc stable 2020.08-1" + depends on BR2_sparc + depends on BR2_sparc_v8 + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the sparcv8 architecture, using the + uclibc C library. This is a stable version, which means it + is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_GLIBC_BLEEDING_EDGE + bool "x86-64-core-i7 glibc bleeding-edge 2020.08-1" + depends on BR2_x86_64 + depends on BR2_X86_CPU_HAS_MMX + depends on BR2_X86_CPU_HAS_SSE + depends on BR2_X86_CPU_HAS_SSE2 + depends on BR2_X86_CPU_HAS_SSE3 + depends on BR2_X86_CPU_HAS_SSSE3 + depends on BR2_X86_CPU_HAS_SSE4 + depends on BR2_X86_CPU_HAS_SSE42 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the x86-64-core-i7 architecture, + using the glibc C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_GLIBC_STABLE + bool "x86-64-core-i7 glibc stable 2020.08-1" + depends on BR2_x86_64 + depends on BR2_X86_CPU_HAS_MMX + depends on BR2_X86_CPU_HAS_SSE + depends on BR2_X86_CPU_HAS_SSE2 + depends on BR2_X86_CPU_HAS_SSE3 + depends on BR2_X86_CPU_HAS_SSSE3 + depends on BR2_X86_CPU_HAS_SSE4 + depends on BR2_X86_CPU_HAS_SSE42 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the x86-64-core-i7 architecture, + using the glibc C library. This is a stable version, which + means it is using stable and proven versions of gcc, gdb + and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_MUSL_BLEEDING_EDGE + bool "x86-64-core-i7 musl bleeding-edge 2020.08-1" + depends on BR2_x86_64 + depends on BR2_X86_CPU_HAS_MMX + depends on BR2_X86_CPU_HAS_SSE + depends on BR2_X86_CPU_HAS_SSE2 + depends on BR2_X86_CPU_HAS_SSE3 + depends on BR2_X86_CPU_HAS_SSSE3 + depends on BR2_X86_CPU_HAS_SSE4 + depends on BR2_X86_CPU_HAS_SSE42 + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the x86-64-core-i7 architecture, + using the musl C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_MUSL_STABLE + bool "x86-64-core-i7 musl stable 2020.08-1" + depends on BR2_x86_64 + depends on BR2_X86_CPU_HAS_MMX + depends on BR2_X86_CPU_HAS_SSE + depends on BR2_X86_CPU_HAS_SSE2 + depends on BR2_X86_CPU_HAS_SSE3 + depends on BR2_X86_CPU_HAS_SSSE3 + depends on BR2_X86_CPU_HAS_SSE4 + depends on BR2_X86_CPU_HAS_SSE42 + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the x86-64-core-i7 architecture, + using the musl C library. This is a stable version, which + means it is using stable and proven versions of gcc, gdb + and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_UCLIBC_BLEEDING_EDGE + bool "x86-64-core-i7 uclibc bleeding-edge 2020.08-1" + depends on BR2_x86_64 + depends on BR2_X86_CPU_HAS_MMX + depends on BR2_X86_CPU_HAS_SSE + depends on BR2_X86_CPU_HAS_SSE2 + depends on BR2_X86_CPU_HAS_SSE3 + depends on BR2_X86_CPU_HAS_SSSE3 + depends on BR2_X86_CPU_HAS_SSE4 + depends on BR2_X86_CPU_HAS_SSE42 + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the x86-64-core-i7 architecture, + using the uclibc C library. This is a bleeding-edge + version, which means it is using the latest versions of + gcc, gdb and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_UCLIBC_STABLE + bool "x86-64-core-i7 uclibc stable 2020.08-1" + depends on BR2_x86_64 + depends on BR2_X86_CPU_HAS_MMX + depends on BR2_X86_CPU_HAS_SSE + depends on BR2_X86_CPU_HAS_SSE2 + depends on BR2_X86_CPU_HAS_SSE3 + depends on BR2_X86_CPU_HAS_SSSE3 + depends on BR2_X86_CPU_HAS_SSE4 + depends on BR2_X86_CPU_HAS_SSE42 + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the x86-64-core-i7 architecture, + using the uclibc C library. This is a stable version, which + means it is using stable and proven versions of gcc, gdb + and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_GLIBC_BLEEDING_EDGE + bool "x86-core2 glibc bleeding-edge 2020.08-1" + depends on BR2_i386 + depends on BR2_X86_CPU_HAS_MMX + depends on BR2_X86_CPU_HAS_SSE + depends on BR2_X86_CPU_HAS_SSE2 + depends on BR2_X86_CPU_HAS_SSE3 + depends on BR2_X86_CPU_HAS_SSSE3 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the x86-core2 architecture, using the + glibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_GLIBC_STABLE + bool "x86-core2 glibc stable 2020.08-1" + depends on BR2_i386 + depends on BR2_X86_CPU_HAS_MMX + depends on BR2_X86_CPU_HAS_SSE + depends on BR2_X86_CPU_HAS_SSE2 + depends on BR2_X86_CPU_HAS_SSE3 + depends on BR2_X86_CPU_HAS_SSSE3 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the x86-core2 architecture, using the + glibc C library. This is a stable version, which means it + is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_MUSL_BLEEDING_EDGE + bool "x86-core2 musl bleeding-edge 2020.08-1" + depends on BR2_i386 + depends on BR2_X86_CPU_HAS_MMX + depends on BR2_X86_CPU_HAS_SSE + depends on BR2_X86_CPU_HAS_SSE2 + depends on BR2_X86_CPU_HAS_SSE3 + depends on BR2_X86_CPU_HAS_SSSE3 + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the x86-core2 architecture, using the + musl C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_MUSL_STABLE + bool "x86-core2 musl stable 2020.08-1" + depends on BR2_i386 + depends on BR2_X86_CPU_HAS_MMX + depends on BR2_X86_CPU_HAS_SSE + depends on BR2_X86_CPU_HAS_SSE2 + depends on BR2_X86_CPU_HAS_SSE3 + depends on BR2_X86_CPU_HAS_SSSE3 + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the x86-core2 architecture, using the + musl C library. This is a stable version, which means it is + using stable and proven versions of gcc, gdb and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_UCLIBC_BLEEDING_EDGE + bool "x86-core2 uclibc bleeding-edge 2020.08-1" + depends on BR2_i386 + depends on BR2_X86_CPU_HAS_MMX + depends on BR2_X86_CPU_HAS_SSE + depends on BR2_X86_CPU_HAS_SSE2 + depends on BR2_X86_CPU_HAS_SSE3 + depends on BR2_X86_CPU_HAS_SSSE3 + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the x86-core2 architecture, using the + uclibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_UCLIBC_STABLE + bool "x86-core2 uclibc stable 2020.08-1" + depends on BR2_i386 + depends on BR2_X86_CPU_HAS_MMX + depends on BR2_X86_CPU_HAS_SSE + depends on BR2_X86_CPU_HAS_SSE2 + depends on BR2_X86_CPU_HAS_SSE3 + depends on BR2_X86_CPU_HAS_SSSE3 + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the x86-core2 architecture, using the + uclibc C library. This is a stable version, which means it + is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_GLIBC_BLEEDING_EDGE + bool "x86-i686 glibc bleeding-edge 2020.08-1" + depends on BR2_i386 + depends on !BR2_x86_i486 + depends on !BR2_x86_i586 + depends on !BR2_x86_x1000 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the x86-i686 architecture, using the + glibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_GLIBC_STABLE + bool "x86-i686 glibc stable 2020.08-1" + depends on BR2_i386 + depends on !BR2_x86_i486 + depends on !BR2_x86_i586 + depends on !BR2_x86_x1000 + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Bootlin toolchain for the x86-i686 architecture, using the + glibc C library. This is a stable version, which means it + is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_MUSL_BLEEDING_EDGE + bool "x86-i686 musl bleeding-edge 2020.08-1" + depends on BR2_i386 + depends on !BR2_x86_i486 + depends on !BR2_x86_i586 + depends on !BR2_x86_x1000 + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the x86-i686 architecture, using the + musl C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_MUSL_STABLE + bool "x86-i686 musl stable 2020.08-1" + depends on BR2_i386 + depends on !BR2_x86_i486 + depends on !BR2_x86_i586 + depends on !BR2_x86_x1000 + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the x86-i686 architecture, using the + musl C library. This is a stable version, which means it is + using stable and proven versions of gcc, gdb and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_UCLIBC_BLEEDING_EDGE + bool "x86-i686 uclibc bleeding-edge 2020.08-1" + depends on BR2_i386 + depends on !BR2_x86_i486 + depends on !BR2_x86_i586 + depends on !BR2_x86_x1000 + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the x86-i686 architecture, using the + uclibc C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_UCLIBC_STABLE + bool "x86-i686 uclibc stable 2020.08-1" + depends on BR2_i386 + depends on !BR2_x86_i486 + depends on !BR2_x86_i586 + depends on !BR2_x86_x1000 + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the x86-i686 architecture, using the + uclibc C library. This is a stable version, which means it + is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_XTENSA_LX60_UCLIBC_BLEEDING_EDGE + bool "xtensa-lx60 uclibc bleeding-edge 2020.08-1" + depends on BR2_xtensa + depends on BR2_XTENSA_CUSTOM + depends on BR2_XTENSA_LITTLE_ENDIAN + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the xtensa-lx60 architecture, using + the uclibc C library. This is a bleeding-edge version, + which means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_XTENSA_LX60_UCLIBC_STABLE + bool "xtensa-lx60 uclibc stable 2020.08-1" + depends on BR2_xtensa + depends on BR2_XTENSA_CUSTOM + depends on BR2_XTENSA_LITTLE_ENDIAN + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_USE_WCHAR + select BR2_ENABLE_LOCALE + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Bootlin toolchain for the xtensa-lx60 architecture, using + the uclibc C library. This is a stable version, which means + it is using stable and proven versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +endchoice +endif diff --git a/toolchain/toolchain-external/toolchain-external-bootlin/toolchain-external-bootlin.hash b/toolchain/toolchain-external/toolchain-external-bootlin/toolchain-external-bootlin.hash new file mode 100644 index 00000000..3e6eb99c --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-bootlin/toolchain-external-bootlin.hash @@ -0,0 +1,340 @@ +# This file was auto-generated by support/scripts/gen-bootlin-toolchains +# Do not edit +# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs/aarch64--glibc--bleeding-edge-2020.08-1.sha256 +sha256 212f3c05f3b2263b0e2f902d055aecc2755eba10c0011927788a38faee8fc9aa aarch64--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs/aarch64--glibc--stable-2020.08-1.sha256 +sha256 8ab7a2f17cb96621b048ab0a872650dd62faa54cd74c961b9902b8c04bff7dd1 aarch64--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs/aarch64--musl--bleeding-edge-2020.08-1.sha256 +sha256 3cf00c1ccaf16d0fbc526529789791de1cf98b918ff812e779f8400d40b6c048 aarch64--musl--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs/aarch64--musl--stable-2020.08-1.sha256 +sha256 8319d27e3e637f32ecbdf49ceee2e9b7768b32d3ec7c92c888ff52e6f062bde4 aarch64--musl--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs/aarch64--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 57fe5cecf37778b35dd09d9a016a1d6d9d7bb0e96ffcc5565e0aa483a46ea3db aarch64--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs/aarch64--uclibc--stable-2020.08-1.sha256 +sha256 04176f56ac977215c5257c307cece2d32e03770b96380e09c50379d4d84a5b39 aarch64--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64be/tarballs/aarch64be--glibc--bleeding-edge-2020.08-1.sha256 +sha256 9631a57809d2fc2c7bb82bdd79d7647ccabe193126cc59ff9721a573d8870510 aarch64be--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64be/tarballs/aarch64be--glibc--stable-2020.08-1.sha256 +sha256 71e24a2a205726d7d8ec56ead13b7eb427d5aed0e057a94ee06688334a07e6dd aarch64be--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64be/tarballs/aarch64be--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 76017614f0e7770499b5d18943398e51ae1c36d075cf8fba90ea050a29cad747 aarch64be--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64be/tarballs/aarch64be--uclibc--stable-2020.08-1.sha256 +sha256 a3bff78e98b2e17ab142ec630f9184f0cd4be6f1f313fdc112d89a843d92cedc aarch64be--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-750d/tarballs/arcle-750d--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 e33570bdddc08d01b0da81ef6c3b240c6e0a4948f0100314b0be63c18c5f75db arcle-750d--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-750d/tarballs/arcle-750d--uclibc--stable-2020.08-1.sha256 +sha256 bae0cbcab3b3b0149503aef6003dd816102b261461e37d89d32ffe9eb7f5dab9 arcle-750d--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-hs38/tarballs/arcle-hs38--glibc--bleeding-edge-2020.08-1.sha256 +sha256 219be8c5390da6830e7529cb0a611996a8c9451bfa1560d7bda4ed5b182f7744 arcle-hs38--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-hs38/tarballs/arcle-hs38--glibc--stable-2020.08-1.sha256 +sha256 ca73399803b6bb46cf27aa2bef5f98eae05fb2fa547403777354067117b44f2f arcle-hs38--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-hs38/tarballs/arcle-hs38--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 65e1408112518c1b31350285838f000a78a0dcd78880842933ef80d64d023967 arcle-hs38--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-hs38/tarballs/arcle-hs38--uclibc--stable-2020.08-1.sha256 +sha256 f0839aa541fe3f29660387c731b52e495bf1b285127b9fba91350b5b67f8ff3e arcle-hs38--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs/armv5-eabi--glibc--bleeding-edge-2020.08-1.sha256 +sha256 261e73520fb211f63a88ecce0689d3647acf295527bd6bd16e88e1bd65b3c603 armv5-eabi--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs/armv5-eabi--glibc--stable-2020.08-1.sha256 +sha256 ed175329057693e496b0d6dbac1ff9db8f8f34737530ab38b5ed677afaefad03 armv5-eabi--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs/armv5-eabi--musl--bleeding-edge-2020.08-1.sha256 +sha256 486b2424321b9866c2677e1dccd3a999394a86f890542c0c63edd5f9456bc4f9 armv5-eabi--musl--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs/armv5-eabi--musl--stable-2020.08-1.sha256 +sha256 732edab571d017c550d74b8c53dc703fc650de7aab66e68c70a0bc19d66d0a22 armv5-eabi--musl--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs/armv5-eabi--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 5e11ec24b910c43f24577b41a38cded192e443c0606be60944fe85b0fbf4b2dd armv5-eabi--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs/armv5-eabi--uclibc--stable-2020.08-1.sha256 +sha256 cf6a668d4f30a4a2e76a0e88177e1301342cc011e94ea399353e77ede0efbb22 armv5-eabi--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs/armv6-eabihf--glibc--bleeding-edge-2020.08-1.sha256 +sha256 0c66147f05b21529311338e246ed285f9f0f4830af0d4db28e401160a81d1b4f armv6-eabihf--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs/armv6-eabihf--glibc--stable-2020.08-1.sha256 +sha256 539e31b3bdcf76c3d6710951c74fbe682e2de8da4d110b981e9108b656890f4a armv6-eabihf--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs/armv6-eabihf--musl--bleeding-edge-2020.08-1.sha256 +sha256 e8c05fb7b909dfd5a42f6de78d1b20605c453a9aea219981966d213ee98968e2 armv6-eabihf--musl--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs/armv6-eabihf--musl--stable-2020.08-1.sha256 +sha256 68e43e3cd0e1fdd5c2b3ab718368f6ee24824725c641e148ef0a0da57f872034 armv6-eabihf--musl--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs/armv6-eabihf--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 749bb97f7535414c3096564f6e790d1e43ab8c406282480937d8f34478ac7a35 armv6-eabihf--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs/armv6-eabihf--uclibc--stable-2020.08-1.sha256 +sha256 680a3bf708cb792c74561514dcba882727086c9317397e8a3ebece1b50fbea4e armv6-eabihf--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs/armv7-eabihf--glibc--bleeding-edge-2020.08-1.sha256 +sha256 9f5c703cea20834276e1a81e2e54483d0f4fe0e57063ba4d058338ef9c858eb2 armv7-eabihf--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs/armv7-eabihf--glibc--stable-2020.08-1.sha256 +sha256 7b6682603af9a9b5c0e46fd57165723483bb68295e827d14d238e63f33a147a8 armv7-eabihf--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs/armv7-eabihf--musl--bleeding-edge-2020.08-1.sha256 +sha256 d9e71499cfb1790a31056ca9199981f699c7e4966b5854f7780d97f5a74d601e armv7-eabihf--musl--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs/armv7-eabihf--musl--stable-2020.08-1.sha256 +sha256 5c4c9bce5a2a46a9ad46e49e86df708893a8907e702a8ee1b5febd3950e030ed armv7-eabihf--musl--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs/armv7-eabihf--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 7c3ee9f3d6bd4eda38ec94a686a9e348b0f800214f1225c68d172e4ac6b81066 armv7-eabihf--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs/armv7-eabihf--uclibc--stable-2020.08-1.sha256 +sha256 f61866b0e60da62eff92b197f0e2a72e8d023bf944a25eb97efc9f5d93680ed9 armv7-eabihf--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7m/tarballs/armv7m--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 9ce29bbcbc0a2c4925e814a6332c2c71e9a13476040e1db0a5495c68d1566bee armv7m--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7m/tarballs/armv7m--uclibc--stable-2020.08-1.sha256 +sha256 c20df31191b88df09d8ff225ca82e3bb769b2b7ffd3827f6dbf77a6d23230339 armv7m--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/m68k-68xxx/tarballs/m68k-68xxx--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 49e26c831694d15bb023a0a36cf9d3967e0ab75c555d8d07bba3317a0a18aa40 m68k-68xxx--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/m68k-68xxx/tarballs/m68k-68xxx--uclibc--stable-2020.08-1.sha256 +sha256 b133663f5589c71315224792b7e542cfa578e4c354e4a2ac8afcd5ee77fd6f45 m68k-68xxx--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/m68k-coldfire/tarballs/m68k-coldfire--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 3efa687ca5d1c5f1ec53032e05a12467ec148c2328836754841f74be217bb035 m68k-coldfire--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/m68k-coldfire/tarballs/m68k-coldfire--uclibc--stable-2020.08-1.sha256 +sha256 f9879a167e2279fe925a3dc963d349d3d84c85866ec91512b5a7ce667318d716 m68k-coldfire--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs/microblazebe--glibc--bleeding-edge-2020.08-1.sha256 +sha256 d9fb4403d14f53d5f4be18f38e9604244042ea33ad980ebf0b0057b70d603d16 microblazebe--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs/microblazebe--glibc--stable-2020.08-1.sha256 +sha256 ea466445240a25ba98cd7b34f748afca151fc2479b187566f2faa98f586bfd93 microblazebe--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs/microblazebe--musl--bleeding-edge-2020.08-1.sha256 +sha256 0157d051ac5e8b46b4eed7333c9323d1c1602ad5e958e2c12fe9b8dc3b6781c7 microblazebe--musl--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs/microblazebe--musl--stable-2020.08-1.sha256 +sha256 ec51b07f63cf6d0af1eaed10641d8690a350d879e4b74addca2b3f7992186ee2 microblazebe--musl--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs/microblazebe--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 3aaaab352ca31b2263e29c363609a363a38931f9733c8ad3a386c5cbb791f8e1 microblazebe--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs/microblazebe--uclibc--stable-2020.08-1.sha256 +sha256 d2b31177c9c009cd70a9ad4af6e903dfdb5254e3f49fe9389e0e11af7a98e6b6 microblazebe--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs/microblazeel--glibc--bleeding-edge-2020.08-1.sha256 +sha256 83a451601b24b6a9c609630119e100ef9f18408bdfe1241cc53a904d540e6936 microblazeel--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs/microblazeel--glibc--stable-2020.08-1.sha256 +sha256 c168737ec92889e632673f826b13cf74cfe4ba3ad06cc9e328ee20268ec439e9 microblazeel--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs/microblazeel--musl--bleeding-edge-2020.08-1.sha256 +sha256 47660f8a4d84c7b8cd7610b8ba9df5bbfba043b35ebc07d96468c950b282f44d microblazeel--musl--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs/microblazeel--musl--stable-2020.08-1.sha256 +sha256 6a51e38fe3f72765ad1172488321b60c59867253edce7b6680500c4193a542f7 microblazeel--musl--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs/microblazeel--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 6005fa2b229be380a2e4b8227daa0b4be4739b7cda628679de6d0e048755c769 microblazeel--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs/microblazeel--uclibc--stable-2020.08-1.sha256 +sha256 845a4795cab5f88d96679945f7147c5dfe0dd19751b88734ef786bfd5ee5db67 microblazeel--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs/mips32--glibc--bleeding-edge-2020.08-1.sha256 +sha256 63baffcf0a94d7f1b7421ad61ddb56ce5c05595acd09f482dffe13ddf17efd81 mips32--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs/mips32--glibc--stable-2020.08-1.sha256 +sha256 90e300a2d224ea79b69cae68e93b0aab70858381b0d11bac846458c625d72653 mips32--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs/mips32--musl--bleeding-edge-2020.08-1.sha256 +sha256 4ebc20461eafca9c9b50e36f81e13095229aac0cd1dd98a985060f2e95665983 mips32--musl--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs/mips32--musl--stable-2020.08-1.sha256 +sha256 1a544242e9aaaee75c240439a31d2f4304b97705ed2d9e9e38ca552c5f03dced mips32--musl--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs/mips32--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 4e0e1bf24e74746775992efd8b8bafbf5b6dd56bfdd1421b2207e1ea23ba2eb3 mips32--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs/mips32--uclibc--stable-2020.08-1.sha256 +sha256 4c1da37d131f4e66b07536707c6d1be3de29719f228346d4c860c4b3cb4fef31 mips32--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs/mips32el--glibc--bleeding-edge-2020.08-1.sha256 +sha256 617c845261bb0a00571c68f250c5a369e60a09164dd3316ab8126c327d911c4b mips32el--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs/mips32el--glibc--stable-2020.08-1.sha256 +sha256 87875c25075b3850526a54c5e828ce489355d0d50107c262539ee5f577f38d6d mips32el--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs/mips32el--musl--bleeding-edge-2020.08-1.sha256 +sha256 4c81898f2e484c1e1e7d7ac1ae80e0aca5619ef01190df37e41ca459a147e682 mips32el--musl--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs/mips32el--musl--stable-2020.08-1.sha256 +sha256 02155c88e0bf92f63105803767ce457790bfd920297ef326c9920853b5a3fe20 mips32el--musl--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs/mips32el--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 024b0e27fd0c9792bad1944e052768e03173b133079d7c95bf30435d05620152 mips32el--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs/mips32el--uclibc--stable-2020.08-1.sha256 +sha256 8398010ea3dbd43ee99b6be0e3340db44b32228bf063a9c13bf43a359e3d1f6e mips32el--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs/mips32r5el--glibc--bleeding-edge-2020.08-1.sha256 +sha256 f000e8a78a24671a6f87909156e0c2a7403ab5864001c1388faf60190f8594c8 mips32r5el--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs/mips32r5el--glibc--stable-2020.08-1.sha256 +sha256 a52a115b852afce04732aa9460c58f30fbfdb17601f9bf32ea97a77d1a073a53 mips32r5el--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs/mips32r5el--musl--bleeding-edge-2020.08-1.sha256 +sha256 2620edf1045c61ddaf12f979a86719fa83b6598eb10f358a379e52462bb734ba mips32r5el--musl--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs/mips32r5el--musl--stable-2020.08-1.sha256 +sha256 0e03a5f2a7d8ba739f3ef53538d73c33bfc55f45522d4515688ebcb58005e5a1 mips32r5el--musl--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs/mips32r5el--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 585e252971553b52833d3970f709196707d908a84a5e1be8360e3019d6bb0da9 mips32r5el--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs/mips32r5el--uclibc--stable-2020.08-1.sha256 +sha256 7ffccb1f86e7b0f1dd0d87f455ff5f2619a58724850b0b9f106b6545d4de8b3f mips32r5el--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs/mips32r6el--glibc--bleeding-edge-2020.08-1.sha256 +sha256 d6376aeb2b243a58a98c415f2ecf131e14ccdce849a76c0f01902ca4b02fc0ba mips32r6el--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs/mips32r6el--glibc--stable-2020.08-1.sha256 +sha256 8640635116e26e51d57b6d5dc1e3213528f742f0cf97cd326af4f5d8e17a63f2 mips32r6el--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs/mips32r6el--musl--bleeding-edge-2020.08-1.sha256 +sha256 2647d34cb990bdab77efbcc6b4e3d5b1fd02c5032837b7a64bc52cef64aba4ec mips32r6el--musl--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs/mips32r6el--musl--stable-2020.08-1.sha256 +sha256 24b1adfa2eb31f49ae5b4fce9ee9fcb30205ca6f29e423f77bd851070baaa255 mips32r6el--musl--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs/mips32r6el--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 18dee7e9de84f6e7d6c9d083decdd465ab08979ebd661d82efbe5dc93f11dcb0 mips32r6el--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs/mips32r6el--uclibc--stable-2020.08-1.sha256 +sha256 28999f7474a84c3ec36b504c47cf671fc6e82d9b38580a0e2ebe495850ada097 mips32r6el--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs/mips64-n32--glibc--bleeding-edge-2020.08-1.sha256 +sha256 b5d90c06c894d841677da5f81e395113d22a79c53f934e12151128660dd08e76 mips64-n32--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs/mips64-n32--glibc--stable-2020.08-1.sha256 +sha256 7ed7a81f1a086e47ddb79d0bdc7142a6b7349feea20b05393be133cc4cf1fff5 mips64-n32--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs/mips64-n32--musl--bleeding-edge-2020.08-1.sha256 +sha256 937ce7ffda61c93489862122fe6dbfd53445afbdbfb615c06805b05497f336fb mips64-n32--musl--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs/mips64-n32--musl--stable-2020.08-1.sha256 +sha256 2a2acf732498b0acb22f815e1ce7c3ca8124719131febe95c723b1cbab76d947 mips64-n32--musl--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs/mips64-n32--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 16ac2a957757f56e0414a638bb3bd526b2d1c3055dd7e036dcdec4bf950f0d1b mips64-n32--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs/mips64-n32--uclibc--stable-2020.08-1.sha256 +sha256 10d9fb894e5e548e47e2930139117de9549ea49b971ca9fad12f56ef6d188b77 mips64-n32--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs/mips64el-n32--glibc--bleeding-edge-2020.08-1.sha256 +sha256 7de65f68b14350670adbd0249562d69e75f7fc65b749284303c32f88112cb6b4 mips64el-n32--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs/mips64el-n32--glibc--stable-2020.08-1.sha256 +sha256 a6eea19d94a7a953cac84670dcac3adb42dd3eb8950b1f7ca0f1ef37abc7e33f mips64el-n32--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs/mips64el-n32--musl--bleeding-edge-2020.08-1.sha256 +sha256 7cff57dd6d0ee7778c5b764a388bf9e997ba2349da5274b8d8598173030618be mips64el-n32--musl--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs/mips64el-n32--musl--stable-2020.08-1.sha256 +sha256 3c42d88c84689703d5b1380f4cf5ad20872611d08ce5fac1a4375bfec80a6b27 mips64el-n32--musl--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs/mips64el-n32--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 5553a979238f6a25c4e965e18cfbebe36018041ba46968174063328c25e485fc mips64el-n32--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs/mips64el-n32--uclibc--stable-2020.08-1.sha256 +sha256 80e8fa6cca6e0267dad5376bca79ce7457b8d345d43a0d409e4820a791965db9 mips64el-n32--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs/mips64r6el-n32--glibc--bleeding-edge-2020.08-1.sha256 +sha256 0f09da21d6069642064f767a25e64c89caad80660ea184345652301c41a30ac9 mips64r6el-n32--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs/mips64r6el-n32--glibc--stable-2020.08-1.sha256 +sha256 7100d3862983c5fb8237386ff4148f6e550e6b299c8b7946a349dedef60f75c9 mips64r6el-n32--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs/mips64r6el-n32--musl--bleeding-edge-2020.08-1.sha256 +sha256 a692687149e59fdb7ad780cfc51e4a7307ed599433280369fe9e43c63453e4ec mips64r6el-n32--musl--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs/mips64r6el-n32--musl--stable-2020.08-1.sha256 +sha256 e7a35e063fcd748df6f347e5aa97d081f4422480fb02ce6925c4c351c9aca318 mips64r6el-n32--musl--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs/mips64r6el-n32--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 69d4287cb32413e054684db9545e6898c09cb90c86a0dce8bb9999498eb798ab mips64r6el-n32--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs/mips64r6el-n32--uclibc--stable-2020.08-1.sha256 +sha256 4d9eb8900b99871e02ae17b823341189dce3aa592ee82864c73ca3164948aaae mips64r6el-n32--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/nios2/tarballs/nios2--glibc--bleeding-edge-2020.08-1.sha256 +sha256 b3c7c24e08759af3ea13fc39e8bddb52e4528a05d4aee3c2f75733e067d12edc nios2--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/nios2/tarballs/nios2--glibc--stable-2020.08-1.sha256 +sha256 a46d5ff90e3623d159f3b5be53493e13a2e78ebb733a1ccb68e829d6e28aa129 nios2--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs/openrisc--musl--bleeding-edge-2020.08-1.sha256 +sha256 382ec04511d51f99028b6c568c909e4e010bcfe1d4a4c1ff6f10c7c07c24b3b2 openrisc--musl--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs/openrisc--musl--stable-2020.08-1.sha256 +sha256 697ef122917022f400003931bc6da75fe07bb5234ef8186cbe027e560f04a168 openrisc--musl--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs/openrisc--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 e45d02c9272c909db1c92b6403ed1e0813889ef0c22b2f5166d2675f62d3f20f openrisc--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs/openrisc--uclibc--stable-2020.08-1.sha256 +sha256 62c60f9f99828a01f3a16060ceba74b8e2603a8ca3585649434a66f721ecdf75 openrisc--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs/powerpc-440fp--glibc--bleeding-edge-2020.08-2.sha256 +sha256 7b7c2f66ccd3d44cd8a829b5879277be9cfb17f34a26d5055b29a6bab40ff9df powerpc-440fp--glibc--bleeding-edge-2020.08-2.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs/powerpc-440fp--glibc--stable-2020.08-2.sha256 +sha256 ae7b3d06090dfcf54b1e3b4bd4fda9ae5aaaf34aba9118820e6e9d8f1b70c0c4 powerpc-440fp--glibc--stable-2020.08-2.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs/powerpc-440fp--musl--bleeding-edge-2020.08-2.sha256 +sha256 a6def102659538e3e5838bf4267cd33486d795db753a7109b5e413499ef5df89 powerpc-440fp--musl--bleeding-edge-2020.08-2.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs/powerpc-440fp--musl--stable-2020.08-2.sha256 +sha256 76de0310078633ff34654c8c54d7e80a609c58521a7f2a8041ae4a574889d38a powerpc-440fp--musl--stable-2020.08-2.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs/powerpc-440fp--uclibc--bleeding-edge-2020.08-2.sha256 +sha256 abbe38fc92a71d568c08452f99fe3470e5ded9a666c6829d9104fcf06b984503 powerpc-440fp--uclibc--bleeding-edge-2020.08-2.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs/powerpc-440fp--uclibc--stable-2020.08-2.sha256 +sha256 d4346ce563ddfbd4946b2dfbc766cafebbf4b09488dc8b398ab8bb242bac9268 powerpc-440fp--uclibc--stable-2020.08-2.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs/powerpc-e300c3--glibc--bleeding-edge-2020.08-1.sha256 +sha256 fe4b9817f060d84118fff5b7d855eacac472975f2adfececb641d2999f94a7ea powerpc-e300c3--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs/powerpc-e300c3--glibc--stable-2020.08-1.sha256 +sha256 77d215d650850af65c3ac1792dcf100322f3dfea78ba174118197ec0c8a49807 powerpc-e300c3--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs/powerpc-e300c3--musl--bleeding-edge-2020.08-1.sha256 +sha256 4aa2b5c3c2c3263edfdf95284f0774aed8a47446b7a362ee44dc24d83db06896 powerpc-e300c3--musl--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs/powerpc-e300c3--musl--stable-2020.08-1.sha256 +sha256 129d9aab59e9edfc68739b612f2ee4abce5679830250fbcd50b89ec3d2c865c5 powerpc-e300c3--musl--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs/powerpc-e300c3--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 54e6960edd6419bb268b651ffedc24af73a72ad9dd145c1849a6e0fb6f997b15 powerpc-e300c3--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs/powerpc-e300c3--uclibc--stable-2020.08-1.sha256 +sha256 1057b488623a80037558a1439555b1a15b25a4d7f42dc49d0169349592ad5b3e powerpc-e300c3--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs/powerpc-e500mc--glibc--bleeding-edge-2020.08-1.sha256 +sha256 8cab4fbb645be782a6eaeb7b6afd75fda4c0dc8ca9a4095b0be9b6eeb29a9759 powerpc-e500mc--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs/powerpc-e500mc--glibc--stable-2020.08-1.sha256 +sha256 5bb9f6b10b9d2d1a90a1a96a477b90eea32a269c1afccd89284a38a63d7f1c82 powerpc-e500mc--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs/powerpc-e500mc--musl--bleeding-edge-2020.08-1.sha256 +sha256 36636df56a04e44ddb5bba2e0a30b1f3986618399381278cdb2be207a25825c0 powerpc-e500mc--musl--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs/powerpc-e500mc--musl--stable-2020.08-1.sha256 +sha256 7f924fc3cc3c9070ea1c9d270fea71715bd52beac14649d8a00416dfde1b897b powerpc-e500mc--musl--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs/powerpc-e500mc--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 262a2bddd29d6c24cbc32a873e78895499732624923195a5e7ffe16b487dc461 powerpc-e500mc--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs/powerpc-e500mc--uclibc--stable-2020.08-1.sha256 +sha256 e817af2d5a0fba654e7766dcad89380e278af9feb35c2d0591a0f8d893defa48 powerpc-e500mc--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e5500/tarballs/powerpc64-e5500--glibc--bleeding-edge-2020.08-1.sha256 +sha256 418b79f8313ac4ff29cb6c2d639848eb74a0245666142a307374513cffd472e6 powerpc64-e5500--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e5500/tarballs/powerpc64-e5500--glibc--stable-2020.08-1.sha256 +sha256 a51ddba944394de41b2f7c001772bb68074175d65a0976749da5289a5e705f23 powerpc64-e5500--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e6500/tarballs/powerpc64-e6500--glibc--bleeding-edge-2020.08-1.sha256 +sha256 c537c2ef618f767762295806658bb0add514453068ea72ce2bd6e6e805e64af5 powerpc64-e6500--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e6500/tarballs/powerpc64-e6500--glibc--stable-2020.08-1.sha256 +sha256 1d8aaf1492f69496b01fc930fa928ffd3144d1465c7c954128ed31ce576306b6 powerpc64-e6500--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e6500/tarballs/powerpc64-e6500--musl--bleeding-edge-2020.08-1.sha256 +sha256 c46c7595384929211ce2f54655ceb4eb1d32054923892cd5d10913be364fa6f2 powerpc64-e6500--musl--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e6500/tarballs/powerpc64-e6500--musl--stable-2020.08-1.sha256 +sha256 a295073db591ed16eec90caf5fdef62ccff5550166d36496ab24aa993bdb2a42 powerpc64-e6500--musl--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-power8/tarballs/powerpc64-power8--glibc--bleeding-edge-2020.08-1.sha256 +sha256 cbe65abf36fa807176a01488751a2e45800791534400b803c024e4c29357862c powerpc64-power8--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-power8/tarballs/powerpc64-power8--glibc--stable-2020.08-1.sha256 +sha256 a670ec95dbfb53a812e9f21aec2ad880a3349125f19219b9a0d139a7d5b9e83b powerpc64-power8--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-power8/tarballs/powerpc64-power8--musl--bleeding-edge-2020.08-1.sha256 +sha256 1f5b3da078534f9e493f29956d3a1f31ad0539d26b8f83e55c271b6671021928 powerpc64-power8--musl--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-power8/tarballs/powerpc64-power8--musl--stable-2020.08-1.sha256 +sha256 12043ab87cd4ae0c4339cddcb3eb017eaae406bbb332bf3edebfd7f70ecd0a31 powerpc64-power8--musl--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64le-power8/tarballs/powerpc64le-power8--glibc--bleeding-edge-2020.08-1.sha256 +sha256 14e3ff4afbf363decb2c0ddc33b75e41aad9748a65a445cc176215853d0d6185 powerpc64le-power8--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64le-power8/tarballs/powerpc64le-power8--glibc--stable-2020.08-1.sha256 +sha256 342442f0773cdf5091443ab06ecf9c3d3c05cf8e2464b82a54707bec90d2a358 powerpc64le-power8--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64le-power8/tarballs/powerpc64le-power8--musl--bleeding-edge-2020.08-1.sha256 +sha256 fab5f4bc6d219f53f8b15e0d49aea27cdbac9e08e05946577440329c003fc216 powerpc64le-power8--musl--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64le-power8/tarballs/powerpc64le-power8--musl--stable-2020.08-1.sha256 +sha256 47d184beca271c67bdb544fac87cb2126ea2b397d076a79dfaf9667e999fbccd powerpc64le-power8--musl--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/riscv32-ilp32d/tarballs/riscv32-ilp32d--glibc--bleeding-edge-2020.08-1.sha256 +sha256 18a47b0c221137f40720df08e9bbdc0bcb6e68cde3a30906681e4dec83eb7547 riscv32-ilp32d--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/riscv64/tarballs/riscv64--glibc--bleeding-edge-2020.08-1.sha256 +sha256 09818eccb414359b1df87ec347d94e7bfccc45f8a5eafe8791fddf8110fcc581 riscv64--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/riscv64/tarballs/riscv64--musl--bleeding-edge-2020.08-1.sha256 +sha256 2af03e220070eacf6eaf63ccb7442ca5af805caf96ae52fb3eb15370988f12cf riscv64--musl--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs/sh-sh4--glibc--bleeding-edge-2020.08-1.sha256 +sha256 277e78c999c2cba42b25660bbbe0d105a80277c986e0807cfa16a6595af6ce9e sh-sh4--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs/sh-sh4--glibc--stable-2020.08-1.sha256 +sha256 256064f35b2759c71ac1bb6c9fe74a7c7c62f070746cfeb35ff0ecb40a91c2b4 sh-sh4--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs/sh-sh4--musl--bleeding-edge-2020.08-1.sha256 +sha256 34bf211ea0456ef86bbe914e0755f18681531a015e33b8c26b97ca68e29a3ed5 sh-sh4--musl--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs/sh-sh4--musl--stable-2020.08-1.sha256 +sha256 d335189728a6bebd5d180c58c6dabd049500d57ae60fcc8fc51ba5aafafb21d3 sh-sh4--musl--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs/sh-sh4--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 89e42b9e7bc3f67660656690899b2fad4015af5c9084dad6624315c39b486d76 sh-sh4--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs/sh-sh4--uclibc--stable-2020.08-1.sha256 +sha256 13a60cd5653c24491748388284080d5b8da649a63090c0d308c3a3b069b04f21 sh-sh4--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4aeb/tarballs/sh-sh4aeb--glibc--bleeding-edge-2020.08-1.sha256 +sha256 fe063dd95c71ab41145412faf5e4c2a1386efdda5d944ecc83121fb9b4e213f2 sh-sh4aeb--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4aeb/tarballs/sh-sh4aeb--glibc--stable-2020.08-1.sha256 +sha256 054e669a3165aff35539d3fb7cbde2650c79e5aa88a90a844488ba175a645a07 sh-sh4aeb--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4aeb/tarballs/sh-sh4aeb--musl--bleeding-edge-2020.08-1.sha256 +sha256 aa2c560ed4cf4dac8a8803b3fccf846472a226a1a22833c1cbe0d7fd347af3a7 sh-sh4aeb--musl--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4aeb/tarballs/sh-sh4aeb--musl--stable-2020.08-1.sha256 +sha256 89e7fa5792ed1c35bd57c65935888beafce9a81f84c7d73508b1582539415a3b sh-sh4aeb--musl--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sparc64/tarballs/sparc64--glibc--bleeding-edge-2020.08-1.sha256 +sha256 abba04fcfa11a1eedbf5f5ff38d69d793d394f08998f8374723358b3123cc113 sparc64--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sparc64/tarballs/sparc64--glibc--stable-2020.08-1.sha256 +sha256 57184f6edfba03ae9c098ad0bab6635475bb45a874982ad11c0b91bf6043dbc4 sparc64--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sparcv8/tarballs/sparcv8--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 210defc0781683a240bac25295ff612d6b6c875c7d938d11512f8ec9472245bc sparcv8--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sparcv8/tarballs/sparcv8--uclibc--stable-2020.08-1.sha256 +sha256 14d508510bf0ed813f6436718486cce7fc6ebfb29b46eea5e52a474b2d5eaa00 sparcv8--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs/x86-64-core-i7--glibc--bleeding-edge-2020.08-1.sha256 +sha256 77935109bbd1bdb84813a588b807052823033ed9094131fdd56f558023a3de08 x86-64-core-i7--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs/x86-64-core-i7--glibc--stable-2020.08-1.sha256 +sha256 3dd408e857f5c8e579748995477f2783fcf5ad0aac89719ea3c5c75446dfa63c x86-64-core-i7--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs/x86-64-core-i7--musl--bleeding-edge-2020.08-1.sha256 +sha256 5d2d13d56a76db30ec28a11a3d6219fe407c3d1b9bbcd4a7255a783da4fcdfcb x86-64-core-i7--musl--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs/x86-64-core-i7--musl--stable-2020.08-1.sha256 +sha256 26ea3cc16c294663b64123c15a95d53f00419ef0f6bcdef489865835c6022650 x86-64-core-i7--musl--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs/x86-64-core-i7--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 d1ff16cde93c727b4b39844877f93d865d6945185e71dba4b6c07d2d725e2576 x86-64-core-i7--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs/x86-64-core-i7--uclibc--stable-2020.08-1.sha256 +sha256 0fdcb93add6ff697b536198da76b4e93bd81efd67793d6640fd6bc1b216abc00 x86-64-core-i7--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs/x86-core2--glibc--bleeding-edge-2020.08-1.sha256 +sha256 10e7b362008fc3057e9eb42a3fab5f0dc430e05b285dc4f2ec3367d5f36a3094 x86-core2--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs/x86-core2--glibc--stable-2020.08-1.sha256 +sha256 18bbabb672df24bbc2646d94d23c47d16a6c0d8342d910bf441021fad4a82ce3 x86-core2--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs/x86-core2--musl--bleeding-edge-2020.08-1.sha256 +sha256 81edcbd69f2fd479d9a25597d0515d42c9c891e1a534d947e87a2e9a3dc67924 x86-core2--musl--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs/x86-core2--musl--stable-2020.08-1.sha256 +sha256 9e23de3364e1aaec50945c70089273a025ff44815ce4632324d1950e7ba07e9a x86-core2--musl--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs/x86-core2--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 717b6c103e8e50202a45277eef8f9b41b978b17a0110cacddd52a01b7eba3039 x86-core2--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs/x86-core2--uclibc--stable-2020.08-1.sha256 +sha256 e23812719fa1027fa0e2a161216cf97ff14bf3bcc19bb400281060a40e762a0d x86-core2--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs/x86-i686--glibc--bleeding-edge-2020.08-1.sha256 +sha256 9e8c83479dc91e516ee66fe21ff8693afa380cfdb3192c5c1351430a035ab92a x86-i686--glibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs/x86-i686--glibc--stable-2020.08-1.sha256 +sha256 77362d37279636371a42b09bab4f8f1a51a786ed7ec316221786b279389c8008 x86-i686--glibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs/x86-i686--musl--bleeding-edge-2020.08-1.sha256 +sha256 ccb6896f02be3444d6cabff0966a0b6f866ebc6d32b483031541626c2fc748fe x86-i686--musl--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs/x86-i686--musl--stable-2020.08-1.sha256 +sha256 bbbf8b7946e65f35366cb0371910fe3e95e6399c4e6a9cac8b0a4674bcadc36b x86-i686--musl--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs/x86-i686--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 bd57d5cd7958ba7469d74abdf93db1993042f30c774ec3d1fceff57d522a489c x86-i686--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs/x86-i686--uclibc--stable-2020.08-1.sha256 +sha256 139c31c25f9834137bbbb4aadc9d78def2819d2c1b9e89dd2300b11fb4879bb4 x86-i686--uclibc--stable-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/xtensa-lx60/tarballs/xtensa-lx60--uclibc--bleeding-edge-2020.08-1.sha256 +sha256 46801fc1ae89f380c1b6e1bf8ea723f9d7b1590eea3a2d1218a0307cd4325bc8 xtensa-lx60--uclibc--bleeding-edge-2020.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/xtensa-lx60/tarballs/xtensa-lx60--uclibc--stable-2020.08-1.sha256 +sha256 b4b28d855594290c853292c9cce43bba573d4187ecb47d78f25411a7f4300d49 xtensa-lx60--uclibc--stable-2020.08-1.tar.bz2 diff --git a/toolchain/toolchain-external/toolchain-external-bootlin/toolchain-external-bootlin.mk b/toolchain/toolchain-external/toolchain-external-bootlin/toolchain-external-bootlin.mk new file mode 100644 index 00000000..cfe44742 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-bootlin/toolchain-external-bootlin.mk @@ -0,0 +1,1023 @@ +################################################################################ +# +# toolchain-external-bootlin +# +################################################################################ + +# This file was auto-generated by support/scripts/gen-bootlin-toolchains +# Do not edit +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = aarch64--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = aarch64--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = aarch64--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = aarch64--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = aarch64--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = aarch64--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = aarch64be--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64be/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = aarch64be--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64be/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = aarch64be--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64be/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = aarch64be--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64be/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_750D_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = arcle-750d--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-750d/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_750D_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = arcle-750d--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-750d/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_HS38_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = arcle-hs38--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-hs38/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_HS38_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = arcle-hs38--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-hs38/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_HS38_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = arcle-hs38--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-hs38/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_HS38_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = arcle-hs38--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-hs38/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv5-eabi--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv5-eabi--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv5-eabi--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv5-eabi--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv5-eabi--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv5-eabi--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv6-eabihf--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv6-eabihf--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv6-eabihf--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv6-eabihf--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv6-eabihf--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv6-eabihf--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv7-eabihf--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv7-eabihf--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv7-eabihf--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv7-eabihf--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv7-eabihf--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv7-eabihf--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7M_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv7m--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv7m/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7M_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv7m--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv7m/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_M68K_68XXX_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = m68k-68xxx--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/m68k-68xxx/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_M68K_68XXX_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = m68k-68xxx--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/m68k-68xxx/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_M68K_COLDFIRE_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = m68k-coldfire--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/m68k-coldfire/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_M68K_COLDFIRE_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = m68k-coldfire--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/m68k-coldfire/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = microblazebe--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = microblazebe--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = microblazebe--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = microblazebe--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = microblazebe--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = microblazebe--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = microblazeel--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = microblazeel--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = microblazeel--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = microblazeel--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = microblazeel--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = microblazeel--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32el--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32el--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32el--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32el--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32el--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32el--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32r5el--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32r5el--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32r5el--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32r5el--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32r5el--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32r5el--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32r6el--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32r6el--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32r6el--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32r6el--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32r6el--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32r6el--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64-n32--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64-n32--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64-n32--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64-n32--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64-n32--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64-n32--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64el-n32--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64el-n32--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64el-n32--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64el-n32--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64el-n32--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64el-n32--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64r6el-n32--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64r6el-n32--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64r6el-n32--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64r6el-n32--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64r6el-n32--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64r6el-n32--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_NIOS2_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = nios2--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/nios2/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_NIOS2_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = nios2--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/nios2/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = openrisc--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = openrisc--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = openrisc--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = openrisc--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-440fp--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-440fp--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-440fp--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-440fp--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-440fp--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-440fp--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-e300c3--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-e300c3--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-e300c3--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-e300c3--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-e300c3--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-e300c3--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-e500mc--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-e500mc--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-e500mc--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-e500mc--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-e500mc--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-e500mc--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E5500_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64-e5500--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e5500/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E5500_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64-e5500--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e5500/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E6500_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64-e6500--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e6500/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E6500_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64-e6500--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e6500/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E6500_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64-e6500--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e6500/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E6500_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64-e6500--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e6500/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_POWER8_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64-power8--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-power8/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_POWER8_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64-power8--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-power8/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_POWER8_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64-power8--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-power8/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_POWER8_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64-power8--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-power8/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64LE_POWER8_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64le-power8--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64le-power8/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64LE_POWER8_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64le-power8--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64le-power8/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64LE_POWER8_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64le-power8--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64le-power8/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64LE_POWER8_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64le-power8--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64le-power8/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV32_ILP32D_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = riscv32-ilp32d--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/riscv32-ilp32d/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV64_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = riscv64--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/riscv64/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV64_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = riscv64--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/riscv64/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sh-sh4--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sh-sh4--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sh-sh4--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sh-sh4--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sh-sh4--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sh-sh4--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4AEB_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sh-sh4aeb--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4aeb/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4AEB_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sh-sh4aeb--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4aeb/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4AEB_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sh-sh4aeb--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4aeb/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4AEB_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sh-sh4aeb--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4aeb/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SPARC64_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sparc64--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sparc64/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SPARC64_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sparc64--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sparc64/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SPARCV8_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sparcv8--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sparcv8/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SPARCV8_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sparcv8--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sparcv8/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-core-i7--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-core-i7--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-core-i7--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-core-i7--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-core-i7--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-core-i7--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-core2--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-core2--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-core2--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-core2--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-core2--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-core2--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_GLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-i686--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_GLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-i686--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-i686--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-i686--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-i686--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-i686--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_XTENSA_LX60_UCLIBC_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = xtensa-lx60--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/xtensa-lx60/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_XTENSA_LX60_UCLIBC_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2020.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = xtensa-lx60--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/xtensa-lx60/tarballs +endif + +$(eval $(toolchain-external-package)) diff --git a/toolchain/toolchain-external/toolchain-external-codescape-img-mips/Config.in b/toolchain/toolchain-external/toolchain-external-codescape-img-mips/Config.in new file mode 100644 index 00000000..2341d088 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-codescape-img-mips/Config.in @@ -0,0 +1,65 @@ +config BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS + bool "Codescape IMG GNU Linux Toolchain 2018.09" + depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_7 + depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + depends on BR2_MIPS_CPU_MIPS32R6 || (BR2_MIPS_CPU_MIPS64R6 && !BR2_MIPS_SOFT_FLOAT) + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_7 + select BR2_TOOLCHAIN_GCC_AT_LEAST_6 + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP + help + Codescape IMG GNU Linux Toolchain 2018.09 for the MIPS + architecture, from MIPS Tech LLC. It uses gcc 6.3.0, + binutils 2.28.51, glibc 2.20, gdb 7.9.1 and kernel headers + 4.7. It has support for the following variants: + - MIPS32r6 - Big-Endian, Hard-Float, 2008 NaN, o32 ABI + Select 'MIPS (big endian)' Target Architecture + Select 'mips 32r6' Target Architecture Variant + Disable 'Use soft-float' + - MIPS32r6 - Big-Endian, Soft-Float, 2008 NaN, o32 ABI + Select 'MIPS (big endian)' Target Architecture + Select 'mips 32r6' Target Architecture Variant + Enable 'Use soft-float' + - MIPS32r6 - Little-Endian, Hard-Float, 2008 NaN, o32 ABI + Select 'MIPS (little endian)' Target Architecture + Select 'mips 32r6' Target Architecture Variant + Disable 'Use soft-float' + - MIPS32r6 - Little-Endian, Soft-Float, 2008 NaN, o32 ABI + Select 'MIPS (little endian)' Target Architecture + Select 'mips 32r6' Target Architecture Variant + Enable 'Use soft-float' + - MIPS32r6 - Little-Endian, Hard-Float, 2008 NaN, o32 ABI, + microMIPS + Select 'MIPS (little endian)' Target Architecture + Select 'mips 32r6' Target Architecture Variant + Disable 'Use soft-float' + Set BR2_TARGET_OPTIMIZATION to '-mmicromips' + - MIPS32r6 - Little-Endian, Soft-Float, 2008 NaN, o32 ABI, + microMIPS + Select 'MIPS (little endian)' Target Architecture + Select 'mips 32r6' Target Architecture Variant + Enable 'Use soft-float' + Set BR2_TARGET_OPTIMIZATION to '-mmicromips' + - MIPS64r6 - Big-Endian, Hard-Float, 2008 NaN, n32 ABI + Select 'MIPS64 (big endian)' Target Architecture + Select 'mips 64r6' Target Architecture Variant + Select 'n32' Target ABI + Disable 'Use soft-float' + - MIPS64r6 - Little-Endian, Hard-Float, 2008 NaN, n32 ABI + Select 'MIPS64 (little endian)' Target Architecture + Select 'mips 64r6' Target Architecture Variant + Select 'n32' Target ABI + Disable 'Use soft-float' + - MIPS64r6 - Big-Endian, Hard-Float, 2008 NaN, n64 ABI + Select 'MIPS64 (big endian)' Target Architecture + Select 'mips 64r6' Target Architecture Variant + Select 'n64' Target ABI + Disable 'Use soft-float' + - MIPS64r6 - Little-Endian, Hard-Float, 2008 NaN, n64 ABI + Select 'MIPS64 (little endian)' Target Architecture + Select 'mips 64r6' Target Architecture Variant + Select 'n64' Target ABI + Disable 'Use soft-float' diff --git a/toolchain/toolchain-external/toolchain-external-codescape-img-mips/Config.in.options b/toolchain/toolchain-external/toolchain-external-codescape-img-mips/Config.in.options new file mode 100644 index 00000000..3eaa2a95 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-codescape-img-mips/Config.in.options @@ -0,0 +1,9 @@ +if BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS + +config BR2_TOOLCHAIN_EXTERNAL_PREFIX + default "mips-img-linux-gnu" + +config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL + default "toolchain-external-codescape-img-mips" + +endif diff --git a/toolchain/toolchain-external/toolchain-external-codescape-img-mips/toolchain-external-codescape-img-mips.hash b/toolchain/toolchain-external/toolchain-external-codescape-img-mips/toolchain-external-codescape-img-mips.hash new file mode 100644 index 00000000..b540164a --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-codescape-img-mips/toolchain-external-codescape-img-mips.hash @@ -0,0 +1,4 @@ +# Codescape toolchains from MIPS Tech LLC +# From: https://codescape.mips.com/components/toolchain/nanomips/2018.09-02/downloads.html +sha256 ac035f3b6a8767522977963d8e1490520d58bccca7956f4503a1eefff6492b71 Codescape.GNU.Tools.Package.2018.09-02.for.MIPS.IMG.Linux.CentOS-6.x86.tar.gz +sha256 09280f4fcbb993607905bf9a43bf5f3db2beed85726f0675b8453e19a9ddc429 Codescape.GNU.Tools.Package.2018.09-02.for.MIPS.IMG.Linux.CentOS-6.x86_64.tar.gz diff --git a/toolchain/toolchain-external/toolchain-external-codescape-img-mips/toolchain-external-codescape-img-mips.mk b/toolchain/toolchain-external/toolchain-external-codescape-img-mips/toolchain-external-codescape-img-mips.mk new file mode 100644 index 00000000..55424918 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-codescape-img-mips/toolchain-external-codescape-img-mips.mk @@ -0,0 +1,51 @@ +################################################################################ +# +# toolchain-external-codescape-img-mips +# +################################################################################ + +TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_VERSION = 2018.09-02 +TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_SITE = https://codescape.mips.com/components/toolchain/$(TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_VERSION) +TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_STRIP_COMPONENTS = 2 + +ifeq ($(HOSTARCH),x86) +TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_SOURCE = Codescape.GNU.Tools.Package.$(TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_VERSION).for.MIPS.IMG.Linux.CentOS-6.x86.tar.gz +else +TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_SOURCE = Codescape.GNU.Tools.Package.$(TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_VERSION).for.MIPS.IMG.Linux.CentOS-6.x86_64.tar.gz +endif + +# Special fixup for Codescape MIPS toolchains, that have bin- and +# sbin- directories. We create symlinks bin -> bin- and sbin +# -> sbin- so that the rest of Buildroot can find the toolchain +# tools in the appropriate location. +ifeq ($(BR2_MIPS_OABI32),y) +TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_BIN_DIR_SUFFIX = o32 +else ifeq ($(BR2_MIPS_NABI32),y) +TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_BIN_DIR_SUFFIX = n32 +else ifeq ($(BR2_MIPS_NABI64),y) +TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_BIN_DIR_SUFFIX = n64 +endif + +define TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_STAGING_FIXUPS + rmdir $(STAGING_DIR)/usr/bin $(STAGING_DIR)/usr/sbin + ln -sf bin-$(TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_BIN_DIR_SUFFIX) $(STAGING_DIR)/usr/bin + ln -sf sbin-$(TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_BIN_DIR_SUFFIX) $(STAGING_DIR)/usr/sbin +endef + +# The Codescape toolchain uses a sysroot layout that places them +# side-by-side instead of nested like multilibs. A symlink is needed +# much like for the nested sysroots which are handled in +# copy_toolchain_sysroot but there is not enough information in there +# to determine whether the sysroot layout was nested or side-by-side. +# Add the symlink here for now. +define TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_SYMLINK + $(Q)ARCH_SYSROOT_DIR="$(call toolchain_find_sysroot,$(TOOLCHAIN_EXTERNAL_CC) $(TOOLCHAIN_EXTERNAL_CFLAGS))"; \ + ARCH_SUBDIR=`basename $${ARCH_SYSROOT_DIR}`; \ + ln -snf . $(STAGING_DIR)/$${ARCH_SUBDIR} +endef + +TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_POST_INSTALL_STAGING_HOOKS += \ + TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_STAGING_FIXUPS \ + TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_SYMLINK + +$(eval $(toolchain-external-package)) diff --git a/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/Config.in b/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/Config.in new file mode 100644 index 00000000..c58c5511 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/Config.in @@ -0,0 +1,76 @@ +config BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS + bool "Codescape MTI GNU Linux Toolchain 2018.09" + depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_7 + depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + depends on BR2_MIPS_CPU_MIPS32R2 || (BR2_MIPS_CPU_MIPS64R2 && !BR2_MIPS_SOFT_FLOAT) || \ + BR2_MIPS_CPU_MIPS32R5 || (BR2_MIPS_CPU_MIPS64R5 && !BR2_MIPS_SOFT_FLOAT) + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_7 + select BR2_TOOLCHAIN_GCC_AT_LEAST_6 + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP + help + Codescape MTI GNU Linux Toolchain 2018.09 for the MIPS + architecture, from MIPS Tech LLC. It uses gcc 6.3.0, + binutils 2.28.51, glibc 2.20, gdb 7.9.1 and kernel headers + 4.7. It has support for the following variants: + - MIPS32r2 - Big-Endian, Hard-Float, Legacy NaN, o32 ABI + Select 'MIPS (big endian)' Target Architecture + Select 'mips 32r2' Target Architecture Variant + Disable 'Use soft-float' + - MIPS32r2 - Big-Endian, Hard-Float, 2008 NaN, o32 ABI + Select 'MIPS (big endian)' Target Architecture + Select 'mips 32r2' Target Architecture Variant + Disable 'Use soft-float' + Set BR2_TARGET_OPTIMIZATION to '-mnan=2008' + - MIPS32r2 - Big-Endian, Soft-Float, Legacy NaN, o32 ABI + Select 'MIPS (big endian)' Target Architecture + Select 'mips 32r2' Target Architecture Variant + Enable 'Use soft-float' + - MIPS32r2 - Little-Endian, Hard-Float, Legacy NaN, o32 ABI + Select 'MIPS (little endian)' Target Architecture + Select 'mips 32r2' Target Architecture Variant + Disable 'Use soft-float' + - MIPS32r2 - Little-Endian, Hard-Float, 2008 NaN, o32 ABI + Select 'MIPS (little endian)' Target Architecture + Select 'mips 32r2' Target Architecture Variant + Disable 'Use soft-float' + Set BR2_TARGET_OPTIMIZATION to '-mnan=2008' + - MIPS32r2 - Little-Endian, Soft-Float, Legacy NaN, o32 ABI + Select 'MIPS (little endian)' Target Architecture + Select 'mips 32r2' Target Architecture Variant + Enable 'Use soft-float' + - MIPS32r2 - Little-Endian, Hard-Float, 2008 NaN, o32 ABI, + microMIPS + Select 'MIPS (little endian)' Target Architecture + Select 'mips 32r2' Target Architecture Variant + Enable 'Use soft-float' + Set BR2_TARGET_OPTIMIZATION to '-mmicromips' + - MIPS32r2 - Little-Endian, Soft-Float, Legacy NaN, o32 ABI, + microMIPS + Select 'MIPS (little endian)' Target Architecture + Select 'mips 32r2' Target Architecture Variant + Disable 'Use soft-float' + Set BR2_TARGET_OPTIMIZATION to '-mmicromips' + - MIPS64r2 - Big-Endian, Hard-Float, Legacy NaN, n32 ABI + Select 'MIPS64 (big endian)' Target Architecture + Select 'mips 64r2' Target Architecture Variant + Select 'n32' Target ABI + Disable 'Use soft-float' + - MIPS64r2 - Little-Endian, Hard-Float, Legacy NaN, n32 ABI + Select 'MIPS64 (little endian)' Target Architecture + Select 'mips 64r2' Target Architecture Variant + Select 'n32' Target ABI + Disable 'Use soft-float' + - MIPS64r2 - Big-Endian, Hard-Float, Legacy NaN, n64 ABI + Select 'MIPS64 (big endian)' Target Architecture + Select 'mips 64r2' Target Architecture Variant + Select 'n64' Target ABI + Disable 'Use soft-float' + - MIPS64r2 - Little-Endian, Hard-Float, Legacy NaN, n64 ABI + Select 'MIPS64 (little endian)' Target Architecture + Select 'mips 64r2' Target Architecture Variant + Select 'n64' Target ABI + Disable 'Use soft-float' diff --git a/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/Config.in.options b/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/Config.in.options new file mode 100644 index 00000000..464c9b84 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/Config.in.options @@ -0,0 +1,9 @@ +if BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS + +config BR2_TOOLCHAIN_EXTERNAL_PREFIX + default "mips-mti-linux-gnu" + +config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL + default "toolchain-external-codescape-mti-mips" + +endif diff --git a/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/toolchain-external-codescape-mti-mips.hash b/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/toolchain-external-codescape-mti-mips.hash new file mode 100644 index 00000000..8e70af50 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/toolchain-external-codescape-mti-mips.hash @@ -0,0 +1,4 @@ +# Codescape toolchains from MIPS Tech LLC +# From: https://codescape.mips.com/components/toolchain/nanomips/2018.09-02/downloads.html +sha256 c883a404fd7ea5718e2249a530802e223381f2be52265f88e9b1ce7035c232f3 Codescape.GNU.Tools.Package.2018.09-02.for.MIPS.MTI.Linux.CentOS-6.x86.tar.gz +sha256 d6310a970b0a8a19ad8e0a2b3ead8c38ee90d0e284a9b2511200ce447f460d2c Codescape.GNU.Tools.Package.2018.09-02.for.MIPS.MTI.Linux.CentOS-6.x86_64.tar.gz diff --git a/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/toolchain-external-codescape-mti-mips.mk b/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/toolchain-external-codescape-mti-mips.mk new file mode 100644 index 00000000..9bee1ab8 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/toolchain-external-codescape-mti-mips.mk @@ -0,0 +1,51 @@ +################################################################################ +# +# toolchain-external-codescape-mti-mips +# +################################################################################ + +TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_VERSION = 2018.09-02 +TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_SITE = https://codescape.mips.com/components/toolchain/$(TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_VERSION) +TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_STRIP_COMPONENTS = 2 + +ifeq ($(HOSTARCH),x86) +TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_SOURCE = Codescape.GNU.Tools.Package.$(TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_VERSION).for.MIPS.MTI.Linux.CentOS-6.x86.tar.gz +else +TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_SOURCE = Codescape.GNU.Tools.Package.$(TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_VERSION).for.MIPS.MTI.Linux.CentOS-6.x86_64.tar.gz +endif + +# Special fixup for Codescape MIPS toolchains, that have bin- and +# sbin- directories. We create symlinks bin -> bin- and sbin +# -> sbin- so that the rest of Buildroot can find the toolchain +# tools in the appropriate location. +ifeq ($(BR2_MIPS_OABI32),y) +TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_BIN_DIR_SUFFIX = o32 +else ifeq ($(BR2_MIPS_NABI32),y) +TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_BIN_DIR_SUFFIX = n32 +else ifeq ($(BR2_MIPS_NABI64),y) +TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_BIN_DIR_SUFFIX = n64 +endif + +define TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_STAGING_FIXUPS + rmdir $(STAGING_DIR)/usr/bin $(STAGING_DIR)/usr/sbin + ln -sf bin-$(TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_BIN_DIR_SUFFIX) $(STAGING_DIR)/usr/bin + ln -sf sbin-$(TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_BIN_DIR_SUFFIX) $(STAGING_DIR)/usr/sbin +endef + +# The Codescape toolchain uses a sysroot layout that places them +# side-by-side instead of nested like multilibs. A symlink is needed +# much like for the nested sysroots which are handled in +# copy_toolchain_sysroot but there is not enough information in there +# to determine whether the sysroot layout was nested or side-by-side. +# Add the symlink here for now. +define TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_SYMLINK + $(Q)ARCH_SYSROOT_DIR="$(call toolchain_find_sysroot,$(TOOLCHAIN_EXTERNAL_CC) $(TOOLCHAIN_EXTERNAL_CFLAGS))"; \ + ARCH_SUBDIR=`basename $${ARCH_SYSROOT_DIR}`; \ + ln -snf . $(STAGING_DIR)/$${ARCH_SUBDIR} +endef + +TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_POST_INSTALL_STAGING_HOOKS += \ + TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_STAGING_FIXUPS \ + TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_SYMLINK + +$(eval $(toolchain-external-package)) diff --git a/toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/Config.in b/toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/Config.in new file mode 100644 index 00000000..24cbcffa --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/Config.in @@ -0,0 +1,20 @@ +config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64 + bool "CodeSourcery AArch64 2014.11" + depends on BR2_aarch64 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_5 + # a57/a53 and a72/a53 appeared in gcc-6 or were broken before + depends on !BR2_cortex_a57_a53 && !BR2_cortex_a72_a53 + depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_SSP + select BR2_INSTALL_LIBSTDCPP + select BR2_HOSTARCH_NEEDS_IA32_LIBS + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_16 + select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + help + Sourcery CodeBench toolchain for the AArch64 architecture, + from Mentor Graphics. It uses gcc 4.9.1, binutils + 2.24.51.20140217, glibc 2.20, gdb 7.7.50 and kernel headers + 3.16.2. diff --git a/toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/Config.in.options b/toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/Config.in.options new file mode 100644 index 00000000..1eab8392 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/Config.in.options @@ -0,0 +1,9 @@ +if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64 + +config BR2_TOOLCHAIN_EXTERNAL_PREFIX + default "aarch64-amd-linux-gnu" + +config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL + default "toolchain-external-codesourcery-aarch64" + +endif diff --git a/toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/toolchain-external-codesourcery-aarch64.hash b/toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/toolchain-external-codesourcery-aarch64.hash new file mode 100644 index 00000000..f7d3f29f --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/toolchain-external-codesourcery-aarch64.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 405aada821146755c5f2df566375c2a682456d6b8451ee47b88cf1a52b093676 aarch64-amd-2014.11-95-aarch64-amd-linux-gnu-i686-pc-linux-gnu.tar.bz2 +sha256 3f50dd6ee433eb5b6992a1071b988e50379a738f54f58722bc60081613764716 aarch64-amd-2014.11-95-aarch64-amd-linux-gnu.src.tar.bz2 diff --git a/toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/toolchain-external-codesourcery-aarch64.mk b/toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/toolchain-external-codesourcery-aarch64.mk new file mode 100644 index 00000000..192763a0 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/toolchain-external-codesourcery-aarch64.mk @@ -0,0 +1,12 @@ +################################################################################ +# +# toolchain-external-codesourcery-aarch64 +# +################################################################################ + +TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64_SITE = https://sourcery.mentor.com/public/gnu_toolchain/$(TOOLCHAIN_EXTERNAL_PREFIX) +TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64_VERSION = 2014.11-95 +TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64_SOURCE = aarch64-amd-$(TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64_VERSION)-$(TOOLCHAIN_EXTERNAL_PREFIX)-i686-pc-linux-gnu.tar.bz2 +TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64_ACTUAL_SOURCE_TARBALL = aarch64-amd-$(TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64_VERSION)-$(TOOLCHAIN_EXTERNAL_PREFIX).src.tar.bz2 + +$(eval $(toolchain-external-package)) diff --git a/toolchain/toolchain-external/toolchain-external-codesourcery-arm/Config.in b/toolchain/toolchain-external/toolchain-external-codesourcery-arm/Config.in new file mode 100644 index 00000000..bdbe2aca --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-codesourcery-arm/Config.in @@ -0,0 +1,37 @@ +config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM + bool "Sourcery CodeBench ARM 2014.05" + depends on BR2_arm + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9 + depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + depends on BR2_ARM_EABI + # Unsupported ARM cores + depends on !BR2_cortex_a12 && !BR2_cortex_a17 && !BR2_ARM_CPU_ARMV8A + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + select BR2_INSTALL_LIBSTDCPP + select BR2_HOSTARCH_NEEDS_IA32_LIBS + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 + help + Sourcery CodeBench toolchain for the ARM architecture, from + Mentor Graphics. It uses gcc 4.8.3, binutils 2.24.51, glibc + 2.18 and gdb 7.7.50, kernel headers 3.13. It has support + for the following variants: + - ARMv5TE, little endian, soft-float, glibc + Select ARM926T, ARM10T, XScale or another ARMv5 core + Select BR2_SOFT_FLOAT + - ARMv4T, little endian, soft-float, glibc + Select ARM720T, ARM920T, ARM922T or another ARMv4 core + Select BR2_SOFT_FLOAT + - ARMv7-A, Thumb 2, little endian, soft-float, glibc + Select Cortex-A8, Cortex-A9 or another ARMv7-A core + Select BR2_SOFT_FLOAT + Set BR2_TARGET_OPTIMIZATION to -mthumb + +comment "Sourcery CodeBench toolchains available for the EABI ABI" + depends on BR2_arm + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9 + depends on !BR2_ARM_EABI + depends on !BR2_STATIC_LIBS diff --git a/toolchain/toolchain-external/toolchain-external-codesourcery-arm/Config.in.options b/toolchain/toolchain-external/toolchain-external-codesourcery-arm/Config.in.options new file mode 100644 index 00000000..7f3654dc --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-codesourcery-arm/Config.in.options @@ -0,0 +1,9 @@ +if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM + +config BR2_TOOLCHAIN_EXTERNAL_PREFIX + default "arm-none-linux-gnueabi" + +config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL + default "toolchain-external-codesourcery-arm" + +endif diff --git a/toolchain/toolchain-external/toolchain-external-codesourcery-arm/toolchain-external-codesourcery-arm.hash b/toolchain/toolchain-external/toolchain-external-codesourcery-arm/toolchain-external-codesourcery-arm.hash new file mode 100644 index 00000000..535f4aaf --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-codesourcery-arm/toolchain-external-codesourcery-arm.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 39ee0e789034334ecc89af94e838e3a4815400ac5ff980f808f466b04778532e arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 +sha256 e16a5b1e41d7ff1e74161f9405182001bc8d1360d89564e73911032e6966cc0d arm-2014.05-29-arm-none-linux-gnueabi.src.tar.bz2 diff --git a/toolchain/toolchain-external/toolchain-external-codesourcery-arm/toolchain-external-codesourcery-arm.mk b/toolchain/toolchain-external/toolchain-external-codesourcery-arm/toolchain-external-codesourcery-arm.mk new file mode 100644 index 00000000..f15a50c4 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-codesourcery-arm/toolchain-external-codesourcery-arm.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# toolchain-external-codesourcery-arm +# +################################################################################ + +TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM_VERSION = 2014.05-29 + +TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM_SITE = https://sourcery.mentor.com/public/gnu_toolchain/$(TOOLCHAIN_EXTERNAL_PREFIX) +TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM_SOURCE = arm-$(TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM_VERSION)-$(TOOLCHAIN_EXTERNAL_PREFIX)-i686-pc-linux-gnu.tar.bz2 +TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM_ACTUAL_SOURCE_TARBALL = arm-$(TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM_VERSION)-$(TOOLCHAIN_EXTERNAL_PREFIX).src.tar.bz2 + +$(eval $(toolchain-external-package)) diff --git a/toolchain/toolchain-external/toolchain-external-codesourcery-mips/Config.in b/toolchain/toolchain-external/toolchain-external-codesourcery-mips/Config.in new file mode 100644 index 00000000..1a3bdc93 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-codesourcery-mips/Config.in @@ -0,0 +1,96 @@ +config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS + bool "Sourcery CodeBench MIPS 2016.05" + depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el + depends on BR2_MIPS_CPU_MIPS32R2 || BR2_MIPS_CPU_MIPS64R2 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_6 + # Unsupported MIPS cores + depends on !BR2_mips_interaptiv + depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + depends on !BR2_MIPS_NABI32 + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + select BR2_TOOLCHAIN_HAS_OPENMP + select BR2_INSTALL_LIBSTDCPP + select BR2_HOSTARCH_NEEDS_IA32_LIBS + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_5 + help + Sourcery CodeBench toolchain for the MIPS architecture, from + Mentor Graphics. It uses gcc 5.3, binutils 2.25.51, glibc + 2.23, uClibc 0.9.30 and gdb 7.10.50, kernel headers 4.4.1. It + has support for the following variants: + - MIPS32r2 - Big-Endian, 2008 NaN, O32 + Select MIPS (big endian) core + Disable BR2_SOFT_FLOAT + Set BR2_TARGET_OPTIMIZATION to -mnan=2008 + - MIPS32r2 - Big-Endian, O32 + Select MIPS (big endian) core + Disable BR2_SOFT_FLOAT + - MIPS32r2 - Big-Endian, O32, MIPS16 + Select MIPS (big endian) core + Disable BR2_SOFT_FLOAT + Set BR2_TARGET_OPTIMIZATION to -mips16 + - MIPS32r2 - Big-Endian, Soft-Float, O32 + Select MIPS (big endian) core + Select BR2_SOFT_FLOAT + - MIPS32r2 - Big-Endian, Soft-Float, O32, MIPS16 + Select MIPS (big endian) core + Select BR2_SOFT_FLOAT + Set BR2_TARGET_OPTIMIZATION to -mips16 + - MIPS32r2 - Little-Endian, 2008 NaN, O32 + Select MIPS (little endian) core + Disable BR2_SOFT_FLOAT + Set BR2_TARGET_OPTIMIZATION to -mnan=2008 + - MIPS32r2 - Little-Endian, O32 + Select MIPS (little endian) core + Disable BR2_SOFT_FLOAT + - MIPS32r2 - Little-Endian, O32, MIPS16 + Select MIPS (little endian) core + Disable BR2_SOFT_FLOAT + Set BR2_TARGET_OPTIMIZATION to -mips16 + - MIPS32r2 - Little-Endian, Soft-Float, O32 + Select MIPS (little endian) core + Select BR2_SOFT_FLOAT + - MIPS32r2 - Little-Endian, Soft-Float, O32, MIPS16 + Select MIPS (little endian) core + Select BR2_SOFT_FLOAT + Set BR2_TARGET_OPTIMIZATION to -mips16 + - MIPS32r2 - Little-Endian, Soft-Float, O32, microMIPS + Select MIPS (little endian) core + Select BR2_SOFT_FLOAT + Set BR2_TARGET_OPTIMIZATION to -mmicromips + - MIPS32r2 - uClibc, Big-Endian, 2008 NaN, O32 + Not usable in Buildroot yet. + - MIPS32r2 - uClibc, Big-Endian, O32 + Not usable in Buildroot yet. + - MIPS32r2 - uClibc, Big-Endian, Soft-Float, O32 + Not usable in Buildroot yet. + - MIPS32r2 - uClibc, Little-Endian, 2008 NaN, O32 + Not usable in Buildroot yet. + - MIPS32r2 - uClibc, Little-Endian, O32 + Not usable in Buildroot yet. + - MIPS32r2 - uClibc, Little-Endian, Soft-Float, O32 + Not usable in Buildroot yet. + - MIPS64r2 - Big-Endian, N64 + Select MIPS64 (big endian) core + Select the n64 ABI + Disable BR2_SOFT_FLOAT + - MIPS64r2 - Big-Endian, Soft-Float, N64 + Select MIPS64 (big endian) core + Select the n64 ABI + Select BR2_SOFT_FLOAT + - MIPS64r2 - Little-Endian, N64 + Select MIPS64 (little endian) core + Select the n64 ABI + Disable BR2_SOFT_FLOAT + - MIPS64r2 - Little-Endian, Soft-Float, N64 + Select MIPS64 (little endian) core + Select the n64 ABI + Select BR2_SOFT_FLOAT + +comment "Sourcery CodeBench toolchains are only available for MIPS/MIPS64 o32 and n64" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_6 + depends on BR2_MIPS_NABI32 + depends on !BR2_STATIC_LIBS diff --git a/toolchain/toolchain-external/toolchain-external-codesourcery-mips/Config.in.options b/toolchain/toolchain-external/toolchain-external-codesourcery-mips/Config.in.options new file mode 100644 index 00000000..677cc67d --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-codesourcery-mips/Config.in.options @@ -0,0 +1,9 @@ +if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS + +config BR2_TOOLCHAIN_EXTERNAL_PREFIX + default "mips-linux-gnu" + +config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL + default "toolchain-external-codesourcery-mips" + +endif diff --git a/toolchain/toolchain-external/toolchain-external-codesourcery-mips/toolchain-external-codesourcery-mips.hash b/toolchain/toolchain-external/toolchain-external-codesourcery-mips/toolchain-external-codesourcery-mips.hash new file mode 100644 index 00000000..2d80338e --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-codesourcery-mips/toolchain-external-codesourcery-mips.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 d354447c4c5160439dafd5464fa3a0266dd41e79f973477238e4f0215a6b5397 mips-2016.05-8-mips-linux-gnu-i686-pc-linux-gnu.tar.bz2 +sha256 2658e55d5b71bba25d6f77e868e18b200ea5f75c8add7ed3a9266e716d9adfff mips-2016.05-8-mips-linux-gnu.src.tar.bz2 diff --git a/toolchain/toolchain-external/toolchain-external-codesourcery-mips/toolchain-external-codesourcery-mips.mk b/toolchain/toolchain-external/toolchain-external-codesourcery-mips/toolchain-external-codesourcery-mips.mk new file mode 100644 index 00000000..94fbbff5 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-codesourcery-mips/toolchain-external-codesourcery-mips.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# toolchain-external-codesourcery-mips +# +################################################################################ + +TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS_VERSION = 2016.05-8 + +TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS_SITE = https://sourcery.mentor.com/public/gnu_toolchain/$(TOOLCHAIN_EXTERNAL_PREFIX) +TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS_SOURCE = mips-$(TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS_VERSION)-$(TOOLCHAIN_EXTERNAL_PREFIX)-i686-pc-linux-gnu.tar.bz2 +TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS_ACTUAL_SOURCE_TARBALL = mips-$(TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS_VERSION)-$(TOOLCHAIN_EXTERNAL_PREFIX).src.tar.bz2 + +$(eval $(toolchain-external-package)) diff --git a/toolchain/toolchain-external/toolchain-external-codesourcery-niosII/Config.in b/toolchain/toolchain-external/toolchain-external-codesourcery-niosII/Config.in new file mode 100644 index 00000000..9d785a4b --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-codesourcery-niosII/Config.in @@ -0,0 +1,17 @@ +config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII + bool "Sourcery CodeBench Nios-II 2018.05" + depends on BR2_nios2 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_8 + depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + select BR2_INSTALL_LIBSTDCPP + select BR2_HOSTARCH_NEEDS_IA32_LIBS + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_15 + select BR2_TOOLCHAIN_GCC_AT_LEAST_7 + help + Sourcery CodeBench toolchain for the Nios-II architecture, + from Mentor Graphics. It uses gcc 7.3, binutils 2.28, + glibc 2.27, gdb 8.0.1 and kernel headers 4.15.5. diff --git a/toolchain/toolchain-external/toolchain-external-codesourcery-niosII/Config.in.options b/toolchain/toolchain-external/toolchain-external-codesourcery-niosII/Config.in.options new file mode 100644 index 00000000..07cc5ede --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-codesourcery-niosII/Config.in.options @@ -0,0 +1,9 @@ +if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII + +config BR2_TOOLCHAIN_EXTERNAL_PREFIX + default "nios2-linux-gnu" + +config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL + default "toolchain-external-codesourcery-niosII" + +endif diff --git a/toolchain/toolchain-external/toolchain-external-codesourcery-niosII/toolchain-external-codesourcery-niosII.hash b/toolchain/toolchain-external/toolchain-external-codesourcery-niosII/toolchain-external-codesourcery-niosII.hash new file mode 100644 index 00000000..518e677f --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-codesourcery-niosII/toolchain-external-codesourcery-niosII.hash @@ -0,0 +1,6 @@ +# From https://sourcery.mentor.com/GNUToolchain/release3374 +md5 4f536b3b9b4e00f483e82e304c0a27ae sourceryg++-2018.05-5-nios2-linux-gnu-i686-pc-linux-gnu.tar.bz2 +md5 be42ab83da2e8db7b73dc890c2549570 sourceryg++-2018.05-5-nios2-linux-gnu.src.tar.bz2 +# Locally calculated +sha256 c19afb432b5b23f8d5d639831d3a423a3ea3c9cc62e0015020d20ea2eb36dd1b sourceryg++-2018.05-5-nios2-linux-gnu-i686-pc-linux-gnu.tar.bz2 +sha256 d73a6364106dd62352711f932d3be8e97fdaaa548995678b5d38d9f21e22437a sourceryg++-2018.05-5-nios2-linux-gnu.src.tar.bz2 diff --git a/toolchain/toolchain-external/toolchain-external-codesourcery-niosII/toolchain-external-codesourcery-niosII.mk b/toolchain/toolchain-external/toolchain-external-codesourcery-niosII/toolchain-external-codesourcery-niosII.mk new file mode 100644 index 00000000..cb0fe760 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-codesourcery-niosII/toolchain-external-codesourcery-niosII.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# toolchain-external-codesourcery-niosII +# +################################################################################ + +TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII_VERSION = 2018.05-5 + +TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII_SITE = https://sourcery.mentor.com/public/gnu_toolchain/$(TOOLCHAIN_EXTERNAL_PREFIX) +TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII_SOURCE = sourceryg++-$(TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII_VERSION)-$(TOOLCHAIN_EXTERNAL_PREFIX)-i686-pc-linux-gnu.tar.bz2 +TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII_ACTUAL_SOURCE_TARBALL = sourceryg++-$(TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII_VERSION)-$(TOOLCHAIN_EXTERNAL_PREFIX).src.tar.bz2 + +$(eval $(toolchain-external-package)) diff --git a/toolchain/toolchain-external/toolchain-external-custom/Config.in b/toolchain/toolchain-external/toolchain-external-custom/Config.in new file mode 100644 index 00000000..a913feb3 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-custom/Config.in @@ -0,0 +1,5 @@ +config BR2_TOOLCHAIN_EXTERNAL_CUSTOM + bool "Custom toolchain" + help + Use this option to use a custom toolchain pre-installed on + your system. diff --git a/toolchain/toolchain-external/toolchain-external-custom/Config.in.options b/toolchain/toolchain-external/toolchain-external-custom/Config.in.options new file mode 100644 index 00000000..992fd2c1 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-custom/Config.in.options @@ -0,0 +1,494 @@ +if BR2_TOOLCHAIN_EXTERNAL_CUSTOM + +config BR2_TOOLCHAIN_EXTERNAL_PREFIX + default BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX + +config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL + default "toolchain-external-custom" + +config BR2_TOOLCHAIN_EXTERNAL_URL + string "Toolchain URL" + depends on BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD + help + URL of the custom toolchain tarball to download and install. + +config BR2_TOOLCHAIN_EXTERNAL_REL_BIN_PATH + string "Toolchain relative binary path" + default "bin" + depends on BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD + help + Path to where the binaries (e.g. the compiler) can be found, + relative to the downloaded toolchain root directory. The + default is "bin" and is correct for most toolchains. + +config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX + string "Toolchain prefix" + default "$(ARCH)-linux" + +choice + bool "External toolchain gcc version" + help + Set to the gcc version that is used by your external + toolchain. + +config BR2_TOOLCHAIN_EXTERNAL_GCC_10 + bool "10.x" + select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + +config BR2_TOOLCHAIN_EXTERNAL_GCC_9 + bool "9.x" + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + +config BR2_TOOLCHAIN_EXTERNAL_GCC_8 + bool "8.x" + select BR2_TOOLCHAIN_GCC_AT_LEAST_8 + +config BR2_TOOLCHAIN_EXTERNAL_GCC_7 + bool "7.x" + select BR2_TOOLCHAIN_GCC_AT_LEAST_7 + +config BR2_TOOLCHAIN_EXTERNAL_GCC_6 + bool "6.x" + select BR2_TOOLCHAIN_GCC_AT_LEAST_6 + +config BR2_TOOLCHAIN_EXTERNAL_GCC_5 + bool "5.x" + select BR2_TOOLCHAIN_GCC_AT_LEAST_5 + +config BR2_TOOLCHAIN_EXTERNAL_GCC_4_9 + bool "4.9.x" + select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + +config BR2_TOOLCHAIN_EXTERNAL_GCC_4_8 + bool "4.8.x" + select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 + +config BR2_TOOLCHAIN_EXTERNAL_GCC_4_7 + bool "4.7.x" + select BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 + +config BR2_TOOLCHAIN_EXTERNAL_GCC_4_6 + bool "4.6.x" + select BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 + +config BR2_TOOLCHAIN_EXTERNAL_GCC_4_5 + bool "4.5.x" + select BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 + +config BR2_TOOLCHAIN_EXTERNAL_GCC_4_4 + bool "4.4.x" + select BR2_TOOLCHAIN_GCC_AT_LEAST_4_4 + +config BR2_TOOLCHAIN_EXTERNAL_GCC_4_3 + bool "4.3.x" + select BR2_TOOLCHAIN_GCC_AT_LEAST_4_3 + +config BR2_TOOLCHAIN_EXTERNAL_GCC_OLD + bool "older" + help + Use this option if your GCC version is older than any of the + above. + + Note that the Buildroot community doesn't do any testing with + such old toolchains. Some packages may fail to build in + surprising ways, or the generated root filesystem may not + work at all. Use such old toolchains at your own risk. + +endchoice + +comment "GCC older than 4.8 is not tested by Buildroot. Use at your own risk." + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 + +choice + bool "External toolchain kernel headers series" + default BR2_TOOLCHAIN_EXTERNAL_HEADERS_REALLY_OLD + help + Set to the kernel headers version that were used to build + this external toolchain. + + This is used to hide/show some packages that have strict + requirements on the version of kernel headers. + + If unsure what version your toolchain is using, you can look + at the value of LINUX_VERSION_CODE in linux/version.h in your + toolchain. The Linux version is M.m.p, with: + M = ( LINUX_VERSION_CODE >> 16 ) & 0xFF + m = ( LINUX_VERSION_CODE >> 8 ) & 0xFF + p = ( LINUX_VERSION_CODE >> 0 ) & 0xFF + + If your toolchain uses headers newer than the latest version + in the choice, then select the latest version. + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_10 + bool "5.10.x or later" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_9 + bool "5.9.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_9 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_8 + bool "5.8.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_8 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_7 + bool "5.7.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_7 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_6 + bool "5.6.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_6 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_5 + bool "5.5.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_5 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_4 + bool "5.4.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_3 + bool "5.3.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_3 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_2 + bool "5.2.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_2 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_1 + bool "5.1.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_1 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_0 + bool "5.0.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_0 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_20 + bool "4.20.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_20 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_19 + bool "4.19.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_18 + bool "4.18.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_18 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_17 + bool "4.17.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_17 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_16 + bool "4.16.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_16 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_15 + bool "4.15.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_15 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_14 + bool "4.14.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_13 + bool "4.13.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_13 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_12 + bool "4.12.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_12 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_11 + bool "4.11.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_11 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_10 + bool "4.10.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_10 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_9 + bool "4.9.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_8 + bool "4.8.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_8 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_7 + bool "4.7.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_7 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_6 + bool "4.6.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_6 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_5 + bool "4.5.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_4 + bool "4.4.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_3 + bool "4.3.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_3 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_2 + bool "4.2.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_2 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_1 + bool "4.1.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_1 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_0 + bool "4.0.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_19 + bool "3.19.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_19 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_18 + bool "3.18.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_18 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_17 + bool "3.17.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_16 + bool "3.16.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_16 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_15 + bool "3.15.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_14 + bool "3.14.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_14 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_13 + bool "3.13.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_12 + bool "3.12.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_11 + bool "3.11.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_11 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_10 + bool "3.10.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_9 + bool "3.9.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_9 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_8 + bool "3.8.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_7 + bool "3.7.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_6 + bool "3.6.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_6 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_5 + bool "3.5.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_5 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_4 + bool "3.4.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_3 + bool "3.3.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_3 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_2 + bool "3.2.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_1 + bool "3.1.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_1 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_0 + bool "3.0.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_REALLY_OLD + bool "2.6.x" + +endchoice + +comment "Kernel headers older than 3.13 is not tested by Buildroot. Use at your own risk." + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13 + +choice + prompt "External toolchain C library" + default BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC + +config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC + bool "uClibc/uClibc-ng" + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + help + Select this option if your external toolchain uses the + uClibc (available from http://www.uclibc.org/) + or uClibc-ng (available from http://www.uclibc-ng.org) + C library. + +config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC + bool "glibc/eglibc" + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + help + Select this option if your external toolchain uses the GNU C + library (available from https://www.gnu.org/software/libc/) + or its variant the eglibc library (http://www.eglibc.org/). + + Note: eglibc is a variant of glibc that (among other things) + can be configured to exclude some of its features. Using a + toolchain with eglibc configured to exclude key features may + cause build failures to some packages. + +comment "(e)glibc only available with shared lib support" + depends on BR2_STATIC_LIBS + +config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_MUSL + bool "musl (experimental)" + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Select this option if your external toolchain uses the + 'musl' C library, available from http://www.musl-libc.org/. + +endchoice + +if BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC + +config BR2_TOOLCHAIN_EXTERNAL_WCHAR + bool "Toolchain has WCHAR support?" + select BR2_USE_WCHAR + help + Select this option if your external toolchain supports + WCHAR. If you don't know, leave the default value, Buildroot + will tell you if it's correct or not. + +config BR2_TOOLCHAIN_EXTERNAL_LOCALE + bool "Toolchain has locale support?" + select BR2_TOOLCHAIN_EXTERNAL_WCHAR + select BR2_ENABLE_LOCALE + help + Select this option if your external toolchain has locale + support. If you don't know, leave the default value, + Buildroot will tell you if it's correct or not. + +config BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS + bool "Toolchain has threads support?" + default y + select BR2_TOOLCHAIN_HAS_THREADS + help + Select this option if your external toolchain has thread + support. If you don't know, leave the default value, + Buildroot will tell you if it's correct or not. + +if BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS + +config BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG + bool "Toolchain has threads debugging support?" + default y + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + help + Select this option if your external toolchain has thread + debugging support. If you don't know, leave the default + value, Buildroot will tell you if it's correct or not. + +config BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_NPTL + bool "Toolchain has NPTL threads support?" + default y + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + help + Select this option if your external toolchain uses the NPTL + (Native Posix Thread Library) implementation of Posix + threads. If you don't know, leave the default value, + Buildroot will tell you if it's correct or not. + +endif # BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS + +endif # BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC + +config BR2_TOOLCHAIN_EXTERNAL_HAS_SSP + bool "Toolchain has SSP support?" + default y if BR2_TOOLCHAIN_EXTERNAL_GLIBC + default y if BR2_TOOLCHAIN_EXTERNAL_MUSL + select BR2_TOOLCHAIN_HAS_SSP + help + Select this option if your external toolchain has Stack + Smashing Protection support enabled. If you don't know, + leave the default value, Buildroot will tell you if it's + correct or not. + +config BR2_TOOLCHAIN_EXTERNAL_HAS_SSP_STRONG + bool "Toolchain has SSP strong support?" + default y if BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 && BR2_TOOLCHAIN_EXTERNAL_GLIBC + default y if BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 && BR2_TOOLCHAIN_EXTERNAL_MUSL + depends on BR2_TOOLCHAIN_EXTERNAL_HAS_SSP + select BR2_TOOLCHAIN_HAS_SSP_STRONG + help + Select this option if your external toolchain has strong + Stack Smashing Protection support enabled. If you don't + know, leave the default value, Buildroot will tell you if + it's correct or not. + +config BR2_TOOLCHAIN_EXTERNAL_INET_RPC + bool "Toolchain has RPC support?" + default y if BR2_TOOLCHAIN_EXTERNAL_GLIBC + depends on !BR2_TOOLCHAIN_EXTERNAL_MUSL + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + Select this option if your external toolchain supports + RPC. If you don't know, leave the default value, Buildroot + will tell you if it's correct or not. + +config BR2_TOOLCHAIN_EXTERNAL_CXX + bool "Toolchain has C++ support?" + select BR2_INSTALL_LIBSTDCPP + help + Select this option if your external toolchain has C++ + support. If you don't know, leave the default value, + Buildroot will tell you if it's correct or not. + +config BR2_TOOLCHAIN_EXTERNAL_DLANG + bool "Toolchain has D support?" + select BR2_TOOLCHAIN_HAS_DLANG + help + Select this option if your external toolchain has D + support. + +config BR2_TOOLCHAIN_EXTERNAL_FORTRAN + bool "Toolchain has Fortran support?" + select BR2_TOOLCHAIN_HAS_FORTRAN + help + Select this option if your external toolchain has Fortran + support. If you don't know, leave the default value, + Buildroot will tell you if it's correct or not. + +config BR2_TOOLCHAIN_EXTERNAL_OPENMP + bool "Toolchain has OpenMP support?" + select BR2_TOOLCHAIN_HAS_OPENMP + help + Select this option if your external toolchain has OpenMP + support. If you don't know, leave the default value, + Buildroot will tell you if it's correct or not. + +endif diff --git a/toolchain/toolchain-external/toolchain-external-custom/toolchain-external-custom.mk b/toolchain/toolchain-external/toolchain-external-custom/toolchain-external-custom.mk new file mode 100644 index 00000000..c4ae6125 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-custom/toolchain-external-custom.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# toolchain-external-custom +# +################################################################################ + +TOOLCHAIN_EXTERNAL_CUSTOM_SITE = $(patsubst %/,%,$(dir $(call qstrip,$(BR2_TOOLCHAIN_EXTERNAL_URL)))) +TOOLCHAIN_EXTERNAL_CUSTOM_SOURCE = $(notdir $(call qstrip,$(BR2_TOOLCHAIN_EXTERNAL_URL))) + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CUSTOM),y) +# We can't check hashes for custom downloaded toolchains +BR_NO_CHECK_HASH_FOR += $(TOOLCHAIN_EXTERNAL_SOURCE) +endif + +$(eval $(toolchain-external-package)) diff --git a/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in b/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in new file mode 100644 index 00000000..bac90374 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in @@ -0,0 +1,16 @@ +config BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64_BE + bool "Linaro AArch64 BE 2018.05" + depends on BR2_aarch64_be + depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_SSP + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_10 + select BR2_TOOLCHAIN_GCC_AT_LEAST_7 + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP + help + Toolchain for the AArch64 Big Endian architecture, from + http://www.linaro.org/engineering/armv8/ diff --git a/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in.options b/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in.options new file mode 100644 index 00000000..d44750ff --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in.options @@ -0,0 +1,9 @@ +if BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64_BE + +config BR2_TOOLCHAIN_EXTERNAL_PREFIX + default "aarch64_be-linux-gnu" + +config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL + default "toolchain-external-linaro-aarch64-be" + +endif diff --git a/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/toolchain-external-linaro-aarch64-be.hash b/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/toolchain-external-linaro-aarch64-be.hash new file mode 100644 index 00000000..f93642ec --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/toolchain-external-linaro-aarch64-be.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 412da19c1d1bff0f3172bc19fd2c024207d8d716dbe7a8dad4bf9e3d6b71d149 gcc-linaro-7.3.1-2018.05-i686_aarch64_be-linux-gnu.tar.xz +sha256 277c1483f8dbd6007c945ffeb706fa1ba1da8ec1c397cf5cf1e29c25081426e5 gcc-linaro-7.3.1-2018.05-x86_64_aarch64_be-linux-gnu.tar.xz diff --git a/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/toolchain-external-linaro-aarch64-be.mk b/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/toolchain-external-linaro-aarch64-be.mk new file mode 100644 index 00000000..7a01151b --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/toolchain-external-linaro-aarch64-be.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# toolchain-external-linaro-aarch64-be +# +################################################################################ + +TOOLCHAIN_EXTERNAL_LINARO_AARCH64_BE_VERSION = 2018.05 +TOOLCHAIN_EXTERNAL_LINARO_AARCH64_BE_SITE = https://releases.linaro.org/components/toolchain/binaries/7.3-$(TOOLCHAIN_EXTERNAL_LINARO_AARCH64_BE_VERSION)/aarch64_be-linux-gnu + +ifeq ($(HOSTARCH),x86) +TOOLCHAIN_EXTERNAL_LINARO_AARCH64_BE_SOURCE = gcc-linaro-7.3.1-$(TOOLCHAIN_EXTERNAL_LINARO_AARCH64_BE_VERSION)-i686_aarch64_be-linux-gnu.tar.xz +else +TOOLCHAIN_EXTERNAL_LINARO_AARCH64_BE_SOURCE = gcc-linaro-7.3.1-$(TOOLCHAIN_EXTERNAL_LINARO_AARCH64_BE_VERSION)-x86_64_aarch64_be-linux-gnu.tar.xz +endif + +$(eval $(toolchain-external-package)) diff --git a/toolchain/toolchain-external/toolchain-external-linaro-aarch64/Config.in b/toolchain/toolchain-external/toolchain-external-linaro-aarch64/Config.in new file mode 100644 index 00000000..824eb76c --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-linaro-aarch64/Config.in @@ -0,0 +1,16 @@ +config BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64 + bool "Linaro AArch64 2018.05" + depends on BR2_aarch64 + depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_SSP + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_10 + select BR2_TOOLCHAIN_GCC_AT_LEAST_7 + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP + help + Toolchain for the AArch64 architecture, from + http://www.linaro.org/engineering/armv8/ diff --git a/toolchain/toolchain-external/toolchain-external-linaro-aarch64/Config.in.options b/toolchain/toolchain-external/toolchain-external-linaro-aarch64/Config.in.options new file mode 100644 index 00000000..099c6c0d --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-linaro-aarch64/Config.in.options @@ -0,0 +1,9 @@ +if BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64 + +config BR2_TOOLCHAIN_EXTERNAL_PREFIX + default "aarch64-linux-gnu" + +config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL + default "toolchain-external-linaro-aarch64" + +endif diff --git a/toolchain/toolchain-external/toolchain-external-linaro-aarch64/toolchain-external-linaro-aarch64.hash b/toolchain/toolchain-external/toolchain-external-linaro-aarch64/toolchain-external-linaro-aarch64.hash new file mode 100644 index 00000000..938e37c7 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-linaro-aarch64/toolchain-external-linaro-aarch64.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 466b801a60491ae1e2ce9952e0615cf04cf611596c6ffd5bfe8a89ef5be47e03 gcc-linaro-7.3.1-2018.05-i686_aarch64-linux-gnu.tar.xz +sha256 73eed74e593e2267504efbcf3678918bb22409ab7afa3dc7c135d2c6790c2345 gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu.tar.xz diff --git a/toolchain/toolchain-external/toolchain-external-linaro-aarch64/toolchain-external-linaro-aarch64.mk b/toolchain/toolchain-external/toolchain-external-linaro-aarch64/toolchain-external-linaro-aarch64.mk new file mode 100644 index 00000000..1015d630 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-linaro-aarch64/toolchain-external-linaro-aarch64.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# toolchain-external-linaro-aarch64 +# +################################################################################ + +TOOLCHAIN_EXTERNAL_LINARO_AARCH64_VERSION = 2018.05 +TOOLCHAIN_EXTERNAL_LINARO_AARCH64_SITE = https://releases.linaro.org/components/toolchain/binaries/7.3-$(TOOLCHAIN_EXTERNAL_LINARO_AARCH64_VERSION)/aarch64-linux-gnu + +ifeq ($(HOSTARCH),x86) +TOOLCHAIN_EXTERNAL_LINARO_AARCH64_SOURCE = gcc-linaro-7.3.1-$(TOOLCHAIN_EXTERNAL_LINARO_AARCH64_VERSION)-i686_aarch64-linux-gnu.tar.xz +else +TOOLCHAIN_EXTERNAL_LINARO_AARCH64_SOURCE = gcc-linaro-7.3.1-$(TOOLCHAIN_EXTERNAL_LINARO_AARCH64_VERSION)-x86_64_aarch64-linux-gnu.tar.xz +endif + +$(eval $(toolchain-external-package)) diff --git a/toolchain/toolchain-external/toolchain-external-linaro-arm/Config.in b/toolchain/toolchain-external/toolchain-external-linaro-arm/Config.in new file mode 100644 index 00000000..beb38609 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-linaro-arm/Config.in @@ -0,0 +1,28 @@ +comment "Linaro toolchains available for Cortex-A + EABIhf" + depends on BR2_arm + depends on !BR2_ARM_CPU_ARMV7A || !BR2_ARM_EABIHF + depends on !BR2_STATIC_LIBS + +config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM + bool "Linaro ARM 2018.05" + depends on BR2_arm + depends on BR2_ARM_CPU_ARMV7A || BR2_ARM_CPU_ARMV8A + depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + depends on BR2_ARM_EABIHF + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_10 + select BR2_TOOLCHAIN_GCC_AT_LEAST_7 + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP + help + Linaro toolchain for the ARM architecture. It uses Linaro + GCC 2018.05 (based on gcc 7.3.1), Linaro GDB 2018.05 (based on + GDB 8.1), glibc 2.25, Binutils 2018.05 (based on 2.28). It + generates code that runs on all Cortex-A profile devices, + but tuned for the Cortex-A9. The code generated is Thumb 2, + with the hard floating point calling convention, and uses + the VFPv3-D16 FPU instructions. diff --git a/toolchain/toolchain-external/toolchain-external-linaro-arm/Config.in.options b/toolchain/toolchain-external/toolchain-external-linaro-arm/Config.in.options new file mode 100644 index 00000000..dcbc6599 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-linaro-arm/Config.in.options @@ -0,0 +1,9 @@ +if BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM + +config BR2_TOOLCHAIN_EXTERNAL_PREFIX + default "arm-linux-gnueabihf" + +config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL + default "toolchain-external-linaro-arm" + +endif diff --git a/toolchain/toolchain-external/toolchain-external-linaro-arm/toolchain-external-linaro-arm.hash b/toolchain/toolchain-external/toolchain-external-linaro-arm/toolchain-external-linaro-arm.hash new file mode 100644 index 00000000..bd09cb5a --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-linaro-arm/toolchain-external-linaro-arm.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 0613b5be14eb7d50a772bbd72069c428558e6e53fa5fce7201d75a13a475ffff gcc-linaro-7.3.1-2018.05-i686_arm-linux-gnueabihf.tar.xz +sha256 7248bf105d0d468887a9b8a7120bb281ac8ad0223d9cb3d00dc7c2d498485d91 gcc-linaro-7.3.1-2018.05-x86_64_arm-linux-gnueabihf.tar.xz diff --git a/toolchain/toolchain-external/toolchain-external-linaro-arm/toolchain-external-linaro-arm.mk b/toolchain/toolchain-external/toolchain-external-linaro-arm/toolchain-external-linaro-arm.mk new file mode 100644 index 00000000..fda356bc --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-linaro-arm/toolchain-external-linaro-arm.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# toolchain-external-linaro-arm +# +################################################################################ + +TOOLCHAIN_EXTERNAL_LINARO_ARM_VERSION = 2018.05 +TOOLCHAIN_EXTERNAL_LINARO_ARM_SITE = https://releases.linaro.org/components/toolchain/binaries/7.3-$(TOOLCHAIN_EXTERNAL_LINARO_ARM_VERSION)/arm-linux-gnueabihf + +ifeq ($(HOSTARCH),x86) +TOOLCHAIN_EXTERNAL_LINARO_ARM_SOURCE = gcc-linaro-7.3.1-$(TOOLCHAIN_EXTERNAL_LINARO_ARM_VERSION)-i686_arm-linux-gnueabihf.tar.xz +else +TOOLCHAIN_EXTERNAL_LINARO_ARM_SOURCE = gcc-linaro-7.3.1-$(TOOLCHAIN_EXTERNAL_LINARO_ARM_VERSION)-x86_64_arm-linux-gnueabihf.tar.xz +endif + +$(eval $(toolchain-external-package)) diff --git a/toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in b/toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in new file mode 100644 index 00000000..aa21e448 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in @@ -0,0 +1,27 @@ +comment "Linaro toolchains available for Cortex-A + EABIhf" + depends on BR2_armeb + depends on !BR2_ARM_CPU_ARMV7A || !BR2_ARM_EABIHF + depends on !BR2_STATIC_LIBS + +config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARMEB + bool "Linaro armeb 2018.05" + depends on BR2_armeb + depends on BR2_ARM_CPU_ARMV7A || BR2_ARM_CPU_ARMV8A + depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + depends on BR2_ARM_EABIHF + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + select BR2_TOOLCHAIN_HAS_OPENMP + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_10 + select BR2_TOOLCHAIN_GCC_AT_LEAST_7 + help + Linaro toolchain for the ARM big endian architecture. It + uses Linaro GCC 2018.05 (based on gcc 7.3.1), Linaro GDB + 2018.05 (based on GDB 8.1), glibc 2.25, Binutils 2018.05 + (based on 2.28). It generates code that runs on all Cortex-A + profile devices, but tuned for the Cortex-A9. The code + generated is Thumb 2, with the hard floating point calling + convention, and uses the VFPv3-D16 FPU instructions. diff --git a/toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in.options b/toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in.options new file mode 100644 index 00000000..225e90f0 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in.options @@ -0,0 +1,9 @@ +if BR2_TOOLCHAIN_EXTERNAL_LINARO_ARMEB + +config BR2_TOOLCHAIN_EXTERNAL_PREFIX + default "armeb-linux-gnueabihf" + +config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL + default "toolchain-external-linaro-armeb" + +endif diff --git a/toolchain/toolchain-external/toolchain-external-linaro-armeb/toolchain-external-linaro-armeb.hash b/toolchain/toolchain-external/toolchain-external-linaro-armeb/toolchain-external-linaro-armeb.hash new file mode 100644 index 00000000..a3b6b88b --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-linaro-armeb/toolchain-external-linaro-armeb.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 60bf9924a0c039c94deb85cb9b129d0f28b28eadbb1fb3f7e2e227679cc43fc9 gcc-linaro-7.3.1-2018.05-i686_armeb-linux-gnueabihf.tar.xz +sha256 c1bbd598b78458d6b7ea1c971fddf736c00d57890c7131fdafd4e789289c42f9 gcc-linaro-7.3.1-2018.05-x86_64_armeb-linux-gnueabihf.tar.xz diff --git a/toolchain/toolchain-external/toolchain-external-linaro-armeb/toolchain-external-linaro-armeb.mk b/toolchain/toolchain-external/toolchain-external-linaro-armeb/toolchain-external-linaro-armeb.mk new file mode 100644 index 00000000..b8ea80ff --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-linaro-armeb/toolchain-external-linaro-armeb.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# toolchain-external-linaro-armeb +# +################################################################################ + +TOOLCHAIN_EXTERNAL_LINARO_ARMEB_VERSION = 2018.05 + +TOOLCHAIN_EXTERNAL_LINARO_ARMEB_SITE = https://releases.linaro.org/components/toolchain/binaries/7.3-$(TOOLCHAIN_EXTERNAL_LINARO_ARMEB_VERSION)/armeb-linux-gnueabihf + +ifeq ($(HOSTARCH),x86) +TOOLCHAIN_EXTERNAL_LINARO_ARMEB_SOURCE = gcc-linaro-7.3.1-$(TOOLCHAIN_EXTERNAL_LINARO_ARMEB_VERSION)-i686_armeb-linux-gnueabihf.tar.xz +else +TOOLCHAIN_EXTERNAL_LINARO_ARMEB_SOURCE = gcc-linaro-7.3.1-$(TOOLCHAIN_EXTERNAL_LINARO_ARMEB_VERSION)-x86_64_armeb-linux-gnueabihf.tar.xz +endif + +$(eval $(toolchain-external-package)) diff --git a/toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in b/toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in new file mode 100644 index 00000000..c3483f33 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in @@ -0,0 +1,17 @@ +config BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC + bool "Synopsys ARC 2019.09 toolchain" + depends on BR2_arc + depends on BR2_HOSTARCH = "x86_64" + select BR2_TOOLCHAIN_EXTERNAL_UCLIBC + select BR2_INSTALL_LIBSTDCPP + select BR2_ENABLE_LOCALE + select BR2_USE_WCHAR + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_15 + select BR2_TOOLCHAIN_GCC_AT_LEAST_9 + help + Toolchain for the ARC cores, from + https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases diff --git a/toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in.options b/toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in.options new file mode 100644 index 00000000..ceb7dd00 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in.options @@ -0,0 +1,10 @@ +if BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC + +config BR2_TOOLCHAIN_EXTERNAL_PREFIX + default "arc-linux" if BR2_arcle + default "arceb-linux" if BR2_arceb + +config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL + default "toolchain-external-synopsys-arc" + +endif diff --git a/toolchain/toolchain-external/toolchain-external-synopsys-arc/toolchain-external-synopsys-arc.hash b/toolchain/toolchain-external/toolchain-external-synopsys-arc/toolchain-external-synopsys-arc.hash new file mode 100644 index 00000000..3ce6bbcb --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-synopsys-arc/toolchain-external-synopsys-arc.hash @@ -0,0 +1,5 @@ +# From https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases/tag/arc-2019.09-release +sha256 f7cbf68ef251943db7baf63535e0ec98dafbdf5d925017b4e1d4fc64d9b38a26 arc_gnu_2019.09_prebuilt_uclibc_le_arc700_linux_install.tar.gz +sha256 ac09f0a21f9d50146a5e542f4a6abc93e5a1dcb0a1372cb5c3ba86bbefaaec7d arc_gnu_2019.09_prebuilt_uclibc_be_arc700_linux_install.tar.gz +sha256 245ca49fe8ea2456617541b18bb96e52e6c0dc619f00e293fcaad519fc436c35 arc_gnu_2019.09_prebuilt_uclibc_le_archs_linux_install.tar.gz +sha256 6f039a0158c03af398ada31fae96009e47f0d7b7f7d52e12eb419492fc3f27e7 arc_gnu_2019.09_prebuilt_uclibc_be_archs_linux_install.tar.gz diff --git a/toolchain/toolchain-external/toolchain-external-synopsys-arc/toolchain-external-synopsys-arc.mk b/toolchain/toolchain-external/toolchain-external-synopsys-arc/toolchain-external-synopsys-arc.mk new file mode 100644 index 00000000..c8f141e4 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-synopsys-arc/toolchain-external-synopsys-arc.mk @@ -0,0 +1,24 @@ +################################################################################ +# +# toolchain-external-synopsys-arc +# +################################################################################ + +TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC_VERSION = 2019.09 +TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC_SITE = https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases/download/arc-$(TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC_VERSION)-release + +ifeq ($(BR2_arc750d)$(BR2_arc770d),y) +TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC_CORE = arc700 +else +TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC_CORE = archs +endif + +ifeq ($(BR2_arcle),y) +TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC_ENDIANESS = le +else +TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC_ENDIANESS = be +endif + +TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC_SOURCE = arc_gnu_$(TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC_VERSION)_prebuilt_uclibc_$(TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC_ENDIANESS)_$(TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC_CORE)_linux_install.tar.gz + +$(eval $(toolchain-external-package)) diff --git a/toolchain/toolchain-external/toolchain-external.mk b/toolchain/toolchain-external/toolchain-external.mk new file mode 100644 index 00000000..dd07884c --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external.mk @@ -0,0 +1,28 @@ +################################################################################ +# +# toolchain-external +# +################################################################################ + +TOOLCHAIN_EXTERNAL_ADD_TOOLCHAIN_DEPENDENCY = NO + +# musl does not provide an implementation for sys/queue.h or sys/cdefs.h. +# So, add the musl-compat-headers package that will install those files, +# into the staging directory: +# sys/queue.h: header from NetBSD +# sys/cdefs.h: minimalist header bundled in Buildroot +ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y) +TOOLCHAIN_EXTERNAL_DEPENDENCIES += musl-compat-headers +endif + +$(eval $(virtual-package)) + +# Ensure the external-toolchain package has a prefix defined. +# This comes after the virtual-package definition, which checks the provider. +ifeq ($(BR2_TOOLCHAIN_EXTERNAL),y) +ifeq ($(call qstrip,$(BR2_TOOLCHAIN_EXTERNAL_PREFIX)),) +$(error No prefix selected for external toolchain package $(BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL). Configuration error) +endif +endif + +include $(sort $(wildcard toolchain/toolchain-external/*/*.mk)) diff --git a/toolchain/toolchain-wrapper.c b/toolchain/toolchain-wrapper.c new file mode 100644 index 00000000..0fb6064b --- /dev/null +++ b/toolchain/toolchain-wrapper.c @@ -0,0 +1,553 @@ +/** + * Buildroot wrapper for toolchains. This simply executes the real toolchain + * with a number of arguments (sysroot/arch/..) hardcoded, to ensure the + * toolchain uses the correct configuration. + * The hardcoded path arguments are defined relative to the actual location + * of the binary. + * + * (C) 2011 Peter Korsgaard + * (C) 2011 Daniel Nyström + * (C) 2012 Arnout Vandecappelle (Essensium/Mind) + * (C) 2013 Spenser Gilliland + * + * This file is licensed under the terms of the GNU General Public License + * version 2. This program is licensed "as is" without any warranty of any + * kind, whether express or implied. + */ + +#define _GNU_SOURCE +#include +#include +#include +#include +#include +#include +#include +#include + +#ifdef BR_CCACHE +static char ccache_path[PATH_MAX]; +#endif +static char path[PATH_MAX]; +static char sysroot[PATH_MAX]; +/* As would be defined by gcc: + * https://gcc.gnu.org/onlinedocs/cpp/Standard-Predefined-Macros.html + * sizeof() on string literals includes the terminating \0. */ +static char _time_[sizeof("-D__TIME__=\"HH:MM:SS\"")]; +static char _date_[sizeof("-D__DATE__=\"MMM DD YYYY\"")]; + +/** + * GCC errors out with certain combinations of arguments (examples are + * -mfloat-abi={hard|soft} and -m{little|big}-endian), so we have to ensure + * that we only pass the predefined one to the real compiler if the inverse + * option isn't in the argument list. + * This specifies the worst case number of extra arguments we might pass + * Currently, we may have: + * -mfloat-abi= + * -march= + * -mcpu= + * -D__TIME__= + * -D__DATE__= + * -Wno-builtin-macro-redefined + * -Wl,-z,now + * -Wl,-z,relro + * -fPIE + * -pie + */ +#define EXCLUSIVE_ARGS 10 + +static char *predef_args[] = { +#ifdef BR_CCACHE + ccache_path, +#endif + path, + "--sysroot", sysroot, +#ifdef BR_ABI + "-mabi=" BR_ABI, +#endif +#ifdef BR_NAN + "-mnan=" BR_NAN, +#endif +#ifdef BR_FPU + "-mfpu=" BR_FPU, +#endif +#ifdef BR_SOFTFLOAT + "-msoft-float", +#endif /* BR_SOFTFLOAT */ +#ifdef BR_MODE + "-m" BR_MODE, +#endif +#ifdef BR_64 + "-m64", +#endif +#ifdef BR_OMIT_LOCK_PREFIX + "-Wa,-momit-lock-prefix=yes", +#endif +#ifdef BR_NO_FUSED_MADD + "-mno-fused-madd", +#endif +#ifdef BR_FP_CONTRACT_OFF + "-ffp-contract=off", +#endif +#ifdef BR_BINFMT_FLAT + "-Wl,-elf2flt", +#endif +#ifdef BR_MIPS_TARGET_LITTLE_ENDIAN + "-EL", +#endif +#if defined(BR_MIPS_TARGET_BIG_ENDIAN) || defined(BR_ARC_TARGET_BIG_ENDIAN) + "-EB", +#endif +#ifdef BR_ADDITIONAL_CFLAGS + BR_ADDITIONAL_CFLAGS +#endif +}; + +/* A {string,length} tuple, to avoid computing strlen() on constants. + * - str must be a \0-terminated string + * - len does not account for the terminating '\0' + */ +struct str_len_s { + const char *str; + size_t len; +}; + +/* Define a {string,length} tuple. Takes an unquoted constant string as + * parameter. sizeof() on a string literal includes the terminating \0, + * but we don't want to count it. + */ +#define STR_LEN(s) { #s, sizeof(#s)-1 } + +/* List of paths considered unsafe for cross-compilation. + * + * An unsafe path is one that points to a directory with libraries or + * headers for the build machine, which are not suitable for the target. + */ +static const struct str_len_s unsafe_paths[] = { + STR_LEN(/lib), + STR_LEN(/usr/include), + STR_LEN(/usr/lib), + STR_LEN(/usr/local/include), + STR_LEN(/usr/local/lib), + STR_LEN(/usr/X11R6/include), + STR_LEN(/usr/X11R6/lib), + { NULL, 0 }, +}; + +/* Unsafe options are options that specify a potentialy unsafe path, + * that will be checked by check_unsafe_path(), below. + */ +static const struct str_len_s unsafe_opts[] = { + STR_LEN(-I), + STR_LEN(-idirafter), + STR_LEN(-iquote), + STR_LEN(-isystem), + STR_LEN(-L), + { NULL, 0 }, +}; + +/* Check if path is unsafe for cross-compilation. Unsafe paths are those + * pointing to the standard native include or library paths. + * + * We print the arguments leading to the failure. For some options, gcc + * accepts the path to be concatenated to the argument (e.g. -I/foo/bar) + * or separated (e.g. -I /foo/bar). In the first case, we need only print + * the argument as it already contains the path (arg_has_path), while in + * the second case we need to print both (!arg_has_path). + * + * If paranoid, exit in error instead of just printing a warning. + */ +static void check_unsafe_path(const char *arg, + const char *path, + int paranoid, + int arg_has_path) +{ + const struct str_len_s *p; + + for (p=unsafe_paths; p->str; p++) { + if (strncmp(path, p->str, p->len)) + continue; + fprintf(stderr, + "%s: %s: unsafe header/library path used in cross-compilation: '%s%s%s'\n", + program_invocation_short_name, + paranoid ? "ERROR" : "WARNING", + arg, + arg_has_path ? "" : "' '", /* close single-quote, space, open single-quote */ + arg_has_path ? "" : path); /* so that arg and path are properly quoted. */ + if (paranoid) + exit(1); + } +} + +#ifdef BR_NEED_SOURCE_DATE_EPOCH +/* Returns false if SOURCE_DATE_EPOCH was not defined in the environment. + * + * Returns true if SOURCE_DATE_EPOCH is in the environment and represent + * a valid timestamp, in which case the timestamp is formatted into the + * global variables _date_ and _time_. + * + * Aborts if SOURCE_DATE_EPOCH was set in the environment but did not + * contain a valid timestamp. + * + * Valid values are defined in the spec: + * https://reproducible-builds.org/specs/source-date-epoch/ + * but we further restrict them to be positive or null. + */ +bool parse_source_date_epoch_from_env(void) +{ + char *epoch_env, *endptr; + time_t epoch; + struct tm epoch_tm; + + if ((epoch_env = getenv("SOURCE_DATE_EPOCH")) == NULL) + return false; + errno = 0; + epoch = (time_t) strtoll(epoch_env, &endptr, 10); + /* We just need to test if it is incorrect, but we do not + * care why it is incorrect. + */ + if ((errno != 0) || !*epoch_env || *endptr || (epoch < 0)) { + fprintf(stderr, "%s: invalid SOURCE_DATE_EPOCH='%s'\n", + program_invocation_short_name, + epoch_env); + exit(1); + } + tzset(); /* For localtime_r(), below. */ + if (localtime_r(&epoch, &epoch_tm) == NULL) { + fprintf(stderr, "%s: cannot parse SOURCE_DATE_EPOCH=%s\n", + program_invocation_short_name, + getenv("SOURCE_DATE_EPOCH")); + exit(1); + } + if (!strftime(_time_, sizeof(_time_), "-D__TIME__=\"%T\"", &epoch_tm)) { + fprintf(stderr, "%s: cannot set time from SOURCE_DATE_EPOCH=%s\n", + program_invocation_short_name, + getenv("SOURCE_DATE_EPOCH")); + exit(1); + } + if (!strftime(_date_, sizeof(_date_), "-D__DATE__=\"%b %e %Y\"", &epoch_tm)) { + fprintf(stderr, "%s: cannot set date from SOURCE_DATE_EPOCH=%s\n", + program_invocation_short_name, + getenv("SOURCE_DATE_EPOCH")); + exit(1); + } + return true; +} +#else +bool parse_source_date_epoch_from_env(void) +{ + /* The compiler is recent enough to handle SOURCE_DATE_EPOCH itself + * so we do not need to do anything here. + */ + return false; +} +#endif + +int main(int argc, char **argv) +{ + char **args, **cur, **exec_args; + char *relbasedir, *absbasedir; + char *progpath = argv[0]; + char *basename; + char *env_debug; + char *paranoid_wrapper; + int paranoid; + int ret, i, count = 0, debug = 0, found_shared = 0; + + /* Debug the wrapper to see arguments it was called with. + * If environment variable BR2_DEBUG_WRAPPER is: + * unset, empty, or 0: do not trace + * set to 1 : trace all arguments on a single line + * set to 2 : trace one argument per line + */ + if ((env_debug = getenv("BR2_DEBUG_WRAPPER"))) { + debug = atoi(env_debug); + } + if (debug > 0) { + fprintf(stderr, "Toolchain wrapper was called with:"); + for (i = 0; i < argc; i++) + fprintf(stderr, "%s'%s'", + (debug == 2) ? "\n " : " ", argv[i]); + fprintf(stderr, "\n"); + } + + /* Calculate the relative paths */ + basename = strrchr(progpath, '/'); + if (basename) { + *basename = '\0'; + basename++; + relbasedir = malloc(strlen(progpath) + 7); + if (relbasedir == NULL) { + perror(__FILE__ ": malloc"); + return 2; + } + sprintf(relbasedir, "%s/..", argv[0]); + absbasedir = realpath(relbasedir, NULL); + } else { + basename = progpath; + absbasedir = malloc(PATH_MAX + 1); + ret = readlink("/proc/self/exe", absbasedir, PATH_MAX); + if (ret < 0) { + perror(__FILE__ ": readlink"); + return 2; + } + absbasedir[ret] = '\0'; + for (i = ret; i > 0; i--) { + if (absbasedir[i] == '/') { + absbasedir[i] = '\0'; + if (++count == 2) + break; + } + } + } + if (absbasedir == NULL) { + perror(__FILE__ ": realpath"); + return 2; + } + + /* Fill in the relative paths */ +#ifdef BR_CROSS_PATH_REL + ret = snprintf(path, sizeof(path), "%s/" BR_CROSS_PATH_REL "/%s" BR_CROSS_PATH_SUFFIX, absbasedir, basename); +#elif defined(BR_CROSS_PATH_ABS) + ret = snprintf(path, sizeof(path), BR_CROSS_PATH_ABS "/%s" BR_CROSS_PATH_SUFFIX, basename); +#else + ret = snprintf(path, sizeof(path), "%s/bin/%s" BR_CROSS_PATH_SUFFIX, absbasedir, basename); +#endif + if (ret >= sizeof(path)) { + perror(__FILE__ ": overflow"); + return 3; + } +#ifdef BR_CCACHE + ret = snprintf(ccache_path, sizeof(ccache_path), "%s/bin/ccache", absbasedir); + if (ret >= sizeof(ccache_path)) { + perror(__FILE__ ": overflow"); + return 3; + } +#endif + ret = snprintf(sysroot, sizeof(sysroot), "%s/" BR_SYSROOT, absbasedir); + if (ret >= sizeof(sysroot)) { + perror(__FILE__ ": overflow"); + return 3; + } + + cur = args = malloc(sizeof(predef_args) + + (sizeof(char *) * (argc + EXCLUSIVE_ARGS))); + if (args == NULL) { + perror(__FILE__ ": malloc"); + return 2; + } + + /* start with predefined args */ + memcpy(cur, predef_args, sizeof(predef_args)); + cur += sizeof(predef_args) / sizeof(predef_args[0]); + +#ifdef BR_FLOAT_ABI + /* add float abi if not overridden in args */ + for (i = 1; i < argc; i++) { + if (!strncmp(argv[i], "-mfloat-abi=", strlen("-mfloat-abi=")) || + !strcmp(argv[i], "-msoft-float") || + !strcmp(argv[i], "-mhard-float")) + break; + } + + if (i == argc) + *cur++ = "-mfloat-abi=" BR_FLOAT_ABI; +#endif + +#ifdef BR_FP32_MODE + /* add fp32 mode if soft-float is not args or hard-float overrides soft-float */ + int add_fp32_mode = 1; + for (i = 1; i < argc; i++) { + if (!strcmp(argv[i], "-msoft-float")) + add_fp32_mode = 0; + else if (!strcmp(argv[i], "-mhard-float")) + add_fp32_mode = 1; + } + + if (add_fp32_mode == 1) + *cur++ = "-mfp" BR_FP32_MODE; +#endif + +#if defined(BR_ARCH) || \ + defined(BR_CPU) + /* Add our -march/cpu flags, but only if none of + * -march/mtune/mcpu are already specified on the commandline + */ + for (i = 1; i < argc; i++) { + if (!strncmp(argv[i], "-march=", strlen("-march=")) || + !strncmp(argv[i], "-mtune=", strlen("-mtune=")) || + !strncmp(argv[i], "-mcpu=", strlen("-mcpu=" ))) + break; + } + if (i == argc) { +#ifdef BR_ARCH + *cur++ = "-march=" BR_ARCH; +#endif +#ifdef BR_CPU + *cur++ = "-mcpu=" BR_CPU; +#endif + } +#endif /* ARCH || CPU */ + + if (parse_source_date_epoch_from_env()) { + *cur++ = _time_; + *cur++ = _date_; + /* This has existed since gcc-4.4.0. */ + *cur++ = "-Wno-builtin-macro-redefined"; + } + +#ifdef BR2_PIC_PIE + /* Patterned after Fedora/Gentoo hardening approaches. + * https://fedoraproject.org/wiki/Changes/Harden_All_Packages + * https://wiki.gentoo.org/wiki/Hardened/Toolchain#Position_Independent_Executables_.28PIEs.29 + * + * A few checks are added to allow disabling of PIE + * 1) -fno-pie and -no-pie are used by other distros to disable PIE in + * cases where the compiler enables it by default. The logic below + * maintains that behavior. + * Ref: https://wiki.ubuntu.com/SecurityTeam/PIE + * 2) A check for -fno-PIE has been used in older Linux Kernel builds + * in a similar way to -fno-pie or -no-pie. + * 3) A check is added for Kernel and U-boot defines + * (-D__KERNEL__ and -D__UBOOT__). + */ + for (i = 1; i < argc; i++) { + /* Apply all incompatible link flag and disable checks first */ + if (!strcmp(argv[i], "-r") || + !strcmp(argv[i], "-Wl,-r") || + !strcmp(argv[i], "-static") || + !strcmp(argv[i], "-D__KERNEL__") || + !strcmp(argv[i], "-D__UBOOT__") || + !strcmp(argv[i], "-fno-pie") || + !strcmp(argv[i], "-fno-PIE") || + !strcmp(argv[i], "-no-pie")) + break; + /* Record that shared was present which disables -pie but don't + * break out of loop as a check needs to occur that possibly + * still allows -fPIE to be set + */ + if (!strcmp(argv[i], "-shared")) + found_shared = 1; + } + + if (i == argc) { + /* Compile and link condition checking have been kept split + * between these two loops, as there maybe already are valid + * compile flags set for position independence. In that case + * the wrapper just adds the -pie for link. + */ + for (i = 1; i < argc; i++) { + if (!strcmp(argv[i], "-fpie") || + !strcmp(argv[i], "-fPIE") || + !strcmp(argv[i], "-fpic") || + !strcmp(argv[i], "-fPIC")) + break; + } + /* Both args below can be set at compile/link time + * and are ignored correctly when not used + */ + if (i == argc) + *cur++ = "-fPIE"; + + if (!found_shared) + *cur++ = "-pie"; + } +#endif + /* Are we building the Linux Kernel or U-Boot? */ + for (i = 1; i < argc; i++) { + if (!strcmp(argv[i], "-D__KERNEL__") || + !strcmp(argv[i], "-D__UBOOT__")) + break; + } + if (i == argc) { + /* https://wiki.gentoo.org/wiki/Hardened/Toolchain#Mark_Read-Only_Appropriate_Sections */ +#ifdef BR2_RELRO_PARTIAL + *cur++ = "-Wl,-z,relro"; +#endif +#ifdef BR2_RELRO_FULL + *cur++ = "-Wl,-z,now"; + *cur++ = "-Wl,-z,relro"; +#endif + } + + paranoid_wrapper = getenv("BR_COMPILER_PARANOID_UNSAFE_PATH"); + if (paranoid_wrapper && strlen(paranoid_wrapper) > 0) + paranoid = 1; + else + paranoid = 0; + + /* Check for unsafe library and header paths */ + for (i = 1; i < argc; i++) { + const struct str_len_s *opt; + for (opt=unsafe_opts; opt->str; opt++ ) { + /* Skip any non-unsafe option. */ + if (strncmp(argv[i], opt->str, opt->len)) + continue; + + /* Handle both cases: + * - path is a separate argument, + * - path is concatenated with option. + */ + if (argv[i][opt->len] == '\0') { + i++; + if (i == argc) + break; + check_unsafe_path(argv[i-1], argv[i], paranoid, 0); + } else + check_unsafe_path(argv[i], argv[i] + opt->len, paranoid, 1); + } + } + + /* append forward args */ + memcpy(cur, &argv[1], sizeof(char *) * (argc - 1)); + cur += argc - 1; + + /* finish with NULL termination */ + *cur = NULL; + + exec_args = args; +#ifdef BR_CCACHE + if (getenv("BR_NO_CCACHE")) + /* Skip the ccache call */ + exec_args++; +#endif + + /* Debug the wrapper to see final arguments passed to the real compiler. */ + if (debug > 0) { + fprintf(stderr, "Toolchain wrapper executing:"); +#ifdef BR_CCACHE_HASH + fprintf(stderr, "%sCCACHE_COMPILERCHECK='string:" BR_CCACHE_HASH "'", + (debug == 2) ? "\n " : " "); +#endif +#ifdef BR_CCACHE_BASEDIR + fprintf(stderr, "%sCCACHE_BASEDIR='" BR_CCACHE_BASEDIR "'", + (debug == 2) ? "\n " : " "); +#endif + for (i = 0; exec_args[i]; i++) + fprintf(stderr, "%s'%s'", + (debug == 2) ? "\n " : " ", exec_args[i]); + fprintf(stderr, "\n"); + } + +#ifdef BR_CCACHE_HASH + /* Allow compilercheck to be overridden through the environment */ + if (setenv("CCACHE_COMPILERCHECK", "string:" BR_CCACHE_HASH, 0)) { + perror(__FILE__ ": Failed to set CCACHE_COMPILERCHECK"); + return 3; + } +#endif +#ifdef BR_CCACHE_BASEDIR + /* Allow compilercheck to be overridden through the environment */ + if (setenv("CCACHE_BASEDIR", BR_CCACHE_BASEDIR, 0)) { + perror(__FILE__ ": Failed to set CCACHE_BASEDIR"); + return 3; + } +#endif + + if (execv(exec_args[0], exec_args)) + perror(path); + + free(args); + + return 2; +} diff --git a/toolchain/toolchain-wrapper.mk b/toolchain/toolchain-wrapper.mk new file mode 100644 index 00000000..8b551e3a --- /dev/null +++ b/toolchain/toolchain-wrapper.mk @@ -0,0 +1,92 @@ +################################################################################ +# +# definition of the toolchain wrapper build commands +# +################################################################################ + +# We use --hash-style=both to increase the compatibility of the generated +# binary with older platforms, except for MIPS, where the only acceptable +# hash style is 'sysv' +ifeq ($(findstring mips,$(HOSTARCH)),mips) +TOOLCHAIN_WRAPPER_HASH_STYLE = sysv +else +TOOLCHAIN_WRAPPER_HASH_STYLE = both +endif + +TOOLCHAIN_WRAPPER_ARGS = $($(PKG)_TOOLCHAIN_WRAPPER_ARGS) +TOOLCHAIN_WRAPPER_ARGS += -DBR_SYSROOT='"$(STAGING_SUBDIR)"' + +TOOLCHAIN_WRAPPER_OPTS = \ + $(ARCH_TOOLCHAIN_WRAPPER_OPTS) \ + $(call qstrip,$(BR2_SSP_OPTION)) \ + $(call qstrip,$(BR2_TARGET_OPTIMIZATION)) + +ifeq ($(BR2_REPRODUCIBLE),y) +TOOLCHAIN_WRAPPER_OPTS += -Wl,--build-id=none +ifeq ($(BR2_TOOLCHAIN_GCC_AT_LEAST_8),y) +TOOLCHAIN_WRAPPER_OPTS += -ffile-prefix-map=$(BASE_DIR)=buildroot +else +TOOLCHAIN_WRAPPER_OPTS += -D__FILE__=\"\" -D__BASE_FILE__=\"\" -Wno-builtin-macro-redefined +endif +ifeq ($(BR2_TOOLCHAIN_GCC_AT_LEAST_7),) +TOOLCHAIN_WRAPPER_OPTS += -DBR_NEED_SOURCE_DATE_EPOCH +endif +endif + +# Disable -ftree-loop-distribute-patterns on microblaze to +# workaround a compiler bug with gcc 10 and -O2, -Os or -O3. +# https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=5879ab5fafedc8f6f9bfe95a4cf8501b0df90edd +# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97208 +ifeq ($(BR2_TOOLCHAIN_GCC_AT_LEAST_10)$(BR2_microblaze),yy) +TOOLCHAIN_WRAPPER_OPTS += -fno-tree-loop-distribute-patterns +endif + +# We create a list like '"-mfoo", "-mbar", "-mbarfoo"' so that each flag is a +# separate argument when used in execv() by the toolchain wrapper. +TOOLCHAIN_WRAPPER_ARGS += \ + -DBR_ADDITIONAL_CFLAGS='$(foreach f,$(TOOLCHAIN_WRAPPER_OPTS),"$(f)"$(comma))' + +ifeq ($(BR2_CCACHE),y) +TOOLCHAIN_WRAPPER_ARGS += -DBR_CCACHE +endif + +ifeq ($(BR2_x86_x1000),y) +TOOLCHAIN_WRAPPER_ARGS += -DBR_OMIT_LOCK_PREFIX +endif + +# Avoid FPU bug on XBurst CPUs +ifeq ($(BR2_mips_xburst),y) +# Before gcc 4.6, -mno-fused-madd was needed, after -ffp-contract is +# needed +ifeq ($(BR2_TOOLCHAIN_GCC_AT_LEAST_4_6),y) +TOOLCHAIN_WRAPPER_ARGS += -DBR_FP_CONTRACT_OFF +else +TOOLCHAIN_WRAPPER_ARGS += -DBR_NO_FUSED_MADD +endif +endif + +ifeq ($(BR2_CCACHE_USE_BASEDIR),y) +TOOLCHAIN_WRAPPER_ARGS += -DBR_CCACHE_BASEDIR='"$(BASE_DIR)"' +endif + +ifeq ($(BR2_PIC_PIE),y) +TOOLCHAIN_WRAPPER_ARGS += -DBR2_PIC_PIE +endif + +ifeq ($(BR2_RELRO_PARTIAL),y) +TOOLCHAIN_WRAPPER_ARGS += -DBR2_RELRO_PARTIAL +else ifeq ($(BR2_RELRO_FULL),y) +TOOLCHAIN_WRAPPER_ARGS += -DBR2_RELRO_FULL +endif + +define TOOLCHAIN_WRAPPER_BUILD + $(HOSTCC) $(HOST_CFLAGS) $(TOOLCHAIN_WRAPPER_ARGS) \ + -s -Wl,--hash-style=$(TOOLCHAIN_WRAPPER_HASH_STYLE) \ + toolchain/toolchain-wrapper.c \ + -o $(@D)/toolchain-wrapper +endef + +define TOOLCHAIN_WRAPPER_INSTALL + $(INSTALL) -D -m 0755 $(@D)/toolchain-wrapper \ + $(HOST_DIR)/bin/toolchain-wrapper +endef diff --git a/toolchain/toolchain.mk b/toolchain/toolchain.mk new file mode 100644 index 00000000..08d16496 --- /dev/null +++ b/toolchain/toolchain.mk @@ -0,0 +1,50 @@ +################################################################################ +# +# toolchain-related customisation of the content of the target/ directory +# +################################################################################ + +# Those customisations are added to the TARGET_FINALIZE_HOOKS, to be applied +# just after all packages have been built. + +# Install the gconv modules +ifeq ($(BR2_TOOLCHAIN_GLIBC_GCONV_LIBS_COPY),y) +TOOLCHAIN_GLIBC_GCONV_LIBS = $(call qstrip,$(BR2_TOOLCHAIN_GLIBC_GCONV_LIBS_LIST)) +define TOOLCHAIN_GLIBC_COPY_GCONV_LIBS + $(Q)found_gconv=no; \ + for d in $(TOOLCHAIN_EXTERNAL_PREFIX) ''; do \ + [ -d "$(STAGING_DIR)/usr/lib/$${d}/gconv" ] || continue; \ + found_gconv=yes; \ + break; \ + done; \ + if [ "$${found_gconv}" = "no" ]; then \ + printf "Unable to find gconv modules\n" >&2; \ + exit 1; \ + fi; \ + if [ -z "$(TOOLCHAIN_GLIBC_GCONV_LIBS)" ]; then \ + $(INSTALL) -m 0644 -D $(STAGING_DIR)/usr/lib/$${d}/gconv/gconv-modules \ + $(TARGET_DIR)/usr/lib/gconv/gconv-modules && \ + $(INSTALL) -m 0644 $(STAGING_DIR)/usr/lib/$${d}/gconv/*.so \ + $(TARGET_DIR)/usr/lib/gconv \ + || exit 1; \ + else \ + for l in $(TOOLCHAIN_GLIBC_GCONV_LIBS); do \ + $(INSTALL) -m 0644 -D $(STAGING_DIR)/usr/lib/$${d}/gconv/$${l}.so \ + $(TARGET_DIR)/usr/lib/gconv/$${l}.so \ + || exit 1; \ + $(TARGET_READELF) -d $(STAGING_DIR)/usr/lib/$${d}/gconv/$${l}.so |\ + sort -u |\ + sed -e '/.*(NEEDED).*\[\(.*\.so\)\]$$/!d; s//\1/;' |\ + while read lib; do \ + $(INSTALL) -m 0644 -D $(STAGING_DIR)/usr/lib/$${d}/gconv/$${lib} \ + $(TARGET_DIR)/usr/lib/gconv/$${lib} \ + || exit 1; \ + done; \ + done; \ + ./support/scripts/expunge-gconv-modules "$(TOOLCHAIN_GLIBC_GCONV_LIBS)" \ + <$(STAGING_DIR)/usr/lib/$${d}/gconv/gconv-modules \ + >$(TARGET_DIR)/usr/lib/gconv/gconv-modules; \ + fi +endef +TOOLCHAIN_TARGET_FINALIZE_HOOKS += TOOLCHAIN_GLIBC_COPY_GCONV_LIBS +endif diff --git a/toolchain/toolchain/toolchain.mk b/toolchain/toolchain/toolchain.mk new file mode 100644 index 00000000..0afb12c0 --- /dev/null +++ b/toolchain/toolchain/toolchain.mk @@ -0,0 +1,50 @@ +################################################################################ +# +# toolchain +# +################################################################################ + +ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y) +TOOLCHAIN_DEPENDENCIES += toolchain-buildroot +else ifeq ($(BR2_TOOLCHAIN_EXTERNAL),y) +TOOLCHAIN_DEPENDENCIES += toolchain-external +endif + +TOOLCHAIN_ADD_TOOLCHAIN_DEPENDENCY = NO +TOOLCHAIN_INSTALL_STAGING = YES + +# Apply a hack that Rick Felker suggested[1] to avoid conflicts between libc +# headers and kernel headers. This is needed for kernel headers older than +# 4.15. Kernel headers 4.15 and newer don't require __GLIBC__ to be defined. +# +# Augment the original suggestion with __USE_MISC since recent kernels +# (older than 4.15) require this glibc internal macro. Also, as musl defines +# IFF_LOWER_UP, IFF_DORMANT and IFF_ECHO, add another macro to suppress +# them in the kernel header, and avoid macro/enum conflict. +# +# Kernel version 3.12 introduced the libc-compat.h header. +# +# [1] http://www.openwall.com/lists/musl/2015/10/08/2 +ifeq ($(BR2_TOOLCHAIN_USES_MUSL)$(BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12):$(BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_15),yy:) +define TOOLCHAIN_MUSL_KERNEL_HEADERS_COMPATIBILITY_HACK + $(SED) 's/^#if defined(__GLIBC__)$$/#if 1/' \ + $(STAGING_DIR)/usr/include/linux/libc-compat.h + $(SED) '1s/^/#define __USE_MISC\n/' \ + $(STAGING_DIR)/usr/include/linux/libc-compat.h + $(SED) '1s/^/#define __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO 0\n/' \ + $(STAGING_DIR)/usr/include/linux/libc-compat.h +endef +TOOLCHAIN_POST_INSTALL_STAGING_HOOKS += TOOLCHAIN_MUSL_KERNEL_HEADERS_COMPATIBILITY_HACK +endif + +# Install default nsswitch.conf file if the skeleton doesn't provide it +ifeq ($(BR2_TOOLCHAIN_USES_GLIBC),y) +define GLIBC_COPY_NSSWITCH_FILE + @if [ ! -f "$(TARGET_DIR)/etc/nsswitch.conf" ]; then \ + $(INSTALL) -D -m 0644 package/glibc/nsswitch.conf $(TARGET_DIR)/etc/nsswitch.conf ; \ + fi +endef +TOOLCHAIN_POST_INSTALL_TARGET_HOOKS += GLIBC_COPY_NSSWITCH_FILE +endif + +$(eval $(virtual-package))

    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 RH({ri| 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

  • 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

    3^R#?&qV@ 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�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≫pyRj;aLb<#lT%XniK} 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 z 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%0A{BvW2y@C4}L z+$|nulV2$8QZ3k84*1X(Y8D)tJX7wqrr_AsyU-Kmfh)l zQEi186`AM#LOj17HS_)0_N#|OtBVA)_oT~s$C*TZ132Pg1VikkeX^lKJhyfwBL`5* z^UI$zs9!&^p{$Y$&s%TZ3a*LTw1%aggB(#a_a5fFunpFT|~#WR-e$Wi7GP3gFvP3t_w0K^L0_*(9V>_JTsHKbUnnZWcZTJ1`V|MyObd zz*Q84*FhC~Y3YRx>Uo8-Q&8_2&w#?vwcXrL4}~Ecs}Jgj+o-x??M7yOqha6NCAVslSdb{)&pY;gCUDif=N5ejkS2*a3&DNy)?L$B9S_AU;@VU$r@~`mN zyDH%^b95d%K~uO;v7Y|shZbzOBXgJ3jnK;+KOCK7R|_x zJTqUvL5q($gBLMQpuJVf29j23>vl6W=SmJNXZlBLaZJ)ikvSeMlS@4Le<+k3;V_%Y*LEEN~ zC0$mdafQdYPq%xx7_|0o|Z?Eb|xtLE9gx!(zV- ziCw_ms;8O7m;Y+Sk%PZPrP9=}?mtO4BW{)gP|?m25x#V*tg2m8*c8@5P`tw7~;!#b^nq3$g&XI_m4447_-EQgw^h?vT)ui-9+s^Y)a~@zqh)K5F z#?)Rg#qGS5$Z%v?4uG|$Y=An-wmug;O#d*5CUinpBA(^{!$^B4r2N1+-}rg2w-J8q(>mWX@M4P0 z>0&|Q<{H6c5MMDqoI)wR8F$rkb(n$)gAf65EBPY48TSEovM}PK{OKpAy+c{XJwoUI zfc*1K^Z+Jox>7t>n=oE_UVE{9<71W5r+Ueog+%|Cx99UBguCBvFF*Nw06Ihmneu0v zROdhQQ0i}EYD}aghgQdK4Q!Bs`1x#FY9+ac*Mw`(AE8w+Oy>iU12n&xoca<}!D0yv zgHW7K)m+S{a-T~~X;cVpN@cGLUoL6&2a#`2^}d_9$W2=UL+ulAB!on*}@CoL?P zcCsCe5MrbJHL)~p2Nt0|T!Z}jxK=l@6_8eJqr9Y^PJ{Vf`qMyZ?Uv3+>b|hn9ZM#% zPm%w+64w$IQp)I6DkA)EPtwUY_A1Pyuyq$UORm|9t{7=j*HBuw`IFc7!JJ|*YH#R5 zaRnL=RO~Rc)j>Upl+fRhhbm718exCM^5Tr2Y%Pk@qbwDjYiRT4R>_rjV?m!b*fzx4 zeO;t@HH^F7Ij(my#JWj8!j%Fo<`LmB#mjUs*!^0*(w~bRRcmYI-=#k~=?{F|0(s36 z)MP#AFNp`x;Sx-SMM#w#Q4cLi@+~KNNIb_3P8sl#+Kxg52L{U*%kNNQvvb^ZL4%;@r+Djk^^zrdGZo;q!GzSQ->2uQ;72s>zS5w|x}w8BFZQQQv%E%jplY@g7)_0NaV*W!Of67;I+P$gXw627W*6$O zs|}zr7G*!z{ODL6ypzxarXni(wh2xNzD~Jm zqgbLPOSK6e4C%jVs?{ySDcs!GNuMVpcocds_g3?5N8~#_D$rZaDCWg{$5MWwU-+TI zYElYB_rHM2K3G=+o^PipCX5#y16%cZPUam+nWZ|CzuU^7+cM{ey+iMF7=2QV-GEn% zf*zZEOMrUGhWYb_49vx{rP8YDW^$hLnPV61bxCqFJeNBK&OQ_Eed>v$$6a;3NYYxe2f42krnDb7IVjZ=>6ib78 zVH5;}I31UOk6IflQT-iA)%?q$-((@D;#%)Ru063S3Mu5iDex}Hbb>|zyV?r&^l8iW zi~iHrMKS|gQN5mA;8Az_t#-y+iqbBh2Zwp1rE8Ye`-~qCUJM(SB~SuPCCo6N$!&(F ze8;Va@?ZQYs;xBHo0n0FP&##!>Wdvw&(?E>MH1#nh6xo?`)+0XM7*JXqqe4m+K{J# zH>kWJY`h`#nZJFePb^0je~(SZccp>MZ*#ciDZRCf`J$f+4&I$U_QSikaH%R~A4$?D zL94lWZl==-mEI%Y#)K~ZhE{HC&rb-aHv~GICqK~|;3++fAkE*6gjwQ9{woL2)zTP} ze-J@U-qm-pw6_bcbSdiKgc*gI^V+&9>6EVa>V8>9v-mt3gCUYaigOlkCCu?;qf^R1 zK20u9&Scx(eH~uQTXQC=-3PEi!@Y+v%nM{!(Yv52UnCM86hLXlTC1(Nkn^iYWBVu< z#83ZznOPHt-MBV_b4ha~p3u&{lCyu~WJX2UTjQ{6(j0i$;ZCy+|ISW5H}#4)OAM(@ zfeiTdbG23dSeBOXHct~ba2w!5eisNjTaYmS)NCJY7!1=NlDJR);v*X`OgobM(NyVO zec2nBYTyfl7$W%#NH!iowQK!A=jy-C7h~evnI| zEz$f6_bgdPV}lC^!hrJbl4Gv+L?K04eZm0?c=v>aMmPC#p6CQY45XX>o?VB zN7H;Gxe(D%8q%w;aXbN1jV_;_p2At%Zu1VDVjD2rk$4*iOUy} z3@u6sfuy6DJ^ed$yY3RwhGAZRLdbiHgDB<74Uywm=Uwfyunle0u}w*y)iByxhilux zyo)A1InS0{0$9Y5v4Q>Q{eec<Am%&mrvsU?gh&@%6}zoT)n3%Ul8N?WUAfV1agS;-SqU;#9+hg=}$s7 z*Av4oQ50aT>3vT`xW%jKW>uO+CM7}1b--=oh#at2eD|zXlhi_TW+iQ%W+>xHN{$aK z8AlJOoj$o{YvjYvYb^1CHo*p`KGtML-ly5pA=n^)$J>o}~;bilZ z0{_POCk0o?a7JH}I7eIA`?+VJbCuxRs~IfpWoT=woHxDLHQLVh8{2WvETDz z_`!o-x?EaOpy^T8>Hy;t4*1DqZ_SazEdk94RQO%Uu>U`miSKFqer!BUGe^+(^-P;1 z2nVSkT0$<@aEzi+@k}`R?ZyqxUf=qEP!u&15>raYtP?AMXh3t^=I=Bs@^*-t&oUkP zp)Y?E62a4vzDIbwT+&dgirx0@hlBL@k}sDZa~Dubv%f~!k<1IJOxn9gUQ?Q&K(4Sh zr1!2>LGCjYav10DUS0Mp6=$v$ZhDWE&HC=B<2jQKX+8=oc2?NvW(WP@{BUXeD4O6i zIJv9vl}Ubm(B%6vH$0tQ#NOyp&nu5P@|FZlrE_3);o_@3s zY$?o4Vbl)D4|g0{bPX#?!=B#ZBsH6jZeKsqm}kTrj>G z{1lv)L)zxB!5?FgbOmp5`9m*cD9EeALbr+z7mnrPoGNA=8+`sTz%~p;8Bh`zx=qXI zezq!l8d37Z5Vq$>X@3**0v#CfE`{wUjI&IvU zEvK&8C~zKxjF)*p9Uy{IZdX_;usLD0c#O_@?)yzD;x!jak>(u(9DN*ZL!Z1Fpq9w0 zj~!wBKY@jJq6zj_?l}_QhiK@xDqLWt zwH5wdBmd8eKhdPq!Apig1UJLAb2`5$rjx<(ZZpfdJxojKDOjFX+0++AN!dR*vh3=` z-5<;_aW`7RgKYPH?S%v$d;#Pd$7az#6?2TdTGUr1I`{G9!7-Knn3QsQokqNYACKXo z`BflI15qrn&r|)A)`0`#e2|fi6NAY#R_t4$&sx*9@?%Y``KS#Gb6X{o9BYixsDcbb zrIqXJ3WeD-R!pBLQ-~3%X)rr*liab>nb2iB4bcE)UAXa1TzPyJWaxahIC&E&-Qe_z zkZtNrL5+TfHw7ezyb|$3Igg-G5Npdx=q?Y`{Ngfbdwj-?-wCN*lCu-@JkN6;}mx%5Uhyg?N?$T-v>W=54api8$fA=E}!=(j~zvN-srVy)# z6jpr0`u(|U#Q2^?p1y#{HODn=Q(764!LUufa~C?E49a+Hw@YI{a@;-Ju&N@= zc2dTBG@Ua%k^8G28J-$`8IR+)hCBOD4;5@lk zn_opXcf(jAS%SgX0$WxM#W87a`_&~CS~u4h%x%}!$!;+snk9OCnvBcP#<@gHqoAMK z{bUA5>a@G*g$ZZe9xY#a_3Xre9XfuP#UYTq2$43@}lGt1M^3>=j%B5+QPlSJIN>jh>xy;I*|AB8bSG^DmXX?XEWN&ixHLXsmty0e&N1yPn@K z{y=1P08~J$zy7KAO$~J(XQUb#s;7ppJCzXqnpAt#Co7WQ-ksSOzMr%s!qQJ;P{>>{ z@-1+y&O#}9oi6K}t@;cHo_Oe2TIqC6?hP0+&d=`>HcZ@l(zHX4TBz?s_CU$SUN0`i zbXU7{M-^B+Lk$;29Z5OupXP?ouT2Xf8k_n@Bv^6X%H|2qd?eQd zj0{Ejnj|>1G9dhf5v)B>((?IFEuy+eTHQ11%f%7F@lODSC_-1BQP;fB(9#1XZf8Uh z{~ZlnXp478q^G))|A{{-(evQTX4yGg_TK$94W|_L--POAyT>^#zM{Oe$e$Ho&bJbX z2^%ywHVG1>kX0|*SM{{6n`c{iPMc?g+26ZqD3{x|Jf{8WMKFN$2Yy%mggp;DM~4@S zB{_Y=Zl$~J4gtMH5N$(quJ@W>>*GAg+TBz^lGdG)cwqaIQl^_mGD)DXfM3=|{biQ*B@VRRFVO9={4%L5ES;K@*N|_RPq)lCBh6i(r9QGM=UU zd%Atcq=NOEmT{`5gv7!T7OxGbUxf~e2pHmeec*!%{mYu#c?-C(Zw$Fl8GQ)h!)i__ zPQW4c)t}c50tLxi!}ZQ)i!vOg%o1astd6&8_%UIp3G0#6Zl@@l0Fs2`;}=p^E*Y2dML=Y6wJ+pLI0VHDkBT+2eJ4;_52OV zIeB_{Q{lgg5^#Wfr@wo4se6&ZKOD@`h9XpqH(!Igak66`R^I9c9AbHD?7%+dVq9kj z9v1o6R&mVeP?fDD6DrZ?mU(WbL1eALI3bnknHe>d|-i?*CTfpyMkEaLWF) z@_rBVA0; z&>Z^fQkRDz&h2jV?*|=0d9nx3Z`E4Fbl*g2<94Qtz(B7rL0MiGy;Xe_rfQ*m4;~0s z3E0TaW19`NvGAVyfj5}|zbkIo&4;Hj*F&mRKdivCt)gq^E>;NMiD6uL7$tznOxx4ISE~4IKii z&9YVVp$v`mTF!zl$yBjp;7>1o-FUG2u6yw;o(?#Ke@89+?Qwig=4bI5jyWGO)) z??Fq*1|$-Jdk5HHd3T4*A3;d3BT3;P2CpdBKQ%F6fJ%y_2j#)r=WrA$8-sYJ;@==i zgHd;xG0#*U>p`9fTcIDP9x(O8Ugp6`vQPFS{tMl+bnwZu@w6?ju}*jHCx=8sMuW1F zRB;d6>54eV8ztgYeeI!)+wrQ>h`WTKlj%9b?xp>9?EHJp$ouL4VsF+gBGJnd04pwI zZ$XNt-q5WAogDX3L*wDMF;5u>pMj0WJvwoVTqei!1B8QW=3hhBI=6Vd%3&2dYp4A zF+=)|XEY{Qnb626qHzYoR!~EFN{QF*on(0RGIAGJ{yv{~hUDv>&Yab#qCB(fW}jYE zvwMP-6Luhl!OfpRr}^ILugJTJYsUg=a<7$X?2YV;LdIPdag6*%*B0=VRaDdxQP3{4 zJ?ZVqFt#ut^h}b_kr$j-{Jj5n{61WAt>OY5uC!bw1K}Mj^)Z=F+(cp?WcI#sKmome z>MpfOar2I)R>-RU8OId47nCbsZ^ZD(pYq?@jnjJkG^@nokmsz`wh86~e*{ z5;NzRiwsLEn$2cd-RhF*VVjmN)#l7#E11pF)(1OFT zwm!f90bhPk5Lo^&x@O*QnfNKG%DFn&Gs3dPm5dbP2m*hK>THzOXr{|m2Mi2h;8C9b zz81gep@hs}K|_FkId?aRuD<(~$kraaSt@&r2x2wfmD;y!!OOe59}GS0(0j#slt;iA zE7#xm80rs=npIs0jJT@b>vD5}M>fNrmSeP+AO3Sx((`AipVAJMGsEHiBS^>w^wy`rQ{5#R-)?P8>`Axk8Je$k?x2ec8*e( z*X9ua#tE_q70+LMoFo8dHWHYa?wDNXuER9eLOqu|eLQn5cJ@3kB~B~Zp}YE*K$Fp| zOiuPq-Y0dNiSNE~ZLhESuXC$iDw`j?TMx9WM_f9{uXDq0s+yNBSiK*1;2WZcLJy{x z((Pe8dQbv)_YP=dYdX=mXFW<|M>-S1SN{1nhUG{^_#*^$b)^zhD79#zQqI7hU zUZnQ-hC^+!W;1n5^15_1W56K{Qu98izPzri=%k9}z1uY}?61uRO7OC9Qs#2?>n z7qE`lS*+C$0+UGnI7s|BiqdRyc|~emF9tjv#yD)EyV6cK@UFeU^e#JoyZ+;%O3NLj z-mQK~v(hbWjYE68Yil&qF(S}t1IwnI6A>`|(2Y4G#3>!$@WUZ0-Ql3mg&1Vw_#!jy zLyBf5FaIW|ZP_BvYe-g={q&E42MKup+5agDsL_IZY33QH5aD7cJP7U7N168}xR~C} zbGeJ@HrPGnMCW(3_-4|`yvVz+UV_^e)dKd48oCMEtM$L8TAipb$q%mccAMZ>r0W$tNRtq+%|o$Q?Q=im6p7ojY# zH|OR)?xEQl7OXoFxiCe2KS<5*z9RPv>1e!l(0SqA&>MR03{kd!82GsL`SIPK+^~Z0 z?s7YR{#0}gHm$ks-qozuP9N9vYg=XQvt|>k5KZd+gm-=lm2$WEcYY${OlWymfl32H zpLV@H$Xt9nSTU4lw(=y*z5@Ff1-T!E@n^#r=(0FIYvItxuG)iAvMad7N8S_aAcoBI_y`YuE=7UIbyBtjui_6u z&2IrakpV$Qr+wS9G%dnmS7{&YLvsRBo$*Af29Ht62cy3)lDEWE&?tNK_Fw-1@vIzV zK74TT(GaP;OCtvG8#*;j!>%4r1?bn8dLfRwr){=(vW3V5!04NPr=Cv2Yk(z8PSd#4 zUEj>w!GDd18sQ=gED*`vCnD_fxklIrax2|J<~7?lg?j^}XKo8in!mn|W3xQm*zg*l z3%+W<0OD{eE8j?=}`*dMCUn+Ji(Ikp1JhR#IJFMU5PmG;|oZk6nj}BK3c)8$|HImGRMX1Fs0-991stAdZ*=(U4|>%QWf^v%e}rI38&d^^qEyNkg_5_I)$@(45%7%ylG)7QJb7<}#s zYK_P1((i3Zb9e6|#Ws*|?hB&Rn(yAVZkbnf0L*BMTy>*A(gR@%glX}BYn+$%uB~bI zuwO$&6YznD$(Q1bx0(Pz@iaZ%>Tk=_Ox2Z>l6gg?#CI5O9c^|DeGsuOlVA2=Vv4JS zjMD6d8g@f>=Pn-tH0KK==F4iVoBOQbD97d0tLXUtu`7x!NQ7qr zU7B(pHhWy0zTUah*fFt1pdH3R`%==1Yn*&CVB%A$ZvaACZ=Ruank=^=YuHxeQS+P4 z(+>qY0O@%qMyD4ho%PE#g=!aqk{!|XEQtrt@Fao9ITQTJ_K`RFyZ7~pa(ntq_CZoL zopzHYpe05sJ2paD!uh``yPyxC!?JLgX3(zTAJBk4mT!=`Z@P_1=#LJ6K+7<; zw>aeAP&({{y_(`>R9olCw39u~@*GL_a!KEaENajhNi#>(VeC>mQQDllDM_~#D%|wm z(ySjyb_T@Fmb5iqd}t94Xw9I{DUM$o=){`^J-42`j2^FO|K5=%!uOz>?$YsEq|SSn zOFd%>7=Zj;ZsAZG!PvfDiAEst;2;hmq5geKY;<) zcpbjamYK~zaN_;oe!)7};tvs;K3ot(JkK7pvc*08V|PyyXgfGJz1Zqk*U3;)%~*Zz zgiT=Qu!@Z|au$4vs_)$DZ_*LqRNVQ33xO9l=qy-RFaK_Q_U`dJRhruBzoRxxuQ3vG zm()|bJs%kUIPedexj%}p2j32sG6cay=cO;UtG)DD(jg)^gL{V6uhiP$?&T&+AxW{eCOL)@>~A=>_rd z_?9AbGY}#D(giqyF6y2iFpU(#KY$8zk(b5kyx%pW8(PDsy(nH+7An}SIK@^d42wZ6 zEe;ry$ed!=z(ToI6hhm~@IOK-L!!@iq#qs_22-SBQ*Il!kl{Xt!%B^1@_^sd((8fv zR5_xjl+p9jc!>9XngrI5m)I{7_Y66@MWb&HoKF7X!VX)dy4jL^jWXpTf#T1~OEKQ? zgEoP~H+!G~H`H}n$pS#%IU1bIdQ1cKniZ3asLvPA#F%skEO7CDw=JULG^-D?KU22J z?ng+ze_{;vK-Dzl@T0_V01jnSay^E_NQJn@Z-vwMKrV>M8IS^GzPH1E2244(R(Q`f zY=U!YiwNzUS+@+t-SS=XOSX%>F~c1p26pQ!ws8AP5&&x$>UiM z-c0bRf0Rhc<-lc|cX1oIOHUXX#DMg=0?oHjnmENB3tC|8byN1irrBj1Tq<-OuVGo%M%Ny9bnb@aNV}wQ|EJHM&k?Fz|M~T@AijyMMP z@W!J{5W|^y$JklH@vMh0=c=pWmMtXy8d}9ZjdBpi?4?SXMS3Y%q-A32J5JEz&@Qc; zCKT$d!wyLm$C343v|h7ftia)dpxU+j0g1rmGfp~jVx==%Of11KLEg6Jo$NDDxh9Hr z&0;oL8QFVy6OxaL+9i|Q`S-?pH6rNny*f{&z;_<=RB7Ny?@ZmC;*casa-&ZB-R8p& zEnz!!QbU7O7h(f;b4xX{hPi~7queQ2VDk>F>p`7P4`ZsUt;MB>Xf8}oL&}~XHYR_R z)&xerRQV(Kwd0j$me>@mFi;^1(o`O7vwKMmKe4nc8{gi@IyBxXQ+4m95KtRT#o7Ac zTy+q5nc=@2r!%FIOCnECjglZz)!Eoe`GormLV2k~Yi>e=^(YL(s)n+XFnK-b^I=zu;~o|FK=XEz1L^?3)>e zb0Xp>E8{nrwZEoJ)CnA&^(78$>>;I37WsR?Q|G-SQ@AjzKhNlW7sLh?&mLg|EO?}2Y_<3OE^sVOI6?gGtvGhmyoX7N~38ah>Vmy1#dwc=)$RYRb z4vBd}hwR0zu1y-Tc*XNeL3lYgTVUiiXQK+82g|0a9J!xy9JQ=K4STEye=ob$RlJ>s z&2OeBHb<`>Op|z%959^>`{LS8%cFS%T#9j(Dv&C9(}C}ZX*be)VuVY-HQ-#{-R3GM z%RJPDqnD2i%}b4Y-U`kJz44BpL4JHPeBJf)5B9r8ssMtoGl6e(;_28Yhg55ktVZ2d z#4AJOJ!G%blwNdilX_4c=YxSNl-8sx0;gD3^TEvt3xvzQtr4oAze<103IMtGSyHVx zw03E44Y3YX`GFVJP?x^typvD-hpp5~E^kb?^yt?0p$BweD;HhH6?0==PU%})$#P1t z9EYW7PNPtTs-Dnn@Q=pYV%iuxWeOv&qqNB*jGOBlhUF>jU&0H7YRyl{Jjf5xuG1y0 zrld8z^Ggji<{zs_Zq?7M6}m$G-T>DQI*Y@o@$~j^r&btx%n{`*cdICNWx{l@;tWVr zteQ_VKQ`Z};=wNF*hId|9IbY8*zcZ}U`LrPj(s^rcg`q?okB6cjGu(UXZVAxQORGZ zeLK?4%v^Y-=rMnhpWdlLEpdn}knW50T97cuTZ-}r!=9S%4hm`aAdlOTFHf|Tg0ARs zw%z!wBVkk70?925bD%&YWY$yVgX+YsD|I}n`h-Hu#$jG`t*oE%L-y?j;qHe?#; z-6vlFCwUur)^OFfeNZU~Xa!g7LaZPu7rT9;G>}Eet|!pFUvApw$jw(Em6vn3c_cX; z_zIe#U$?_BFRb8n==KI?rTleYIhBXrBCSh@ z_CXg8Xvb|t+*N*9mk2Luwm#gxb@7@$6$-tQsZDnxDK0I14m)2{{(ady@d#hJTA#tm z{j3Xer{uI5_Hdo>SO&2J3D{zS>FKOt^YzWG$H``MWu5{E6>&L7 znFApNthr9kH&4&~SMiZA{=1Djv7qzHWf6zo2fc~a`~YxW5?XW_ysyoCLP z4U1FoVT2oB_dUEXmholm>IW7!rN8*CDf=+SY%F7#FQJ2J zte0?{F zR?|Xi7^<{?zbluWkkj@vx~6#OvHdv@;NzPhG^%6F8P)wuI;f9l zBIPcVRatV9{vnv_%@WiXb1ivCyn9OJ=i9Z_>gXF&UU}r{i!JIE?sN2!3vfgjTcf-* z7CXHBq{;d1B7Z!(Mj3({A7q&ht-x%4d7=C(%LxwIw(AyVFB{?F*u&T~_c1MUu<;;xMv?T&5+jj@pL zi|l~s(FRbcGk*|wez;#W8iO(HKS4p?rkATb8PXUoH*v-UwHW@JLQ&^}NX@BJ26oH- zcPxzo$RaD^rQm->Gd9USR>X!wf*uzb*}(%ZR}xVTT_8#l%`h?}FT)l>yhQv=Y%k;% z$bun)98$+|u&X%lrq}siPhKlo?E7EUDbpB%*8M=AgPHyTUzP)_JOSDt4jsTv^2@i6 zQ8#S3NdG((P=cba|F!G&c#oaJzy=9azvKQ!^NrA%#g@x#C^KzN@gm^(kP70(3(m$n ztNH0h)S^ZSo63I{C{(GCc+kPtW*GbG1J{EyzA;>%_P;ERV~wlfqm{RrCkR|>exdf& zzYsAS@Y|O(a6+cR!8Rp3##X4k$N}L|pD*(X!Wi|?LWnkNS5Aya=~A$%MSI8ZbvvHD z$@`lV{whAgp0uJ}L zKCe&!A@A(42RjsU?p;=IqOKtlVIUg|Cqv)g`+E6>D*8p2pKed6Tsa?#MtshP$ZZ4D zem_z|2zgg5K8iS4nXRX0=MUK2Uk*|fA&FXW&4|M~m_Cl84f(Ozfo_OO1r6^FGP?>5 zizx42PWSH$$B>fnqZDbj8cGGwE#a|r_unqwm;IY_;nq7)O&1eoo3BrbG|^OIbG=2*a@b6$mvVwE37z4d(^B^*w?I z@&0ADOY3s~TDp~nEcD95Q9YFd^D)bn3K99)?dwJW*&=HFCFg1;=JofbmaqM-H9sIf zvMRCqvIRsg7q2rgeV;(lJ%`j+6^Ygh7Dm^m%~}J)c0_Wd%2y&k>7l|b3aq4(pQRQBl!>hxe2=Xu?M#`zc;RKRm3#Bn^m{<<``!p z#?^z4bOr^-778$I-1eU|1~k&A%RL;8(%*bJ&?g+;R4lmudou~caf;K(fdMsqbpM1x z_P?!_;9NpTgmfyC&a;xZhr4yJjCyfhb=|C8vRo38LLh^(j zo^pf5pK=pDAPbwWRLRv*p+e5r5nic{f{fK~Txe5nqGDye%=JUgeB3FsqT5B5yfm2* zhT0Exi4yC0{pQyo`^HwmCfmU1`X$*rN}VnX=1HS5he9${!^hYJyN1LE=Gd|ZN~1c5 z1862jl~>)~B`xoW-#dm%bUucLZz?$FHdM&&nM0pc=VeL_t*52xl_8S_zGnQ^7@Ol* z*LRh4zb)!Gxw|RBlhYmzE`s(UYGTolXGz?WV&WEwUkXyNWRnk-Q#j=`G4|3*Gol$YQ3{ zbABm?<#$F4Pm*)H1bL?=+2?ySSdrvwW|HvPp20B zx%H3~Y?Ci4+m@rr`b&UNwF+S_uRKYw0ZT*$URp(zZ|H3a&v z-4E6|&xoJ3Y-FVQird#Vq`!NYS*5n6bv!v2-NmuPSqjkL_!(Pgw=uwbLGzp;{BP*p z9j~(DOQ-_<-Ky!z(uhnB*GS^NR2AIs8vH<&a?J=8t;jTCL~op&b zpMnzYN=Fxu5gex43a*I*H`zmjFI=G6@9#7tPV!qr4)q!=QtIyMO7ZYUl_a> zpYq`X_oqQbTW}}#OJ2u))`Y-C+S(fV=X;%d3{ys$OTVUue1ZJ$`xP*ucdGo?;aDc%edcecMTNZ^lqT*d-$*9O2`6)n5V91K z_z`zWi`!B@Y4(%-_q{HLMpnvu0Kr)PU`XPihbhB!J=tt7&~$u=?d1FFZoUvOmB+jN zz~{9RKYC|Zg67pf8DN`cd0yW3XJ-i{X4}M0nq>Qu0=2#jtLc^8BRio0>4r!8NK(pa zMj?))A)_Ds3iEiYRG;G;IgEue?9oV5qqZYzQSJGgMadR#l$sIb4_DauiC2uFvTkYt zWDzRSFwzov1rix-q+B!rK^;=mwi>!@9gC(v%!bJdTh{4QvWj)r#ZjH+!_`6qD#SIY zyzrTd_^$rgLwmv!UtTLoR*Dqu`Pz3FjI?HdLQNWK z(A;|Drj++OGHpdGQS8wnc{0yz$rmdFS6cX1KFtDxH;cbh^JKw`tGbwE>1%rB&={5A zs)=`wMp>TMc_Dz7EnOJLEV8YVjdS{UC7K0$gc)ZTbpzL0r2hiitu|nM`oGegJ^DPX z8%^n7o%ZfKz(#_RAkl~0Z}(J!{xyfa{}Ea!0{{{ zzc&fpep3*-F}KnLoner26lNGQx>?qM53QR+#01JUjf@q#zeW`6Tf=3#E`67J)Vgm; zqj7KAx(4Qkvb;zsxnFU}2*_!c)HkBzhy*&hqQmPbu4`~jSnD)v3%JMc7nny$6+HM~ z+s>z1Gln#D{++WFlsL%F!#vIAdr|2VDynO1KlHE;>o{ZbA3bGRdMGIC0H3~WH2jC?EM7OP&# zWgA%;JT)+mJs7LHDckYW7BisDDO+dAGpv)uq4usn4$^jJNDRDXS?AF zV}iwQ=&$=M>l0-7a<$|4*!zTr?3~{$kvK<8`^`i9dEaQ22 z27onLgLt(qobo6yZB_mXWBa^Rco`D_C65 zrVNGs^jQ%ZCS2{1z?(MoGd=Doe&N#mBuPOvMgKeqeng~YYhyRO{+~`$p`KAf@7-$O zwr!Sc77TiH(@C}t!$&j1{ZBbN1<||ZS{7@0PuUH^o#=@0=0pGCaIY_BX+^QVJW)?o zy4m6)Yz2r{Kn3@mt7Ou!pkeXc^@I-H)r^j;haXw7g)#J3FN}nZ;kSkHx%YTi$;ZC7 z(l;{UnuWL%*Y_6EG3?`5gh7RGkFoH%wTzV?a3iu9G@ed|uq9kSBP7_!q z%@g~R3A<}eyUi{CrEk^&r)vUZt~7$t!qt>F%JfU%=(sBY8`=-$-i}{tu5cs!IQ3r0 z*dTT6<9G8>Ld+q*-Y`q)sA@67ZVTv~RtJeD! zhY0&9`L2g!W?s*~hd-D~`AdFx8}0@*Tuy`wXi+h>uwxv53^r_PmFyoJS*pBuDbhBN zq|Vv;x#u&?3`y?8xz2 zcC%189iel>B_K=e=@hInL#Gh_pI#W+o-WFvx1_~}^-tS0aq{x-rftXmwz_=IFZdzx zk|ZCW=k`IaHv)**9f*wYl=jVkXTsUcVMr1qQYpE1&B{A9mPYuW$L*PaJpv7B16pCv zrQuJh#Pbq*jz73iBG^EMieF%zpRVs37>iK-5H_|t)}j>b3}1Ky2!-EdX1*7|T!j{+ z%Yj{!)E~vSCB5?o;S#5uYb@{HTkWCm)#2OGTloc)`r z0xhLLDFsS#FHo#lafech75jkVRve0ZfDo*>yGwC*x8UyXL4y-K1OmCg|GM|(KAgSw z(^+$7?U~v0ayCjU0A(UPd?}reIvEn`l#1<=SR%1fha3}!Uyp!8k=9S96JaaHE^PTc;s$a@bQ)iT0BINMwxru+9z<&B-ycrG<#P7{jmOAf3j^iVNl zkx1d8j@&ki4%=H47MryrrR(r-AYjRG9J4ywEVwNq3vG1+JAE5;Bx`2*RCG%WI_~}n zz6}im-FklWW`uBY>0P86<2@V%KhdG|Utb3n`Wu8@Z4Uy-#6^uWGL7kmr-~o157IUf z>I?6{aaLV8v)cZlw?Y}A3N1Y?ROrGK^^FE^y)Ofe!Z_{nxc;E$xX4*48@X9qiQU5# zJ-xq?nme|m*`G$<&$O~pnpzdvwl}Qti{~xFfAf<;x(SzgC}N%Cn5*?^hohX=KtRk6 zTOr%Cn%)_Lno=oA2I?lcpk%_60HE=7B_qB z<*pQ>(LvS1$8~hcFY`wIVc|k)KM2wy676!_`HXRJJA2lYarbVHm*(ff6pWe-@uIUU z-8EtrrMV{^X)~#EC@s%ymzoe$nd2DnzB5*>J*@I1J4R!T%vk&>{N zi;HLL=!`Ji>&u{y#>dv6Tk!Io?*WOPVhVfAR$fKQQ+2Up@Rs%i@aP7pV1ohRqQ6=tFsz;?dkh*U;IEQ zGph@&ZMPk*2vM12~2*TW$MqFD``Wt-DU*He_;>( zRx=FjJ3I`Rok_wcG(j;xPsi6QhVB>s*UZg;OtTSj@m#J;iYvo}wtJ^lYVHk)f1Y3X zH-7QT)vThm;SW)5o;C)=hWTiboaZb`7mL#+U?u%ySKd$zHu`V^3GIn>q|8z9d>3MR zQK$dxGVuz0)|W*$w^b^FZS1C%pJDTmVV2L|4}OI(EP1%UjY+&6Go(|4MyXO3{a3$G6Mqk;9UDfWIoyePL5Tl-rpCuxX6j*=T+*`q> z&VG1ey0@?R!H(GDXg*Z^EsnzhcVxf z`E2qHd8@2(+-1BmJko>G>(DMOgBPEs%xB3&=Sx+{EV@Pj30(HfPp@C@4uX;6Sz8jf z7u?h}o=1nrr^wxn*^gaZQTG}h;dp0qsMFUVp5+a#Yf3cGcjPm^cu&dRC)`oGK6QVGUxk~7Yj;$Ek6z$t90oPOluE&RO=A!zU~Y-*kT%EC-b563v%MH9Df-)s4yu~S&`I>U>l zCZw(Fbm@=D@N*|L_ANu^e?E7$S%jS;%wznXe6AWkVo!IM345K7aJA|S7SxLhTa~8% zU3+5p+eO3L^RBN-PtX4@X;==+P)4>@X#i^lqf zS0hhjlDg9Wg_cgkK*ZFs_f%#7F9L;{i@h1}@ zjj6w54Y*AMq#lN4dnRl(?z)Eh9`&8|QE=BD>j+(BYh%N6AAZJgf5LqfBAJ5K4y4{M&6fyXok+SYZ}_k~ zK;|@;GQ=*tMMrm=apl027EJjQZauf6+Z=x^$Q%PgoP4(CZJIlymkovujdG=yIXang zI^LzEADOn5!CWD;JFlv+II3Hw^HJ5y{YWxqV|{}ylSjdRxK?Dvr{ioVT~XWb7U6f8 z+k^UloPAPH9>Sj@mOBGo&fof|;=9@%^1tg7kOu2GY&(dj151?cjkZ3H9qO7j-nbeWjx|0~0k}-O0;eQ(EylE| ztEcn(+t6=sISKLk%T|jDL_1hJ?M}W_2=$+=OyhW#uP$1NwwZmk9DmjEwnq8^^Dln=eli+} zpt&H1v|7DEJCGBHgz0NbDVXz@-=siPNuxw{@}76QSr4Uey^$wE=#N`#%A70RB~45^_r08#l0-ilv&Ue4$zy z)=VD18T+bA#M3G0uWb_3s*>cB;)CCWh6g3_jr3B+sW}Mdw_jbvN$+5<)v8cMV4us8 z9ktm7Mz>O(y?!e<|cQ3-4NT3@BqZrE9KwN1-Q!@}i`E(wlnTZ$CJl z#c_SjDKiB{rUK6~;u^Bu`P9RMRm=XrsMY}{j{Aldfd>Q4Z-HR~dSi|4Co$K3W>u?; zHTlup|4Xf`(F0@O(7z39@rhWsfF(QQ<@&Em%rPM**T;9v`7cHCEknOhaU+l8XWr?e z6o8#yg~}{ACCWDMQ@zGYN-7S68T1+kedxDBn^aguD~1<$^kvDby1yFSOB387UVE?Q zn{BMGB^Zh@>75>OMPK%JUjC=(aVJpGVF#v30lc}5t<~)574+5-nX|VWy+7w)Om_LK zZb^ZgURIh~@#p=~sc;v>Gi!HCn1jMMKs70N$d`8wl0Ta&#V|&0BvdU^z!h{68Rzik zWRUFrytFHsYN*@8SU@C5-gDx;F&U`^HYRm`r^aD}ZL;xvM_VSU?U=L-V>6ERT*u=Icdr&ZsHr=MUCGhV!JMY7$+ss0gD+M)gr=+vP&(%-j zQvoo8B<_JsB+u4cZj8=i_^U>4izZ^39xO!jY+R2h^1e4oPzsahZ z-;1HWNLw}ds%9RKzws-U8uoYITRoe3&~f$nxhhlu0&>Zb<7Yf^z4xn-zEyBer>sde*t6<=mhqH6VHa^W0a9?-Nm^9 zskE)0FX?CMGmMip71Ga!qoiWaOrl}VMz%BeZZoGrR`iGU2OvU8zDG&_dxlM2S1@MZ zaY)+SU{*L)2^zl`7p1H92El~iq#pQ7Xd65e%F2&vxVYn^@9M#E6@iNhk#yMsUgyMU zqbx5`mVK!mcG5bgq1c2kq#%kf+9MI}wu542cQEapd;6Jj zc}O$@-@=YB*#vt$$zuH0ZI}&U;?^LG#h7b?%*|16-tZ@N9#%2y=1X?Yr%#}r@EX=* zxpUIoBtGC2z0Ya-iU*^#sRlswbQU)?`KJ;N6%id;IdcPDimJBA@Jk*Qe9x@yU_?nn zMJgJXad*u$#HtrXkb=`GR$5YlK244V_*4_JV-qs~cbcb4cx%L&ix-VyFD6sW^(0&4 zh&9)o(}%S9vi@;Ne_ZzTE0KxO%k?jhJMJF-K5Oj{HMF}L6m*U?bLvJO%h)j1es01H0kjsM0k5C$G zNMU1q#W$01iK59|g!c+wVWh0M>x7#rg|?X+AS@Opo_;>g*PCd*8)VegDI_^0Imf}5 zoND?7hK(+q|V{Y=AR4-4BtX)_AbF-!^ zPA#qTam=3ouIkyGthnUv(RC`|#c%9h+^XDfqD|gAeCd?6Z^JmKvCXnG`(3J+QcWgw zR8!JsFA{oHB&p15JF`cWfl?d7CN#i_m0Kdc@w81kVjdaBr>`>X2P-eY4O_bjVK&EO zV5uj+F%sB&7|)4l(J!qD#`L`(qse zpJKf%RJ5m~`8mzd_uT`eBDBaa{6%gBa~q{79!0l#P21oLNjstbXf&VS)^W+O(3XA} zU#;l+X9srWi|_gL$sNDpvIx2QR>P{HEr zqQ3kV%Xvd_j+xC!2m7wkq3p(ViTIn7avP&D%-_u|jXxeR)qrXp63kiZ55r%gnr0G~ z_+<$Kbd}qcq2XJDi03$Xi^g%st1S@T?LtX{=*Q5sImYxcpOHND%YRBeAJNkf)x;+P zYKiu<|6DA8b)?VME0CU8?uxZal_;H`F_Z<3Sdk>HMhHO68u3kVl~)(h8ii%>`+>#} z${Nj%f6H?CLm8eFhk&I9$K~F5jhToTiHkgGF2^xWLyOs=>0jbvSH@(hQZv4_>nxg- z7vg;s(;s7_RYGqv>2`yKr(4nDE5ejvU>np!?!>du)du+X;9i>COvy&$gaAW8yuV?e zUTyj6`3NN&?Z*O;ToMYteT$1XQUc+#d-k959IefO^hsXMW2i&9G?8}FDeEytU$4}sQ8+y}zyB*x)Jr8Nd}Daxj5kn} zcV=SQ{QAcY_ok|9I78B{w@m$| z^zkk1T%O*xZG3^FyEUqqW~&F$n&1%JTQusF5czhX@0ntb0T+K27jf2491L~hP*6!D zq$nlKww~ijx9)<9_p0amKgO%bro+;qQQXY*#}+#sBH;C*t}2LCD&FidV_s}@1@}z$+Wu{yOGT6crB)Bs|_!} z_>s)J;_xR{3&p$EkHA7<3)d~2`KBnho5|xCnR~cMSN6g7dDSrArd<#X zRBoltZ06qD0!?@I1U=bILEoQZ&6hnE z%|+rJ{K$&y{maC-#@6k=a4k1>i}v|b@*zL`PM4|=|Gy-W?Ni&2`RqQ0wHeIEegj_< zWYgT$3SIX6WuOq>st%Rn{L)B;J$b67UV_Jjaeru0OqN zkC6@m+|?H2&w4K-`!%d_|Fb2n^7|Jh#U!-!V~mt9_0NN}UyKA*hN8?GkP!dtW6Lj_`;B6}O}+yE(vILNoU`S}IClvbVNq?-;Rv_$XFBn{DH} zPNpyV%@do2q4!sa4Nb8)qh9R7Erg2AgwXv0Oi5wcH-` zDz2*XX%d()z&L{E<9jbm$jvFkLHGTsBId?tD={5f>=uQonIkK(hhNxO%sK_AMwD<1 zMdWn$&ezuEJZ1#e&Jhn09%cYjuhWn7p0^m4)DX%Ju%VVNnBR6%AJ+^`Gp6md|D%F(fZLdZyGFLr)m@%&JQ7d)hJKs;u zN(DtLsOEMLvB~Rq@S3Izvfk@XpJhEWBTEO>-&KqEYss8-s7QF4q;dM;X4K&&n_-T9 z*r@}#W2SabMLM)*Qz%m7-DADxj}B{P4ya_h?Wb&Gg>?HS>fd|zYBcdVQ~jymVYTj7 z)%kQ2=ag7F=M%~jqpUf;eRKBy%jn_|kETWCr%`$!qhbkyt~hZ~=E|ruRXP?Iw3V_g zd>^uy_;L6sN1JucEOP$3mBVewrkhxG)#PeC{DBvF>MxiQ;N1fw^{=5W;T7IK;PyML zzCLgZ!GQVgadH9lCu}zk(EJ(=r9pE|0`tPE&c<)rbI(;bWZ+_~SXT3xDNZ4ysjtF4s4I|hIL8Nju`#+eJ`no1DN~NP2RMfAMC6;B*ywl@$l-6 z=+07N;oApXs(Ay78)LQVYs7@IEqa~nA}eOh(S$AC(C;&}$eC%gmPU&L<4u~A)O{9h zwU3wY$;3Vm)Hj+fINN&#tA_yauMV&_f&?^$mx+)Goev4tL|NjYo|!fQTC^BF97c z4y5z1k2WIDgPO51#Y@@rvfYfnKn+g$xZJwZ`Z%kv;p`5uRmKYb& zEFsP(pxk8m2EiN9IG;ZuvXD}VMCe;-3q$?z%|-Q@lPu)${h|J&k$alHIh*z+!WV^L?AgmY@#0-d3}a(m1RsRkU!{bvk= zofS8HY0lKEk925hwee$wF8^u9JsvBVEinQL=1Ux*0`X8WJOvYGZSqkV?g1CZfCBul z*~`vn4W?)9$71?Q=LkEIVN0J%#;85H8Nu12rR!NTNEOViGB+2xijWw}$f1QDkkM{A zetUH#T znZ9^%>R*OIUNsvr0oQM;PD&25de5!bDF|aRqE3`%-d*Jz{_%)EK=Q>~*03t~x3T^a zI3n<_J%3rU3&j#b50Yyd zAlSnp@XzA2ZIBhoBzH3J6V>nUJ~?87gF%QY>kWj>K%`h4T?7qZ(fHCy!!zc2iNL_e z+}F{B_%DlyGx{jwb;r9_+Vy&Ig#pwwnji+#hBZ*PDaUFZ--1X?-ycxNvx+B*k7>FXOI0OE{D zQ%3UewJO$>d1|6DM2_I4OLjb`rv>#`XR}5m3K$a@+QE zM&BbI-$_05&#OaQGMtjqXDjAXKXKUShs7E`SIF(Wd&qQ5=PgOlytXfI3{(r_K6F`-PGmHrLXAOqnT1hylUT453K zP^re64>nV|gst#z%(c(t5XmgpIYiH&nKpYI=(;mW74?AC3&soT4PZjI(=Wtxb@x6m zS3U)MvMEKEz}24Pi0dA~yL!^pE@@I;;&b!Y=@CJ2Y-8X}N0{Uj5E)!*MStRz(Nj#_hTfhge1=v zFEIkYV)cZfB-?0&A}zFJHoZTsuB6GiPI+<2wx4o|K1#07epbXi!+Y3f7MxT418c+& z{Tdt!tU)i%e(OVSBCaB;*z!-6<_9g_;(l!!)>qIBo?-O|31IZ|(&7)L$#b57>jZY@d=vs))R+&#N>vfHTA6gs*M{3Uja8 zQ)tABM*?pfRE5K1>`T`F;v4H{Nu(5Si~sb?&FeLzEb@bt_>~+(JWnCuWw7HCnEDak z^yt}1ha!hiC?_DlxeR<8s#X`|7mdDrD^Yh?IIop=2&qPZ`Jn=4czES0fQ&@(s?17L z2@sYS&#jo_w&5&<^anJy)CyWQ^Nf)I6Jwmvd?g-#d5ZV|(@2ji6W5%Oaq?zrxN40(e_e>{#3a{g_xaZFM6*O~1=`DAV*Y8oEHRDYOZy&Apn$-O6KNr3 zjl{=0y9dxbH1VYHi14JaO3FQ<)mFc{*kjbQmSvw+{%rK!Run0GNhX~$2~kbqMUy-@ zmuQ-;fwHe&ZM1ST1W%;F^;7iL`H%Hf=?JTOuAnLy> zVG+nWjqUz=EdF>4Y~29iB7S%VF4}uQ6|6Y_@2f`VZ9>TeYAMR=0`~2B8F;pBoZlT3 z;L$0Sy}eE{EkLcVVe9cFfy;z<{WdzIz3i8A(QSpi(I#5Dehb$J5x?v-E<3ilbiMi- zc`N;6CET5YT3XjdvkB5SkXn)rlHqsW!hFvko&VjTT_&Uw65B-gb0r@>6fH&=e_^{) zEb1vc%y|P1-fElKNsV+tUcU~uv-8(dhL3UiKnz-1?(V%6AsoVzPW3Y69LTk7yw&-C zPdZN!l)KhEyX3I3L*?a7DTd8^)wX~1Jvd=B0F2=dgFGd(y9V|B;+D9JSG)Lc%m+q$ zUx;09evDi?>YDGVm;`VHQ@gylS5}pZHc0KdFVSZ}6quGah$)x0BoPU!mc&9eFe{I8&X@}6cv zaDlxYCTo##clsX^CoI+sPf8!#4*29o+7(;4e#2wON%WAm5eIP1TniOUz9z9k0|@7%f*!cwj{u<%QHiX0tFM!K6&X)z~omJE)1 z;p2#3uO79v8!cGLC+glHR(&T-GS5kO?!^|2cTy>~+Gm&ok9=k@i};rn5kEEy9%GM3 z91>O~+E%*>Hof$t+!XIXqUd@Jv|V(Gc6Tc|Ce^ObY=w;q_6g6Clst|Zn@qUrn?rJ% z%?g5>(+0=M_E|%2979J_M9^~Vha%;Yg?N5{3;v;I?ybmTp4470t=#`gDnW74aC(lp zaeA15dthk+3oBtGJ8tNpZ-F*Vv$2KjN zeA-AQA12b3#PL*9ZaHjGlXl;k?;V4hxT{Ha#3V62PlkYDF{6jPLE?3c>Gjoz-!k9k z?DFxJ&ary3ecocu&PcB_k7mw}H>0tRw> zvvtc+D>VNx`)5Y1f)Oj&^lzWu{*r1s75W7&9C_jG2peZn9j%XC2i9x~`{`SMxSEu!h+ zuL#du5ztLqhOar`+haEWSt4)sNmb=1{II9G&kb)o@JF-((@qsA&JjUYyo&!#iP)ecjjh!4N0;{i)Ldst}SY@0VY2B{dtez~f4LmqqdCSQioTTCUMJ119X zfeOtBI455UH7gS;;D*SUqtAY9x$*KIbzk-+>)s*KMQ)QNKS|1YIwt!gUq4>T-0tMg z`ti=TR8{@?ZbP-t<(_zFa(lpVG%t4hyx`UjpQc95oQnZN{UkRzEon!Re5E2kQ)=lx z*Gp=~S9Gw=4Nbj6IV9w!if}mOy3$M> zsC4CCCgmQvc^+T8XO1k~Pb0G-NhGr1kAJNsQ!+e0mI{=Vp8q}S;fgQ`!y{B4O&5C?HFrx_N6}A&CgyeGTKc0nNBOa zmc(_?CykB5Ctq1y=ehuVGEVVWyI-&@+Z?&JU;z$t59nOEQ&imIP*`78W;L#pYI|C# zqfvUPV@{-e`r5Xm$K)9{9=l##3+9od7-g{uPbZS|=twS`_;)UOVYWEia}^@A!;pL- z;uCUw?bB_Xq}i^W{av7gMZBm?HY*j_6*#n9!cq^RN2dOq%H9R3w zgU@dDE#V*id~K+Z$A<037*PFrCizW!!Z+=Y)~c`V6?l&&8VkNRM628vSGNcq9qV?> zUw>QDu0FH@7qZtQKByUeH}@JmUHJ8wli8?wJ?xCNTH$--JL%Wp(OnoaT!qZEWVm)% zWF6D#rymFO{TgCUaU%a2sU?d&HZnUta~|EUSZdF%oJ6`=9gUsR$Wp)F(KYGi+5vLp zx%2r&fKak^jS!h@`FpMhYTcsnTsLldd?_D>tx(0(NCP`*BnL+vBOnnEiGH)YF#Gwn zthwq*-nBmad)`p<#x`Ws5_C@=kmZxEC2Q4%=V#Fxqy3*;ywPyH7RQ!J1npxyzk|pw zHhylih_t)1r3td$vWl}gdbrL)Z%t6irWgH3d)B<~``AOFFg7Dt%8I4l3AF*8qK(r-j;OrH_Bcgf5iBZjg{?t&alg zZJJ7t+xCZ75ttx6MkhBgNilL!6J{2QbY{oxj67o@`gTZfxKUXWH_1UEh(ozxC%Ru2 z9M`4A;74d)W|;d4#hgS7ObEWq40M?!p+4{K-q!Rw?o<-v?G*<(4WGBzVa zRdmZ|fd;Ne(qE?I4aTTOcdpO=U5~|iEX&Em35v|*heed+JbsJCt$QRh*n71`Qx|dg zBeh> zLmQeAUN;Q;4Hmr1>YG~;wZcye$CcYoBWG=2S`5dB8ve0A)0wD3Y12CHE-BM0KqR-B z1t)JtH2dJ_tI@cFv}(*s$_r=xsZ88Eyp-;QR3A@LUm1@GHXG`a9ml@DB-OhAr28#IDI{aLBwPT#CgqiikxsYuQt?na zSe(6eAB-f$bTjZ}ZEkRSkxkV?M#_Ot%TH~v8Bd^Tc3wEv5MvG zn&Mp(`U&{3$|vo4a4Vg`P4d%8VF-Ku6A`)tt6hCO{sE!VNbJ4j{fPNIdyEQWgY-+S zQCf58-S>^-RELp~wuB->T-_%s^NXVe|Ifh8d-#pUJk*N3-lMT8(38axzPx|^7>-7B zhL?_DPM9U|_%OYLa4A{Po!fc3v7qqOPYO7@O*-Y3$BU&Sr+sXV>s4T8*3HEFp}Qp= z*V}v3=~L$Sd^APBIEY9x#_Y=T<$*tP6UpjKpBCRPHYy!)~m{fhSuwg z2^Bu~4@l9}`^lRkH8_u;PpGi>Kk)R%puv7WgGU0CORBPh(VkHhX|vcS|0Lxpd+NB4 z_4_t?qU(|l`Vrw#PIzY6Ze{ddg&TfS8__hT*jUyjxz6j^r2J{qg=Gz3nVw;@_9SHwQFTF8*mMXtptsjtln z#3I0T|1x)E;gXe`2*&eNC<2O{KEBWAojVUJ-fSEaQ`hgvzpE-^Og5eP4|uH3gp|oM zz&`j{%C%2u`iCm|0C?;?BQQ&e@OF6f%}2YJ@ry)BxId8&WFg zGN5-0wDlv)Z>pkM(4eJ0k)!U8dnixjcv|NxUzxo;I@tnvh=pCJAo%+iFJcibiJ`aV zsCoo@iIdm2^3h@5mhX=uErO?u2KDc6`~5h13Vc!WcKAUx zTSwD!T$&Nlrb_?RvS784T5^$==w4P&zaRQB5z-^Y4zn*F=b4w>`=bG4$G`o0?PH&U z!Qz)3m)ngqE_X(|)OrgvS=N01>E7I;T7%ara0V`=b)C3^CH>qTwIp(r>S0R_iC-E{<{328Qrcdy0T3QbE zU#~`+Q`U1VUZ&)xep_ZTsH(RXs2-rW{tM^xZ7%Jo%6 zIjFRTz$JtfmFZ|&eLll5p8A9c{7k^?*R{drM|?S6G$S`^j9=8?SE3?xJ3%|#{fg#C zx5W=}$JZffXvZ^uC1aHTXVeI*9=OI*2iN*7fa7bSYeRs48eT{=BkxL%j#n_nw=FRO zTWn3y#&Au2fxBhXqhI;>)lsu{@24+PWLzn(dKp>eTiQ89lb~VBioE{}GnBWdxojTe zbQ(&Y3#%ujcpey^4^5&L41;go?M;la#Md}42b}=D_m_|M^olsq*|g5VfKe z!BgE%nIZv4%aLv6&__A)92Xx{u4OJ-$n@YLm5K5BVKA83KAZe8{4%{3&^Rdm;d+3j z!osCgT<-2(=#STiqm}sqyCq)6sX`6WBap4zQ#1jqsx+=$*wR^bOpLAjAfUr0N4xTE zs@x{>bAQWOoi?`xwIZQAuBk(xRiXv0wfzS-3~=r0Pcya3*x#Hz8k|CfDy>cvf#!Z;Qmx7YFl6OwV!$T+lX2XT#NP}ulud? zvE55_)*R=`N)Uh1ueZM9e+%+r3S5pNx{N01^%MWKdZYV=*?Q3_8qPus?_NG46(r!r zZweDm)B96L43>FGz<&-5D&n>G$5+Sp%8i_+6tLfV0(K1p2*~St7X(u9kdD5a!|IV7f|*sTb?`s?FDc4N2^e}PP14BtS}p^v zqx8_8!;p2F`S#mV`>vsO_qabE(pQLNZKZOaGo}T0QyW2rTX~jhodhaQ%I8^Z+xeG_ zZ(DTloGLJD)IgW86QcZsT?78)CCkX+va)4z(1mPSS?aD8ug*%y$-!JWLRHoFY}B(+ z()P^J`#B;mSpo01du&78#`ujr_Evt?KLVN`PvNQ~9xxVlD{wJP@GI@TJ8!pvGjmNmTPME>XDAb|Jx zbpVVY_v-tL4kqZnC8*(ZE=;c3xhvZ@6g4!3_d@+LSY==4XQ$cE zY@~8|@!Y$6Jp&>byD6CZp49TnVllsRh>L?$U&YhoWr@aadyVESSf5a5({^9ut;j%f z+#Zzn8$@sJXNuk@Pfht@NFVZES**Wf1J~7r;iyK7tA*fNVII3{Lu#UlLaYn>*ff4B zm1kT}(I%jw7*{;ak?bXntCVWTafe8ep)>w`S-MZ#?OT>O3rnokpJ`bs$}WEm{n%!k z1=3}_|K!xyFFtQV%0z;&u8SmCN&qVQ~F<|8dlGU&BGt>diC-(*5!jqi$gcT;X)Z~XH?#{Q4%6!IU3=9xBd z4NBDNU%B4~qGY34NGV@xE>aiX=c--Hli8)qi@f_WtlcbJL*U_|pUsz=W?^ck@(=N2 z<&<-F%5LU?83dL~4R`nsUhuC;es2;Zb&k*o9LhB<;CnGIyaN@e9E;|uKm7gY{_zjW zU^9pN_G`-|#Rs7O64M)F)cqWAb9=t=Me6HnNJGWg(m=z>?1YTZKR%Si_eY_J&)p1m z8!6eH&Rx0M% zwh;Bc_tct$w$n~!lRe!nSGc`~Ai+x^=2N;>B5lm2W{_2=`MU(?y_bii;`OlSNF2Da z45IN+G)kC$i~^WeGiIZm;%1^7ER5(g^0>2f55&60%;x_3yO3WR?XY_Z?-^^B;vtJj zU<*Bc5GOs@O)Np}a0?GN!kknJwHbU4k!}~;QgH0J%zad^um<~kK1y|$e|hh?5vdyD zu1?rV0D69V-yLz8C_!qblf|9yU4TR`JgHh4Hf}i-dq>{iXv!3O7l>5DO>e+L5I4gI zU}6{N7mXvj)sp_hj6i#GQqkqlQ=T)rp(fde=gXEy6Fqp(8(7K4n>`z*HK3Y7&9067 zY{ZfM;uMg5FmWoV@JCxlZ>*^t@g>w4ZZQd@Jw+H&v566%mxD4o%#vPT7%q-#e%Ygb zEQQ~zaKgfmI@4J2;S!U>f(G;A=@-=i+JhbU5@#DN3o6f)2&Hd6e2bM0V3MU9j&|uhTp}iiC%RY zWq-P7yN-4x%Rmua3#(cgEHssCWJ!5_9b=rz&H9shiJG}Tyi)tMiV^~Lh?va2DOaG+ zlL}VkhFR8`R50!EH$jucW4m76c}$Bx-Yv}-ug$oUETGcvu9nX7S{}b}~%8%Fn^Y!`~mN)hD zP{TLB8Q3&c<@VG?rKuq)lBAo%jW!JE@y^IxVoX@?5@6QAO-gj|WvNvGYj;mz8omF8 zlQtr&Yrmr&;S8}?h8a{)hCw~**(!FdHhKkT2(FZF6;D5J5@R1O%e9vL5r zP63%`$J(~$=U!$7Kibe98Y;}Yo8vq;>#n@iomEF_v;A#p<bSj#1ob$tk^|Wy$HHqAJQQ~gUIIq z?i4tV4rVR1AtK}HjJ?5T>f7zNl!X9<)&8HejA?2+MR^M19@v-!PsIeas>Q;|XxS9` zgYWOwB;W1mUx!*q2NWr5CJ^+8x#UYIO-3aZ(AuBZiS2iYCkA>)UBtqV7_I>QV8=M; zg(?j;)>J2JKO zLbEz7Etu!a#QvKp$#_dIAJa_}wyrLoUX{zxkVk&H+^UDZ|{P*F-GQn<8mcT;<(!D{nLNwo8&r@&6>=KLyD9|X1-=(ivZ8v;T)nYc8$`nAgTH?D0&u5DCeHur-$S`x0Eu{)@wNbxt3AN%E5Y*?D+SLw2q zbsN)KXo(x8nMvC@q7Ox&a~f$RPc~)0{`!jY3VT;7Gqf91;k3Wg%YyXq97^GxnR~9T znm|RuURt&rCXy&eUYuBWeh+gPjb-Oe7w|&j)D3!pSWKY{Yl7cTdPBz+5-sSGk@bCT z%sG`;IsQh{j~@}Xa31%vG+Q0KW8KD>`1;3y(63riB^2%gqITWO{-MYT^65WUXRmGx zc1zN0)?^=F?Jwa|WjUUzq8Gz>NJkI%nE?`Bl92nd0oSo%iajodmn+8GZ`p-Nk%usX27Jk8U$k$1rje;u5QLH8ML0KN2X((kknK{cdZkvuos zWU3dJMn`GJ4O0*X6X$$xHlCK+I4;Vf6i~vxw8BgBzQ*dDmAdC@BmHFY0crg6_tdR@ zxNPA>fLlu8c~aD%EapMLGNHZR)feajinT4GgzpQjs!h^TlAwIhSh}k5SgYY>6QS&q z9N7>!V+e+*Uhk+t>0(MGSxOEw1vJGCyU@#W~R2Ge1E8mK0Ak z;urHo19wJ31FgTu*wF4-sc*UvoAp|9Ax<>B>XR|HEW5+2SZJ}wv;v3q?MbNbFR#RG z%n3S2EWf{`4Gp@J@2e_+()@->5|*GYoTAT;?l!<*#HkLb^gnzBjG)sIAInVb0iJBzt5+Zd*s`E*v~wlreG-`%H(*ul{z zvvC{BQ1zs0Pi8C9h`#Mxj&7`__5S0Pi2n#vqiKIK(pdVgebEmzfcNU@x7wdQY${&9 zkj~--dR^1zP|HeZ)aA`8dj!{VD!FXX&iF_Vp*J3)ugoK8zma@iyXto|8e^C|-@jg{ z1vQ!HhUv3$Q5|%Nu^{K7d}1vxA=85GcY8gD41Gh&d~ufuLZG*cWDP3oiaqwI@JhiK zQ*xLskh56uON|L_HWFvt9M(WrDLSurj%hFQKJ9EDVU)Rj-Ly&AExjYM|BtsbF)o>AUB(>&bU{uQ1HB<)`pKYf0fgo%8P?o>WFD51T5>oZUnH6lU34l`L3 zej_d_76sAPr}{;bkWFFsUdL5Y49d!~Oq`%OQvIz{%#S9e!5|JSLG?E`(N%1-@kE|Qh z`DSLz09Xt_q@&hHZjFa4H@o6Z%eR-WX&#hIg6T`CRn3&XgsU_?^!QF2q%FaR!*hqL zjR>;wKKc>Lb8g2@oZne)%UD81OKK`jO>$y&<`rM?zk^M>b$YDHfBzRQ{tU_05$GCM zHR--=Akx1V7hD4lZps_se5t6r=TD-gwhx#puiKO!%WHRFck+F=`X?y^ZMO|&S}bmZ z74vH7rrSaSB+2^ZAA0TbG1@jglhEncD>)1&jaPyPUQ0W9`w{Q=k{#U$r}@auqcXN{tbA+DZf1tZ$@=F790Vhtd!Y=O zYIerA6_a>yeUWAP0+eQATBO~-I{W{c*-q|;R|wr%m#EL5j#!`rmq7le0GM7%I*&5p zT~{f-aPf)d0#;6(;ir3qwecDA?5eq9m|+hO7uQ_oW5>sXE6CBGLS49~;%?N{>I}oM zwZ&M!PH2EYfLxNa9lP~VL6834Zj%v^?V-kr_H2SB^&;57w~%Nr!fM~M<2uNi7O_!X zS@&cr#USx0Aflg3QWP%^HZLE7k#mr%an_lyf2emHFbemY_zC z7TOH~__y$ieGxsdXxJc2V$kKO;Es;nTo=kQe_H8RhqjjU6g7h59SZ+-$J`5&>9V>` zdN1eY#CSUcAcot>E#^>*nMXb0Wz-pktJhE4zJGIElygVmx=!v*7UD;X<3A&46%=zh zLr>$Zko_}R_`%C4!D+0>gQL>-?9|cfptizwURJzsNq!OLoBYuRkzJx8<{y-8nrUzf z_{Pvwn^}*H+;Z~&qj?}2^G))JnqQ)-bR2~{pGgXSlf5o@za(ai^Al(0;#8sS58eH_ zm|ykd$9wqr$~fBp%xvBC4S&485o!QR|KvOY7?tz5_0XYQ3+2wHfm+?H%gGB58V+6F zBqBK}b<{`|B7KX0(TfxKXbRV{X;)Ev)#bQInH=YPiLXfT{Zibt&j9I4yJzPOmGaAA zAJRf!J?6%B`RI0gVwk8oqH+>Y&(oBai@#zZtkB*7{pV5!jc`eRu)XtlNe0Y|B_Hg6 zPQJ;?aU1$^Ae)$-37C0DZfjUg)Af*)`rtNaA2*tpIg21YwsQmh$)>zI)aDasmT>4g zZ5bS?KjK^+Yg6T#JzO2`3Ra|;Yl|Xq?@2@#{=Jcuce`)e8yZGSFiimSyFyOiVq8Xa zwMf`fZEK3uN@SaweCS?0`;u6WV%hsj2Z#g9{$_I>s-G_U7G!zo)z!jtVb;5Bjq5tN zMDY;;A!3e#p7MdeXd9M>yXU+6_HqJUuv~nbl|XQ9hMRdUqscD6nr3+Xysm_I&sim!-4xAZQ^S2;n3=o0 z;&Qwp%LrsS?#v+%#syRho8=;Yv+GI- zz3}Guc2GmRdpmcU zZb@ZMetpW=wl6oP8R`2#a9<#?P)rd0vw2l0`X}D(ro5Qn0CY|AoA&*8)T*b*ZPtmekll62bSpA`VZVYmO&PLDKN)Te?JDOrx7C_PN_ruRI5$jujc zW}=Fpu!PC(iwowRDIFy$JY5nJg`?#Jyc2gfm zSN1IaSCaCzkqDL}rSt>CZ5v}owU|0_!jQ^ah1hx?R#CEqA)?^I&}TZEMm%xbT^Ft; zc{=LQu~6U1B+qj%B(hE`!3qza0KrP$v)%ih&R1Qz-m^|8edT_l0M~R6zWy4zF3+<* zgD-#msZr`d@6TH#yNy!I{p-~j>S5G0!|vC28p8)(qx)Ic7-1XnP|%V}>;>q@9y1xC zL0V~@*9f?F@Fxp|f-Owh#}fZCv~RNo84(f*o+$5mgB;m(_TW zDo!6y0e049DMI04HHEKxe5mf(cSLvYSpqq>#UxhVm|Y8R#tKx5^2ef0?Y%mr>Os(J z(0m0w1ofwHOCO$FwUhEG*tS#txMD;ALP1;vC>OEhV;gda|5VFyWv0u<(05McRHvVm zh|f#aOe`zrS|oesxPRMdCFXfD)nm#!jZq`FRmG{@)oBS=oogG0MKmR)*F-EtBn%K7 z4Mct5 z$aUOBpLNbZ{V^Y&L+A@}SgRd+73wdE1Z8mBv}+sp8H69fKscfP`mwM4>H`#e+P>0U zIUC$nduD}85ANv{3#8Zpqg#Au8;4e;%_iNMGLY}L*Vj5BpkjAM5m{TxEl(y1vL>u9 zcB6-&k1+|bVt1}6Si{R%7N1Chgg(GN2^}k^6=F6^iw1_N7D&n|3FSlvGa)TvTwyN4;#~0B@}Ji z)4q4->8+3*8ddSr00>{;r+I9{nQO{<%;kJNB)%%f4lsaz2Ph^s!B>qo>0YLT6KziL z)$4O05R)IqdjfT)QTgiFx>2Za^Ft?ii-y=^%0IEBVW5 zBIx`YFUR5(=COhjLw5Ml1ZGEG=*H6HKFsJD4@#fu{5&j6vK+92pM$dKbd#0#`2kzr zmm8m^&>XV=xYICn^dU22X1B7=!+r&%2k4V$ZYP(p{o!?5S$E)z-fs0@VBM^Es7Lk+ zqZ{Xc^-MW~BWDS1mX+zdo_5`)+iTX91d_H&O^A`0M8^h;kKHuqKB4d)#tGf^0AX8B z3zc@Zp*_-#H6rk*S`9O{&%Pc-Ebv5K?Mt=mwNtw)vd;< zs%XLA!pnTXS4|y1Ru214F88`(LfOLSLW*|bg}&kW!wI>pSdDh_*!e{!<97#?lCpM=o z*~=|3{)wc3T|YSsw9*s=RLInlk6Bo6vdmN~fxm;Go?tbOAA8)u&_VC^3c5tmI74c9 zh^H~%>C}`wf&8ByL5Bf|%Au=(spf%iCnnq2t|WJVRbt%n$E&(W=hhrqR35avYsPqC z*RoUL7cl*sFCmrkSGXCyZRp$1*xSym+s?uo(ecUxn}WTmQPs*X5srTzAl<#b-A_Xs zAb;+-8mOG*SvzoEu>OHLWfWe>u~_Yg|M*pAp!;z}gtp>kHqkDdcybujbn)Ysz>|Io zKXr&jr z{~1|on|1BMcdRUzU@NfQk)L#m=XPP4T{SCAd8lu}EDWKS+%D>QqN>j|x;L6Pyd@%7 zj|DD8w(ui5)Rm|~Eg;zf!4g69dZFxL>>Xqw?`WLz;jg9DRI`!V`HRqbz1fVbx=t5^ zaw%Uut_ZHar`K6!w0@2vIM%l@CzFtHkh~VZ^LXH3sV_a3tH%2X)pM5#>Rr5p)NMmz zX>ltUD(#0aZ63GV>NjqUUkR~*%$GfaI^G$m+;QjRr4D9}M9SBg;3#%mJW%v5OaLHf z(@yB*3Oz0pYY`pIjoJF&6%nMCqjR6NNu}`_Hgj`Bjku;@N9=>wvCNd8Vx7&`UbWfJ z++ML%^9;@TB&6r^Ouru`k$2%8o%t+ES;V|y)d9BLG-Sxm2UJ}4GQE74Sb5-jP{uL3 zi9as+F4it2wTle7$tYr~@rpyd`v$S}?>-3X#&8hkjiuB3Q73^A9@f2=-Z$ikO=K_WZyrGI^uI|}aqiw318Gw=Hy-xfn>ORX{K{{9{1*5`ivtL8E-+D6MG zs}%O_tYwAUx`iZim2a4IX==GtODqh=b8j4Xtv(xnaAasb+@xPx4fI2`{{j$kDUL77R$PdV|OF}f|sMPUcHGIw1lg!7|vzn*H zPf+XTzdb-Zo7B^_$9#$^Fc5%qZb1`dn#!Hh4};2j;$4{zw`7rezH#K()XxRUf(&j$ zw};s$ZIhNeL=$K)neQ%WaK2){{rE#VW~*aZ(Vi?a_}S~%en&U7!{&|vj*&5SssL@d z^^dhD0$Y^)=sqWs!}yhT^J|y&=;1l!Qf`ivn{+c5ZCWkGUoar19B;XWCf{DG^CQD^QcGypac6&N#idKeaYR_z zoKGZkg6FJGnaWjmA$n+13QsrV^gKebHJ4njb3b(omYC-8cWS`#YGMc6fgxU#niJIh zz}0hjxGDKlHNigZY*4fCDY?RLd2G=y?mW#7$26v*=4_L&(+nR0T!yTJnHKFR#;p}N4+hp>Y{WB%E`Az4vj)zoyYmM=h{V%3jE0GSi z=DN~e!lMaOtb&!_4^;^@tM#7wJjWLdn_c;b|MS2HSZWB&qd=Al&zL!+HSM4 zBd2()(b(RL9>glDk7hYmks_J_c3gUfsi1xD<_|=pAlzKx2OVz!DkG~e+P-TahEfz3 z9@cp_j($WS<8!9c?B6~Q0h8Z#T=ui6ga_v6Rlibs_q*hk$Nz!lyWhqCFATlg#so3h z5&M{Tm8oto(rmBVJCfUkZ%70>dnEAH+Z+`A6m}ya3VXfz3N1gaZCA-P+1GLSl*edK zLf)gQ$;Q)5`2CtHsWejcs>`vsmVo=qdsxd!c~(&)*x zGpH?~-0Z-u_i#z16wTpT{hrS9O%;UB zW9p8LY9mb|Z1-aehgoo0v`q}N79eaZ(T{%9w&-OE_Qt-5jFy!4*5l`Vavw-mB$o1h zjsX6tBDaxfw6e*0KoAz~>y7pAFK>5zFq}lwCOrN|-FB6N=ch2^yT4uI8TU61)eWs+ z3ibx)IJf@rrQ4osnzet06}6f9IRZgMvnNS8N2Q4VLaDtR6b+&8=Z_n_X$^< ztZ)l`h2=6&(fjweAI^E1_>W^5bh~cN3640d&w2AY7|Or72IcjN9C2F1KF{n~Nk!(O z*!AW3;%xeLZlx$3%4@F4=(*8W)+{YK zCOPiAr5(v`L3HpYH9Q+X}vYNoFFKMBH+-zhGf!xx|dh6!7;`rHIkD2=vojA>?Hn(aS* zA}@3`8w*(@KUa-$TwR^Y=?ms!-LpOCF4-5T-zi1ik2kf~>4PjcFG|ymY0%cKq&kc`VS(8T_gy-LX%MBz~l_ylnb? z5~RuVVI8&;mXsIO!JCCr%s>eOFEpObET4f3Twm(i+^(GqJ6<#j3>QC72MT~=1b%8$ z9w(}}2Sic)l8~ZIe8eoG7%5;huFs+vsZ``vnN$5K`*x$~={j=a3B8F)nbAN$1#}QMRtCaHY&w7+tX>*`4TGDJ~TUi(MO<~?K z4Dq+~*;rDM1~BjUj_4&j=imB|IgLPvZy$a4=pD6ZGW$+K`1(BCONNFY+|3A|+lk#; zULZ7kLt#SnGPLW$oXpgz`*6qGIWZw4Uy@C#nv`beY|>m=12PF>(9+BRj+UvzD%pGo zuEQ2AycGIeZL=3auV=l`5iTh1!F7bUZ2Ql(GO130)h(9b$-nJr3MtfyGyWO?*U^SD z_+nlA^O?o}`*lZjKvNOS{;htjC3;VRcC`al{vNLd_wGWYhxSh*0GI{_gGU?4#nOJ) zQk`qwS*?*=9;f>Uuou;?#ZCNCD|v_P3NcOl5&io?s|;_Gw?u@uncPfJ?xB&(n0&gN z*1Y@htZz##pl*6#?@Yb;aYT#l!o!eo z+ar;^El=e0ejo;}gI>p+jO?0aDLmTv5$q-~V zcZ#Xy&69%;n}g_UV* z;AS{Ycy(Vg^zVckWLfbkcAVN*Rp8tna%k#U^B|MZ0>Arc^Z`}LgaloxY zKCec)_CH^?_dX|d*4Cr~OT$vIU*O4k7NOw%#!9yR{=Nte8(E0PF5aL!$C^%^YJ#uz z9$ch*n3Yq-)o9#c0Nq-0ifp7_n4|0Z4cEBYZnFtzglz}dr@B7r5z=nh$VQvIuZks* zyDTDob{J!7H1x9P@B(g1Fai2*7$&fp6OPFZ4vQ2H>a5ZzaCR@*8hG?&E4}P*fKtu$BL~BhxihO{%TiZw{t4jbKASd!_Z+{@%O+-yg%;5&VxKZAT7EjQUaRG=6s@ zRykRXJT~ph56L0UU4O)f@2K>K2Xif*C>9F1#l1Y`$+c+`s)v{@Jmn{Q59_W!#2SkJ z@g#>&;u^rMC4Ju<{bIkFH(I719{#b1*r{vriC!8W6mkEfS3*MtLM89-Z$XiI8Ksw7xtz-pq%*5A0=@ocHK4k=n0?C^(lUgMl&*k(s|e>ly0 z)82;(z=f&7`66_?`mM_~rW;#ye`Hr>{y<^*rR+!innme{%7~BrMEa;pYdq7jv)4pE zQYv@h_Sx{2BHSD^T~=w#qagz+pxcO@O!frtb9PcF-V-g-`le=R zC8drFRdP>a_|2zFzj1hK)~E%?+OaQ}%=n~jolTtuQ~)g$Di~;pxZH6MPdy9)Z0<@c zyHD$aW{(e0w*Wb$q*3k+YVY172P@|}O%^eD1Z+#&y{oVaAZ@Y`MF*mko*fQ#Xc6xZ zG*IRUf|AsddbitRgk% zI<-PI9(*$5y;D>EKRVy`O}$MdJh@`}S8~}jCL){AolbI`O*@zEc=f4e)oacu7gR`b>S&QBao}$N=rS3M?=B(Xg@9)2t#C-0W?5`xhbN~W#{)-cV zfPQOJLOf|#8d5g}r$KqIz;f#@*S64ATb1T}47`6x;{u+<^Vfd)pZbZr#tn!l)2Bjv z6pISZ!Iv>}f$D52wOf&o?@riC zYw{%Sit@RLeans%sSgEx^+S!aumJ>0#67xb2E;v@{~shDj)ag99byjJ+hGSF5%(vu zJ**^7^S6JI4maog#*KGXM#J?1%h=;XXj&+Y%HsO0gkiJ_{Pl;|hW{OU_%MwcKS~xf z_RfIAmj6?U6r3dMm)$htx~fRnDRnIqZ&*|!jPXSq#-;3f6I9s|-T3wWw~lvDlr}#E zah}L*cCrM5nY-NN5-v-0h5&K}Fs{N0DMDtpjYAHRpFU_J49U!14&pcK(GXvwc12yD zH+#l^ulyF*;D+c!U?MZGrly(|EaU_8l23h-0?6@^%Omf>vH1=^V*?THEQP5GHqj$fo)hA+ubZMu|lAx`Vs0 z&=gOKZy}o zX!+NTduMM|MQdHL&ftrYxMz35Pi=p)n7X=uPa(cMqxZCh}6Zd%XVNaiqyQCsUu!Jp} zoB0SkIA%}TCje?jdJ}$qq^`MK(-k~?IuCe;oMz0Yz)s&7v@G(MC?3$Ggdw@vN=8DS z0n31vsmXQSjr?p~YpiSgok;hR`BUaek-gK5n&BYJ>>Xua%7dO*w+5s=$5=_8nE7pA z4#7c30Z^_1_(XC*8B-Lm@*m((hQ~K?Z z{w3Hf|6Fr8qu+OyTT1$n))ucNRW0ZD%Y}fW$rdZx4Rb7i=%Tf&0e*9-4~*Nh;*0BK zxL?heyCH)&TfcqQLAF#*{SHHx9oK0cx8)kgo#*3vQ5EOhz4LYp&0+K7>k{lPeP14`(PQwWU)J8H`HvW?JM$d<9tgY}JX8`@qQqO?OdGniv7%cPlnIbWG_ZDJ4} z&M>)t79#+sC2-wvE<{iX(kd`)Ryb|OLtPDge_SRX$ZgrsvJU{4X!B2mDv7h0`O8s!CkPLiwPN}fLO{s*wO zqI0%LUF_#ahjhs_WMEaNtn4s9IogqznnF7fU?b`IiMNXPw!56|$e}u{ZOhg9zkE@l zrwKBSH*&Ma8L2Ln|ACSlHp>d0Jhj;CcXgl*ZqBv_jWmi00GdDiJX{x}9r$?6t+@sU zqQKZjEn%-es7o5{`U#e^WY4#t$+JB^Lra$DtG+1+^G2_Llbo?&Y?CJ?j0 zmymn^_khGs(QZRoW?q`JHkYzoYzd%}=E24?Q)AV$>+a*gh)!KuqeW3`mwj7Pprp3fv{XJ_1*isAT))Gh2uuR z%Dx|>Pzw)`pg&%2CWa-r`Znb^SfVntut-LVHS_{*WCpkso&bB2=132f zz;CCH!VaguN)D!dejFWs61vAa2=Aq0301;&YtDC2Vt96bf1=*;H^|L$borNA`d;2V zG|v8y5U8dHM%M@8$MbfGFE3i&Dc>&|$j}ZOlteecX-%_UTEyHWOCKZh=5h`c z&WjHf1~-4ajO($M(zMc-USAX9Dd0`h<0JgeC?y|nv()gTptkq)zXhKm>~)jPv~Ql{ z{77%5#|f?U*g&cKRn8Z@(2{)dz`L#Gm)ra3Obit#$e}L#Q=@khI$OMrd&LVkvav2X z#^px%0bf1_+cCmj_!q+xV=!VZAXew0Z@HvFCs$lue(p(pEml(0++5fB0t5L+2-nS8 zMp|#EBX-~TZ{iJibD@un9i+VxKlJ7~=kr6~s#8>I_LBsceyidBMcMjguTwkQgxB>r zE`9Yz$Zm-G`o}4+FNQ`S%uuK?b{JIqZ);E#)OV zlG*k%FWY<*6PmJSy9aD92md_d#S-s7G$6Bw@Wd@<^}_kP(RDVI8orf0pRQIqgPT3$1D&=F@gzQMz|O zMXPN}kEOfB&OWu1=i(an-}Pv`9^Mj^HEP#cA*Jdf^?9o;Vws5)mReb&cMeI_FgiSV z5F3Wy;%oJXA!2pe0;m59><9JMp`H(j6ylU>_zk-;JsqozQ-T~c*B0nx>DQ2ScC1UUQ+^t?%gg=sc zN0GkdasURbCx`I*ya4v8#vW)KlxCRx~n#IFsTMLu9FAsQCL=U{$=g<;<9W7rwA+Z>DP|^d6?%cJ0gS?eFmPt?U`$p^Df`Uc+9; zI;OI~83yaJ)~i@k7;8%GQ>pApoStE=WxUzAT&3?v-y9~A-#=ga8C_5Lcao${vV)QFc<442PO%5(R|J<_LqTniBQn=3tE$~ev{gVV` z{3daNh6vjif5fMuswE#YxHNP|y=j-?`7QLjs_ztp4choVUF0k?<}|sLP1nMH2nWcX zemfkE_x_I?+Ck!8qK+qhhA7K3lY>Nva147p&*@q4=BNSna0K6SRZ{&2#J9AquI-hqF+-#v&B_{nUA5)n(kU}55>9b}3+!P}Im_ygD^riUO#HAO=_m8`mX zXD>z!W)`5MY!xA%KYS^MM-@avd|JqKsn2bR6WovRh&TI-ANGjAIm3LX(*|$)8?G>> z1SgtklVt10m%o^^{XCg6;97YjesJ@)I(2^+>{G@*igOzy39s1$eDQqjNPT3`Wm1n} zpkinx3;wr*D5fPi82W|1$#tiQsJ@^WCkSxnAOxZsjxbb7cHIc5g>k+c~73F%iL z5X$-x&~NYGKmXn_W^-Xv9Rs!@=v8Gp81sJEM}Wu?_pe?6dy)t`>X`jlr# zt)~Z{g|c?P8^~|Cut5fecbqSi{D%c}(bDE#b?@?$<4uJ7IedY(ON2<;(9eaSbVf8$wxcj8%yX zqKDR$BbLDvAmVT8b(p43bDV>zq*~^$khOh}rb4K2yFQeKF^i7MCSBummg*ZP0In0+ zEy>NKp}Bm3OpzGr6UDr2=PU1_!c9%F6bon4lz!Pdx}?b9F}#eh=h$ns7V^Z&ls*@& zaG^_cwwR<$9JU{zXz@9OtJz;)BXByqOuU4KyL>`!_--42rOps(ppTeebsvw{6iWo% zau5Ols#NP^8oE)uL!*uGr#!HnYFMoQb6qmzxfSt7#kT+PXPO_=Wk-RJ+QrdBNK^{Y z6+1_RlH=5MZC-1|J~G07N8G+jZTybT``P%yr~Jm9Zv8oPdaXX3X`1JI72S8bGo`+X{ehfE^ zs=DK@-YTagNi0wu4Ne&8Lzl}cqgVd{n77_EZ|~As;w|E2djEz0V83MoDVzmiex@IV z#ok=sRN{Wmi4j}=aC=HxcCZ>!U>d``))<@+4Joz%;Eb7&7I_Wy$5hOl|FdacY2)?Z zd8^KhO|Rs=V$AMqhtney@T({4p?-Tlx2Zk=!pVS)vp^Z)(3&#|c&`&tf~!~au`APR zknhwMpzITKYH&}ycF26%O%1B%p%%}*N&C)mC%UHiS-YCo2Cr9ej^vxmfv07RN&i;z zut9M5DRbLjm!G=#rsFNc`NEwB#5X0c;4E+{#V5$3M&JoQLt9p_MLc2N<}gHu5{ftv zi2Si9m?&<4pi)LLZL!UC)Txd`;rD@$=ApbAL&E-I6i6HwTrT>`%8^c#1q6BZXg&7R z+_+<*QK4h%U*=4g+}O@{3mh>2+#&Y*2>F3##3;*DLAy7{)70v&?m;FnbeNGFF*Ur+ znvrTFHpB#7@!OyNsAw)-9Is+Ego@&UmuzJsSedwvnQl6`jfIT+cL{$;&T({Eywu2Q zB?(XC%!1ip+?c$QkG5Yg{M#UZfLh@_C^yr&qm6OwAW`6iy>#6iDILfJD~l*DFlwJR zgX^}cw&O|cEgPVpNHLfL3PfN9&_KVDurYP?R-Pjr9=03fJ`bU&Q>iZ$aLR&YBRV)@ zB2ody*^}Y`spl?z=0|<&s2!9l^*zP$cU0|lLBfS`RQrJR5z+xaJ6H9g_*mlCmYYJ1 z`8Nm8OOt@sXp#bNbW##EXYu*b8P> z5jYHBz%hM^K4U0+u4g_kRM}MXc{q-oCgzk7obWbR)x>WP9jR0C(KrnyVvgPpCO6xH z*tHomMev%$JULR|BuGd-1>Z-wOE?&~{+uZl8{6b`$t9BP0|MW7wfu}ZIo=R(E3;7) zOZD>~tbxYz)(gGZt<$SHq+;|Wswz>3n=9{e)Sb!R;uKk;HE9?OW>XkMqdYI`^(qt!>mU_-cwa55GXH9fywqdEzh6-c8+vLf5(0fop zj_jEj`51vb4oGr3JdKw&H)4DXMjNIFT^WXL2RV!D=FGZqk`4(z!dOu;RwY_6x#= zkJ8r1wNgCo6zJh3v2{=1Z3gH(+$KyyU9iqPshD#?d<`Nn9OjGc=`B%H%?fZV=DmyyZ1>k@$?C77zkS^@|3=o% z>JgGwvC^qpD5)rcNhdRHp~qu(wMgyO#Dc{))JY4+aycTY=SO@&rRFhbTlexlWwZ}xU>FK&5M z5^mYA3_=sb%QM~cxWPWs2JH!!{T}VVs@pb8wl_ZH7GG;H;N+U|nt9*j?}D8gM+2N0 z*+qZ~2B{x97l=s8@G+Jnp5!qe?Bd-mn2zWU9JsLEe<#xp)FDszR-mVZ0L~?g2cpX3 zo`~gb-GpkYBd+UdPDhsHcb9audJz^M9{f+jguXSZ9!sq8G=hnp(oC9Ax;OV_=VaSs zDRg9!t8${eV0(!*34eS9R9!5g$I96bQAK3?wvqB&ZWp!ZubRtt@BC1hg)1ScVDiAu zyTkD0Zev-Bvv-fRy{fSS!D@u**w2w@&4iahwx4W~xdhV-6ezrVVhN4JG!f>AvWE4q zcfOs*!EnW^PS5m-HN(EFb1sW1h)V9rXu}j*EanoV@Um2q35XR zG~M;G!VsX;WK!i;RufUjf_J|%e5Dj*)K2Z&#TO@RD>ri1)8laVVQlc9l1~yjs*T0< zt%aqh$&_@<_*q6pM;#Jwp(QL7kC7jwZjbtL?|$NGw;o1)7U`hBQcs{{c=uLAJI3q; zEXRBIHHW(I2^|0ivTWfFcRZ!FpGg&a^F+n_S6vg?I?RW42MF6#C!2ExE7etoPMGdd z_rwB7LfzB5+HerS(snFbT8VU}bA8r^5>Bfr4?*Vonwdkb+ct7vk_WUsHKpwI$ps`; zF-1cZU*NHib>j9;qxq{-cgZ+ReWeodkB)F#*@a(O8`~Y(0A?9p?A%wwn=4 z4wdFV=qnf>(E#te2rs+(d#jlqj0X53PBouMdjv2JUR4m6@kD}?qcbAh$zz)+BAfE- zX2?oW(zvFZP_!+r+#+5n3`-mkd5$B!2tX>(PAV{y1TptD+z!+z>!{Q+Gdl#O8Kqav8y$ zmwNhYdh&Cobaj|=k60p=*o75V=Y*uv!;#0scT0&%i1-Raogh=avj4i!%X!9Lt8i5eEsL?>H&Q(ve-&vv8keM|9b;y4?MTr`MPFW zOk+y)?iAc^S!WYJ2yxQA``e$ffndp9{GY2wLC8Ut?%>%M2blG(e$r^;6ARppGa2_&jf$yO3>D_?O@=RrQJrdFQzgkcSAeHezR**){+NS440@r(bb zF-h#S|H#MKZunN)M>%B?;%JdpqaNYyggVvg!BtJPfLgR?EqIDorE-4IfPQs%J4590 z;csgHj%0DEk}&+LC@Yd&^1l*_TJMZ_A254uL;gvK$L?Ff(>jN8dm8Jk_r5e{&dc2r zo6TzqOcYO=v?s1hX^>^Q@|z_s+fJEBPZqBTEsxn*MsS4g>XeqEwmRRWAn_g(MjYCM zgiqXUbhs9dM^~CWg@tI~ZA-mrQz2rqS80!tUYEkZk@&ke6l>1`w}c~VcR`}{%$%mH zHDbf{dtaBG$xy9}rbc^TYsO9of#|f`t3NNdx}7TnA7FcF{WVu)dw2o_W;tP3bHLZ| z-<{L-S-@LESMkSgyeA@C-9S)FO_gL8O^&*AuUt68};eYS3GA@3jBsGkg$prCI}&W`g~v-vh~Dwz>cwHx=CEwacze~ z$%W8}gAGV3L9nljKA|EASLB{M9Fx_Ryqs~&qkfK%^6bkhs_b8zvE(!*kq*O`7Kiz= zZ?=}%+qh*$q6<}tVPcylyR-_*AYw?mvw%LMGC|v5oocL+aKC6N5~GMZakovJg0H3( z-#jVQjo;Ea5jc7`VRC45fSmE8YJIMr8a#q&T_*^KIj4U+|p1&xQvkR zkFUS?TviW)_~wbN7=Vyy(|DOY7TRaWw6VeP+xItF_3!HKXIY8~s-n^HhJj2C8LAdq z-^9>p$pPwRujRZ&R(xe9sAO`a3$o1$j7I`5a)9; z+fBk4VvXZHx%x!1nuHutBvyYEm?RhA)PzlXd~d6Fe4j(@)=`n|kQ)Z^<(xfty%c{B zyPg!PB|1$UmhCTT7&UwAH*zs`ckJGSvJIGD(Qscj<@#=zFzXzdF=J6rrL|mBcR!H3_xRbYcdY;KbiP8ojBletD|F~oU3cphNs5+I=z0E8@8XG-NYu_^45BG@PWZ=C8EDU#)wU@51 zdAFDZmeK}23O1F(IZvAEp30`YS^s%;kz0yedg7iKRkP>0d#yqh?FM&Ii+U~KEu$7s z#&pvUOHTqR8bIE02h0Ya*?W&sRc;+?l{W=nqn;v~D;)ZPbAkEiwszfFn(fy$_)+Y8 z{_&PggC@V_^aF~UM~aCYY*BzM5(L$oX2#mwr+1xCZCvow{p;U3W5Bpc-vDLoGf5_+ zmqWd4kxZRQ4M~Q;#&1c# z(a{x+zAc8+U2O%yxhNgXcHhQ~PcDht{_Q!iO*7U`ll&O#qw8}49UefIpUg+`^(&vx zgZ6zNmVaIow2<$~b?!~yxlBOL`FHh_meoL2y4}@vWxzQRh5t3%O@is>YSO*jphII> zF<6&Wg1aC%60!inR1=__#$m|O{#S`LZ4^@pR!i!_m}Zt0GoJl4`Yy*pX36n`g@xdB z0XfKMfo1frzf;!u$}X25{6!4HI}w#mBrNG#C6FI8JJUH8;jLg~vb4In?cn9dcs*fH zLwGoJW?Ae`)0Q&6w4uFt*T~FdPbjGk@sZILf|un?0498lWHSLO;N2J^)LH0TzZZI5 zu-BJZwzK*(mXv8!I(nVp^4o!y;t z&im;M4bQx>>9in6kMCwA9`TQMYK!2ek3-yr&b&fK>n; zBE>~^h)?AO=hs4IG92%pwf!8I_IG;AsivmSzlKTXb)7Jq@NvtH+e@EI8gM5{bD^=E z0+`7C$d20>jGR7ux}MROy?1><8FS(JN}kfzhr*y_PQCq*#cFmN zgO07|kkcpRbjx6r9^X;(t5z$XjIP6%NAh-kNW=@jvh2`MPD9O`bMF6twOq#iSGrD zjNhos_RoFne>ixQqe58AFe8R6FI4E@33t9`(^O5J0Nb4gXW! zI#g(6`ICj%YzTD_knf@=ve%^lA@?8NIZt4x8oZH2=kKKRVtNa~2)tjkuVK>tAT#AS zI*VOsr{JEy7yi8=O&r=J8H)bITSUbeaUY^$_ZqGXpt9AfsN1i<=jR@CITP%?O0l*& z^ZWhE#**hk@e6fVxcgcM#!)62|=pdC=9jt`s~8b*o$LtK4yDnSX@^DvSbe9BGjjwG!bIYRZ6t-N-+tg#XfuJTOpkZs3UQ;B4pAZ;dIPG3l{iw8A?r|94E<430*w|<7 zuLHh$K>Gdq&QfU-h?xC0EA;DTd4(p1NNo1f?)@t3^wZNmoyE^6c_YU7bo;=|Hg@j% z7Bbx*zC4h7+fv)0pqWEjSyTrKm=}r}d%I|^Hr;y04!9d3I8^}UDo_^k$22LyKSzQi^g4s? zX2&hF%CghltImkGYYx7k*HSHVj3U%6V#Q^J{SOBNHYQ;byLBk;tR>QIyPh3+ck!g2 zhsK2QMtym|gYt;YFP)2GRp?dc)}2Y{1KnOn#gu{=*yNkBh6v>5^_kOlfcKi04zwR~ zqdw6wO`CJW)YUMbiEf`6+(t&H{CUttt@B?{w}+s7(HW<2Kpb(=qafU_I4h>-h3KW6 z4%()3rs{N}ZCypMFq!U~q2$Xq=%kdaGXi?zfs}$&5OX5&F>W%2v;X^twkVjtwan+2 zoZ&kztVrFKIUEn@v&wS7Ew)KrKDi0cHV1PO`?r+CSbEXIVD}^g!gkSEJ?_9O$xzM30-s}TUwr*;z zFsZzM%+7Y2NaeRnia#ZxQwF6LVLpd*MTS*2F?TvsUB5g@Bj0CYz8lw$QE!-he{&xJ z?72xfU&zaSt}!kW%xfJ$4a4uxWIUaHIr3eFmxV~NQcoh)ZGa7ynf1H%m0Ks=deU4E!q3vxHuhC%|ab`0?3FW}s*G7i!4gOjB`; zZmCFi76V4-d`I)T+&j@DY%PsnG#5m0b@~~TNbfj>nF5htBBU~;r=p1*EVA=4(v8O{ z8rM*teWE>OcbNYhkB#ifOt-I2-vdR4@=iGdM~rTbMTjvqi-@QA-$(Uun;Uv=!bQeQ zikPZJhze^d1C6K!f>iqvmdGi!s%L`st{?o~RA+k2K0OMCGUKJWEq#mx#igd8aaLN1 zk$67>n#?nAD^C)-;mPg9d+h2N0$m0U%VWtO;TH^%Hx4jEJ;+ zc|4K%{2_3$DKr0pdt4UfHKLP*F2B~4WI#?*#$Ytf3k*b4J&4%Tj?ocR1?aihxoFko zm5hMQvBsniNk)QaE}V6|@K)||oo%*+WQTjhlBk73Y_X6|d55_fy$W%?(ubTD%$H66 zw26i!Mbz}Th|@E-&Nbql7_*-N1~7lc=h=m4z*5){AN*2sT;#+T9n%BCb?cl0ixh8! zWB49fpM+}G0C2WJ;*VZdlRBpslX}7DUBr)GSpI*^5cuSegsAl=W%q%Qmdzx^Tgl=a*s|0sMv$hxJCPBAO|dp)DTh7<=eS6Sf(efmdSo7ROFVXbwcEdtY~uj z%rvLk}WbDeZC%M$4r0w~GIRl69 zI%s#rzaw~nh9@apXOLgQX&Rd9(kz4hU`I{(#V ziOK`5M}REtO@vB?>~arEg;w~rT_`kLEUgvV6%5zQ4&ghufDBNrKXR@d^v?CLtIXTq z%IwUNfpv=r5C0$vZ`*^_UrN$%*5QC5sVlF{Rp}!;rK}Lg+?PjYbeRyq8I{F3q9^@8%G<2soQ=~*AnM{&GHG{#-5 zOTO`aH%Gl`#>*PxlD-L>?{DcdjkIPPtomVBoM8k0t%A+w z@co%wYF+V@CIDUC&{z+pCjEiOaYLG?xnqaeYjC%1^&_$Sntc%|Z$`wV?w)~bp>B5} z?WXI;5Y+BL;G44q*L#|04o*B72&d^n%9?SV*Dn-nmfB*N4-T6*ZkfW?x;4bDt=^A~ zaS>E0-~Vk)v9saGJK5_<2po;&!^lP*Nk$K8T@;!xu`(x(Kt{Q}w>GPZjELELf zF&|T~-Rz0dsUtf0j{IO50$MtvIds!oc087ygd`Evm?{Tcir=En^x(G{XG4Ga_70S& z_X?JKhCY#k8z>ex{?^2GDfb9xs3V+a_YDDgic`m>w;5%ni+SPoZew&_AB<|C!U{BnJvVBe5dI?7TggZly1=rV|K7_fF zi3UZ}6A#~A6ZANj`Q0!a4MSchf9VT6Z!7U1bV`jBA6a^ZDrbr~1OzXpNg9oJ+T?_W z@&(NtL7vCrk`Fuh1=q3%6DV4WiJ+BrnnK0rSvyOelf6zMD;xf_>yXbN7W@OfHcYPi zFW#P&Uu|y|m&PASwE(i|cR5_e&64w#L`^MEha4sg!^E0ns8Kyh<@?>R&&4LbMl>02 zicdM37hoAko~Q{6OHJHxo+!_qk1-3n34$FSbY9k}pY-Aj`3{mI>^mu5y3W35#ZD}a+3&HK`}0mXJzp>R%^CkO_IdXF@pFoy ztt`2P3rW7RjcC4I?b7@j$2QWh;=ZTPC7M6va(@)>920p*D3pg&^=g?PGa1X=8O zT#m9qgyDFPB)ppIR>8`kha5YWc^HCJMQ1O^a!jaLil8OS^sM+-w$Fl&YsJ0rBTy5= z;T;1#pajl1av4x;At#3Lf>AI)XsvimJ?d?i#xyF?Lr_-q6n=}g7>uz=Vwz0l$!{wG zHibOE_YET^>-XEsvhA%&i0n|hJj+gEX{brX6tEm`>w!wBe~M_L;^3{cu|&2lNvNB% zosqA@J0ws=usjq<)gDm)M~a zE>G{`k|Vud<8*%*o>|0kvfeu5$Ye7hW0Yn-JHJe51T4&`oIK1gjN;pAQWQ=mVyq+3n`|{Rp@npDG7S}rDpA(4sk+0~uy$9`mw5D!{-o5DLCHk&v>Xw61 z{~ge2nQ6`cE<_&);x1T!_b^)_8%8tpNrJb0R{6BkHNk4F(mx<~^;Mk%l4zWJXX@*% zo9?TMrO?%&Bfv{P2zY%}+-VG^rDt*?+vYcQs#br`u~PA+tt)4ps@~uMFcn!m4b!Oi zd3Nja!Xf*!-_Z1_)Knx+cX4Nls!nK;AW^K*3x|fGI`Mj)Nc9b_mup?ZP9ga|?N}We z>CZYn|GO%>_G*FK8A2A#Inv-XB`<3QLbe|3jj+M;w7@?6?jOmjOBLFth8)v_u8|cK z=A{nLZY0U~72kVtWtysG*6jr4? za5KU^=de>&=F-O;O3$T(?>9roefA~JvSQNeU~Zo2S@WYVD|EFR7hRNkU)K+tGvsgfw43uQ2PC0x5`Vj{bsvl0XhP5|tzxaba=~u;= z4$+xm$CW2$D$71bO;~sDE!(n%=Nj|>JE0}(>B9~ zaY@Ep>IBTTDKBRvnxQMUYheb)7nWcKiir#E80N!kr&Ams_qm-H?8 zkk6=JZ?Js=lBFzko&o1R6AMg>nIq0Slm)SmiE9bI{b{XMI_?;qD4fw=@zTfDPJ5MU zU#RGwY}syzNZzUOayPItB|EDL1T()93KhJ=Xe=Vecn_zle98WezzS1cl)Ig|Q~kx#1@ z<`bTa-Z}jyQPNal)928~aCe)1=3SkdH@=rbQ>?HwNiw@!uzg^*Cf395$J^^WQq>27 zV0&dzSarsf7x}*LQ5y2y?OhP&b0`x^TiMdBdk4g2KG}YhqyEL@-@{Wx4&wqkMFevj zE^>1cEE(j<^5yZ-f!yu1%3_icAf25nBK)?Qh70kF=5N5=XWXRs$~t+E+0-Aip;Lpr zxe%Pz5&y@dgmM3az`m-*ysU3&w5>09wBIiEVB2&lnY&GGIDt$vSLU{FJ(I=zdp}Z z{}A0+gO8*2(v%d)kC8V4<~~-uKar;Y@%Uf=S|*n_B-lp zoICk@;AlVkgV!tCVJT~Z*if2HX#-qOxOI>$?|8!{ZY#O-w^mcd<||k5N!c7ZvgzNWP}wzGGvxNcl?&#dX@y-Nqyx_q)$3z6H`8vK6AVJ#CpLz z<`_ZCoARET8Pys^2{JXI{dMerrW#4=7j`}MW_TL6nx3dDsOE8%hU0pYX9;wloMm1f zdyWA|Ms4R#uEx4NxvwU>FURpKzvF@D$VQ~f`CYxfzL%N`l~@8bEP>>!;Y6nN^f+Aa z(!1e7z+1fQ!%na|I8-1YooFHmCIg&avgQ61kgiUxWnC;XeB|@BdT(bE4X#2Q;xxuq$3Zi zXHj`9Ajd7!gh}+iWS{YLBf6*Up+jBK?yR!wp8SAAwa#f);GWo9vRJy~(;FypRYgi; z?KeMWYE$UA;dRPsxOvPP-B9H{U-Z@b>!DhWB7zlq)lP5y4yH{V9tYd}WeI6wU1(1r z?`~<~!?x~*hs*KGh42DAL3qK>gQhHz9Z_iodgd{w$66qN4qO~1p3(J>S@-;M7}#KN zpk&G~wQAD^od-l4X;BST%01L94%Lvhs-9`O%dwPxNbQv(}!}QDuLOv z^_5Za{{9Yf1n!&IQ$c09*a$l>Pw!cpa$fD%_D?Wfd09VnGGlMs+p=PBm)g?I5mwQ( zP=}Ak0%q-AKibXj|MIe8-&8(3{j`ckxxl<~1Dy?*430f0BNTuD3@$XAC5tNIkH6lDSX7kF(RHI-%ufM#i((=$` zpyB{%N!n96JAkGkngVvMWlMYki)sGY;Qxx413x;kBJEcnxLknZ>nM-U(FwfV-HPg# z+%w1o$~Gq4=8wj+Suq6DStOW1e@ey1Rr72-vc)M0M;H3Riza{GY>{FUYd5tJ@lVB} z6R2O~nRQ~k@UaeuNu9gp%-MI06Tc!aHRC5lq-){;#5dBJJ`odovG#7I6iCfs0*BU@ zKE*oL0hexzvr05Dz}n$#Qz*U9@?(^ zM0X+(eLE^2h%AmBh=10;fGw$91BC;yZYyOwu)bU~wBDP&=IdvE*$z$-++HvIqLwCv zb@>|l4C3^pNq;KS^OC;4#p&jo;0_O8M%WelQ0=`~XJkVrKkg-3Elst|bdtQfQmZBa zFS~asJBSn8$0m0&vuckQZdC78#1D_af@J~{M8LjmL8{=;7EX)F#U?W}^dtQ1aa~Gd zMq^poz$1f+>b6$B_S|6k`&-P-Gr_)4r^uZ`m8~if&m7w$rCb5kJvgrcFQ)AYl>GXM z9DomAQ2*_EZupre09G4lAr!xd9&h1NJU&tywr6HM3ov^s7VX9J4NDz_bsS?#7{gSp z=7nuFPjMs#GgPYO-mM|s&tEK*$?jEYS-H5r)rc3B9qQmu<%SCu+xN)9&VrVJw zR)B@sBIa_e)q2ai{Ks`m)K3;^U`&s#iMzhTo-%$cPp!XS8i;(cI!dU?)}8&~E$6N7 zYT_U?Rgld$)^qpGGkLjMSw+u+d_&~4dT3;}a9fgZ*E((B%c%q!>$2f7Y+UrH_;zA9 zL-Q$Z_OXrA^}*x^Hu@Kr9Cq}&e)$5UvO8|x=VAC$Pxg3^U;3BDXq=w8P5+*rF#o0J zPH->X^Y}G;K4Vwzl;^dS-M*xY-#+@2mCp#iBy11t@k5|w9YymBm+F9IM>_x(?Cc*B zf2Uc(9MpDY+x?W4)bQ7@qP$DO=;pfNqJL{q~7{q)dfjBtIL05ZmV zPlu7?nqmJVLCLiXfO`L;j2s^rC)KeTK5SM5j*iPb4tF zv>nrz%d6~;RGrFXSd)usF0-Ox4X>Vx*;a50U)(dnFcaR^oKBSxa-AghM52$Nj7ky$ z>y_GyR!z#X<>2n~U$K?XYH->9sJIz%nZrbA^q%5vx00RN0GSyFs&e}9UpuS)s)6Et1jh< zfC;owJ3>zt*i<^|FluWO5Gv$j@wHc8HT&(i1If^cu^-Sck46d8=1L0sm>@2fj_VBf zd?OtveVT7hMeR4&vFVA)Wh_znCDl^=V`MuP2K}c`R0RqNVhL^h4*q*dbgjp=4@}`yzvo&4-!uS>I%`j zZQ{Xqun!qntMNlOia~2({xsq@!yJjT%>VXzH0jE6YVADr{ygH(s%`4cB#^AKD)`8M z4}eE*cvX$>M|vo76P^1_kz~9RWk_-Krl&1W@RSr0W*i*{Y^Hiuz`va8ATRJeoCJ^Z zXysuIbfb0hBEQsDtE8jD9`3Gbvk!ILd55yvn5GdLVXzWxR!?I=Ve_i10GYJy$FLs(g09;QdYDgHyfS zU1^tn!x;N*(EJ%vOwZ|irZ!YKlfPc?VWSvMFoKNw%uIt=>A^k5<|z z*^}-y>J#II{=;H{o_nYr^kTsn81{E$wCE)|=iX3Ws6DO6jXRKh5n5GJ%wleI+=NdA z^|E_da}IEtb%MQZBf5}_&%yXVdK6OLX>DhMpi7LD@HTS0>5qpQcM|E3RyfP0J`ZIw z4{BC~?Z}3n2g0H#+Kn&)Kp!*c^Tl(+*D(5dO$*M5VG6R{8+pkJR)a|9p~&Q=#tBK_t79dw|A$3Q3KitY2ZmKSWkVnHW!})>KM`AG16#JQQlaf~q(R zt1qth5wl!KGpox5cjrlq%kMLK8c{kBu~&Q+x;FY?<|KTMdJ7gCK8>f2R||M3Va*h? zCmVxZN#kmm=)AfbtPhuna=~ z)?9UkOXN?1cOD!0dQ_BS0K$Ja7vC6$RTtT=yy7!KyWIpz*;P<_gBmvwYGu54v=h2F zs?oa?t22%Vf9}%yB=<<9dL83?mf?C8u)lZ{gHDFedFylNEQ&W^ySE!=^^eY5myXU^ z2U{Mx$y)x5?oy%E_(o{_t+I%sa4jb7cBe}PquYwBbgpm#wi2^&loUbQsgCbfu>V9Fh|<*TTmYxDD~MwQD#Q<_cIy-(a{39ir0H9xZa zU!0{}e4OB32r#ROMZ%>7xgWFlbWt~hrl8ZZwk73zUCbZb+p5=UPTULuwI&}nxa#)0 zgFL^}dUFnM3lM7aY3`#*%;UB%kBm~s!f`*J(01Ig@H9yK?0NQ6+iKv^a5^=PKXk`b zc22C?GA`_W=<9ImR?h>^0X5rvXmtnPw3<9e%hD&QzgX4X4EEk`;BKXE`+dEz^=SMv z0{7{idirr9G!p2bWClHB@w4`89u- zYXq~tNTY{-K;c)fOL^2?(fHy@us&Ftpro@8tNK%IBE@kJbwtM*9eB__AR7O!m8c=I(==Q*1W)FTWQ<+A@ZL8F0XiJq?rjso|QBt~Vhd&F!Df5d5>p zKk<1xZEJt{59`{L#&NH&D)r8LF*B^+Nvh=Fu1KxK*#y^objImHin99lBV7-NjziACX8o@WeL} z&MHtPSEa9M9Ca#<$ppFn^KJmk&O@x6MfoWA@SC}}@?pk$!s*yFd*0a1J57hWE_-_B zSu!w^oLgU#7~qL2XMo8)FP)J!)xfE445r&Q%;T;{+VTbcIc+xBC2A`=tpe$-6r#n> zO=IddmXtl|16C#>ipHo9g7Q!a_+Hl6aTY3{z(YGC1K8BIk1@TV__B2vhOt9DD@?6` z5+3FC+1=dn!(JY?JsDOJ5^J{Njorc0vQf;LlQA^YuE979yEX0c;m*8l8&@ zqVkB@gNJbFfS+H)O_9I-$RODSBbCiwAH$NaFWSHRAH8!bTvgIFNgmK^NV=PH-BWxW zoih>aXeIf0T9TcOJlKtMF}^h(U1yk_l6D-?GZo(i zW!q+^a8vBP*GsnHKpxeCh?iy>CdSu`Va83j+Lbr|15s=wFB&8 zr~p@j1OZSH`x*IZC^JHQFraTeZULs`kG%D{WudWi`V@iqG2s3_D;+YS@qRDE{nxd` zba>1Y<&F%Iq4%IOk?T#k20-yb9&zTaDz5#9=^|K0{iUL|cotnzfKq+F`P==c(=m_Z zNf!;aI;{yUqS52u%{ozrc@IK2#lqTN9tviPP@mG(y%p@bvo2|xjQgCwL~f1Ve)T+J zo}&q`0K#6;_jRkpqltM;MH<;c>C*Q4Y2ThvBmjCeGg7gmz%4bNT3?p@V8(fF%#mOl z`jo7gWTgRi&NlO#5i_+2X;n9>OE7YheP(0I6+z4ehyP#`;$a`&VRUHJpeYqEVX#oh z$^}#ndbLrfRhd59D^oTdYkh+WL1$BagU1AxU!8VFQtiLS#d%iv^HO=Q31nxn=PsWi zkuljZDF<*EA7Ow*>_@U)jI(|1&pc@ca9P~$zfl>k>QeNs+`vZFSY%Yj+M{&irsAZk z&=!b%>q~ABGZKMCM+qeIWv?o5nU~7#gLFcrKSf+Te2o^x)+r;sbVL%BaZi)3xj*Jhz&xWT9 zZa0YdY@3T;o9rM$;v}88KOJcto<_laWF9cuV7Z)s%TJEPEDP&@nyNl2L9hZaxc=xCKT=cbr{Y0PvfT!>-uN`x&-?>$ywRLz-u!n2 zspnEb)*l9zio_cHjoAgs2Ws!DY?a^9H;2edl^l{4p>|}9|5GZX`K&93=qB7QosShe zBt|8zP=AxlBx_Ya*u8xhwtnZ|GLs*BR>es8hfRJ9`bZ+TXOh@myprR*zeWBe!e4ah z>3L_1lYQLUY~!UQ8Dql%N_9DZC;j}#b6J8(C|Ypm=Ja@f)8*<`SaJo%jviDX>dIhp z^Hnn!I2D@lNpouSiMRGL_4!X8xGq*`@e0&h+9_e&gklk&Kq|OGZf7(t19wedY9~ zsz9GBO44K$ef>x1i{`oWs5<-U-?t`$+5+BiX{>Emh=-B5#m<2XR*fXsTD39zApuWV zvca=PBdC|q9{oz&GY5yp%oiyws9-Ro#!q z;aQQ5J?1_U@IG4gDE_tMShbKhJeRgH6{V~I2cm`8aYP07INSZZ#s#ZfKVmx!MJm2_ zxn1n9OV{~OID->9Rr7u!mMdnPi@w6cl~y`d?E`8}zvgf$CMmmRvF3OF*J*`sPEDLcgEWA{T&;=0FXc5)_sXvpDmGGoNwms;>AgfwCP5Ub@Cw5=vK&SEqr zwM>wj-+4G*YXqTN$#UYjW_4?o-iVbPafc--#bWeOW1}#HO5X`un&m&N_Rje z_=jiJsy?xV0XdIc8nEJ2uQj3+5^`Rh7bn_m?Wd@-uHC@@6A}@5dDf1xEf{eU@*QDq z*GtoTV_B4^LN_Yz)O^E>MeSlzwPDBU*b9k&-@>4Vuu9h3Ca>oK^t&o`BZVJDQmdXh zkV&6%283Gb-*fR5*$*H%c|X>F$<*L{i=rL*qgrEhGca$}{_eu~CzJH^oW%)qDoBa% z6JcXN*{`GWe)Brd<|%E)T0_52g;;{Q{s>4ETZ=F34!?_HMQ^YHV1%oa3JBXYlWTF2 zS+D>k_F@Wm`qgO1=n2`fAfN(huMsp?+4*hse$!R1CECo&)70+%Z}XiG;keiLKe(=C zr8kYXJh5B>1E7Lzamg*G8M=MA*v?#}$+X(4k3GqVg3;7Q;SztCMR8IH2D_tJ7~27C zk#ClLJgVTxQ>|r8l~yrHP;v!LGiPvTixA!&o?H1N; zw5@{EKO0>VSVt4Fcx0@0?5?u5qV+FYEbMvJ#%^p5?0K!mhxk`ES5gIqL8k|T&E!%U zYb|TW@c@!q-Yv>KmxDgO1H(3Ai_MnAwj2(mi{5&D)RZ0<$k+~66V*N9>^QuhQD`J2 z7Al{c6?nWq&nM`&>*MMTdL*cZy3Hu_IVq#X$-8v1DT_?>6~Ywr#i<2PYA;@8-|T2* zAD!?K0eD&`VLypPDkXL!qS{xulzOTr}Qzz_L*4x{L_dJg?j>W zWDR@6kvE3=-#*lk+W&PKR>&8;{%pK`E54=7p1y-5w6*rFifn0P@8opTKXP2gy$Q6g zZlD&gH~!w|3bE&pdVBQ!eu{G8NNVca8P|+}uu-9K&!1__g9Vd9qmwEcwZ=n@BHE8> z$AL~mKHQ(8-Mk6N-aLZO;wx@7<3&c#RRt5&(|1h9Zqaq`QXrRhlNQIJsZGmlqe2wH zK*QQvjUCy=Ntvy%)E$+;&wp>ogLmIHl<2w{fv9gTJe|WDVWZ#d>by%;@ba zFA5^(c0muP2l6wPZASAR`6oP`Ix8$ZU-a&*0suK%^z6k1w6qQMJg}ZM<^KGwGZ;&m~|1hhNGH6D~@Mj9KTO(POL}2 zkB=P-)%tScWDk}jGkM4)m+KTa_*t?qu77vRc~;UrBWHn4+HQIg82{uc@%w5?U$N)V zcnJ@W1gqY!Y|FX_xS6>syzgML@AAjIC0gVU=Q)49@mi%j#!VOvu)Vyn4%9n0P42rQ z^Th;B+yD?Q#7slKNgl|46pODetIbpA&K^0MuXH|mc~9ygRDc29^$IOvyS-Wb6aaG% z|JjYct*<`~=998yU)|55 zAVXmvI6muGM@?l4gMU<|M*<>gL}-2sf9%h#RcUD?7}Ik7l9-i!Pv;L4?=@ zv}@~z^W1>mK7hzF(MjVy?NVN$zc@9uJRL3()6&UZ?&{g0UC&VH4CPt~@>M)_Z$?@88^uors1}*#^+Q0DypBD*0NZc!Gp>>w zb-H_Omq5YDG10Iv!Knsg@TlY&;>uvG@Cly4G8IQE7}iN7x@%mnvzfDI2TZhbs^t-k zUcM*XjS4m>U^}gvW*cc5AKg3>#zF5@;GCLRh&!)Qk3>9OBibdegp$Do3(f^gKgd#l zCy4j=x5C-$4rj(39}(;ItQ6di_LQBV$P-LHQ$lv6oO!|sm4X~*WitN=80nh+_vTMd zznf^3oTiuI3uS+T+_ecd`_M}ZMo1E7C+>>u=X*%I-Kk$AnchT%Y&YxH=uMI|?fD@6 z%^G|flU_*Pqrz`T>l0^6OiC z42Bu?A^!4rHw)Ua-V*jhVt<^kd-T@l%%-g}G7L|NC^+;j8kTWB?QIgweG!|L<-G=u zf`74gdXDh_32;u>z2^?un-Vd+!V@$ZfvKMefSN2lGi%fCZADLGCGP0j1|0xXcG$`q z+>F~Dziu4z3~LxeqF2)3r;V0KuK@>%LF``;ZMIa5(p<-iY7;jeSqmKZmP-n{9JVrPfp=6oQ`#@I6!(%=%FjP zW_xqds*N-=58OSX?mv9qqTrg6onystMGwnA-&{m2;7tzF3PXR^*s}N_6CaElP_9$j zTUFcW$X(lu^&B^!09Y7MG(9`!wa?evG}2ogLYRVcy}uE7ARQpY_wUpWV=0VK^6q@- zzrFI#;0U!@E_Vv4P_tZNoC4N*nRl7t-+y*nuwz9na~6wTAmTGAhF|otE%YN(V$Rk+ z@cs_PWjs4`W_21zNR_OAf1eFt1rIskE7dFx)S>^Z&V@_Er&L!m&56Xv>ND3_xFvPL zRw{4Z&wfOTtklk`mc2RhGyo>3Tyc2I4Iqp;LJe+Fqj#TBKygr$@hy!%$;no|*)hA& z^wUn5a-PJW`)^tXEwK>yxipgZbq;c3BHoQs{TZ79)JEzpAzcUDRnwiuOW+-uwm~!h z1frp*{=`{eU@4_UaeKKtlo6zz&R@+op|=*bM-oUjdZkss6}ZXvaRg zR711FSN-Za!BSzR{sepZnReneKki&8i zwPiB@0<4Pqi+czPXBs{e%!dF4-2pCviI(tu zgiFJ?dP_Q;VQkT$%G|t^R$kU`1K!Ov3+ogAru;<*$PPv!3;s$9U;(*tyNjqPc%ltF zB~;>X1~LUbV72E^JaDuwXErR^C1t$TwLGP06d-{tos2hZzsX40jrOD;ax>{qtcom8 z{4Qv%VNi4+k(*%z+ZS+_N>A|DBlSxF{yu`sQ^{ZB(yITAasAY3$e6X6|Kk`QGCesM z2O6{*f?IDeh98{nU;PRr5Bf@3>=U99__9K)UYB(zNY3k<#7W6t^k4h%FD~H`V*G#@ z&_L0rwl10L?qQ_l2X(J^-h}6WYZqEfyG<&0@5c&Da%u*;@851>zJYw24Y4-hTfpZw zKq&@fMR4cv+vV78CKyLiyZ0`xZ~t)Z3L{0Fi8q$}3rg`k3Gd)N172b<2n)HMDr{Xo_0OH*PBeyX#4izRHnxG_*ZniYUR>y$!vqG?11Dqt>P7PQ88bQ%H2lg zJ*y*Qt`k#UE|k6XmeYt9lfN0!bJ5NA7FJGxRU$#;qNA48}k-fUzf;iO^ zJo?2rzmC4eQ>R~%Z(&Fd=*bQ+77{7ge(PjeS)N(>LwFsu5=97ikrsc+EiYRL-3()+ z!bMy={+RmZ7q}RQS!c)C0>@%vMT(hZ^0HKV)qgV&1O5=v=-{ruE|-;wyP56yMK3^i zB#Au6pXSv(%yQ~r9Xxeufg||cOfB{g7$;{RvzWHjFmI$*!h&)Ii4ntc2+Z%&EA4*0 zpvKbQUA$&iGkaioVhWL z(Fa}sGOx&5^%*97=j3#jJ@IE_9IU^a;i=~{3X`v2?XzDT1;Z#TZ>H*Y<{q^sR-J4y z^^>s-Lv}F0uJxOO1d;8N>_ciAiQz^yK7)CJ92b*CKR+{qBjbU)paqSrLnH3*j?3{g&zX&+N3wYd4<@PD{3Q6=4G+>zqN~E+*{^_gP z)DbudtU?A>$yk4RZ+ZHXv5d+W5K#7=mIX`;xk!_H7+%8AD4ErEGec6k-5nfyDSYy0@?(NSQ(fcVZ z3v;}~FvV=mLBy_Jiw8WT{m#(UDXE~WK^Hk|0VUZwVjKcrWb^FMERv)+AYEHFexA*u}Hus>Z+Q5{2@-5~GWiJ)&s7}@nnS@ekf*$7?Kd4x_ zV)98$Q60*W4b+t{fBddnEXdL=Ba|!TDwHOroW#@brz6dOu-G#YT%6ijw4v6BfY!&h=7&{HW7i>97J?78r%{_P>c_2R+|Rjr>m}@NuBK6&SO>O$|-EIa&`TA=^YM z$1$I++;KYbo3*Oh*hqJAz61Z|7kBEM>OISn>zZ}3jHHFww}v|n^yr#_yBrhWwXlx% zjTWFbQJ3u!kBfv4ia$dUqeDcBzNOxD5g2A*DXIllF3s0aI4=Ia)4G1of#W&hd6tu# zAv^ivc}uoaw*2QKn`nzZI2@>JJ_Z$>fh^RvLHN%T{U5oXS8Cq7Y6RRkXufm+P-_0SP~K!aZK$8*zlyEkH=@DhPj67>mrkd#*WFpj%GrRCh-~ z4>(AJw+&5^+RbA`*I;SHJbnW539*`%2d4*yw-XkGF|~xO|2{c!mPt2 z!qg+(vc0B^-|1_J2kpHE*LmL&!5(n7dC=`*v*RPF0h}tUFf5_4>@&jxqJt0nKh#AK z`_H#t0d0at}2RZ5w zfLfj2NG>53w?X)W0Q~z7ujRBGKfiWx@D-u`FUMCj+v125M)Gzj7?*Is9A7+}d7U21 z-s}uCXwAnTDE+MO!|{#i@y*T>LIz~hHT0S#X3+nPv4(}ibEwf`pl7?1$IL^qe}VOXZ27L^(8m3ee29#Tjyd`6 zTafzqV=YV%jIJ%mE7PGVLC1Gyc9FdDaU;KeJ`Yur)Ghed_iVXqT4`6^vv zbt_YzDNv+T5-^nKh0Zo}D_|UAzFrpuodff>jerBuT8s}G26v_Uk0rlx@q&)Dnre<0 zRSj7&s;y99@1+P#80_Aw>?L+ZIxetpc4j|J#k;wPEUrDaxF<};c)v1e{Ac*G(Q?Hr zrfz&bVst(vhPBRT-AM;UcMxz}FY)CelWMd1!s1UpJnWuU0%d&uu*D2rXaF(9NHj3A zK5TWY?WWWlr(`^mq!5d13rrh~;dYB+KobQGH)$8;YlvnY=%k^*;un*Cw{Cd6kGLaX zjONqZi=HOc3#?)+Q6yMZ?wzP@Rurvx==k9M6}{+D3(U4Y%A&CV(L6qQbp6@`SVX&P zeALIjq3Mf@d1_wvWwFS>r9g z%+_Ua3jtrw%OBt=)i<4%hZo#}4Xx@=4O(W0!}X?vzL(dRBu(*qmItpzdp=@nJ(YiA z)>fkK8f{N%?J(#SBb}oYl1SY)x`wR=;yd*U-PQB|g7uwYr(hbCHDZQEd7zHlI_tA_ z*~aaciuj^`%yq3Fe;Iv)zQBCBnJ=&_^UW)m$ImFgd?)tGuSd-TqT6{tUyx9?DWyLV zIP$7TPtK&KW0{Q#5;<3S{KWl6Y3lLazA-^S%BEKhL6=6hdmS1a88^Sr0V5ME6}n64 z$uJv7N*RL!_2}!HtOE5gwrIMAZ_p6mdsvb8wW(twHjrys5^bV%@jHxio+wHA_TPNM z*nGOs*?sucOi=BWreAm7UweB&Rf2i~CFb>CZ?ojTr6jR?SJ5ps7+2iwFn1qXHXN>` zd;{`arWjdT_|0Ea%cVTX;xYxm%IB4)Mu=1HKuLKN13~NTv^_|Xw$50>9lyMK)jMox zAKfdZ(6e><(j>xdgMfe9r2}3L`#J7Uph=8Wg;f42OH>6v{c%0B6R&^790M8uow5@@ z;`!nDzn>>~QF>4Rs#M<@p@x-VP{5fO5v1cX%+<&rbzwbw_vFx0V z?2v!MvK}V4Em&ZaP~^?-iD3z%mw0+q80H<)Pr>-u<5QiZHC-(7%li&Q6N3) zW0%$9>z0U5o;(A;ywP4Ir+waXDCnVMyx#glWRlrhJy>0p4)Sn<{hf#XxgeQITDlXw zalJHU4lS@wv8;DxeWLGS2g7%#96seR;W-fNfslc6_e%s%=;}>u?^RbK8zb(PJ{{8g ztsBpd!O9$BLdf0P}@()5Pzx`ya9iO_m8nqhMVP=$U)G|D!1|;h7 z4S3%rp|X4FI&d7MtN$Wqb#5cRg9uxG7LSQkaUmz%tH%$2OhwVQ(n2N5=${jWoF=sQ z4VUKBHA{L*!l*89Xh)p)`Nat@4Q{4}u3G?7e7=7OC?he+>#@hdalm53K7Z5_KlA<# z<7L~^2N;pZC7W&8>iPO?EqhT8R0_@MTqTT0!`kAyy>EPYvyH)3$q%sQ)P{~kq#=0r zce=dgfRCwy^8uLQm=mL6XzFRXEd_NJdttT8*$N%WZ26t0e3c0%mU5uC)_!~%msQ!1 zlV0>!UzLqm7OGS|{p@ahc>9VT7lNby9y5`SKb~7`g()bW5aJnt?L2S_(7jlMnp$Ap zkZfi@&HR>~*PI(G5}5JISqqEqL$~yE?|)C!rGi5;d7Yx-EYFA3A8~vGA72eo+Rp2S z`uB!`?eznCMYTVXe&UH1S$z=JTWKFjHoAEC`!78p<ZMzfh}aBQwWsV^x zuIpPS+gOSSik;of^{+@{)5wAZ*A`P3URhqJcVf^g5*^bWN9jkQL?19;)@+X=CAnFt z8-kOTjO)n_LC^65?A%bJU0)m4c}hMJF_vv~?9yIjlq7l%R*bRXe=0Z`a%%)veIu3ZdGqdo*b?8dZ@Ev*+nPrSk*qw4W1E`JRGtHX zzp8m!!~(T%tfouH_|LO83eh(eZ`Qy6Y*Aadiv`d7ibL_lH@#hVxT|VfH;mqrCjQhO zLwBCz32wpF5k8&Yh6Cj8jW)3NcX08#td1|Yv-qMnZ~z$xHlSTC3SfHk&rHSfdhN_j?_q3w(Ha%|Khra zl8lf-uJ1Y2I=ucQKC&@zyEFBAJtx8zPqppp+E=>u6R*x8{(k`>AH$X)YVtBwd3<@~ zW5HrKd;}14|8mW*cMOUUs@+%Xqdb|}6oQL3iBBvd4H!@S_beAv3_*J~1 zdC@gDSi6akgDkWmu&4b6#qL#rBFcDiN!7jSRJ6zghweJYty;WMO8@B^N^&(>RWenc z{@)l|O_S%~6S;vM`_8;ho)RW4<7iCSe8PVf#wV|*V7W)j$O_TY$* z^jTLbvRylYPVOm|S3HADB~-}gZzU5h4ICa_$}H%rE|C5(gDi`&l7RW1r|Wu?Hi>XA z+^#a@wXprQ0E9yMy7GQdSa-%?oYbw+gF*@Zm7MP8=g)5Mz!>XN-uP`RmFK4u#fCY= zQLsmPX7^~1A19+hs*dTw&DbqcqAQQOgH+v+=EcoUIg-1-b*>js7W4^G z_|F{eJg$7k(oD@y)glf#S|Je13VR94mlFbje2r#4N02;#<0H`b!zoVLl=-oflfzIR zJ|b!qO79Vr+(nPNdrw;03)^DJ-nP4jea$U%k(N5miT5dE>c^LaRwUM} z1^qOf%n!f%(oEZ_y10ZF8(!6Dh_N|hyO*kTX2X9!e2WR24Gx+W!pr1l${a*okvN5)Nz>!L$fR@2aVZ=@_VCB^Ta1sm!QKCmb{lvZS?0e zzEiCfJJfw%Tes~{{rH}p#`2$=!sAB)>-#K}zc3q9`;BO=mpokbbIFpWWT$U8X4dud z4(k5^GK2*efBR+4{Wh1mY1Fc}%Jb z(-mP9i#3(67a*STS&ZdbsQ!$UEgSi(xR@8e;nNr(-m*78Sjxq9J3*IEFZi2ZO6I6MtBLy5I z&p`LoD1UUz`EXOY2QiJlOP9o^>48+I8nRlFS2tz5Q7(C2Xgy0<-}@uuleKK2FIL|M zZ;kpVGn8&c_Ffm4)i(})k9~Ra%ZaKmiiQ=1_#QQ}jT`q+X8yhM+l4v#Y1!+uqfx`i z1hcL=Dex>t&L_j0+h*^%fx=5u$7CWA5FM!*llsxfxW|*$FZVH`)#;9$3Ac+@qhpTQ zz`_2bx9%^KhBN{>jgjG%+UhvK$nEp$jOCSUm4&_lLJfYg-#`|tA14XXybgqeI_LKT z=dY?=X!kN}_m)@PIjVW)p*3Ufgn_89blpNDAT8*`PQtAJ>iTRFslN)U&cpJojFTEV z89&J`E@|`zHcPj6;dIiCK#fiL*-8H0;XS7@q0qxRHlXUm?=B`oaixK%|hGc*;v^@afbCJVZl<0fZ(<_j@6lIJe!zKVOAY99ShZm^IGggipy^UmjjYuQcVSql7bI(Vrnlh?oX-9AAPIfol%B# zR$WT2Nr2#?&&N2Oe$n@)yt-ZY_nv#!cphCN$IqM#tz5r;I7He2%8YM2srI_hB3j)A zU05)Ly@>7c${!$7Dz8@qlM?khA9B61DZFUC8J5L1>IW+;l5U$5u9a%H;pbusH?YUI zS!oCrK_zhC6c)JNy9`jS%02Oq1V;H3r)_&^8bj}OUQ%>^_A~FjF6!t}Q>?uPQ3j9Z z>UhMV(Z*J>P{x^4DY0jeiIPC;-0}m45LVidHPm@tmrzb!wM0Je#Zh z44w6KPDtE5oTaNILGr6*(Vu)V@(NyG7{{jDN-=?C;F74AR6w`p2?-`-^nh7K%)BK{ z2m2N-qG8PX6gqHGeA$0JV9Z;7Aptvs>P65Nt4#I}I%UbUdh(S7MAs-BNG%D)^t zNI5R=U|-G8da$p34`?F0G5HtOOCR;==+sXA)S3e}f$+i}WN1W&3;}Z=M1)+h%Ub2f zqlS8Y#++xJ@Cdcru_Qyq&36sYDocN)vTof5=WQhPLnrv3bK{X`U+OzEcS3eLqdu)+ z9TWK)3)3JsZ%}H!2gedP-h9J^opR>?xc9Dunhf~&xVpFBgd-A3AS<7mn;$xvVM2?2IgA% zCt2*&|F~N4Xap^gJowKM(0^o0!Aj)Ep^!C`AZ^^Fw_ zeubEWP{H*AoAU9wpbLGd66&cV<)jxjG{Bo+svp~b}!iz)wKUdx1O;% zW6wEDEsygKZy_#vwuLv!8GzFaIj6gOQw1oRUZ>jO^B-47w@+C`7Kqh+k^GnZkMlgM zWV6q8D&+b=GoUe{DGg4(hgos+~|}TWB2h zI+!>JdaM)La0!B)i|W|FITvQ-b|8yMuyCRy7bdf_K+Wv{Wq&HLi(3>lh(j~&Rz5GT z{Kh z&n8(izMSXlrm;i*ezh+|%L!@8?vCr+ub+25eCQ$jh{`^Abx>siIj|f|m>d*$>}duF z4o#SUA6h~uB3aH7Cz`asEJvtjDu@3Cr&u7}(yfFF%%QPsYD4pbWe`|0mz zZb3r#%pzjJV@~!sv)Q?isM~^vgV4}1>c|Ngh z?6QeuqDDTwSjB2*@4OPfBe?ZCq#kI*HeuJMomTBOz_KUp*8U%iv5xtnxmW zqkkJuXVott3sGC=Tk3z2+-JesiJ-r*+N*!5V+&dFnZn}vzxDwe)6ECQM2}^k=nwg! znZzijY2C+T3jI+;y}X#Y;lu14Af>)*(PST*(;ihRt@Mvp?gb$mhS#s7Qd^O9qEQ@YKjb%Y4oo>YO06N zuJaNi9YXuge~bil;oN6!i^Xvdz&*}xihNK_N*CfnL&XMie{R>sMeeEJ907k#e4h?u zezp?eSmkJm{LZxH^(g=|?k}!ZMbL%m^-oFjy4$VD=&&fJ_Xw(?PhbrfLl`}g4kuFg z8fdO?y0hW|EmGBcGL0SFTIeL>uP9g-kPru@xByS~tix6#Kj{Y*SMRG_GPcxu#4hU0);$E0YgKRN=Tn8VR?miY zz#DL}$aCLv-gq06&AUp@g%2^V>{>FBteX{@`m?DEglORM#vrajRhTTLe!}O~oDNq@ znj1`xm^rVvW1>(i&rX0%)G7Z!*UvPk-_DymGNFI%Y)6e{g6o9^!wKG88z9!l0ZyUS zJ#VuL{0iii?=4?r*w@SpOl+cK0SR~or~t9|4~)%fKmtD4LtE1Y`h_}6g$~&4=s-m& z@4u8DzEHxH|EAND{CP_ZDwR~~U@J}P;GooFDdlLs%kF62`qJaD?$P7WZAJ77Rp3zy zV%h&PukS%{0~gzxcZx&rXq%p72R^1USZZd>WzQ#*icO^k)z<2HK0Qc>vx&X6yjhab zBN`2`6Z2c9*0^S@nk-@EmTF~=gx9ueu_6_M`^O)Pe~DByve6q& z%E6vJ{K<4#E4!cYteal=Y5?132+G&OU6E7$EaoaU?AU}`xP4^*D6_dMK>U6co5*rF z;AG!_>~h3J_mywGu8tibS*j9~ZBQy$M_Z8J0r&1Yv3&`zYRrd7lkYAK&`>NE#q%m z5Y`d*;YxzK`q8HxUUVdH3M82LN zC3xfV-A*=g8z)?&-59I$P4?o3o`jNamOQ2T78v}>`70LT7ZwAa?Rj%!H1`tj z)UGzA?L0zDJOV6ZoWLwcbzViT!wbJ0XytQ=8?1gbTkF7Z46e6*@eRs02WW_Y-3Icw z<5Za4{552?GGysI?M9T?Q4LX)QO~{%?X}y5GCiltaVt05Ui0Z=ciI{s{A64#bg1G$ zGkYgmciaC5p+Qh2;4`;`73-6z*8eRf>PcwXq(GcUC1E1Bl!X?;7G7=^xI| zS%3pWZJ58(ku5gCOzQNBJ?0hdcpWr*V(aHE-)?7cqxBVSay`1SLlHN+v~RKx(rlqib`E+lMMd~cMC64@d#oQ5a4r9#*KcVF z!3^x#p4fuVMxRqytico;`{i{7M}>zvq;KQ}&kQXR$HI>FdAk$3C!tKgu-AF;{GYTh z(d+>dPMBi~T_1k0Fd49e!L|`aE$8Pq216b-kDI6wqo^7&b%}lUaz~XNyLdkpDtS1U z;CnaHVmZr4o&YsNQ1Sppo(lCpQuSXD>o)^=vH$|UzRYi}7`fI>t8zqH=;bk|~uWio2f6cEeo&pk9N2SwGeey1W%(FE4E* zPpwWGY!#|Do>R>vv>dYQlxh5gHih`S^E*TH@@xVIBrI3KXTNW3;!B1a!n${$UVa&8 z4;I9o>dg{;x*nqvFVGpT6|x>g?5_dr84G0& zw|x89wf$E{(o*$06X(F^?AMnm=KOoQ1Ip2>tZzk+SxF`8nl$Kl-Z-~IfNlUwoY8Op z@7;i(Y}p&nhQI6v$cOc%wt{pbg|6PapyYa8SWq>c|;-|w8|<)j2q0N)(hWB zTGyQnNZ!esOM0$i6k&6F1fbNTDOyd{#$AeAJF5n;$!dw=g0I?3?d;nUEN3L?iuvK` z25C-NdVfZ1U)7D54Puj2dE&e4udIIi)1~e|IEzqbJhGjmO&Lne^XN^M+F{6;wwnUm zW`62i%qi2rfBYFgfBL&T`CHKw!B?jF{|`K0ZRS6b97U3Znh;+<;Z_HJ5pg+-;vE|h z@-u)P`BI%Bpbv0oZtAhn)1Q}PmTkF1y?0mUR-GEP)a7cVsB~fA4_sj&<-p!d6%$HS z2j@u5MN;N8zQgI6&tsDI8r@!37jiA+jXWe^e_g1!ua&zLPC{hr zCNwJT-0GBB7&AgDBru_l8-Qh<&5G7Xn;a-^F7S(@#5B}=Hq*3m*2`6Zt>I?bSVMt! zkf#trU1R_{rpQO2S=lS-ao%%JjOENaUqaX9+n6; zU*0>n8UMlWY0bi8I2~Bc|FFn|5(3{};%u75`o{!DbSrkh@x^w2BP^oH!~gL1(;z(6 zBJ#bVKh@5NdmT+LhO$d+=?~PBO!$Yw%~$(ubT$gf~@0RpOT03<(_ClsYsKs~C zO>BoTq)6hK-pQLZDa1FrMxhBK(Ceo%T_Eq?>KEcCCEO(EH?O*#2C)`MD}psQ51w6L z>KAE72f0WU9bzmhrvn++dGiBeCT|&nZ?5p&&d~)PQI6VI^{lV|djTB=lr51vsh2S3 z`CgUxP1Y7Y7on?(W_}H?QD^?J*h=D6$;RYZvP)O%M{YEsaidXYL=+6gqx6Tmf#8&F zl;^DdEF*6zKm+>M?Wxaw)P~yt5xhCG)#O81b=*XgE87pu#^hBh?VI~1!+7wNx0+=( z{ARC>?=pY^%-Te2lnHN`R8^d062s5>FY_;a_fMP*OgS~>4j1`?DZ})-UW>1|lf??* z9gVwNJ{mJdSPb@pBi+LlN8{;stg*Gl=930>w=r3&!py4=UvQdHtW|N3bxk{|^7k5( z+oc%u$3ty~#W=}C6eL+}Ebq;hPZUkIOK0tx7r_Jl#>c>vLdi)3IwU~cs~a=43LX0X z-4e8U+j;-XCWuZ(p6lVay2m7eave+7PtoD4d{xns#j(OL$sDtp7bWwNNfI=4Dw(IU z<5U86-No*b*hPBgsv?G;pA(;z%&;hbmZj#|Cf>q!4nQSspXgmEWy8;$fZT&C1Rh=?G_QYIW5;yD zdw5fokB!VK59@x@3vfX;^>~o^k(1a8G2*^QPu^gVV)YFjyDvbL4jl#;T&zCh^c?Ny zkw2U^s>{VadukZAlyg7Ob_oewD33zP8x3?BD|s?`%uGlhCQ%FfH=UsK97@^tyC9y- z{=V3%`J~$@LUyybmljaN;o#56OIBmAu)2ReJa{d&*9$4;^Z4Nd<{QkIw8x^~M2!-k z79r6L*`e+=byG13GeT?FzOCL3EM8bA8-H6QDvz-FSd-2U^VQxkYOjI6>Ao6pdM~Lu zezMlr4&kk0$nyP|?5_}hXT2YND3MY;<9Ek{28d6S0Ve2gx~t$kAak^Vb_)=LQa4eP&A*(*BnUd`k{er+eux-tH zu|?oD)DS94w=JrxML9d>gP#M>vPbIl8_2 zh<;dT4)_og*w<__w7~|JG6~p4B0aI4yf{FYr`pC-o*X~96WXFqa5EY zN6R+&_8Qvxm_shHrUBu=uiduFmegGdx<#)+4w}zCPoO2$tL#y%w5Z-8nW-F2DjuPt=azU`-z93yLX)qM!pDz@_VI+V>)`zk z_RI_JN;Jeb!}3lEOCN`wQ0hqUnOWnI@s@Yn&*)_z1!`jAqi1eDs)v2Ra`J46wPW-) zyHSqt9{8JGjytnQKPwfi!xB(%p3*^ib<;nwNuA!ieAmRBOa-wY%jaSzDK0*rcP?W6 zoUMyPXZ87$vZ{rW(pxRUi8>}YeVp#|LBp^05fK!<@=wiP3^fhB?(B`am2+oFPdwfu zkO(&qLugy;9`gj@GGd-}iRq5A#uA>(CM%c|cmB}Q^WRaW!tjXZQ}(i;JVIv-Oj`d% z4r5*@7a&`@Wa_;8x@K7`(*jQvwW8lN_7_55tT&xMNH6B5C$o0mw>|a~I^O!fzLr>8 zeMT7dZ>J>8((Lh~uZLRuBsmDg=d6K4INB{mDa?kAYq^<&Pm>rF%;)_25*eY5E);pE z`*P{(2Yc=@ICHZIA#htFb7wNM{aTpBX>;mm{I8pQtyEv8QOz%TzLOXQ#0IHb)BY2i zYR@z;%3r`LCsBy_=OZ*s4aW7_rR4CmR;Z(*EIpPv)$3juA4P z_Umy^*O*13j#ag`Cool8fD@kXu5m~2N+F;6gv|-Mc8^r2s|L9JX5ooi*v%YCZ?{Ni zv4+gT^y-BZS*4GkLUq~b>vK=k*iM5<Y zv`h5Wk$BXW-ryTZTE1t|XJj)B)QVgE=93YZqnQTH#t?kxwuB4L!%HiN<<=onH#y_c5zd z#4=~gea9BQTh5f>mR@el*&6xepIoO)iB}Jds|<))l`A+wX4TqKa_WMAOrvl;yIjXr zD!et&7ZT979obrV?QzqiA0O#53slHmEx`CiiFtgHmw|-b4)V1);Xl&bx!l5SSzxy7 z>f>54NM`X>)_6kp)b?4L`G|`k>y$o+ian*gcNt*i_;qzNBvAG!)hwM>Gi~B8H1ukh zU7rcgK7K0Frn0oVdu8sqg0T6owyWZt*$ofijD~4)=rbK3JY4>J>Sxw-h%}4bjp%sm zCuiv{a>tIzl9N^0stc||j3jqBlQJ#wGaQAWdX-lp2@Lv?* zHHsnUNjxItB)Q(rCC7~L0~qv4dWIXt`Ro7U4zgaaR<%j#gs2EcmV65hb#_zcDgvE;m_Fha3`wl2Z(qCWXT=Hke0QnqgwXM>L~jY>xm}I{m$$!6CG}jb2%R0TWdC*gp4-FtF1W@FH^< z>Q8+nJQ+eFoq4S`w@U7_;FR1g?U$4uIi_{6#-p-g%AD!KN@$k0#J><_8YTsN-{fgV z3_UmMn+B=4!0mU_W*PJ*Hmiy>sRg{Ku5cFE(aY{{LC()NRe|Ob!#6ayH~BoR+>0b* zaX@@;qI#;%*LJ736IUk}m6H6-Q()yBC(hbFlecNnzz@okbkPzjw-qN7ufkW3+{6=V zcm0bRR^B~~Md}@{Paczc$2fh#&Cm%FxG0h*Y{0gD?2fm6Y{k_WKkh7NaHyGoaN(Ib zj|Ke5u$H%|`W3c%7H#%^Khk35r8fe^(q=|g?4;BhwVhA8x&E=1w5`V|JXHOVch`jJ zkoDq?_(gYi5@;>qd-PvZ5=i6Q9dyO_;RV-I={sSQ2|AR;1fSk;QJetULo}m_WMsxb zuV(kA!d#p+Pw#hIKlyH`RCbQX9}nq^LY|IqEM3+dDjUVVYdczY=atd^oih(P+eS)8 z6Wjw$FprS^#wMORFJJif5}nAI#FhMIRjJYvk5UR*!;0x!f_yipJh8fALO1BmA6nSK z^ONI`507DD+t6^DnC=d4D(~uc*Y{8%|7#z6wp+dngXIn$Z;Fe(?TWN|Fl*j3F5ymx*ix_@{tL{breu|l_HqV-oOovSOuytQHVawns&JU53Y z3%^tU0r0fCH;3%RC^7L2adX zv5L3ar-c21pGX4^u0gMOQtX>d(^;n~mQxnPBl1y9z5x9n4`a0>llfg&MJ>V1c?zYyZ1HQUHlS?$vRylY)e^r zES}$y0ccNQo|eH$C4#&~;)d$S-if};w$6Zbj9Y7&>=t5T4hZvjw}JSNHv$-FRnwhT zQR?iMYkFhI&|8PpdN5vVQsNtBBqfesF@N^^jFZ@ooQbS~JwwOAHfAx^TFQmHI+=wb zVfwe{pY5)lAHE=?9$Ij21-r5zIZRgGue_&H68}XFWB|?KNr8Ui`m|){v~fo*Ti*Is z+?5^Sdsq3M8Ry1PL2=XG9rr0{FUAZwy%gLQTaSX*3E+|LYK*qY^4}D{bpwb*R&dTF z5(j@m-AbhUyF{{>q~?vli|sC2tObT$(hV_1EMPtC7R#<83+-T5N!;wE_@Z{o>>^Iu z)S}%;1+8S6V)o^P+5R+pqw_Da>1_*pF|0~El7z-_o3Cx$l&k-Bw%XVBI0;^)ypvZ8 zRuQ3hh2h2Wn_N=4?jaQZ7<$SL$1V}=%4|}MME9nQJ#nlmV<)YJ_d1p)o$A6Q`cHiN zDm=Xku&UDfqT1y76?s6WaqZ4#U&ZHlmfxCB7}z%8K?T>#4{7d06)&qsCxixDE4}wyg?%|n zqZ;O+w;FkVb7lS9{JswT=I!cl*VE}Y+xEu$%96B@wQ2W&jKXgcwl#}Vjw~7drAR%c z^>oe}j4T(n`o;E5q`%AUJAl`a*U7-U2EJy6+o|_yy2FFR>U;j?qZT(x^Q8_oE4G=Z zLDSk3W*S=9gF1n{5j9zLD+At~kzRsyC4Jt9ymZ?&f4Re5WN*mL^JCg4A1>4Gran+F>g@!X=j_Bry(h*V+D%bl(I!Z1t~QL(i(4#` z*G;{_fFzy{klbMmW1I^twaX0A4iVDjSj7XUiV=-g*a#%&+9}=FQCFy4^Z|)evi_ra z`}xk8$6^q@iDB$)s20epx;IUg_sT|$#9@}IoPHWSEsEbqvzUvJz+Mpv6+Enwgyfi5 z+XCg}tM3>tk8&FWH0b{Up2w`^(3?jE{PmC*R1wP^hl z6V*N~z3HT$9ipQ>`?A?Dy$Ft=nHsEn7Lm#lN>tCw$)`HrMpUoX)i&Z{J%w;TI|Ex5i@l|QZ4)==32NZ!WV&_DoNt^vyn+ISKaZ1roYu&9Wl5f>Lom4q?2#n ze*8`Cx@34}z^f-`?{gd@!*gC9OIym*(cgUUY9Cj9pqhQO_g=dXNAEb7War`C_0*3$ z;@lyns4L#D^sJM?bdK(Y6j0KR&{N^y0B${_4+)jIG)IlUW`TIasMWr->sU$YOVBkL z>(xQlyCm~*B_DNV(9K`QL5YI2C4>Utm*h-~I|tYpJ0RfF;}(@ph!#(>bO>1aZOmS- z3h3igN;=$QERL@V8_%)vM7O`sFJ&GNkj_#br=FY}W=M0EUdsC*PIt?Uono<>itisE zWXFX9*-SNcf*;@5?Xxbjh zqrwzSrJY!il6q~@Yl8Oxn(b*T-Mw?$wSMe*2&Qx|x!Y%9oqqShq~j{Pq($C6KdWha zQc8lwOAjgR0)dS|es?)tbp6Dw(spC>`+3?5qoC56IA+!wxmGuE91J$}*w|aNeh&Q% zCS41YjF2^*nEZHImzO1C!%E_D^Kn(R8_5Qw8A$n0pbIqPQ;QSp^sP7x%(d#0`H?v{ zI8JekI2H01m#MBI-yNCBW?Eibx$Hu??V$|EW!}~kd391PW2QXh{&)ElkQ~~J@scI{j6S`=qAw+_k?aik;tEF>deN zx+>~aNsfp=b#3P=NFf!yHj9v}KX)=s#(57;?bgB(bVLIMwf9AS`yE;CTm{kxe1^n# zDNLjC!R;TdwP$S^!@8FjKUs;jI}_e&dSSt5Ng}Q{aO%`q&isc5 zIhyXNPR_8=-C$!45fCLWlmyIF&br2me z>FW#dV>~U)eA)K+IU`|Ya4iO;S#=kx{WXWJVdSyZoVYFp*hm%B0Bj>ZH;#DUs0sa*Q*6^AHS{FAj*6p zP5lYyXYrGhZ#kH6r}!%+pO^jXXho0mT4w*#V^d4IifLbVX6YSWexE4p?DlEy7tcsA zWD6`aSQQHbwhmwoo(S-yG*6LBY06=N-?!F2ah?@9FD8tm!@$ry>EL>yPP+LeJe~Fj zo3g()#e#Z|nY0&&*?ihr1@%r%3vZEqWXY2q_S>?_Ucz|JKR3UThy#^Nzm{b{dBV%G z3|Or370F|QW76f@0v*~9$DnH$+c~%GN#bRQVg@sLh4RC@^F+4bE1)W6Be`p*9;}Y= z++|+bzf-$(jmURa_<@Es>mDyQR}uFQU#%`>q>oZxX_=Yq5zGho8 z&nLSQEV-i;#YyV*>jL-Vu}>l2VPUJqTrjX=uG-QvzU<-Qh8`8+V>xP5yO^Z`VXwSZ z)=#T_SEJ&i$A!JVT7ix`(T3?rUEd_LSIPY6wS0RGrJ5o3Ba%W_#|8H}oimTAzaA%I z*i)#X9H`n z6S5+16a}B=CoLJyeuY+KDeIJO-x&zm-EkbeFKs_tpFghEpO~4YqF0;2zD%m}J_Em& z`XMtga-tq zqXJ4sT=~sy4rwA9RREzjj3@4?6%|NKCJJR+ zjDm}JEzebo+9hMy)uYTB%Zt-$*+?OvZe;NI^<9L*_kyZ-4UDSNqI3se3W#I5vgX52UsgpGo>p&vb@>ZHqfUJP$-2=tJ*m$F} z*cnAL=C1hU99jns6B9Rk9L0(N1`ebI){%b{{#B!crJdSk{n4pp==_1C)BMqjPVP`z zavVW3K4ds9{{gl`IWGSewiCng5sWaCM1BMxeFRhUf>EiEiBw3;M=;n_5-_xe=td`E z!BV@@tfyhJ^*%2h1arB_ER#tOQe6<*KO3U*!V|$4Bf9ffsdOXp?^q1QP{+OEk@N@8vJ(>3lwy%o(Z*$PcVL?@b+KEQo z@b%^IcLo;)?^d;3q#9GUgYj=I@+LUz59BgLY>v3`BDEi8_x-b zZv29)0G%4cn0K9J!`AYs^MBS)?`}l~$$y<&Ze>yXxSpL_?&<}#BXA;lh@gvUJAQZv zgVd2uKdVm~noU>B&U+el-Ud4$6Mi|&#s@ppY5j8O0#n=j-JwhkF7SF9i|b8SmD73# zZ!e}{R`sYiE9hqqz-YmCtew>$gryLLiO2<_?}jH1@o|)1O5*$ePJt=)xl74I+Y@-( zQv4tHnu++?a6p@aX;_WeKZ!CQ+0BF~n`TeTnll933`L9aJEZNL8ymu?wU zh4Y3DiztYcG)M^uh?I15L|RHjx}+PV>ja3DbV!G^ba!`m=b;^ky(Q45@rg|M2w-nCIA+0VElH5#`{P|DR-zi9H}|GYpk9*3BaKhj3ztC2yjp)i)*wA1yN5 zG`b!WGTRtK?}{XRAtD=#-j^N38>WZ5?Hij)+Ow9ZryTXZ%;bMGlzDBOgDCK(%|u*Yy`|!KZs|bj+6_OsAMgzo?B0HP?cMN^ z`>S(sTg&$|d1yDjWzvKynpt0@Vg|t^1!=3+qhqRYCh`vHHA`-<*!Kq^7(Y+1 z_fP48hNq=hWrtbH63saL|`vh0$#HMQsibp<&VYxLh=)^&yy&~G6eZlMC+?|X z%?4I|IESFm!%=zZ z$^-&oh|&Vsc=1+g-d4L zctIQ2(>g00)_VR^1zXU`p9jV31Q;;c1tgm_3(>(j10OG_L^N`y19|so1cQ)4`=%W< zf_ZWZ*;d#31EQ9ZvI=;|P`r`=V3+)xY0f zw}0|GsnA*-tsFc6WFh$_EE&{ni2UHt!oQ_gyk@+Xsaf7^S|2IkC?&{w6SeL6?faz& z;hOXMwX@RN1fYss!(~k6vr$armVr;3V*r}C>>ZmY4Rb&9t9%w@`8e#7Vy$McJjj>j83rNP(Y zu&0t#vFOK~jZ@1%BWpg2?p|)>KS(B9L+-3SJsKNyU*AcNC%7yR_|aoYf^AT(VR1zk z9Ucy3nCd3Idz%+$=>t^qxa`@Mip$Evk(pzEQex_tJ6m`yG6oGvf&Br4-rRiUw}f3% zKO6mi#PKtQOc)WOG9+GC-M@HPd{Tk0-}=y8IF`dUsNR*kb2q4H%~9^#AS`w`R${&_ z>>&K3j1-tc-sd-MqFL3>dlJ{NWKgv(T3bROTAM2&wcUn$l`c`ox^H#4xG&0stOt>i zb5EEa0r&b8YD%HqLBAMj8Iy%i)LjAF`!&UhB6uEAx210{!vk87!o+h>vH;GGtD94n zQm{<{C+qYmV~<3Q%!9zfyw{1>iGu+NM5sC}V(AxXIlr>nWO3HmX{Glyrx769(sfq= z0E_$nSoLZiL37(FURV33&mq&UCwgK*F*MT3H2D~>$Hh-REc5$bC`maxDylSkW!o|M z$8YobJxsaE%Pmv%(5jy3kDLso#WU=|uF3-s3*kV;JpWpGGar$p<$S(rRfLtxt#w_j zgJY$JrEpKB+wLg%*?mDgw9?j9;iHd&s6vx)S(AQ7fhR7nX=@zvvGIk3X%J&ED}d{_ z#|VWAS}$dc?ctuMx#55`cpK|^g`rcM^r(x2I$GeLk<(F7ZU(xWLho_xUV z$nx;U2Bamort|SKn7QaiAZ}J;!AjmFaTPKvy>)RMQ@<7YNx$;5Q8w1uS)i|I%tNZ%q&`!6Gv8oD z8e@Ytq1pTL@)q!bq~kJuzrqi-tY3Wc=oxcfjDp6ivvPa#v$N|}@v;(OM8foojHl%l z9hRrYlUu$7wwqm}e3>&V-B@*AMtRu9)!u-Nfm+FF}42bEi9Ut%zkOwt=0Ui8I=y#hMhq(b6IFym2EZg}8 zj1o(iWp4Vu-C7A>VjArB_QX6E*lq7D`n9|XF3ry?MAg$ok0q?aSym3QJLKeJxeE+A z-u*VW%vKThTaKx<+-y;U3(Tt5*H+R9r<`g%Nx0K*>>v-X8`_D41XO?eosyj zL@sLI*N9v=yc@<*90dM?T=O_Kxk3w_vw4tjS~UVXS7s98G-M569wKGHU)7BdAJ{Hi zX@q)aMxA^Wm(;@$A6MmC|9WZ?<$*45PO-V)LMEiAdj1jQ%dyy;5Z%43X@B=>Zy5G= zJ(RiAG*FnPr}IGf+Q?S2@>AAHVq_H|Q`Y%XOHk9mtk+D_70vT(QL-J&j7v+(#uVS8qEPQ)A@Kw3vNf z6^Aea6wpuZ!X&_;FPQS(Af}q>$mqZ0-*Cr)L+W;Rr^kB z6;U{DTr}pe4fs)GidaZoN#`0i+uA1$`gW~&U0$-ZR5Z#UaJw4HEBbWLrgQByCRMIR zaCqviL-_~TZX32(1aPgzd}MDxsP$RQH~N~P;=K=#zwl$dlg-uN$R?B#ra~F&H~+!$ z&Qk}rQJ3n85&aKV<^L4*>4vj3Qoa4JOAm}VRSk4eE1%eh2Q&NYi6cRBD5?iW!^5}P zU~&P~zE)nLQ@T>vp#N`|PVP5Z?JF}Am@+_!k0N8;Ze{GUSu=5WI|>fJe*Yx*PXF$$u#KrE%|v2&qcTqM2-@Q9}6zF9h&8 zeN4N&+x#%^m@9lv*NMG0!Bn@W95dJG@J)fFNTT2=Y$V%TN;FStLET_ZTk4v9O=@*J z-}gz;+soCOFIIglR0_$Xm|(O@wj_&3m&_xjt4oXg&G!t`M)FHYNcFvV{LNQx`|%J8 zE%(xE>ff%))!hA+>Gs@ZQx=Hqe#z)rdf6#rjy;-1j3-?PB$J+}6UKhQLaV1LKe}Sv z(`b0Jo~q7LVaw!_nWuf%YH)C8F$Bn8<@m5$@Lga7=OU^n+mT?M%AoL@6*Yp@AQ>>n zMRp>N|3N%l$oJBbjJ;FiWaxm5b8EiHh4PYROJ-j#>66t)zj%>oVfl%k!}iQ5nYlb; zwvzY$#LVEsLFRVD{bCSY&FdgWyh$yk~!G#wsqV)+hN-6)uQ-c`!WDHs?7!$ zhRoip9QQ656caqq{o4uAQ2rhDv4iR#p~&$oFm@BwqeGPH-fO0VVEP%G*vTuXQ$h+z zAxgEH=dnr{QX)txl&26Uoy~m>`qX$!cCC7vUCf1+<3nUCOEU@9%xhn1f-}QyuDO4& ztlQUdt_Y&IN?C<^h|>kp2lX5iwnWE7EeUUKi$GLOyV5787Kj&4AP6NaTLfC^lvgxI zd}saprb>Y)AR~|*>95j?3f@oIp8-^&?}6F-a@GH6>@J1vsQc@lNLjp}7s1*w2t+KQ zRL}6~9>x4+OkWQ+wglO--UKe3mODmin=YLC<(il)^Rc#-@J;^t_OniUa$dY*>!9h{ zxjo?$_xX*N{DczrCH1gMQ902gVOyh$Gz;n?O9|GZ&b{9_>l=({ z? z4_}hn>-5{(u`N-~spOIl}4TJ3wbgVM!9&sAp5l2yfJUCDeU5#TGCL7-geHIhD1>E5k=mNcxyhm0wINvg5;nbBeD1}>M49OUX+1kf2+ykbN z5CJr?5GHi9(;VHnjrp(x$ehN&UkTHmlhEbS*lLC|f4J9ET z%$-&sKPRRbgl07)NK2a&eOB!5y{~tIXiUi-(*f#z5=C!GcoS~fT0&>|HrV=?PlHgQ zD;<*U3Jg_VFII!oeR*f-1@o_BFD+_r1sk5I5F<#WpoRvdMKHS}vB|nOY+ z=jw}cw)_>yUrBJ))5u&FSC%K8w%;odry^S-(h0tp8Yr%*(`Wpo^P~4qJ1O2eO4l}B zIe;EMq=Y^5N|+W7EF0d7;ZSoeP-6THJS6H7J2Ex8%yc^z!EKv`pTjv0TsMg>aKI)3 zKLUa7_4}g|eFfw1T17T9J*XeE^(mV+4~$=AD>1J0XZ8jo#oMwXkiDHam?&{d8bsAc zh|VZkx+Nno|MuBUP}y|2DRDRCgs{S4!v9XNeu0X00q<4|U@Fr<)~D-e>*ks7x(ir@ z@itmSzPl`KZ7Wf}9sT2xooM{-8{5SE?o$;?MSG+o>KZEYPUV(>%fiE!? zaY_E|J*xZL`^qrsL_;#H`mT4yNu0NOw4Su}kNKwn=vz#4DLG{_4c$0DR`OW>yCgiL zlNsF|LdEQe0?D^0Oxg(Z&JL@}tdEypHyff5Kv12V3H@%P zhl3Qa)1e0$vEF@0&A?7=!Go4P#KbW^1+8zeafpa5@zw&$?dkRdn}nZ&ce{K7PKf zd%c$lKl&|f-kz)0YV0e5@RBbDn@-QzQ#g5+lNM53zS(@by5eM;8H{4KP3>!`o%Fp$ z7m;gRSYv?B(kR^`9~uRBea}U-ew6#>9YRACXn~B;8>Ap)oUp(W6BC_F$r$7_8?z zN}#vyWy6)(|H8DN_}LUgL%OMgNioK?NV=(j!W3DJBi>I1FM`EF+dj-Ad{pDgP~SBf zBRMG1%E|zFU}R$UTMy-xWJ-Tu-SWnR^vQD1&W1iG_nO4ZFOsmqt4{q4S{SI)=7K|{ zR9Jj=2$Ig~uP#^p)6ULq!@RH}Lo8CB@b-88CszWgty!mH9c@=dsIyA=_m{L2Y}!*O zWaSrA4V4Vq8-%mjg^X4p1~M8p&-S4;Ob9Eh71nAE>>Af-0XvV0{S1wD=rUDJ!D{yS z9%n?Rc`!D&0`-7an8 zT*Gihe*ZRC_S@n~gnmt|2%Q>FW0OQbX@av(Fz;WTd!$VES*XU=te>jleG^tTd6#16 zyrZ|QpCb=;x$Lrb-p#TA3LJkzXl#1Eoa9;#5??>eZ+}m|lc}^5z||hT!PxgG#Z8n0 z&8xEjb`gPZCClX40NU9pcYew)$I_At`km%&+=us-nVy)}7FVvjIS=GEE+s-RlEM(E z-*a_s?_%AnCfZcp_ii` zA(+o>K0x?Q!w2|dYTV!1UOp;v37@9!6B~Q?p@w%4V}D7PZOqyw$AcH#>ZtnMe7uu} z*BMzb@E1BAte+Ck#zfL>YaI;J5%ENqM;cSBPKO$YL9byB9P!D3o`kjblvsVKgD0Vl zsm6yrY-E_FbouoGM*|YA-i7m6SrxAl4|U}OJs%x-nFpnNZ%nUw%-N=6i37PWw2Ac=Y>ods@Xjmhd(-XAicg@-ci_I{n3ydXeL#^HM68r z5H=%EkGPho>m)^^Gq2&BQbRaa`0c}FDL02rvwbgmz4Xb6)M)@K4{x5% zu!K)*yzXVDpBi{<=X1B7*rzk48+Y1d#%wC zT3}kL)24gtX(oJ>WPI9i?x(u3{l=f$rUB%~L@c}UvfhET`>*-8MV}cllrDmcjb8b{ zOo+Qy;k$IGg)|fwsIW=fKi^mT^X{{qhP9!K6i4!d>)&I75BWlc<&v4gYjP^?}-t=hH)W`sthQ+G@r)^ z+)CRXJq8$WjQ#CvlWpYmz3r%Xv!;xXS*4+{qx^|+1lhBq3e-SN!au{V_eDu6s7{Ki8Rpd2b+G3LKf3&= z54pQjj{i&BrhtX6`0Phl{HEf=i^5#S!(PfRui70@FrqY6Py%_SZY}>fm8=7Nf^2=& zDJ=T7nV&5~TbSxnx)bh}79k5&Q3WjQ{uLu>lKk-23N)8DuRx=w1B z-p0tAR!GHr-k>bRfy1QMh~Ll!7@=~5147e9>Du+J*>e7zdpf7=S^jLC`w3kG0au)e zZqX=9;giWiTe``YSrk9xvZi+5$+eJJp<50(47HTgfL=es+is@L8oYU*#3+7H08c{e z8LaNMF=OK<(lD~J((#f@BzwuFn|U0+F85b!^B5qd|88xZ{D`DZ{!~`hQfBe<*uZzZ zM+(Z5w}OboNRT_v?G(Ou8@Y-n;hq9A8y{ryyWc-`!uIFI`KKY3>VueqQO^ZZ8mnDp zv#ku((f-2px{TBwcm&c9x{pz@bJ(v$`;d zQnsCQd96PBsiGCE`yyVO)y;OQ2#(@glsi%UC4?;hbidbZPd2T6z94lf3nGdtE{S2) zJT1~v6fZUvEbN))-mxVLQZ#ELJ9j0ee}(>qAYJDmv1uoanzaycxp4zH3v#KD`fSCF zE1_-zc!#k}KY1Rrr_=u`wUJ4F$2cvVD-Uj&i)I^kCrJC{JDTb5Nw<}l0v!)+y1vw% zcn7cO8+`M8(tVhZ?h;J>eF@*;b5Gj)e~056$fq~bGwHz=Y7~(|yT5vJ3tbn-&emsF z_q}GM)N5*sY|f+odpmdA+&9W-w&& zM&Qs%w;`4jl9SOZbr4zul` z{!~-~C@`CP($Li7>+QupwZV?@?Fk-YxHS4PSQ=I%`+0+GwS|qDvl;`jJGINU&~Qk* ztGyG%bNDhvUDi8}tM>Y8u3*_?u(}@ICS@e<`DHGUeb3^jH={LMg^^wmQQaU5c%$;d#OheG$OJO)Dlk09+VWQ=IOZ?xJOaGG11r?GaDsr&pG+Z0ljP6$t2^bY2#l4NQS zKso*Gm{$YZuQY~qOtx+qJVqD8T5o7{iyo%4Rj)bSIV@M-+`L9Hf$laXhL3V`xTa+r zSYjRc(>?PfJAA+Gv{DYl8+4{iryaGXJ2nZa-AW+v)UjC_$|Z_+Ik#RvS3fBB(#WpP6@hgsRXX(qcO(4BG-;{7l*eih>zYL27_>v0{zLC zL3+QU+eGxu=aaxgBd;eLuPW}(*u0$MR^a;@V_?Xe4T5^=E5V18>^@rYAm&xQ)^G{J zn+ZK9+#hTMU8zigqGawnp3s$!*}jBf(@Q+RCs|18uIxEMY()a`Kw);8dsn~~?h2m5 zqlb<2)@oOb#CY?G_drT(PHd$_5Nuxx2Y8k(E^)%%zkhkBJ$Dy1*;I=Ds7k4M$ z>L(AP0=WKeGGQ9X2$y26cEU96gROF9Y&e+*Un6$yb3}A(Cr82sJ4lG(GShDwo>{G} zvfj2lfRwxL)K+n;9TDi_K0zS6c)S|)V*KjpO$hS0iC;hK_OO?ga&n>npNZ>E5phN) zq#v#?{?E2Hq*G0fc>|IWr`FBYCT1By6m5NO*9E)d8m9229vqZP^|um*v;REvQ!xj1 zTb#eVxuh6!KP3P0%)N=sUCK;a<(xDip^{k8b>{2DD74=MJL9mrr*HUdt1P!OJR$pa z$3XO~LE6>_V3coa=6%x1G$#fDdD?WfLMk-?-7gtLU0>m!U(J?^hfBE|K4F-!^x7^M zDok0)kZ-#^;@GCc!R#4K#T#prN*pD03HVxp^1~wlbgg_mKOt02SHsZE#goP^#ab8+ zs+14z3V9;U=2zK2nBPfz@6#_fijHUy^M4q+m~RxYNtE@m>I~a|FrN2Kdt|v7lMh7mqAELPQ$JQMt^m4fY zLN+}nSdu*s{x>OJ?(iysq)ouFo+zz~myKeS*p$ejf@)i5{j^3*vvnBb`t|hp9PeBq z*{a`9V&)%44{QfR&~P=Jtb%!LUsqo4O-&L_IZ-%qzH_*|6FaQ)*BLxI1@ zF~Z}+)hi^yh9=Jv=|qw_{l3T5rATiZotqQsylH@!7IfO?*=3m}3%<#hbLG3f!CKK{ z?D8w_eY#g`p&0k7sYh}>0{_bYp4fV|YhKJ%Hy5qPW7lo>Hp5b)hj!nk9R8=yPd6mS z!-}i!zi}fFNlZ5})qiu#O=?&SNpbY;xU}*`&x9HeSq(n@8K)9YXT0V#QRYsM(~ASHo~_7PYg7ln3l zG65D96{|lZkGV^naKX>*AeQHXQ8v=lJQMBwu(Qcy-O|6=C2+;;hvrNxqU037fNJ3s zEo8Al8c~GTN;=$8uhrTReKA+}uJD*=T}UQvi8F!T>O2^xCm=%nJ(V|x!sbVyuy1bp zmg35a`H_+MWe%J|ML7R#0FbdAM2-i*S$>;M_%_{W&V|N$$xJS3=xwF%_+#B-pW;=T zaM*gJkK4JN@kD#sU=z2z+qqaicDvg-v7f4SE|2-vi&o8<`pBhz4liBB)Z*{)YzG!u zbpX9@HS(Dn;3%5@5?r;vDbs(6D+8q4ULwKVGgX=>mUY)BgiKi$w6-+MVy5f%N1cE3 zpHKBu~+PVQz`oG`cNT5u}SP8fA~H((rh>Knis zMO!uuaE$uC$HJ1rpDVH&CWMh*w%4J!$~>|f$WRyWE5P*@MeT)9Un~YgUO2ti5;&;s z3nx-z^LKcyYf+sX$}??~;KYgGwgB=Eu;*d;2i{pk{{PUqV4rL^^%oDf))E4;Bo4AE zsNZfFh81<-w75FG8FL(iFcy^A*+Y>n%GS8f zzgv`vl^QO(xM!xDBLW-@uU)0bnjekYn~G$-pgFWR`uO$yJo}DU+U^}hZo|f>*V&x3 zo>Y7!>_sD05hR|4ST5OuCq|&c@`++BPc{?2<4C#8ye|jXoAn$JPh&$g6V}5O5AB08 zY`R`=sVN+ZJ&rWl?Od8k>O78D7WsnNVrE}n2uIEWoo-++h8T|~O}h)ChA<)mnB!Te z2k6V8>?PY<8$hzjNAz=UqC2AqwZ1``^#(N3A##DKy!NDAJ`J+PxTn=ce4@A7^KE9! zM1fI(_c2gwY`61oJIn^y4ed2p1D~p(dDaOdmL~zLN?yBE4-$ii$V+@Q%L41VcUf1< z`*%+vQt_;rbos-rjq+7LAFCOvp_Zw4rMBEJC5B_#%<27Np*B(@E&fN2FCKB%UGF^t z;Go1*owpIKq_efVEgWf899MDlOZ=b)nErn;wu2XPk?aodrWjDKQN-P5%-@R};MxA{ z5$7)4BHKysKcO)J&_x%91C+s5UXNvClndAq{rqRff1Sr`Stgy(nvB4!=cZxxh zlS@H&q?kUKHLhcqd_^?8WdVCoPSPwernPyl@k<{I9BW^Yy@Td&pl`qh#HX`Z0I|Dx z7p_MUZpZAk=ysL$)8CF`@%$0>&&>eWPEl+biuYPLl~r?Wq(30<>-F=yzuBA3zS1kk zhh zknM>9S}R|STIF;tJ1s##j6~l9`M8F4<_Omc>g5qMd|8JqlC(SF;?{j$tiG#KBJUp(OIq@TMr?p*i>^a1jWcy!BQD~|F>OdzWh zJOy}U;FC{rvH08=*+Izg__~=K(~K2UmyH)gO2)v7ncR}Oy|uK^@Vc>d(P+4_gg~b| z&_W8AUqiZ_Uf(tJnTtV$VkQS$m^+39UI~KOb*18VoSvh+s@wW4@q?x6(@GmFxP{G0 zfDZwjf`zIJ3j*3*wTA&DtA7D1FL5NFIqowE-c2*}ECbwsyJbTUT7u8{%up+kkSK&h z*|_@px?25y;n7ay!z%AeYw&GxOe9FFF0~PAD^Q)P@`&Ebmsr~hq8hdVQ;g?#vt}TB z|Wpr%P~J9{C38UZ1ZfvID!=H_EkhTw7s-a8VS+=W zjfsbNbHWm1Y~lPv(4Lr@4`bf_4Oo%e#N2^p=+$n8vfzRg7|Y>ZYY?X|t7RG8scvtB z3{Hu9f-=qz*lGVSXOvS?*~B{?TW1D^X1dKhScK{1wOi{tUOZUFM+`5ZqArOqHo1A(`6-((x3NGC;u_w0yk4MM`d%A-$gRD9 z@aH|RZNW%Hc)^H@eR0j3ns2_Tf8JMqJNs%fx>^v>vHaEW1C#}ras9axSFzUkuhp*Z z5&eI>>Z_p2=j-2BP#aQj4(L>kGxR2l_?90X=+P4#z< zoB29bLTd6;Q)<6DZ*S_8F^ExBqZ`FIpdmDA88;bh*&~f?o#Ei~UX3$5&3V=_@TOQq zxy|AcL9tt71nbQ^9C}p9={m5Dyvc-EnuQvf{8A^@yE3f;rC@eu4hRIIl@D@y*qR`omurTm_z_Vi&EdfeX_kypA8A#SgI&Z;rE# z`l(>i-{)|rv$-+*F48~iZ(rodX@!G^k4oG7Jw_xh|Zp3rG3~oPH=-n7r zBKIA80#mrAd2VFtoCXGG%3`clR$UebPb6n1@O|>XK$5|W zI58#6Sj5vs%1{~*Vs~djT9aOToU*&oF0!K%Bs^*ma^zV zGcZC-iRX)u9Ld6#&X6~>S%^2)RMUT5!6C-d_W9OQjcKJcZ-Nzih$q3p!~VSnfDdYP_T?497^z9KB`Q*zR*=sY;kBn@K)F3^-f5wdeK*yooikWI{%tJ5d`iy&|<2{BRO!c>A zbS^W1|WA#$0heHGluKOhxSjtfi&x0!P^xU7o zOu4nX!UkcNX+09-TW|Dv&BIux{LGLz(6n zg!T42Y*rOTWC2idk3fa*d))VOaRhJDpfdw@h_mavr+Ej<6#>tXOISRah^Zr9m5w~G zza~G8Sr?L1c*{6>@7`~CAPXHnvmzcOPIpYH{2yFQXKfx~$fjW<@6!P3mRY_i*%sn=Y+eOm<;XjNk#D$FJ)pW=wICe)*4HFw16P=H?8XxF03Z zQyJYP@1H{cu(&kyF~vpN<#K)So^HzS=#-NEtNyjOW<;J)w&gx;wD3sd3nZJk?Cry^ zgSmrtvK#%$Cj)=%LJ2as-;4ZMxNc`zh{|3xHn3`dECl#YBpdmGBNBiy^|P=*(|qB> z2|4-3Bd*$#M1P!U-Cxde=Z4c#+hQog$?M^X0LP(AZmzKNthmWm;EdMzJUQ_XQGv?D z1I3_&qtR`@SdHA=ufD@|g7R&x|JV}^S4J9ZWe*3wydB9vmy`TP(S4vQ!1()fZO|Hswi<cJxirovLUikVOC-pdd7{uSbhkFRM?75(L4+=PY| zN8?j8v15H-{jr}258uA~xwoDyOdK>zHA-Q~VKTvI^8MmOf|3*U>UYSHb09sWTL>+FccQ5PE~t5;Te7-Tsa`+d z3^U{j25*wzQ6w)mi%+cn4)9I?^7Z{9Me=1hYr%-iVv?JwTCrPUQ=;R}pV8S_Imf&3 z(a*jcVbGXdupFVaYsc##c6%d>K95=4)yM`Nc`*)Y=c23od{;*PW1`f)|J}4p zPJ-$HT^?hOjKXTZ;oD}NxdK#aInPkz*O$kie9tVbiH!~4-#tGshf_CQXrUE8RqK9X zV8U2*-g5wRk)W~1RzRcb$(kK!q_jV0(_CGTvM^IQG$b9$wq-c~(uR6>&+rZBEWL|3 zZxh8yz(mEcaC}zYxh2OgXZE=(h6tHOTW2#*?Dur5ChNz%{NB-N*k-)pBI)dkdi?Ul zzEo_^RA>-4{q|t}j~QoqHXiLD zINT*Y)Fab_vU%5i4{Sd<)Y^EuI$E4eY44%Rx8xJ^3BT)teaSkB%RJG9~f<&UWM%H zv)K=2G?JV?Iv))!o!<3FYiL~}X7$bD;Lx2#ipKsGp~EV5554>3*W2WFee@GMvAuN_ z9$Cerc0ldTtuSx=;0&b}@1Iw;o14FSk}wI;DF|3-95v&S9O}o*&M6}GPsBueG(T3X zx|F59|7Q^>7mIXfZv))*b8@XliRZwa-Y$O`Sg*Fjxhyx|jG?jd?qa1=IkJD(#gj+P zr2Elt-Md!{$Q zT61U$O+;B##H5EfO~slelYq`~fWi{K6~eRm734bgfs&k7xEHDMnUWUv(NX-6{Pu)k ze>bw)TXfZbAigFQIe(E?7VnXc2_OK>j=Im0c8K{=yN426Y~?T3hFvk%P-q@WUnlj; zxaQbgKjU)|sCdz?`E)ptrE{-xrWvt7hNO^mVbq_bij}0+G#?6@4XKvJR{15JbF5#8 zn5hoQV#8>d_%d(8l8r-B53~Xg&gytX(rR)78-I;FbbOlSAn5aL^aDw@yBI>p^GREvP%qrDYVNh7t_~ssvj0EMHK94nIml}v?i#@l# zSp@R^2pwRDk9-|R`FJpwN6xl?x|}uNoLmG(!^PSc!t3fQB(-qZBy&ace>IX%W?6n0 zAAH-~=-eTlKA`4*zutIMTUurMEAT(nf5CC7`^7WxAhh=W!%$aF5Y^~IOjXl&fTM_o zh7Y)0;F)jhU)2x0x)&z)n_rOzHdMRB(I24IjMeBx@nY_o(g-PWWE)ASFGr)miE}XF zK+NrS^H$l*$DHiDS9RsPbPyanE6<>68%m7rA$eKyz1LhlYDpgr_@yNf{ex=Zh>P=~ zd^G+D$p^IyXOUp2SuN~P*$|r0S}Ik)HR4({M{B_QFNrRjt4Lrn*&06=E9isn4r(n| zAo&?W6O8sXyIQlgy9rt~y9RT^F7hgbhA?cGMLVmt z`;9}RMqe+=siD$+joA0XLr7ud%jA$Uk`JU7^sXjlxB!UfT_(bj5$?u1;C8ppwFlm` zWMLc_f=*w^u$mJ&P-%;m;`|9ieK<~$UX4QDSH5Ts->|$h7)ce9m3b*0vVBe&egn@w zPxcJJ&I~=k)U)QCGyJX$z`(Wu14q3+SIOIefpctvOR8yE= z5G7LqwMSf;C5s*%DVsuAjHQmQQ3wQJ7A+_KXh)H8eUsnFo(U3L*eM|r_n)ax*yz}r zGOoS`bw_#JN`91H9z1);srwYCa(h*xG@^;NF7RB7{wYDHipXi&F9M+*QJ0yUjSb)K z;|mY9j!XE=l2M6;aco+%@Vkdyk8$``lvo#JuW~Z5qToyyUsFLx6Mku1;?C zr%BMrF7c#0hnVgmhBTS)(FAVWTRzb2OANR5(eW~O6jM*S#`VgBNxsQ`xKiz5k=YV$$7aJVw2*ljnjW0D$zP^w5X)A|pnM?y_8tZS% zUjhxbO*6j59L`2i{;_<^J(xRVG_Sts=rQS{=@T+lijOhY;-;mv43bmEA96EJCvJ0iPxazRcjv=RgBw8Mu+PHdqR!%dX zF+sgt$#pBRS;^V$9~{%mz_Mxje&BxbNqY(P30hpsq+*+WMvWmDS!UgSaJ{%y{@va> zoaegqDHWjTN~_E5r%*K=YX029-t@h9B^zaJ6B47#;x(LkIUDrXzp!WZ*eLQeH&u4arZKcWAMKL6vAhS(CRP4q5H`}Bcz zNhi&V-J{SI$1T{Kd6$34=xr!>ug_QM#HDVLh=-crW@X5aB!JDSU68GV3y!7m6&(w^ zkycXVl))rlhobRl$21wR-$d+!Fvx|qwHlS6KjWfIEKxqR%LpNN-&yRPk$eSVSr}?_ zLqk8oZh0-7_kT9tmb-n;E;cFA@Sn+T$fMAw^cS-&XSDg{oW`s3uJf?>I6zu;AxfI7 zeW`+YPWpdZ?uH?cI4(3w`t4Idysp?N3P^c8J5hZLy6@|YJKzrAYYW;~8`E{Zv{0hx z1Yl_vRzM7Qna~*!t06UA^h^>vn%+#QN#Ox;KZ*AarZjT$ zCpiJ~VwWA-n@g;%R%`J1%6IA)R6UPacEk0nBo2qY9oL@N5o5O3Unig#wdw5VqK*>f zP1i8MMZ~YBjomQKQeuaD4YfG&k zBv--$5)beEa4(%UR&`oip*)4$Lc2jmr=Exfe(*pd*{=!g#{;&_Te*0{QeNsEn){&G zBkVI@gS)?QmH{7OUFsb%{M3zh=8uJUFHym!g;X}~gU##S8?p1T@9T8q)rEdrK8uf% z-v6WkmyAlZ4Dsc1rW+pig}O1>05A>VxJ!U|O7WvIwMbSA_B)aZ)$MTIFN_xsG8kM& z=(F^;cUpJ+bGsZkPppsR+tx*i3{T5{80j#>w<1lwe+jh@+x3uKb_THQVorK5O0Wi% z+0@S^##tXPg+(ibZ(-3@V}Gt)rQOGww3VPNrz)KmUfz0mvtFOr@};aLw1#8Yln{iY|VLo~d;As1iG zaIi>~(YR;Qe?L2uBW~dJMGA`dAY}dBaB1dBlsaA&ZDxGIw>IacsF%hG{Z;fgfLXeP z3d5xY^9sC!AatelI-}Do>3(NUyKs^ZZh|yT*UDF1Gg5UkgvCo4*(f7}yM_eB-%5Uq zk){qZ&nb|brjEeK>+9N~ca6Th$zM0Tj%x}0)=MOg9k%P9`Nbxj=L?m$rqMZ@bpqw# zJ0Q^JVBXW?XPCDmRWEsNnhx)Gvl@Rkiz+lOK?>`p(BOw7U3UL5W~B4hQ(@QNcoOo}(1)fQgc0Yv&=r+weZA zuR%U3tl?LMJA3WpFNV4>yNJ}x&3oRTTl1VekTo^olxtl1pOxN}NI8x-&c3#{0~tci1MN9rPzzK`pVx2#8w>Tpwv0r?MdgU3abgQ`Q$WxAG=zOBJ}y~+(>b&ARmD&m#=&CBa6H0) zwU=ALi+xD|m|rl7Pqo3ibR-%|@Sbs;9A%v!+p%}`cnPhoXIpjPq5{dYv3NFQNpJUViCXP!cd9NB_fJ+m7zBuPfh$NfIQo=vnAl!fn!d3;biHm|D z=610fx#d|eRgBhCzMdOujl{iI>b^^Q?>VdTXR%trTYDZ}-Q#l10|u(`RaSJ)b8I;5 z`xC+(KKtI}gcNsh*ttMx2b~XpznXIvk=@X!3Jl_9kx(Ol<$|;Aw}( zWip_zpn2b0vFolFeR(fEjFjfz^v~!-E*iad2FJX(XMp{;IQ{|kscZS`?@pv{S59&y z4A*ewL9q~3@982%v0uVjsAt%cQS?3QH=!xx_Sn-$>i)vvJb~^bagp=U!=Em4H1dhO z_^xp=1ZLQ?%4ItbfxH=vjyU*Hs@C^~-}DGxD~j&Zbj8~muk&07LQ^hDc9$v6PqsCFPnk0E z`%tfF5YyJl&+)A#hEJMcp}Zx+y<4VHgVAUk{!$P9uA~VGn_%%$`)gW6dZC0axl54w zkNX{$FQ-vp?oCe{qdgC4aPmAnNCkK;uw*lw%zMH9iC6OHGDnC)BH;YaKXY&z4%Iiv zs#RJbKIAKR7348W@f)rFN@5X*VA(@TEHEktowk=zq1ENJ6RM=&QlgEY8QFbyUj!*m ztp6MQkH-wuwajd;|2n1mP&fo)TX)`^`3DdyrmumKSl#N@ZE0D5OjRy4YNr9(O=V~7 zy3ciW1|YStFAu(@{g9RCRpc7BcR$EE|-o8mh*nv z!S6m|(}Jb+u2~A-0wnL@D6oc?cVira2R=FBBWxqO>?wrPk3D+Cg2?vgS_PHX=gL!j z0faSFu^NcuH~#A@U&S1ggwO=HHGSzpXWv4Q=W%MzdXsNMYziu#)tCsXFeAw2{Z>f; zKbZW3T(}>tp0NPTjhSHK7d5=1{nD@MY)E~A8f!AXb#%3f_^n-^=}?(1{Z4?IxmHkC z>n-DpGari@vK?1FPPVh<5M3vnXZ(^H*!d^jNpFpH-_w4Wez=G>$dczPhS*&zUX$#} zX9j3GbWZ$a5a#AbP^{;e{wHB=o?stqd4~^l>UGzCZ7OFCx%D@Ind!@f`_d%!i4VQ! zeXtnBYO>>e)yCTl;eqU3rO8xc9Ds7~8LC%p_-zC2 zqXPfYRpWe#*RBJbsR#4|9?z`XoZ`!s72n`XnaA--JB7-?=4Xw5_boMPQlTzYAMyA) zWT+V}Ir%#N+7bNk7j!wU*2z=|F0jfE_m*u)*Hg#c^tbSBK{Zx&@X12rh|P?O)emT! zq7GXn^`W+~e%r|M_16N1HZ|h`W|CIC;!i(vQPGIEj(Rw;8e`0^*-aF@$Qx3Z`ruW= zGi_lHk{`_e6f5|6xWZ?<;a&bRE{k#Fx0FPFhN=!q1Fz$&LoCa9X-<>|#N(@@Ez9U> z9FzwPp3=V;p4h}mrV*VptapBItNzA7l`pB(CL?u4^;&f1@8H=bq1A)f z2iv6Ec%($?BlV-f6hfM{dn|;-->VIVw`%}!neO5&fUZJn@EoDAf6xeNE&PB(YAxDs~{nh8{H_-~GPbh!uJs)b1v_|Eb3)quc1T-{_ZN z`)|ReQi2z@hJA%yZC@OJ_k^Yms=du7|BDyQl4g$)qCdK~j{D}W>7 z09=YLqyD$?fumxIRTvv_c~j;w~$2_Rpjp5{YY8&xI}fQ}vHhyQWe_G7Jc(d9{^0 zsSp-|H=iY+(x?Y&Em((kyBIsB$Ix9ny+8<`l;k-(er$iFm2ap0;^L6Gfv;dnW0_xj zgcAv{bxWjwqLzx3S`_e5Ji@AxMVK7^Sb<`Mu89|CrD9Ry7i14zoM&>e>y?j8Qp691 zxq4qPVO(*gf)y=f+J?6QU-#STEQ^G6q(7u?W%8RTq?O&^H$?a+Jf@0oiD@y`B`gm^ zM@M_mFoMbRe??w3`5$H~6(GH>BxkCnyE{0hrKS{h?pewb1@4kcW3>0k9lHs<1!1ZB zsmf@plJz=Y@`I?mpLZ-YogD8jip-xqSl!@J5v&V;Wd)b(_Bl;;woBIMaSI;-k<}JG z3!f@7Y^y_^`b`ucM-9|S8ng_B_H?}HTaRxjZ|cPmqBE@_PuO~rSstu)A%fdank!Tb z_|~e7>ymZHwR6elbWB91XzJGO{AHUFX&cN)619xD!e?>xC+(e#1%y>4E6&b+FS)nF zU1>~M`Ejn#7GooP<3yp?u~BM(nnnR11EwqZt+*6M2~zrF-zP3!y;WfX3qs0R zCpH;lXuUmIuPyRisqSpHenO>D7fIAd_tSbc^S1r4N3IeVzhX(gyu<|O&9RiP=+(%t zRy_v2IMCz{CANn$|9@K%Z@D~hdL^F25}{AganPp&rs*HfZSLm|UnnxQ;v1SqpcLS@ zgzp6ww5csCxW}m7J+x_&R1IUf_46YqSyI+hiCeLaP|!TbM68XOBl-dyB(=YNSB>bl z9(;z?nTLb)`koD6)YP^ZDgVbphqaBcLu;Y~cDXpR!XqD!4yi)WgNSB^@{{S;U%)dx; zym(QB=7;DVZywhJ^Dr>)7vR%^)YQm%Tad}U7b%oY85pUd{(tT>hWZs(%dFxsX zRH#io;y8UMGX5UdP_1p7#gZz(MJ?l^FW_jh&Lb8^inu?#aP| zsC%!i-?DvDjB3@>F*P4@I?)x{kaYuf)WRC%NpdqUEo#lHf61NgY%@?g;VEjXZnmh* z_P11=$vejEic#>YD`>&W)p;xVjw5>t(gevMwPj?qZ9KZeOkV*1OlTje);Fi#KpEWs z%yu;3`OD@$6DKf`xu{fTFwD|p+omGzAj@uhU!w}ft-1QS`dR-5VDF8jD;OC)6 z0&Y7uzaszJK#RJ}ZImE8qXMsyvTVnup>f_3UAawtwnK_kYu8FvtkwEO!Yj>%fYQ6L zhCYm`<60#?)V-tOLe0SuAiZEY6Ue(V;O#}V+e!7`1eiJc7nVgJ_Pnao;_b&4Z`%eZ zvGs-9wvbyVSgYksTunp6vN}&Sm7$pm{P>0GbTs*!WMWI@d4yuT8t4!1S_ zIE@rN$aBY&apB9JzhO6SE)xscuN2=&RB>^1Q`$M`dySBg&HjWSnMsbV*!4q@&lLDn z3CjvavCpn2KlTL24F8Vt;}_YyUvDQlZ3jG2JZv+#dGApucVL>vu6H9u)1Z>IX}d*y zVf9;+f?-_JFK52JB?Z$PJDNy7MKD7a=9#V8<1ISl*zK5Jf4h%80l+s5eRDI~9kJ`y z)jX5N)OiCS_2>Mmwbt9M!CIK3R$1c~U)Yvs-_xn?D;mMVsCjOeMo}F9vJHsiqi>?s zcZV`Ik89-f&e?e|0f0GRvVH}CK-bz=M{>zVi?4{aAPxTadLOkNR)ctoM z?_(G@O?(H*)rb`QFDxz2YfJtJ+3`O-VS;3;c(i*zyimR`K#@J%-;bmro%~2N^t9ey zKP9tQ6?^hHhG5tKN`HIvvkvxP+WnYt78Q$MqT$*}_kq%1lYhN8L)ZK~r~oN?@$|7{ zr?W_pVTm@M7qcn%9+TzBGwkx@80{j?LT}xjh86P!tV?U9S(~MjKqYTEgl|F6saBa+ z=|NQdTz_uN#phBwi#1`A>~(t6-DGXz+o6NUF}}OEfK#TV#Qbij9Z%vxJ>6S#{LgI} z1Le)MGQv>-o;NSO=OW!Mz7FDWzH7%zuhaN@{QJZaE;5-hHKP8)`zu^CEAP7LHO>L@lK~%l#1rW&g|4vNHX+?s?j|KG^IrsnsN1Y~1_?MTOY(I{T z3)Q>t?an-kn!sI0CghX(g~5Qgr&5y_-kOl}k7{^mLKWuwDEVgo>j%$#Kr8^9OSnm& zb+I$Fe~=-l(3Wta&IYtA7imwO-MDIzubrm8aXOrQuY3r;#&4%CpQU#>sf~$M(+Iay zd68vxV438x|6w@>Gzs~~^jICVxJ1g+hd6nEItc!-@9Lbu7t`Ch_Z4%n;)th=L%rH? zUax5>fz|fTCcG#5dNZ`*Qs$5moe<-A7tx!7WALT*dxX|~5Hm_$DWPihYW4JJutHpp zPMoAS_58W5+ZHxApZSK3ki{ekT~027 z<^DN{vj0>Ve(7dNbL+wr1z9Kt*6c@k12hpWj4=11y@ zx0&)w&4)W)&FTaOZztleMQ)pv78_;P021`+A`|9R)oYADBVR1D5%}wM^d$6#6>dU^ zk-}y??;EczpBIAU(T5x65d6p1>Q13RorOTfH_+--<^_v1JK0JO!ckB5b>fy0fj;R? zEQoAFYSEBL{GJNWq20B!jOlZT>q1}aIMvEJ4I2Y=s)%l9#?U>pr;yTW$T|9&wD!wJZfz%B~b_Zvk){x0%8}hg~i?%ZBXA?4{5?C0^6)Njp#*yzxIe7mEmU2?vM3- zf`t4)TawAoFk2TNDu3mU4N03E-{^mnXj9#DSE&#<%e7B!bM(ZEbhjP4ybzVU+)Sx) zB9YP9BlU%z`Efk(+AGl{&GDkE8-#_|W*k36p$_3r`DG!v;PD$?j zHYGN6N)70K=kdusT|FT6VUESYcNPl+4LCl{BN~?yV z!=&FH^7KmA40+-;$)A0;>R8fQX|&XJIHf`C0{}^0bLu$=WVN%w;0v0JUAEh2x5Ae$ zAA-XD&%n@=hxI}MNlx_RUP$Igj>?Xmsc)Cd--He(KkdJAO0Ih$`T=fJe}!4p7iw3% zC#NI*kwkx}J5@={p5A(L)HkdXvw~zV$De9!8>j50^u}M%jq;ro`%@Z{rBZJ{+tf}| zHRS(uwckipVoI1w4;!F*H^Sb@`rwPp3;2lK&<0;VpSl?(8CxjVTe^PNEg!k96(Kgd zI%#-R^DM&&(Jruu`@2=EParSCk|}!(y~g3V1Ej1cx@oQdLYs*X3Gf3Z$tfJjSsMD& zHOc;9g+AufvZMrC|9Zd9Ql%cKViqJMKiR%Z>MFH1rtW>x2mSFamwgyhzc=V~OuN;%u@m3r8whm}5m(kte_&i%Nky!&$Bwi=sXJk3V(`E}AVZ4kiw- zfD7Z*^*8UnM09z&D&}O%AFkkcN#HTg>QVIx+z^I0@MkVddEk(TNP6tI6(;J6a=VI% zcm4%hQhg;E*yfqWq^Pvb)<%q~T7jk@Go>U@W8I-E@0!Fn3%(h$3QYAhz7BS8T ztEV|)`cUDIDaILjL~|DJOq~Hz1D(QMoUK*KFC-*K(pT3=W%piwnCNlm=6lw;#%N&v zuCnW_dbaaMuYul%BdOK_V^e>wAb;qtBj0Y z#_31-vXciaH0g`%pc`tAV!K=F3qYba6Ohm0=~YFAczHY zqSRe$hLWfsjdy2LTrQKv|0eFW4{7JPQ%|$TonOR(64JU(i}N4hs|G^2_zXm6BeuE< zP|Itz|ACAG#`0Q20b_Mt{U@31=A3}?K=GSP4{l0hcL42!mZ?)chPhDn7A>wMB{;x6 zYrOf8(6x$8DiXZR8(U;en=!4Re!JHNfI^5Fc2Rv!)tg|s=IP|@CFkkkeRsX z0?7U1-?DL1dGc1l%_S?Ml#`M8GlRl~S_5(@Pd(ig9NpOeKqK7BJrM)Xfu=8q8bn?( zww$bgm)aq(wjga@4{ZSd!SaRKg>Q9kVS3K>PPsjqs+nPu7)6#Pt;4Cx=#h z=H`^s%D<=OP(_NT6uy zO6N^PLYBXNX(Zv4iqp=~@F{AVPQrD1e$Lb(llGNwojX~>6@Q%%&ADqBy8RQ+*Xy?- z2jh;8(Hs^0$5RooEv0t`9zZzdU{i$N5(Tj+-rd_2TbEaS;ON>E*_CkjfA&atuig*P z6{8vh-SQU+Jl(RGkm?P`@IR!^CJRY?l7`tGO0xSthg}g|9u{@l1!GUI*}S7%oqD22 z0D$7)!zkd8e+kDDP(f#&@2}I8yiM2LsDB7TMxQhgTkxOvw)}DGo^}-YF6$cGTg~|B zn(QI0Qq^dCC0Kx~l8^bkAsq2KM3V7Ih&DTym(%Op$<;J^PR1=9>G9G>W#G>;&h02d zJ`|2*)P<0v)EO{s8&7ks`hd$z0?y%W;T{RCbjq&zbWXGKc9Um7;x3YJp*Fc$(5ywP za~bYClg8+uQnYnkhJ^7kV&B0Dp|g@_TkP2}-(f;>FCaDS*>{!M;(0t?aVi9!6ega} zwyn3y_NlR5v^o3p%HE2SI;%OV+upR|Gw98+KCJ9BU63XVYmm8;-H7nCJaduQDG54P zot3!cWZJ*Al`X}XVAkR*@mg4>#5>b5>pGQwSt_oxzW^`!2G=X2S<>vU7fnzsQ>KDn%;i5 zl+ETJ3p+e4+TL1~-rEJ9S8PHO5q7As<*nQQ zfQbfqoZqABFTy%94)cMChEl9OPffJ$H?*7k#|KyiH)cUDuQD|9>gjt~{!+mWiWAek zfG#hNz$&Uv^5S2MhxK(z=BR_n0pYyjNl} zH0Im60of0zoKvdK?DBA!q6L9&^XI;>mb;XvpwwyOFqK%lUm0atd&XU~ zU+AXjTciWF|LQnp!kE{E%4f>vn{NPl93;7)3JN<4p1pL54*epC$uu5xi7--mf5% zcy3_-pzc}ArgAs@)xvP$)1`ta0v7Qa<(EqC9eLXU#{+$Eaou#H%+oRo}~){MN-uY-}JSC1A| zjJIe$E4I(kToXRX0X;!3wX)Y|GI^8N*@#0}t0hJ}388YQYO5aq)Kemv>XOJ770QB-agDgWhUHWX}U~z2pc9Q2Kd$Y zDuCfR@l+4=+(gBWZe;*)>f@<-fl$`73vO&Rh7Q_VEiSou)YaG2&)|6fr&PU1rz44r z91!~ZMLLy`HoJo-NyH|>+um+*n4_*u1!lQJ(wjABkX4*| zzsR~C%WABRe0|nbYR1FjR$3cL%?*xn0u6gSgFGOkD58aXWq& z#$WoJ^)|OHhw@Q`a$(dxm+J9X)^La8=d{>iSr+%cb-tO4U4ezttla@_NJER_oyAt3 zU87L&^#Lc>93auG{#caB;yLYzAe9eD#1u9y<4y$GkAkHSJ_Wf=h6WuEngP zORg(MJUan83k}58j#rWijza_DmEn(po|OOc9J#6Nlky(T<1FOq7QLV><1i1?$SBVl zV=Ix(&yT;+GU-I}LvTE-3rdc{gcYyOu=Cf`sNCmEy(R-Dw=Zw&bb}ey)zJ8PdR>15 zRhO`bc8hpTdmvNjHYK%TKm=yRTnr*QLzll)^p4WY^HVS`TT>OblH{E}M3TZ}oMtRhkb&WHRzq{G!zofLE zX9T9B`6-5=?Gh*20muiINTgOc;poQ-aji zVT6z@y6mII3)=95z`w9fPrHosALA=4yyCsZ-#PN3R2S2CyG?@O#muHvsjwdNOZ+$` zSWikpG9%IT2Ck2{7cas8gtg@+)T&3H|A*xun-TO zOYS&+IMu5rpy8~@+!$SL&{2jmnH%5C?HWvR0k}o6#2Wq(Wn906U^5Gg_P4Pco8X$D z$vQWVCi1kx6%eQuyw-`>Ssv)$pzRE~r6C1@8_H`=w+{~+e8{jUyoD5?&1WSXCfNqFW*IsCn;fGc~*=-ZWuRy@(aZPK(+cnS7R7hIrldtYKtu!l$hI^q84LMzA>F~e03iNpjg!%R zXlSEW*ioPKprA43QtBz6!{8(|@T8^q?uF0B$_4u4<6|0P1yz=@89#Jp(x>uVf+F-4<2|GIF7hGO0Otv@J`>g0CN-giu0lx5+JMKv=F z9n1T4QkJWtq&2k?!+^!^in$X1;TK%rZI6_JOIT-IS0u@m1`M9oJ`L6Rh`yFf9u7Xa zp|&5D6|Mj5{RMhHc|Qa9MJh@SxDan7gL-b{Tf!Q1Iu$PWF<1;z9cOe5n`EoqJLMn% zF++|i5)e9=cOw#li@2@boF0BCu4-(%;^lFoKV0LhltfV9>%;$Pde@3x-mm}*3<(~) zbxaj|yYT~xC?2AZ@iNyR2qoE{Yiv(G$~k0Oml?R~>|($(n-P_|8c-GL!4lyNDxmN# zp{x4!tNj2sHeFoQh-guRqsV zy*}EjBc77JmA)Uo*%Z+Vcr-WFt67rg`>mdzOnvw3d?6U)%XqsY?%e0_k2Y^OC+`<; zrX`emobA3Q*T8Jm%88;=S0x^|Lwl6Ypap4tG^YMc?Rq7K3ba zH6DcD`*Gr^N=kQ`Yb8K~QY7z-y3IZ*Y8QptQu`;hxDR$yFA9mUjSpo6ZEgL*pNG_v zZiQdxI-6l!_2$xBH5e7WGs8uGA&LCHaE0bL^Cg$IFGf}RNIlf8`!s-92ej~wa=rR} zm?@h-X?8MV*08BG=@^3t@?31)NQmqq-|buZi14X*x@cqKJktF@349H`2vPfpk*^Gs zgafiLY}YHl8{A8Qz4&eid_YKS_El)juG=MzNJ6nyoZTf(+3Kq{{3yXo%NvW~%zpD* zkdogf?+Q|!ZrVokbnZ@s`p)y0wDb90#yS7zUPcmWe!0}+^)m~;$I*X^k^JHRnc7Y! zf)+=*Q=@~C4J(ELex=2oG2wmWC<0eao&X(lM+Al9{RX$qZQH8|DRTbw$6;C3)gJ9FfTQ=KFvjd4pi|&mI_{;D ziF;VJ2r{Qs>LoIpl0LVDIP_od=Z~;qw6$9pymEO*iHW`QnMd>=RJ9O~D4W`Z1Rb+S z5(3q)r7WV3wA`OHj$ilf!8E*H!1r+Fiy?Eb>g;Purx=c>j4Mmg9O$PTLyc@=*fMu# zMt9`K6x-`Oj-AK{YfF^wN6;FR)xkjPXd&-bX=iH7PbBO>xi1+$0JS{W$cL`KPac&_ zQnb5DKe6je>JDxD=m50@SDR%_;Y{T2Q;{)BHG&WNS-5S^dhkC2f;~;x9}mW_4o~e{ zS$R|oQ2~R&W~M`?cFK4WIn=!OfbsW^f=^1NJJQxaQ*~0v)p5VxJxq!Q@nQZhC<$J5~**g+YQc%#?Dh@RuYFZa9e= z>oFpD4MYRj3=mE_otpW0P%X`9pK39ct)j5XVNB|>dJh@Yyj<72mvvXws8g1H6c(Ya ze$|qP;?RX-l5D4bGE46)u~ z#f>>}|5Tfvt#og|*!Y&t|5#>SMtp58T+PW%cY_&Qhg`%D`QpH-XYyM@(89~3cOsb% zpPM+DWh-7-T;zO>Cm{~L{@8o_!v8Hvp5$h`zns|UI+UDcV-{uD#-3gKtJY6BqBmxd zIZGy`zw3;ft74+fy$fui384Nr{6NVfJdP``{~3MEWe~Jm8N}O7eW!C$>z{H`?)-~2 z8V*rzVhsk`ei@rXD$NcYw6kGra4B#FOf@Cx%R!$<6Y%m4NCA11KUqY&R<<1f+d1MN z_oQE-Dd%(TO!{%rPA$WEJy6+C)b~PGhIosGjscl$YR+p zZHC@=s3DgW%E?E(Jo`*7u9h!JO&;M`BSY$mUVyLucRjm=BH94P&|%8Zzt2l$@EQ0o z5OOL6drZ`e*lahYCqC!sq!iP?6>cq!!M7baVC{g$2mF;saA{u$Fa5wJ&ZlUs@hOIy zlAgw6LHL?w`f}7Vr*(jixL^S=l23QfAqt#Gby(YPdPaYwxHVC_ zlY7h5$yzDY3BD}J`?zK-G%;BEF|Y56Y@jv;S_h%MaySUDoYueZ9vuJ!rhwT?Zzt@- z6vCSCOoaALR=Zg_R{j%`JCW&|FvBZ(&Zv3!N@~wc0U$E;_V|nL1VtXtWqPfw(6K!M z+@Hjyg7@V)*@E1ByM zGAiV~JV(k52w>~Idt&w@;A`Cm9vT7r;|HM3-8|O)3mV- zzkV>(19l91$0JWt2UjjKQ#U0HeK#L@UrSrF5I&BcECUma%VR~98>k4iF*d3lbPk*kOzgv%%#i8MmCMdov8JU0cc9I?f1$rL8b3bl#KJ|s3IDNt z8Sk&uVLzV?UfqZCe__=4;A_f%jrEBt_98b2ziF^aZ5DSi0k}NDP@f4D`lm)^O6$Yc zcpR~CD}J0l@uV$B^^7Rh zZI*C?S8@Y&wpj=M8^=5Q%jyJ~f;goblC~bOQukBo1;pcf z)%kbp^1dunlYDk+>EZ;MV@kw3tWkH3)j=YC(&L9uAV|7(lMn{Qw`@o$FFjXHT?;ecN)v}muh1h-n;3BNWSdN&MAVPQ|<+gU1lEb@$j~=c0u6$z21}g zAfq&irDA~nO3^;W=vytz_{ksm`~8s-P36i5Q7)eyxBgX^UFhDU#4?1uF5JY)Ix;Hw zF{ykvP*@RqS5&wj*6~T4_FFJ7&=|%Ie9L{(KZJo$wGL=7)Tz$L>utL&hw0K^tMP74ESs50GBPjTrOiQ+Ys<%)h z?9`HAfnE_^k)(IGUoKs*58rLE=-spX`ONJ$Tv@3R^({sp5T2JXrye^?O%lNuYw1wM z$HS*5$h#i`Fi)>SSlcv8-V7?3Tr8KZoZZa4c|IF1%Q#SR4W(z$dh36v`qZOZQFkH2 zJmls-U7a7)Tvw>q?OoukTHSP_1SWTpYm|p@WZfmR5JHfl9)q81*x{WRV15Fy9smA2 z65T42ndzdHEubF<+|x-9lUkmpx)4G~aJYahPhEEj$B%~JK@RtS>@$=b1Z(82`$@be z)yrBT^)k&-rMPkYVlL6s>UGvOOuw}r2QXx?TVk@xjf8m(4XC89tATGs?#z>w7>Rup z`%}c<&M-!O_wo|adOQx!a9l$e#ME>wn3eHbI=0w+ybz_uWm-?7@jp_OGJEj=_W8R^ z(KHa60;C<6DVO%9kkCr&VgBd*pP%FUH%�*_)Gl$MfB;s~_9N$b-&4 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%0AhD8j$C)q^hN7nzm5j+qv#( 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�wOz-!T%|lF<=Ib+Vg*uVCK`Tf`G#N(DGn~v zT^f((1@}8DuU;tSMTdO~y&HG`agxg)sxEQ-Pp_#TAMRByYil&$xd&-)5})NdbV!*5 zp|B^js`an$Rx0)@7s?Nwo9 z=H1rt#{zBk?Kn?BaeILJ*SDkpWx1j;Hu5;X;OE zK84pDXNN9n4CVpwEs9L`*Jk)RRmg_V>U?Sb?ez8jm8pP|5`11UF zB3~AU$FF}>k2;q}i%C6s88x_?L+}p=jlKmqHmFZR)7x?zM+_#R@HX>r^=)YzShsi^ zEL43Tn(7!wQYD?Wx~hTY3(7960y@3tv#%VpkLeUQ(++eB1+R}(<^3eFvzejgh~ zz}^U-zt=qu6}$&V#~z)=Ka_8XsSS9T?uy`qFEV9OpT #;qJddTrFN<0N#Y$-KQ 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